# 1M带宽的服务器视频分辨率、帧率和码率应该怎么选 初创团队,或者个人刚开始建视频网站, 考虑到实际情况以及成本,服务器带宽可以从 **1M** 开始。 那么 **1M** 的带宽,视频准备的时候,它的**分辨率、帧率和码率应该怎么选**呢? 先说结论: > 根据大公司的标准,1Mbps带宽应该设置视频帧率 24fps,分辨率 360p,码率 1Mbps 实际操作中,1Mbps带宽可以设置视频帧**率 24fps,分辨率480p或者540p,码率 500Kbps - 700Kbps** 都是可以在**保证视频清晰度的前提下,能顺畅地播放**的。 感兴趣的朋友欢迎仔细阅读(大致耗时 3 分钟)。 ## 电脑数据存储单位Bits和Bytes 电脑存储和互联网中传输的数据通常用**位**(Bits)和**字节**(Bytes)计量。 > At the smallest scale in the computer, information is stored as bits and bytes. * a "bit" is atomic: the smallest unit of storage * A bit stores just a 0 or 1 * Group 8 bits together to make 1 byte (参考下面斯坦福大学在线网址原文) 翻译: > 电脑里的数据以**位(Bits)**和**字节(Bytes)**存储 * “位”是最小的存储单元 * 一个位只能存储 0 和 1 * 8 个位组成一个字节 ## 1M 带宽最大下载速度:128KB/s 通常带宽用的单位是**位(Bits)**,用小写的 **b** 表示,例如 **1M** 带宽完整说法是:**1Mbps**; 而网络下载速度通常用的单位是**字节(Bytes)**,用大写的 **B** 表示,例如 **2M/s** 下载速度完整说法是:**2MB/s** 或者 **2MBps**。 那么按上面字节跟位的关系,可以得出带宽跟下载速度之间的关系如下: > 带宽(位) / 8 = 下载速度(字节) 常见的数据存储单位及其关系如下: | 单位 | 数量 | | ---- | ---- | | bit | 1 位 | | byte | 8 位 | | KB | 1024B | | MB | 1024KB | | GB | 1024MB | | TB | 1024GB | 从而得出 **1M** 带宽的最大下载速度为 **128KB/s** ,计算方法: > 1Mbps / 8 = 1024Kbps / 8 = 128KBps = **128KB/s** ## 根据下载速度反推视频码率 如果你对码率和带宽的单位很熟悉,它们都是**位(Bits)**,那么很容易得出 **1Mbps** 的带宽,视频要想很顺畅地播放,码率不能超过 **1Mbps**。 当然你也可以从下载速度来反推,1Mbps带宽的服务器,视频下载速度如果在 **128KB/s** 以下,就可以顺畅播放,用下载速度乘以8就得出视频的码率不能超过 **1Mbps**。 ## 根据码率选择帧率和分辨率 帧率可以参考谷歌推荐的常用帧率: > Common frame rates include: 24, 25, 30, 48, 50, 60 frames per second 为了减小视频文件大小,可以取最小的 **24帧/s**。 从谷歌推荐的码率及帧率表格来看(见下面参考资料),**480p** 分辨率的码率就达到 **2.5 Mbps**了,是 **1Mbps** 带宽的2.5倍了, 只能选择 **1Mbps** 码率的 **360p** 分辨率了。 实际操作中,可以**选用24帧/s和480p分辨率情况下适当调小码率**,例如:480p分辨率的视频码率调整到 **500Kbps - 600Kbps**,视频清晰度依然能接受,而且这个码率在 **1Mbps** 的带宽下是可以很顺畅地播放的。 下面是一个在 **1Mbps** 带宽服务器里存放的能顺畅播放的视频的部分信息: > Duration: 00:04:33.07, start: 0.000000, **bitrate: 509 kb/s** Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x480 [SAR 4:3 DAR 16:9], 374 kb/s, **23.98 fps**, 23.98 tbr, 24k tbn, 47.95 tbc (default) Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default) 它的分辨率是 **480p**,帧率是 **23.98fps**,码率是 **509kb/s**。 ## 名词解释 * 分辨率 - Resolution,屏幕图像的精密度,通常表示成每英寸像素(Pixel per inch, ppi)和每英寸点(Dot per inch, dpi) * 帧率 - Frame Rate,每一秒播放的画面数量 * 码率 - BitRate,每一秒播放的画面的数据大小,单位是位(Bits) * ps - Per second,每秒的缩写 ## 16:9推荐分辨率 For the default 16:9 aspect ratio, encode at these resolutions: * 7680p (8K): 7680x4320 * 2160p (4K): 3840x2160 * 1440p: 2560x1440 * 1080p: 1920x1080 * 720p: 1280x720 * 480p: 854x480 * 360p: 640x360 * 240p: 426x240 ## 参考资料 * Bits and Bytes web.stanford.edu(斯坦福大学) * YouTube recommended upload encoding settings * Video resolution & aspect ratios