dqz30992
dqz30992
2012-03-16 12:42

如何在PHPmotion中使用ffmpeg&mp4box将视频从任何视频转换为mp4时减小文件大小?

已采纳

I am using ffmpeg & mp4box in my PHPmotion site to convert videos to mp4 format. When I convert a 50MB video to mp4, the file size remain same. So Its affecting the video streaming in my site. So I want to reduce the file size of the video in conversion. This is my code example, that I've used the site for converting m4v videos in PHPmotion.

$ffmpeg_cmd2_2 = "$config[path_to_ffmpeg] -i $raw_video_path -vcodec libx264 -vpre veryfast -crf 15 -b 5120000 -threads 0 -acodec libfaac -ac 2 -ab 128k -ar 44100 -f mp4 $new_flv_1";
$mp4box_cmd = "$mp4box_path -add $new_flv_1 $new_flv_2" 

When I use this command,it converts the m4v file to mp4 format, but the filesize doesn't change. What command I should use in this to reduce the filesize during video conversion in PHPmotion? Can anyone write a ffmpeg command to reduce the filesize during conversion ?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • dp709369831 dp709369831 9年前

    There are two main factors involve in reducing the size of mp4 video

    i: width and height of video, greater their widths, greater will be size and slower will be streaming e,g 360p, 480p, 720p, 1080p

    ii: video bitrate, greater will be their bitrate, higher will be quality, size and slower will be their streaming.

    For faster streaming i recommend using

    i: 480x360 or lower width and height of video ii: -b value 360k or lower. iii: -ab value 64k (optional)

    Hope this will help you.

    点赞 评论 复制链接分享
  • douzhuang2016 douzhuang2016 9年前

    Apart from using smaller video frame size, you need to use higher crf value to achieve bitrate reduction while maintaining good video quality.

    Replace this

    -crf 15 -b 5120000
    

    with

    -crf 22
    
    点赞 评论 复制链接分享