我正在尝试编写一个shell脚本,它将从文件夹中的所有电影文件中提取音频。
audio_extracter.sh
for f in *; do
if [ "$f" != "audio_extracter.sh" ]; then
/usr/bin/avconvert --source "$f" --output */Converted/"$f" --audioTrack -af aac
echo "$f converted"
else
echo "problems"
exit 1
fi
done
它正在吐痰avconvert is a command line application that will transcode a source or group of sources to create a destination file output...
此外,如果可能的话,脚本应该找出视频中的音频格式并将其提取出来,而不是将其转换为不同的格式(目前我认为我强迫它转换为AAC) 。
有关如何使这项工作的任何想法?
答案 0 :(得分:1)
-acodec copy
在ffmpeg中提取音频而无需重新编码:
for f in *.mkv; do ffmpeg -i "$f" -acodec copy "${f%mkv}aac"; done
您可以使用ffmpeg -i input.mkv
查看音频流的格式。
答案 1 :(得分:0)
如果你可以使用mencoder,那就试试吧。这个对我有用。 (视频格式如mkv,mp4,flv,rmvb都可以)
mencoder -oac mp3lame -ovc copy -of video_file -o audio_file.mp3