OBS 推流参数怎么设:码率、分辨率、关键帧间隔与编码器选择
面向企业直播和课程直播的 OBS 推流设置指南:如何根据上行带宽确定码率,分辨率和帧率怎么取舍,关键帧间隔为什么建议 2 秒,x264 与硬件编码器(NVENC、QuickSync、AMF、Apple VT)如何选择,以及开播前的检查清单。
TL;DR 要点速览
- 先测上行带宽,再定码率:推流总码率(视频+音频)建议不超过稳定上行带宽的 60%~70%,给网络波动留余量。
- 分辨率和帧率要和码率匹配:码率不够时,720p 清晰稳定往往比 1080p 糊、卡更好;讲课和会议类内容用 30fps 足够。
- 关键帧间隔设为 2 秒是多数平台的通用要求,它影响首屏时间、延迟和转码切片对齐。
- 有独立显卡或较新的核显时优先用硬件编码器,CPU 余量充足且追求同码率画质时再考虑 x264。
很多企业第一次做直播,都是从 OBS 开始的:免费、开源、跨平台,推流到任何支持 RTMP 的平台都行。但 OBS 的设置项很多,默认值不一定适合你的网络和场景。本文按「先定码率、再定画面、最后定编码器」的顺序,讲清楚几个最影响直播质量的参数。
先定码率、再定画面、最后定编码器——顺序对了,大多数推流问题都能提前避免。
一、先测上行带宽,再定码率
推流吃的是上行带宽,而不是平时测速时最显眼的下行带宽。开播前建议在推流电脑上,用测速工具多测几次上行速度,取一个稳定的较低值。
确定码率时遵循一个简单原则:视频码率 + 音频码率 ≤ 稳定上行带宽 × 60%~70%。剩下的余量用来应对网络波动,以及同一网络里其他设备的占用。
举例:稳定上行约 10 Mbps,那么推流总码率控制在 6000 kbps 左右比较稳妥。如果办公网络是多人共享的,最好给推流电脑接网线,或者单独拉一条线路。
在 OBS 中,码率在「设置 → 输出」里配置(输出模式选「高级」可以看到更多选项):
- 码率控制:选 CBR(恒定码率)。直播平台和 CDN 更喜欢稳定的码流。
- 视频码率:按上面的原则设定,同时参考直播平台给出的推荐值。
- 音频码率:讲话类内容 128 kbps 足够,音乐演出类可以设为 192~320 kbps。

二、分辨率与帧率:和码率相匹配
分辨率和帧率在「设置 → 视频」里配置,有两个值需要分清:
- 基础(画布)分辨率:OBS 里合成画面用的尺寸,一般和显示器或主摄像头一致。
- 输出(缩放)分辨率:真正编码推出去的尺寸,它和码率要相互匹配。
码率不足时硬推 1080p,画面在运动时会出现明显的马赛克。下表是常见的经验搭配,最终以直播平台的推荐值为准:
| 输出分辨率 / 帧率 | 视频码率经验值 | 适合场景 |
|---|---|---|
| 1280×720 / 30fps | 2500~4000 kbps | 讲课、访谈、上行带宽有限 |
| 1920×1080 / 30fps | 4500~6000 kbps | 发布会、企业年会、产品演示 |
| 1920×1080 / 60fps | 6000~9000 kbps | 体育、游戏、快速运动画面 |
讲课、会议、带货讲解这类画面变化不大的内容,30fps 已经足够;把省下来的码率用在分辨率和画质上,观众的体感更好。缩放滤镜可以选 Lanczos,缩放后的画面更锐利,但会多占一点 GPU。
三、关键帧间隔:建议手动设为 2 秒
关键帧(I 帧)是能独立解码的完整画面。关键帧间隔(GOP 时长)会影响三件事:
- 首屏时间:观众进入直播间时,播放器要等到下一个关键帧才能出画面,间隔越长,等待越久。
- 延迟:服务端转码和 HLS 切片通常以关键帧为边界,间隔太长会拉长切片,延迟随之变大。
- 画质:间隔太短,关键帧太多,同码率下画质会下降。
综合下来,2 秒是兼顾画质、首屏和延迟的通用设置,主流直播平台的推流指南一般也这样要求。OBS 中关键帧间隔的默认值是 0(自动),建议改为 2。延迟原理的详细分析可以参考《直播延迟从哪里来?》一文。
四、编码器选择:软件编码还是硬件编码
OBS 常见的编码器有两类:
- 软件编码(x264):用 CPU 编码,同码率下画质好,可通过「CPU 使用预设」在画质和性能之间调节(越慢画质越好,CPU 占用越高)。适合 CPU 性能强、余量充足的机器。
- 硬件编码:NVIDIA 显卡用 NVENC,Intel 核显用 QuickSync,AMD 显卡用 AMF,Mac 上用 Apple VT。它们几乎不占用 CPU,较新一代硬件的画质已经很接近 x264 的中等预设。
选择建议:
- 一台电脑同时跑摄像头、PPT、浏览器、录屏时,优先用硬件编码,避免 CPU 满载导致掉帧。
- 硬件编码的预设可以先选「质量」,调优选项保持默认即可。
- H.264 兼容性最好,是推流的首选。HEVC(H.265)和 AV1 更省码率,但要先确认直播平台支持对应的推流格式。
另外,「配置(Profile)」建议选 high;「B 帧」保持默认通常没问题。如果对延迟非常敏感,可以减少或关闭 B 帧,以少量画质换取更低的编码延迟。

五、开播前检查清单
- 推流地址和推流码填写正确,推流码不要截图外传。
- 用「统计」面板(视图 → 统计)试推 10 分钟,确认三类丢帧都接近 0:
- 因编码延迟而跳过的帧:编码器跟不上,可以降低预设或改用硬件编码;
- 因网络而丢失的帧:上行不足或网络不稳,可以降低码率或改用有线网络;
- 因渲染延迟而丢失的帧:场景太复杂或 GPU 被占满,需要精简场景、关闭不必要的来源。
- 在「高级」设置中开启「自动重连」,并设置合理的重试间隔,网络短暂中断后可以自动恢复推流。
- 用另一台设备(最好是手机 4G/5G 网络)观看,确认音画同步、声音大小合适。
- 同时在本地录制一份(录制可以用更高画质),作为直播意外中断时的备份和后期剪辑素材。
结语
OBS 推流的核心就是三件事:码率不超过上行能力,分辨率和码率相匹配,关键帧间隔固定为 2 秒。在此基础上,再根据电脑性能选择编码器,开播前用统计面板做一次完整测试,绝大多数画质和卡顿问题都能在开播前发现并解决。
常见问题(FAQ)
OBS 推流码率设多少合适?
没有统一的数值,关键看上行带宽和目标分辨率。常见经验值是 720p30 约 2500~4000 kbps,1080p30 约 4500~6000 kbps,最终以直播平台的推荐值为准,并保证总码率低于稳定上行带宽的 60%~70%。
关键帧间隔设为 0(自动)可以吗?
不建议。自动模式下关键帧间隔可能很长,导致观众首屏变慢、延迟变大,部分平台还会提示关键帧间隔不符合要求。建议手动设为 2 秒。
CBR 和 VBR 选哪个?
直播推流一般选 CBR(恒定码率),码率稳定,对网络和服务端转码更友好。VBR 更适合本地录制。
推流画面卡顿一定是网络问题吗?
不一定。还可能是编码过载(CPU 或 GPU 跟不上)或渲染延迟(场景太复杂)。可以在 OBS 的「统计」面板查看「因编码延迟而跳过的帧」「因网络而丢失的帧」和「因渲染延迟而丢失的帧」,分别对应编码、网络和渲染三类问题。


