On 10/13/2014 09:01 PM, Timothy B. Terriberry wrote:
I also notice that the flag AVFMT_TS_NEGATIVE is set for all muxer
classes in libavformat/oggenc.c, but I don't believe this is actually
true for any of them (the granule position value -1 is reserved as
invalid, but granule positions are otherwise treated as unsigned,
leaving no way to represent a negative timestamp). I didn't change
anything there, however, as I don't really understand all the
implications, and I don't want to paper over other problems like this one.

This is definitely needed for the ogg muxer, specifically for Speex and Vorbis. There is special-case handling for Opus that offsets pts by the encoder delay when setting granulepos. If we want to be extra-safe and avoid odd corner cases like timestamps being less than -delay, that could be handled within the ogg muxer for Opus.

-Justin

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to