diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-10-18 19:41:48 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-10-18 19:41:48 +0200 |
commit | bf301258b49ff6f700a096c5752864e789c6e6b3 (patch) | |
tree | 0728f30a569ad66df9aa37d2112077799f1f3eee /libavcodec | |
parent | 25f4e9387d0efd6fe2ac51d78eb681c542a6f82d (diff) | |
download | ffmpeg-bf301258b49ff6f700a096c5752864e789c6e6b3.tar.gz |
avcodec/snowenc: add FF_MPV_COMMON_OPTS
This fixes the ratecontrol code with snow
adding FF_MPV_COMMON_OPTS is needed as the generic rate control options
are currently in the (unrelated) MpegEncContext
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/mpegvideo.h | 2 | ||||
-rw-r--r-- | libavcodec/snow.h | 2 | ||||
-rw-r--r-- | libavcodec/snowenc.c | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 286954f5d8..6946c60b4b 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -694,7 +694,9 @@ typedef struct MpegEncContext { #define FF_MPV_FLAG_NAQ 0x0010 #define FF_MPV_FLAG_MV0 0x0020 +#ifndef FF_MPV_OFFSET #define FF_MPV_OFFSET(x) offsetof(MpegEncContext, x) +#endif #define FF_MPV_OPT_FLAGS (AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM) #define FF_MPV_COMMON_OPTS \ { "mpv_flags", "Flags common for all mpegvideo-based encoders.", FF_MPV_OFFSET(mpv_flags), AV_OPT_TYPE_FLAGS, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS, "mpv_flags" },\ diff --git a/libavcodec/snow.h b/libavcodec/snow.h index 6a3e763a4a..6f1fca378c 100644 --- a/libavcodec/snow.h +++ b/libavcodec/snow.h @@ -29,6 +29,8 @@ #include "rangecoder.h" #include "mathops.h" + +#define FF_MPV_OFFSET(x) (offsetof(MpegEncContext, x) + offsetof(SnowContext, m)) #include "mpegvideo.h" #include "h264qpel.h" diff --git a/libavcodec/snowenc.c b/libavcodec/snowenc.c index eaeafa987d..30b1ef66c1 100644 --- a/libavcodec/snowenc.c +++ b/libavcodec/snowenc.c @@ -29,6 +29,7 @@ #include "rangecoder.h" #include "mathops.h" +#define FF_MPV_OFFSET(x) (offsetof(MpegEncContext, x) + offsetof(SnowContext, m)) #include "mpegvideo.h" #include "h263.h" @@ -1870,6 +1871,7 @@ static av_cold int encode_end(AVCodecContext *avctx) #define OFFSET(x) offsetof(SnowContext, x) #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { + FF_MPV_COMMON_OPTS { "memc_only", "Only do ME/MC (I frames -> ref, P frame -> ME+MC).", OFFSET(memc_only), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE }, { "no_bitstream", "Skip final bitstream writeout.", OFFSET(no_bitstream), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE }, { NULL }, |