diff options
author | wm4 <nfxjfg@googlemail.com> | 2014-09-27 16:47:09 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-10-02 20:21:00 +0200 |
commit | cdd6f059a65f28ff7a18ccf1194e9554adad1a1b (patch) | |
tree | f85077e1a32a10003a595e46d403e75e4797bd9e /libavutil/frame.h | |
parent | a9b10e1510ddfcae5119e616e0cc60350c99467c (diff) | |
download | ffmpeg-cdd6f059a65f28ff7a18ccf1194e9554adad1a1b.tar.gz |
avcodec, avutil: allow more control about how samples are skipped
Add CODEC_FLAG2_SKIP_MANUAL (exposed as "skip_manual"), which makes
the decoder export sample skip information via side data, instead
of applying it automatically. The format of the side data is the
same as AV_PKT_DATA_SKIP_SAMPLES, but since AVPacket and AVFrame
side data constants overlap, AV_FRAME_DATA_SKIP_SAMPLES needs to
be introduced.
This is useful for applications which want to do the timestamp
calculations manually, or which actually want to retrieve the
padding.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavutil/frame.h')
-rw-r--r-- | libavutil/frame.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libavutil/frame.h b/libavutil/frame.h index ee24628ae8..d335bee831 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -94,6 +94,18 @@ enum AVFrameSideDataType { * libavutil/motion_vector.h. */ AV_FRAME_DATA_MOTION_VECTORS, + /** + * Recommmends skipping the specified number of samples. This is exported + * only if the "skip_manual" AVOption is set in libavcodec. + * This has the same format as AV_PKT_DATA_SKIP_SAMPLES. + * @code + * u32le number of samples to skip from start of this packet + * u32le number of samples to skip from end of this packet + * u8 reason for start skip + * u8 reason for end skip (0=padding silence, 1=convergence) + * @endcode + */ + AV_FRAME_DATA_SKIP_SAMPLES, }; enum AVActiveFormatDescription { |