Я пытался прокачать 2 уровня в глубину.
Я могу успешно передать:
- ffmpeg | grep
- ffmpeg | сед
я не могу трубить
- ffmpeg | грэп | сед
- ffmpeg | сед | grep
Я не понимаю, ffmpeg ограничивается только одним каналом в цепочке?
Этот код НЕ имеет ВЫХОДА с 2 каналами и без ошибок:
ffmpeg -i "https://17563.live.streamtheworld.com/WETAFM.mp3?nocache=Ag6q8pw2" -af Silencedetect=n=-10dB:d=0.5 -f null - 2>&1 | grep молчание_длительность | sed "s/.*silence_duration: \(.*\).*/\1/"
Ожидаемый результат:
2.06442
0.719252
0.594036
0.562698
0.500295
Этот код имеет правильный вывод с 1 каналом:
ffmpeg -i "https://17563.live.streamtheworld.com/WETAFM.mp3?nocache=Ag6q8pw2" -af Silencedetect=n=-10dB:d=0.5 -f null - 2>&1 | grep молчание_длительность
Вывод:
[silencedetect @ 0000018027f9bd00] молчание_конец: 2.06442 | тишина_длительность: 2.06442
[silencedetect @ 0000018027f9bd00] молчание_конец: 3.45971 | тишина_длительность: 0,719252
[silencedetect @ 0000018027f9bd00] молчание_конец: 7.04399 | тишина_длительность: 0,594036
[silencedetect @ 0000018027f9bd00] молчание_конец: 7.81501 | тишина_длительность: 0,562698
[silencedetect @ 0000018027f9bd00] молчание_конец: 9.05535 | тишина_длительность: 0,500295
Этот код имеет правильный вывод с 1 каналом:
ffmpeg -i "https://17563.live.streamtheworld.com/WETAFM.mp3?nocache=Ag6q8pw2" -af Silencedetect=n=-10dB:d=0.5 -f null - 2>&1 | sed "s/.*silence_duration: \(.*\).*/\1/"
Вывод:
[silencedetect @ 000001a48277b980] молчание_старт: 0
2.06442
[silencedetect @ 000001a48277b980] молчание_старт: 2.74045
0,719252
[silencedetect @ 000001a48277b980] молчание_старт: 6.44995
0,594036
[silencedetect @ 000001a48277b980] молчание_старт: 7.25231
0,562698
[silencedetect @ 000001a48277b980] молчание_старт: 8.55506
0,500295