MacOS 下如何把rmvb转换成iphone可以播放的格式(mp4, mov)

首先你需要去下载一个ffmpegx, google一下吧。这个是专门为macos包装的mp4 converter. 安装的同是会告诉你哪里去下载mplayer和mencoder, 都是有用的。

关键点就是rmvb不能通过ffmpegx直接转换成mp4. 因为版权的问题。rmvb只能先转换成avi然后再从avi转换成mp4.

要记住的就是把avi转换成mp4音频要是aac格式。视频你是选mpeg4(.mov)或mpeg4(.mp4)都可以。

但是如果我有大批量的视频要转换,一个一个的转非常慢。怎么办呢?还是用ruby写一个程序去干吧:

rmvb -> avi

MENCODER = "/Library/Application\\ Support/ffmpegX/mencoder "

# get all the rmvbs under folder
Dir.glob("rmvb/*.rmvb") do |x|
File.rename(x, x.gsub(/[^a-z0-9\/.]+/i, '-'))
target_file = x.to_s.gsub(/[^a-z0-9\/.]+/i, '-').gsub(/\Armvb/, 'avi').gsub(/rmvb/, 'avi')
#command = MENCODER + x.to_s + " -o " + target_file + " -of lavf -ofps 25 -oac faac cbr:preset=128 -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=480:352 -srate 22050 -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames"
command = MENCODER + x.to_s + " -o " + target_file + " -of lavf -ofps 25 -oac faac cbr:preset=128 -ovc xvid -xvidencopts bitrate=900 -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames"
unless File.exist?(target_file)
puts command
system (command)
end
end


avi -> mp4

FFMPEG = "/Applications/ffmpegX.app/Contents/Resources/ffmpeg -y -i "

# get all the rmvbs under folder
Dir.glob("avi/*.avi") do |x|
target_file = x.to_s.gsub(/\Aavi/, 'mov').gsub(/avi/, 'mp4')
command = FFMPEG + x.to_s + " -f mp4 -async 1 -s 480x320 -acodec aac -vcodec xvid -dts_delta_threshold 1 -r 25 -b 270k -me_range 25 -i_qfactor 0.71 -g 500 " + target_file
unless File.exist?(target_file)
puts command
system (command)
end
end


你可以让第一个程序先跑一会儿然后再让第二个程序开始跑。这样就可以一次性全部转换好了。代价就是你的mbpro cpu 永远是100%, 风扇4500rpm ;(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值