X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Favformat.h;h=78054debca3ac528adcd1a09fb9f0790b5c0479f;hb=c29d999f71f65560a61b638a983745d26cde1fc4;hp=b915148ad7830f2590db83300c652d1a248c83b8;hpb=aecd064744c846faf7c7df76d0ecca720f314e52;p=ffmpeg diff --git a/libavformat/avformat.h b/libavformat/avformat.h index b915148ad78..78054debca3 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1030,6 +1030,21 @@ typedef struct AVStream { */ int skip_samples; + /** + * If not 0, the first audio sample that should be discarded from the stream. + * This is broken by design (needs global sample count), but can't be + * avoided for broken by design formats such as mp3 with ad-hoc gapless + * audio support. + */ + int64_t first_discard_sample; + + /** + * The sample after last sample that is intended to be discarded after + * first_discard_sample. Works on frame boundaries only. Used to prevent + * early EOF if the gapless info is broken (considered concatenated mp3s). + */ + int64_t last_discard_sample; + /** * Number of internally decoded frames, used internally in libavformat, do not access * its lifetime differs from info which is why it is not in that structure.