summaryrefslogtreecommitdiff
authorMichael Niedermayer <michaelni@gmx.at>2012-11-23 14:35:48 (GMT)
committer Michael Niedermayer <michaelni@gmx.at>2012-11-26 02:51:29 (GMT)
commit4bd6d73fc8d4bc367668f2770d92a06b0c79146d (patch)
treeb20b064bb92ac5979331398b6775412f6270e361
parent69d45d2ecb9464b65032e31c495ed045c471faf8 (diff)
downloadffmpeg-4bd6d73fc8d4bc367668f2770d92a06b0c79146d.zip
ffmpeg-4bd6d73fc8d4bc367668f2770d92a06b0c79146d.tar.gz
ffmpeg-4bd6d73fc8d4bc367668f2770d92a06b0c79146d.tar.bz2
ffmpeg: fix passing swresample options to the auto inserted swr
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat
-rw-r--r--ffmpeg_filter.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/ffmpeg_filter.c b/ffmpeg_filter.c
index 358e1ed..d960f1f 100644
--- a/ffmpeg_filter.c
+++ b/ffmpeg_filter.c
@@ -28,6 +28,7 @@
#include "libavutil/avstring.h"
#include "libavutil/bprint.h"
#include "libavutil/channel_layout.h"
+#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "libavutil/pixfmt.h"
#include "libavutil/imgutils.h"
@@ -724,6 +725,15 @@ int configure_filtergraph(FilterGraph *fg)
char args[255];
snprintf(args, sizeof(args), "flags=0x%X", (unsigned)ost->sws_flags);
fg->graph->scale_sws_opts = av_strdup(args);
+
+ args[0] = 0;
+ if (ost->swr_dither_method)
+ av_strlcatf(args, sizeof(args), "dither_method=%d:", (int)ost->swr_dither_method);
+ if (ost->swr_dither_scale != 1.0)
+ av_strlcatf(args, sizeof(args), "dither_scale=%f:", ost->swr_dither_scale);
+ if (strlen(args))
+ args[strlen(args)-1] = 0;
+ av_opt_set(fg->graph, "aresample_swr_opts", args, 0);
}
if ((ret = avfilter_graph_parse2(fg->graph, graph_desc, &inputs, &outputs)) < 0)