[FFmpeg-devel] [PATCH] snowenc: add no_bitstream option.

Reimar Döffinger Reimar.Doeffinger at gmx.de
Sat Mar 10 20:00:27 CET 2012


This allows making e.g. MPlayer's -vf uspp filter about 20% faster.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger at gmx.de>
---
 libavcodec/snow.h    |    1 +
 libavcodec/snowenc.c |    2 ++
 2 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/libavcodec/snow.h b/libavcodec/snow.h
index d2ef1ad..7990f1f 100644
--- a/libavcodec/snow.h
+++ b/libavcodec/snow.h
@@ -158,6 +158,7 @@ typedef struct SnowContext{
     unsigned me_cache_generation;
     slice_buffer sb;
     int memc_only;
+    int no_bitstream;
 
     MpegEncContext m; // needed for motion estimation, should not be used for anything else, the idea is to eventually make the motion estimation independent of MpegEncContext, so this will be removed then (FIXME/XXX)
 
diff --git a/libavcodec/snowenc.c b/libavcodec/snowenc.c
index 8a6dce0..b71c823 100644
--- a/libavcodec/snowenc.c
+++ b/libavcodec/snowenc.c
@@ -1800,6 +1800,7 @@ redo_frame:
                         quantize(s, b, b->ibuf, b->buf, b->stride, s->qbias);
                     if(orientation==0)
                         decorrelate(s, b, b->ibuf, b->stride, pic->pict_type == AV_PICTURE_TYPE_P, 0);
+                    if (!s->no_bitstream)
                     encode_subband(s, b, b->ibuf, b->parent ? b->parent->ibuf : NULL, b->stride, orientation);
                     assert(b->parent==NULL || b->parent->stride == b->stride*2);
                     if(orientation==0)
@@ -1904,6 +1905,7 @@ static av_cold int encode_end(AVCodecContext *avctx)
 #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 static const AVOption options[] = {
     { "memc_only",      "Only do ME/MC (I frames -> ref, P frame -> ME+MC).",   OFFSET(memc_only), AV_OPT_TYPE_INT, { 0 }, 0, 1, VE },
+    { "no_bitstream",   "Skip final bitstream writeout.",                    OFFSET(no_bitstream), AV_OPT_TYPE_INT, { 0 }, 0, 1, VE },
     { NULL },
 };
 
-- 
1.7.9.1



More information about the ffmpeg-devel mailing list