ffmpeg не распознает аудио фильтры

998
Sudh

Я пытаюсь уменьшить шум от аудиофайлов, извлеченных из видео. Цель - распознать речь, поэтому я пытался отфильтровать частоты выше 300 и ниже 3000 Гц. Я попытался использовать фильтр эквалайзера с помощью команды:

ffmpeg -f lavfi -i "amovie=input.wav,equalizer=f=1300:width_type=h:width=1000" output.wav 

но это дает мне ошибку:

C:\Users\Sudh\Downloads>ffmpeg -f lavfi -i "amovie=input.wav,equalizer=f=300:w th_type=h:width=3000" output.wav >output.txt ffmpeg version git-2012-03-03-663d727-xuggle-4.0 Copyright (c) 2000-2012 the F peg developers built on Mar 20 2012 16:24:58 with gcc 4.5.2 configuration: --prefix=/d/desarrollo/xuggle --extra-version=xuggle-4.0 --ex a-cflags=-I/d/desarrollo/xuggle/xuggle_v5/xuggle-xuggler-win/build/native/x86_ -w64-mingw32/captive/stage/d/desarrollo/xuggle/include --extra-ldflags=-L/d/de rrollo/xuggle/xuggle_v5/xuggle-xuggler-win/build/native/x86_64-w64-mingw32/cap ve/stage/d/desarrollo/xuggle/lib --enable-shared --enable-gpl --enable-nonfree -enable-libx264 --enable-version3 --enable-cross-compile --cross-prefix= --arc x86_64 --target-os=mingw32 --enable-libmp3lame --enable-libvorbis --enable-lib eora --enable-libspeex --enable-libvo-aacenc --enable-libopencore-amrnb --enab -libopencore-amrwb --enable-librtmp --enable-openssl --enable-zlib --enable-li px libavutil 51. 41.100 / 51. 41.100 libavcodec 54. 4.100 / 54. 4.100 libavformat 54. 1.100 / 54. 1.100 libavdevice 53. 4.100 / 53. 4.100 libavfilter 2. 62.101 / 2. 62.101 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 7.100 / 0. 7.100 libpostproc 52. 0.100 / 52. 0.100 [wav @ 00000000006DB360] max_analyze_duration 5000000 reached at 5120000 [amovie @ 00000000006D9DF0] seek_point:0 format_name:(null) file_name:input.wa stream_index:0 [lavfi @ 00000000006D97F0] No such filter: 'equalizer' amovie=input.wav,equalizer=f=300:width_type=h:width=3000: Invalid argument 

Я пытался использовать Bandreject Filter тоже

ffmpeg -f lavfi -i "amovie=input.wav,equalizer=f=1300:width_type=h:width=1000" output.wav 

но с тем же результатом, говоря "Нет такого фильтра полоса пропускания".

Что мне не хватает? Есть ли лучший способ уменьшить шум с помощью ffmpeg?

Также я использую последнюю 64-битную статическую версию с http://ffmpeg.zeranoe.com/builds/

1
Вы должны предоставить полный вывод консоли `ffmpeg` в виде текста вместо изображения. Он легче для чтения, поиска и не зависит от сторонних хостов. Ваш `ffmpeg`, вероятно, слишком стар, но было бы легче узнать, предоставили ли вы полный вывод консоли. LordNeckbeard 10 лет назад 1
@LordNeckbeard Я изменил изображение, также я использую последнюю сборку из сборок zeranoe.com, однако при проверке фильтров с помощью ffmpeg -filters я заметил, что эквалайзер и полоса пропускания не отображаются в списке. Как мне установить эти фильтры для моей установки ffmpeg? Sudh 10 лет назад 0
Привет, ваша версия ffmpeg была построена в 2012 году - сайт Zeranoe, на который вы ссылаетесь, имеет сборки с 2014 года (** сегодня **, на самом деле, на момент написания этой статьи!). Есть ли какая-то причина, по которой вы используете такую ​​старую сборку, когда доступна более новая? Возможно, это не решит вашу проблему, но есть очень мало причин использовать старый ffmpeg, поскольку он постоянно развивается и совершенствуется. Horn OK Please 10 лет назад 1
@allquixotic: Я скачал последнюю сборку и распаковал ее .. Я не уверен, почему она показывает 2012 год .. Я повторил процесс после вашего комментария еще раз .. и перезагрузил компьютер, но он все тот же Sudh 10 лет назад 0
Вы, кажется, распаковываете свой ffmpeg в другую папку или запускаете не тот файл. Это также может быть сбор динамически связанных библиотек в папке загрузок из старых версий ffmpeg. Мой совет: заново загрузите самую последнюю сборку ffmpeg с zeranoe, затем разархивируйте файл в * новую папку *. затем попробуйте запустить это. не копируйте и не перемещайте новый файл ffmpeg.exe в папку загрузок. какая версия сейчас отображается? Horn OK Please 10 лет назад 2
Вы правы .. Я удалил файлы в моем c: ffmpeg и заменил их новыми, но я все еще получаю старую версию ... интересно, я запускаю загруженный файл напрямую, это дает мне правильную версию Sudh 10 лет назад 0
Возможно, у вас есть `ffmpeg` в вашей переменной окружения`% PATH% `? Horn OK Please 10 лет назад 1
Да, это было большое спасибо Sudh 10 лет назад 0
Поскольку вы нашли решение, вы можете предоставить и принять свой собственный ответ на свой вопрос в случае, если у других возникнет такая же проблема (а также, чтобы другие потенциальные ответчики знали, что решение найдено). LordNeckbeard 10 лет назад 1

1 ответ на вопрос

0
Sudh

Я нашел решение, которое просто мигрировало в новую версию ffmpeg с http://ffmpeg.zeranoe.com/builds/ . Также обязательно перезапустите систему и измените переменные окружения, чтобы удалить следы старого ffmpeg.