You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
avcodec/mpegvideo: Remove strict_std_compliance from MpegEncContext
It just duplicates AVCodecContext.strict_std_compliance. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@@ -223,7 +223,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
|
|||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (find_frame_rate_index(mpeg12) < 0) {
|
if (find_frame_rate_index(mpeg12) < 0) {
|
||||||
if (s->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) {
|
if (avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "MPEG-1/2 does not support %d/%d fps\n",
|
av_log(avctx, AV_LOG_ERROR, "MPEG-1/2 does not support %d/%d fps\n",
|
||||||
avctx->time_base.den, avctx->time_base.num);
|
avctx->time_base.den, avctx->time_base.num);
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
|
@@ -1062,9 +1062,9 @@ int ff_mpeg4_encode_picture_header(MpegEncContext *s, int picture_number)
|
|||||||
|
|
||||||
if (s->pict_type == AV_PICTURE_TYPE_I) {
|
if (s->pict_type == AV_PICTURE_TYPE_I) {
|
||||||
if (!(s->avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER)) {
|
if (!(s->avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER)) {
|
||||||
if (s->strict_std_compliance < FF_COMPLIANCE_VERY_STRICT) // HACK, the reference sw is buggy
|
if (s->avctx->strict_std_compliance < FF_COMPLIANCE_VERY_STRICT) // HACK, the reference sw is buggy
|
||||||
mpeg4_encode_visual_object_header(s);
|
mpeg4_encode_visual_object_header(s);
|
||||||
if (s->strict_std_compliance < FF_COMPLIANCE_VERY_STRICT || picture_number == 0) // HACK, the reference sw is buggy
|
if (s->avctx->strict_std_compliance < FF_COMPLIANCE_VERY_STRICT || picture_number == 0) // HACK, the reference sw is buggy
|
||||||
mpeg4_encode_vol_header(s, 0, 0);
|
mpeg4_encode_vol_header(s, 0, 0);
|
||||||
}
|
}
|
||||||
if (!(s->workaround_bugs & FF_BUG_MS))
|
if (!(s->workaround_bugs & FF_BUG_MS))
|
||||||
|
@@ -101,7 +101,6 @@ typedef struct MpegEncContext {
|
|||||||
int max_b_frames; ///< max number of B-frames for encoding
|
int max_b_frames; ///< max number of B-frames for encoding
|
||||||
int luma_elim_threshold;
|
int luma_elim_threshold;
|
||||||
int chroma_elim_threshold;
|
int chroma_elim_threshold;
|
||||||
int strict_std_compliance; ///< strictly follow the std (MPEG-4, ...)
|
|
||||||
int workaround_bugs; ///< workaround bugs in encoders which cannot be detected automatically
|
int workaround_bugs; ///< workaround bugs in encoders which cannot be detected automatically
|
||||||
int codec_tag; ///< internal codec_tag upper case converted from avctx codec_tag
|
int codec_tag; ///< internal codec_tag upper case converted from avctx codec_tag
|
||||||
/* the following fields are managed internally by the encoder */
|
/* the following fields are managed internally by the encoder */
|
||||||
|
@@ -366,7 +366,6 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx)
|
|||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
s->strict_std_compliance = avctx->strict_std_compliance;
|
|
||||||
s->quarter_sample = (avctx->flags & AV_CODEC_FLAG_QPEL) != 0;
|
s->quarter_sample = (avctx->flags & AV_CODEC_FLAG_QPEL) != 0;
|
||||||
s->rtp_mode = !!s->rtp_payload_size;
|
s->rtp_mode = !!s->rtp_payload_size;
|
||||||
s->intra_dc_precision = avctx->intra_dc_precision;
|
s->intra_dc_precision = avctx->intra_dc_precision;
|
||||||
@@ -581,7 +580,7 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx)
|
|||||||
|
|
||||||
if (avctx->flags & AV_CODEC_FLAG_LOW_DELAY) {
|
if (avctx->flags & AV_CODEC_FLAG_LOW_DELAY) {
|
||||||
if (s->codec_id != AV_CODEC_ID_MPEG2VIDEO &&
|
if (s->codec_id != AV_CODEC_ID_MPEG2VIDEO &&
|
||||||
s->strict_std_compliance >= FF_COMPLIANCE_NORMAL) {
|
avctx->strict_std_compliance >= FF_COMPLIANCE_NORMAL) {
|
||||||
av_log(avctx, AV_LOG_ERROR,
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
"low delay forcing is only available for mpeg2, "
|
"low delay forcing is only available for mpeg2, "
|
||||||
"set strict_std_compliance to 'unofficial' or lower in order to allow it\n");
|
"set strict_std_compliance to 'unofficial' or lower in order to allow it\n");
|
||||||
|
Reference in New Issue
Block a user