X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=ffmpeg_filter.c;h=db95c2f0cdb3893127d0322734b89b64756cf403;hb=a8e0d51bb8141bbe64d4e22aec72742199208192;hp=6a5141098df5f022715bc8593d86b374e43ec26f;hpb=bc17a6f5c012522186592fcbc3acaa7701c4b208;p=ffmpeg diff --git a/ffmpeg_filter.c b/ffmpeg_filter.c index 6a5141098df..db95c2f0cdb 100644 --- a/ffmpeg_filter.c +++ b/ffmpeg_filter.c @@ -24,10 +24,11 @@ #include "libavfilter/avfiltergraph.h" #include "libavfilter/buffersink.h" -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" #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" @@ -686,6 +687,9 @@ static int configure_input_audio_filter(FilterGraph *fg, InputFilter *ifilter, if (audio_volume != 256) { char args[256]; + av_log(NULL, AV_LOG_WARNING, "-vol has been deprecated. Use the volume " + "audio filter instead.\n"); + snprintf(args, sizeof(args), "%f", audio_volume / 256.); AUTO_INSERT_FILTER_INPUT("-vol", "volume", args); } @@ -724,6 +728,17 @@ 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_filter_type != SWR_FILTER_TYPE_KAISER) + av_strlcatf(args, sizeof(args), "filter_type=%d:", (int)ost->swr_filter_type); + 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)