Skip to content

Instantly share code, notes, and snippets.

@lintianzhi
Last active August 29, 2015 13:56
Show Gist options
  • Save lintianzhi/9088071 to your computer and use it in GitHub Desktop.
Save lintianzhi/9088071 to your computer and use it in GitHub Desktop.
参考

七牛转码引导

在七牛上面使用转码功能,我们根据客户的实际场景提供了一些转码的建议。

转码的容器

  1. mp4
    • mp4 容器的兼容性在所有的浏览器,移动设备里面是最好的
    • 默认使用H.264视频编码器,acc音频编码器
  2. webm
    • webm是Google推行的一款开放、免费使用的视频文件格式
    • 目的是提供高质量的视频压缩以配合HTML 5使用
    • 默认使用vp8视频编码器,vorbis音频编码器
    • 当前厂商的支持为:Mozilla、Opera、Google

如何选择

  1. 使用场景覆盖较多,选择mp4
  2. 在Mozilla、Opera、Google的设备下选择webm

音频编码器

  1. aac
    • 与mp3相比拥有更高的音质,更小的容量
    • 文件拓展名: .aac .m4a
  2. vorbis
    • 当容器为webm时选择vobis

视频编码器

  1. H.264
    • 大部分情况选择H.264,可以保持较高的压缩率和兼容性

码率

码率的选择直接决定了转码后视频的品质和大小,在如何保证转码后文件质量的情况下减少文件大小是很重要的,它们的关系为:

1. 码率越大,质量越好,转码后的文件越大
2. 文件大小 = (音频码率+视频码率)*时长

质量和码率

质量和码率的关系是非常复杂的,如果在对于目标的码率要求不大的时候,可以直接使用我们提供的crf参数,把它设置为18,我们在不影响视频的观看质量下把文件转码成相对小一点的文件。

但是它的压缩效率有限,不能满足在不同设备不同带宽下地观看需求,接下来我们提供一个不同场景下的比特率。以常见的16:9比例做例子,其他的情况可以忽略第一列的类型

类型 视频比特率 音频比特率 建议带宽 使用场景 适合设备
1080p 8,000kbps 384kbps 10Mbps 用于下载到本地播放或带宽足够时的高清视频 iPad 2,iPhone 5等
720p 5,000kbps 384kbps 5Mbps+ 高清视频点播 iPad,iPhone 4等
480p 2,500kbps 128kbps 3Mbps 一个小时大概有1G大小的文件 iPod touch,iPhone 3GS
360p 1,000kbps 128kbps 1Mbps+ 一般的视频,以及最高质量的视频录制教程
240p 500kbps 64kbps 1Mbps- 对于质量要求不高的电影,或者一般的屏幕录制教程
144p 200kbps 64kbps - 网络质量比较差,设备分辨率不高的情况

PS. 屏幕录制的教程代表了画面静止比较多,以及细节较少的场景。这种类型的压缩率往往是比较高的,所以可以在比较低的比特率下得到较高质量的视频

附加

  • 我们默认会在转码的时候把moov atom移到文件头部
  • 编解码器对应表:
编码器 对应参数 类别
H.264 libx264 视频
vp8 libvpx 视频
aac libfaac 音频
vorbis libvorbis 音频
mp3 libmp3lame 音频
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment