以下命令获取 mp3、附加图像并将其转换为 mp4:
ffmpeg -i input.mp3 -loop 1 -i image.png -c:a copy -c:v libx264 -shortest output.mp4
我需要对文件夹中的所有 mp3 执行此操作。我该如何编写代码?
答案1
假设 Linux 或某种 UNIX 版本,image.png
其文字如下:
cd /media/volume/mp3_directory
ls *.mp3 | while read mp3File ; do outputFile=$(basename "${mp3File}" .mp3) ; ffmpeg -i "${mp3File}" -loop 1 -i image.png -c:a copy -c:v libx264 -shortest "${outputFile}".mp4 ; done
答案2
如果您想要批量转换,则应使用 shell(假设是 Linux)。使用 find 返回目录中的所有文件,并使用 '| xargs' 将给定的 ffmpeg 命令应用于每个文件。
答案3
echo “将源 Mp3 文件重命名为 audio.mp3” echo “输出 Mp4 文件为 video.mp4”
ffmpeg -r 1 -loop 1 -i 图像.jpg -i 音频.mp3 -acodec copy -r 1 -shortest -vf scale=640:480 视频.mp4 rm 音频.mp3
以上是将 mp3 转换为 mp4 的代码,并使用 image.jpg 作为视频图像,希望脚本将文件夹中的所有 mp3 转换为 mp4 并保存,例如 video01.mp4 video02.mp4 如果你理解我的意思