我有一个装满 mp3 文件的文件夹。我想将它们渲染为带有音乐可视化的 mp4 视频文件 - 有没有办法通过命令行做到这一点?
答案1
通用解决方案
使用程序专为视频编辑而创建:
例如,您可能想检查AVI解复用器,一个免费的视频编辑器,专为简单的剪切、过滤和编码任务而设计。你能行从这里下载适用于 Linux、Windows、Mac...
甚至还有一个教程从静止图像和音频文件创建视频。
通过命令行:
你可以下载ffmpeg
并从命令行使用它。它适用于 Linux、Mac 和 Windows。
Bash 解决方案 (Linux / Mac)
如果我们假设您使用的是 Linux,并且安装了所有需要的软件包和编解码器,您可以尝试以下命令:
ffmpeg -loop_input -i image.jpg -i sound.mp3 -shortest -b 1000k -acodec copy out.mp4
或者
ffmpeg -loop_input -i image.jpg -i sound.mp3 -shortest -vcodec libx264 -vpre default -acodec copy out.mp4
将您的sound.mp3
文件out.mp4
与图像一起转换image.jpg
。
当您找到所需的正确的编解码器/选项组合时,您可以执行一个脚本来读取目录中的每个文件,从名称中删除扩展名(.mp3)并添加新的扩展名(.mp4,NewName=$(basename $MyFile .mp3).mp4
),选择您要放入其中的图像并执行您刚刚找到的命令...
如何编写脚本是另一个问题:-),你可以从中获得一些提示文件名扩展, 或者这个问题或者这个。请尽量避免使用 = 解析 的输出ls
,find
而应使用 解决方案...
视窗
也可以创建脚本,或者使用一些免费软件或者共享软件软件,其中AVI解复用器或者视频编辑...或网络向您提供的任何东西。
参考
- 互联网您首选的搜索引擎
- ffmpeg
- 从静止图像和音频文件创建视频
- 从 mp3 和图像创建 Youtube (mp4)
- 如何将 MP3 转换为 MP4
答案2
/sdcard/ghostbox $ ls bank output000.mp3 gbox output001.mp3 image.jpg output002.mp3 mp3tomp4.sh recvol
如何对所有 *.mp3 文件运行下一行第 4 行的命令。
echo “将源 Mp3 文件重命名为 audio.mp3” echo “输出 Mp4 文件为 video.mp4” ffmpeg -r 1 -loop 1 -i image.jpg -i audio.mp3 -acodec copy -r 1 -shortest -vf scale=640:480 video.mp4 rm audio.mp3