FFMPEG. Два dshow источника и один выход. Объединить команды

1165
TarasPro

Офисный ПК должен записывать, что операторы говорят клиентам и наоборот - клиенты оператору. Я получил низкое ресурсное решение. Но есть ли способ объединить эти две команды?

ffmpeg.exe -f dshow -i audio = "Микрофон микрофона" - темы 2 m1.mp3

а также

ffmpeg.exe -f dshow -i audio = "Микрофон StereoMix" -потоков 2 m2.mp3

Также возможно, что первый источник записывается в левый канал, а второй - справа от конечного выходного файла. Возможно, есть некоторые предложения по поводу дополнительных опций. Благодарю.

0

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

1
NuTTyX

Простое сочетание входов, оба будут звучать во всех каналах

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "[0][1] amix [a];[a] volume=volume=2 [b]" -map "[b]" -threads 2 m1.mp3 

Volumeфильтр добавлен, так как amixбудет отображать объем каждого входа в половину.


Если вам нужно разделить каждый вход на другой канал, вы можете использовать его join, но если ваши входные звуки стереофонические, вы должны предварительно смешать их в моно, чтобы не потерять ничего.

Предполагая моно входы, результат будет первым вводом слева, вторым справа:

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "join=inputs=2:channel_layout=stereo:map=0.0-FL|1.0-FR" -threads 2 m2.mp3 

Предполагая стереовходы, регулировка громкости не требуется, поскольку каждый канал для одного и того же входа должен быть примерно одинаковым:

ffmpeg.exe -f dshow -i audio="Microphone MIC" -f dshow -i audio="Microphone StereoMix" -filter_complex "[0]channelsplit=channel_layout=stereo[a][b];[1]channelsplit=channel_layout=stereo[c][d];[a][b]amix[e];[c][d]amix[f];[e][f]join=inputs=2:channel_layout=stereo:map=0.0-FL|1.0-FR[g]" -map "[g]" -threads 2 m3.mp3 
для первой команды произошла ошибка: ** [AVFilterGraph @ 0000000005761820] Нет такого фильтра: '[0] [1]' Ошибка при настройке фильтров. ** другие не работают вообще, я не понимаю всех этих параметров в раздел фильтра и понятия не имею, что не так TarasPro 10 лет назад 0
Проверьте кавычки вокруг команд и попробуйте использовать двойные кавычки `" `вместо одинарных кавычек` '`. Каждая команда, которую я разместил здесь, была проверена на моем боксе, поэтому в фильтрах не должно быть ошибок. NuTTyX 10 лет назад 0
Первая команда отличная, я изменил кавычки, и она работала хорошо. но № 2 и № 3 - нет «разбить на каналы», тоже нет ошибок, но это записывается как первая команда TarasPro 10 лет назад 0
# 2 и # 3 должны выводить звук с каждого входа в отдельный канал стереофонического выхода - сначала слева, а затем справа налево. По крайней мере, они делают на моей коробке - проверено с наушниками - NuTTyX 10 лет назад 0
Да! Я нашел проблему. Это мои наушники - это вроде моно. TarasPro 10 лет назад 0