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
