summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-10-18 19:41:48 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-10-18 19:41:48 +0200
commitbf301258b49ff6f700a096c5752864e789c6e6b3 (patch)
tree0728f30a569ad66df9aa37d2112077799f1f3eee /libavcodec
parent25f4e9387d0efd6fe2ac51d78eb681c542a6f82d (diff)
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.h2
-rw-r--r--libavcodec/snow.h2
-rw-r--r--libavcodec/snowenc.c2
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 },