Hi all – I've been thinking about exogenous decompression lately. I created this term to describe a scenario where a decompressor can better restore lossily compressed data by using exogenous information, such as characteristics of the encoder/compressor.

For example, with a video stream maybe the decompressor knows which encoder was used and can use this information to achieve a better result than standard decompression. Maybe there are specific characteristics and quirks of the encoder that would be fruitful to know at decomp time.

Does this sound feasible? This is slightly related to my idea to use exogenous metadata to better compress audio/music, but this is purely about decomp.

I don't know enough about video codecs to know specifically what sort of information might be helpful.

Relatedly, a Google project gave me an idea for video streams. When there's footage from, say, a security camera, perhaps it could be enhanced by knowing specifics about the camera model and its encoder. Even more interesting would be to:


  1. Take known objects, like employees, get them on the camera
  2. Relate that camera footage to high res imagery (video or photo) of those same employee faces
  3. Figure out how the camera encodes those known objects
  4. Use that to do the reverse – enhance camera footage of unknown targets (e.g. criminals) by understanding how the camera encodes known examples


Thoughts?