Vidvox / hap-qt-codec

A QuickTime codec for Hap video
Other
198 stars 27 forks source link

transcoding VPU to another codec in quicktime player results in green frame #7

Closed mrRay closed 12 years ago

mrRay commented 12 years ago

what it sounds like: transcoding VPU movies results in movies which may be opened by quicktime and have the appropriate resolution, but solid green frames.

bangnoise commented 12 years ago

For whatever reason (probably because we indicate it is our preferred format) QuickTime is choosing to request we decode to DXT and then silently failing to encode that with the destination codec.

We probably need to rejig the setup of the codec to provide an independent image transcode codec (?) to do DXT <-> RGBA - and taking that stage out of the main codec, which would then simply do VPU <-> DXT.

bangnoise commented 12 years ago

Just as an addendum, splitting the parts into a DXT->VPU compressor, VPU->DXT decompressor, DXT decompressor and DXT transfer codec ('raw ' -> DXT decompressor) works, but the second stage DXT decompressors are created and torn down for every frame, impacting performance, which I can't find a way to avoid (QuickTime handles it). Also it becomes challenging to transmit quality preference to the DXT compressor in the transfer codec. Splitting the parts does have the bonuses of splitting the code into its functional components and allowing us to receive DXT compressed frames from encoding applications if they choose to offer them. If we end up using only DXT de/compressors which don't preserve state or use internal pooled buffers then it may be an option.