2015-09-11 255 views
0

有点与此相关的问题中:Convert audio files to mp3 using ffmpeg管道输出到bash命令

我想在bash使用管道在同一行执行命令。

我所试图做的是这样的:

echo "Hello" | somecommand | ffmpeg -i _____ -f mp2 output.mp3 

_____somecommand输出。有什么办法可以做到这一点?

+0

'ffmpeg'支持[libflite(https://开头ffmpeg.org/ffmpeg-filters.html#flite)可以从文本文件中制作音频。 – LordNeckbeard

回答

3

你可以在中间的说法在这里使用command substitution

ffmpeg -i "$(echo 'Hello' | somecommand)" -f mp2 output.mp3 
+0

'somecommand'实际上代表'text2wave'函数,那么如何从中获取输出.wav文件并将其传递到ffmpeg? – cp101020304

+0

这可以在同一条线上完成吗? – cp101020304

+0

是我已经展示的是相同的行语法。它会是:'ffmpeg -i“$(echo'Hello'| text2wave)”-f mp2 output.mp3' – anubhava

5

尝试使用xargs的

echo "Hello" | somecommand | xargs ffmpeg -f mp2 output.mp3 -i 

echo "Hello" | somecommand | xargs -i ffmpeg -i {} -f mp2 output.mp3