加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何使用bash命令或Ruby使用ffmpeg将mp4文件批量转换为ogg

发布时间:2020-12-15 18:58:49 所属栏目:安全 来源:网络整理
导读:我正在运行OSX,不知道有关视频转换的信息.但我有200个视频都是mp4格式,不能在Firefox中播放.我需要将它们转换为ogg以使用html5视频标记. 这些文件存在于文件夹结构中,这使得一次只能执行一个文件很困难.我希望bash命令或Ruby命令遍历所有子文件夹并找到所有.
我正在运行OSX,不知道有关视频转换的信息.但我有200个视频都是mp4格式,不能在Firefox中播放.我需要将它们转换为ogg以使用html5视频标记.

这些文件存在于文件夹结构中,这使得一次只能执行一个文件很困难.我希望bash命令或Ruby命令遍历所有子文件夹并找到所有.mp4并转换它们.

我找到了一个如何使用Google进行此操作的参考:http://athmasagar.wordpress.com/2011/05/12/a-bash-script-to-convert-mp4-files-to-oggogv/

#!/bin/bash
for f in $(ls *mp4 | sed ‘s/(.*)..*/1/’)
do
ffmpeg -i $f.mp4 -acodec vorbis -vcodec libtheora $f.ogg
done

但不知道如何将其从linux转换为osx.

虽然你问题的直接答案是这样的:
#!/bin/bash
MOVIES=~/Movies/
find "$MOVIES" -name '*.mp4' -exec sh -c 'ffmpeg -i "$0" -sameq "${0%%.mp4}.ogg"' {} ;
exit;

我认为使用VP8 or webm codec可能会找到更好的结果,因为它会给你带来更好的效果,在现代版本的Firefox中实际上是preferred.鉴于此,你应该试试这个:

#!/bin/bash
MOVIES=~/Movies/
find "$MOVIES" -name '*.mp4' -exec sh -c 'ffmpeg -i "$0" -sameq "${0%%.mp4}.webm"' {} ;
exit;

这两种方法都会导致视频质量下降,因为它们会对已经编码的素材进行重新编码,在我看来,即使是webm编解码器也不如使用h.264的正确编码的MP4好.编解码器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读