From 60a7f3b8bc7caca5a60d763e5d57732c78e35a14 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 23 May 2013 15:11:57 +0200 Subject: af_lavfi: add libavfilter bridge Mostly copied from vf_lavfi. The parts that could be shared are minor, because most code is about setting up audio and video, which are too different. This won't work with Libav. I used ffplay.c as guide, and noticed too late that their setup methods are incompatible with Libav's. Trying to make it work with both would be too much effort. The configure test for av_opt_set_int_list() should disable af_lavfi gracefully when compiling with Libav. Due to option parser chaos, you currently can't have a "," as part of the filter graph string - not even with quoting or escaping. This will probably be fixed later. The audio filter chain is not PTS aware. So we have to do some hacks to make up a fake PTS, and we have to map the output PTS back to the filter chain's method of tracking PTS changes and buffering, by adjusting af->delay. --- DOCS/man/en/af.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/af.rst b/DOCS/man/en/af.rst index 08e7853990..81e99905d0 100644 --- a/DOCS/man/en/af.rst +++ b/DOCS/man/en/af.rst @@ -550,3 +550,13 @@ scaletempo[=option1:option2:...] Would playback audio file at 1.2x normal speed, with audio at normal pitch. Changing playback speed, would change pitch, leaving audio tempo at 1.2x. + +lavfi=graph + Filter audio using ffmpeg's libavfilter. + + + Libavfilter graph. See ``lavfi`` video filter for details - the graph + syntax is the same. + + Warning: due to shortcomings in the current ``-af`` option parser code, + the filter graph must not contain any ``,``. -- cgit v1.2.3