AV_CODEC_ID_MVC1,
AV_CODEC_ID_MVC2,
AV_CODEC_ID_HQX,
+ AV_CODEC_ID_TDSC,
+ AV_CODEC_ID_HQ_HQA,
+ AV_CODEC_ID_HAP,
+ AV_CODEC_ID_DDS,
/* various PCM "codecs" */
AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs
AV_CODEC_ID_PCM_S8_PLANAR,
AV_CODEC_ID_PCM_S24LE_PLANAR,
AV_CODEC_ID_PCM_S32LE_PLANAR,
+ AV_CODEC_ID_PCM_S16BE_PLANAR,
/* various ADPCM codecs */
AV_CODEC_ID_ADPCM_IMA_QT = 0x11000,
* to enum AVAudioServiceType.
*/
AV_PKT_DATA_AUDIO_SERVICE_TYPE,
+
+ /**
+ * This side data contains an integer value representing the quality
+ * factor of the compressed frame. Allowed range is between 1 (good)
+ * and FF_LAMBDA_MAX (bad).
+ */
+ AV_PKT_DATA_QUALITY_FACTOR,
};
typedef struct AVPacketSideData {
/* video only */
/**
* picture width / height.
+ *
+ * @note Those fields may not match the values of the last
+ * AVFrame outputted by avcodec_decode_video2 due frame
+ * reordering.
+ *
* - encoding: MUST be set by user.
* - decoding: May be set by the user before opening the decoder if known e.g.
* from the container. Some decoders will require the dimensions
* to be set by the caller. During decoding, the decoder may
- * overwrite those values as required.
+ * overwrite those values as required while parsing the data.
*/
int width, height;
/**
* Bitstream width / height, may be different from width/height e.g. when
* the decoded frame is cropped before being output.
+ *
+ * @note Those field may not match the value of the last
+ * AVFrame outputted by avcodec_decode_video2 due frame
+ * reordering.
+ *
* - encoding: unused
* - decoding: May be set by the user before opening the decoder if known
* e.g. from the container. During decoding, the decoder may
- * overwrite those values as required.
+ * overwrite those values as required while parsing the data.
*/
int coded_width, coded_height;
* Pixel format, see AV_PIX_FMT_xxx.
* May be set by the demuxer if known from headers.
* May be overriden by the decoder if it knows better.
+ *
+ * @note This field may not match the value of the last
+ * AVFrame outputted by avcodec_decode_video2 due frame
+ * reordering.
+ *
* - encoding: Set by user.
- * - decoding: Set by user if known, overridden by libavcodec if known
+ * - decoding: Set by user if known, overridden by libavcodec while
+ * parsing the data.
*/
enum AVPixelFormat pix_fmt;
*/
float b_quant_factor;
- /** obsolete FIXME remove */
- int rc_strategy;
+#if FF_API_RC_STRATEGY
+ /** @deprecated use codec private option instead */
+ attribute_deprecated int rc_strategy;
#define FF_RC_STRATEGY_XVID 1
+#endif
int b_frame_strategy;
*/
int me_range;
+#if FF_API_QUANT_BIAS
/**
- * intra quantizer bias
- * - encoding: Set by user.
- * - decoding: unused
+ * @deprecated use encoder private option instead
*/
- int intra_quant_bias;
+ attribute_deprecated int intra_quant_bias;
#define FF_DEFAULT_QUANT_BIAS 999999
/**
- * inter quantizer bias
- * - encoding: Set by user.
- * - decoding: unused
+ * @deprecated use encoder private option instead
*/
- int inter_quant_bias;
+ attribute_deprecated int inter_quant_bias;
+#endif
/**
* slice flags
attribute_deprecated int lowres;
#endif
+#if FF_API_CODED_FRAME
/**
* the picture in the bitstream
* - encoding: Set by libavcodec.
* - decoding: unused
+ *
+ * @deprecated use the quality factor packet side data instead
*/
- AVFrame *coded_frame;
+ attribute_deprecated AVFrame *coded_frame;
+#endif
/**
* thread count
#define FF_PROFILE_DTS_96_24 40
#define FF_PROFILE_DTS_HD_HRA 50
#define FF_PROFILE_DTS_HD_MA 60
+#define FF_PROFILE_DTS_EXPRESS 70
#define FF_PROFILE_MPEG2_422 0
#define FF_PROFILE_MPEG2_HIGH 1
#define FF_PROFILE_JPEG2000_DCINEMA_2K 3
#define FF_PROFILE_JPEG2000_DCINEMA_4K 4
+#define FF_PROFILE_VP9_0 0
+#define FF_PROFILE_VP9_1 1
+#define FF_PROFILE_VP9_2 2
+#define FF_PROFILE_VP9_3 3
#define FF_PROFILE_HEVC_MAIN 1
#define FF_PROFILE_HEVC_MAIN_10 2