2016-11-27 1 views
0

мне нужно смешать 2 файлы: А и В, и результат является частью файла А и часть файла B.FFmpeg пользовательские аудио смешивания фильтр

Подробнее Мне нравится, что выходной сигнал является суммой верхней части из файла а и нижней части файла B.

мне нужно что-то вроде этого:

ffmpeg -i A.flac -i B.flac -af "copy all from 0 to -25 dB from 'A', copy all from -25dB to -infinite from file 'B' and put these 2 parts on the output" output.flac 

-25 dB переменно, что я могу настроить, я хотел бы сохранить объем файла «A».

Короче говоря, я хотел бы заменить мягкий фон файла «A» на файл «B».

есть способ сделать это?

спасибо !!!!

ответ

0

Применение

ffmpeg -i a.wav -i b.wav -filter_complex 
    "[0]agate=range=0:threshold=0.056:ratio=9000:makeup=2[a]; 
    [1]acompressor=threshold=0.056:ratio=20:makeup=2[b]; 
    [a][b]amix" out.wav 

Пороговое значение рассчитывается следующим образом: 10 to the power of (decibel value/20)

например, -25 dB будет 10^(-25/20) = 10^-1.25 = 0.056

+0

спасибо, код кажется работает частично. впечатление показало, что код пытается «обнаружить» объем и казаться зависящим от времени, но мне нужно что-то, что делает это независимым по пику и по времени. Я не уверен, что это возможно. – esposito

+0

Непонятно, что вы имеете в виду. Вы можете проиллюстрировать? – Mulvya

+0

есть ситуации, когда сигнал «A» переключается на «B». Я думаю, что фильтр обнаруживает низкий объем «А» и переключает выход на «В», но мне нравится, что верхняя часть> -25 дБ всегда «А», а нижняя часть <-25 дБ всегда «В». это независимо от объема и времени. «Момент переключения» от изменения «А» до «В» очень легко услышать. – esposito

 Смежные вопросы

  • Нет связанных вопросов^_^