
On Sun, Nov 18, 2007 at 02:48:51PM +0100, Michael Niedermayer wrote:
that was the reason why i wrote it like that :) such streams exist and it even makes sense for them to exist ... just think of realtime communication over a low bandwidth channel (portable phones or something like that would be an example) i frames are many times bigger than p frames at the same quality so having p frames with lets say 10% intra coded blocks leads to lower delay than i frame would. and i frames at lower quality would lead to unacceptable flickering every time a low quality blocky I frame would be received so yes, i think all frames should be key frames in that case ... also the encoder can optimize the decission of which blocks to code as intra ...
I agree such codecs should exist, I just wonder whether considering all frames to be keyframes is an appropriate solution. After all, imagine a program using a file with such a codec as a source for editing. "This frame is a keyframe" does not mean much if it doesn't guarantee you can decode all frames with pts >= this_frame.pts without significant error. You might as well just ignore the keyframe flag for seeking then.. Rich