感谢支持
我们一直在努力

在Ubuntu下批量转换视频为H.264编码的mp4格式

是目前比较流行的视频编码方式,比起MPEG2在画质大致相同的情况下能再压缩2~4倍,即如果一个DVD视频大小是1GB,用H264编码后能缩小到250MB左右,同时H264视频还能用时髦的浏览器(比如Firefox,Chrome,ie9等)直接播放,如果你有一堆DVD或者Home Video(旧款的家用DV一般是MPEG2格式)想刻录到光盘存档,又或者有一大堆RMVB,AVI等想用iPod,iPad播放,那么用H264编码是一个不错的选择。


Ubuntu 10.10 的软件中心里有一个名为 Transmageddon 软件,可以很方便地制作如 mp4,Ogg,QuickTime等格式。不过如果你有一大批视频需要转换,那么使用 mencoder 程序会比较方便,mencoder几乎支持所有的视频格式,而且可调参数丰富、速度快。


首选你需要安装 mencoder 程序:


$ sudo apt-get install mencoder


查看你系统支持哪些视频和音频编码器:


$ mencoder -ovc help


$ mencoder -oac help


然后查看你系统支持哪些封装格式:


mencoder -of help


如果有mp3lame音频编码器和x264视频编码器以及mp4格式封装,那么所有的条件就已经具备了,否则你可能需要安装相应的音频和视频编码器:


$ sudo apt-get install ffmpeg libavcodec-extra-52


首先试试压缩一段MPEG2视频


$ mencoder m001.mpg -o m001.mp4 -oac mp3lame -ovc x264 -of lavf -vf lavcdeint


上面命令中的 m001.mpg 和 m001.mp4 分别是输入和输出文件名,-oac 用于指定音频编码器,-ovc 指定视频编码器, -of 指定输出文件封装方式,lavf表示输出文件封装方式由输出文件名决定(即你用m001.mp4就用mp4封装,用m001.avi的话就用avi封装),最后 -vf lavcdeint 参数用于去除视频中的拉丝条纹(锯齿纹),如果没有的话不要这个参数也可以。


h264的编码过程比较耗时,在我的电脑(AMD四核2.8G)编码速度大概是 30fps,基本上就是视频播放有多长时间,编码就需要多长时间。


如果没有问题的话,下面我们就可以写一段脚本用于批量转换编码


#!/bin/bash


find . -type f \( -name “*.mpg” -o -name “*.mpeg” \)|while read line;do


echo $line


mencoder $line -o ${line}.mp4 -oac mp3lame -ovc x264 -of lavf -vf lavcdeint


将上面的脚本保存在存放原始视频的文件夹里,然后添加可执行属性再运行,就可以把文件夹里所有后缀名为“mpg”的视频编码为H264+mp4封装的格式了。


除了mencoder之外,还可以使用ffmpeg来编码,详细方法请参考这里。

赞(0) 打赏
转载请注明出处:服务器评测 » 在Ubuntu下批量转换视频为H.264编码的mp4格式
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏