播流/播放常见问题

更新时间:
复制 MD 格式

视频直播服务支持哪些直播流播放协议?

如何获取播放地址

如何获取鉴权播放地址

视频直播无法使用HTTPS访问资源

控制台无法观看直播流和录制文件

直播无法观看或播流404问题排查

直播RTMPFLV播放正常而HLS播放失败

直播FLV播放正常而RTMP播放失败

Flash播放器无法拖拽

播放器播放m3u8提示跨域错误

使用播放器播放时画面花屏

使用阿里云视频直播时视频画面存在黑边间隙

直播出现音视频不同步

视频直播出现卡顿现象

直播过程中暂停播放后,再次播放时如何赶上最新直播片段

播放画面异常(黑屏/无画面/闪退)

控制台或浏览器播放只有声音无画面

问题现象:在控制台或浏览器中播放直播流时,有声音但无画面,或提示解码失败。

解决方案

  1. 排查推流端是否使用 H.265 编码,部分浏览器不支持 H.265 解码,无法渲染画面。

  2. 若是,将推流端视频编码切换为 H.264 或 AV1 等通用格式。

  3. 如需保留 H.265 编码,使用支持 H.265 的专用播放器(如阿里云播放器)播放。

直播突然黑屏但重进恢复

问题现象:直播观看过程中画面突然黑屏,退出后重新进入可恢复;或画面闪一下后消失。

问题原因

  • 推流端时间戳紊乱:推流端音视频 DTS 增长过大或非递增,导致播放器解析失败。

  • 关键帧缺失:推流端未定期插入关键帧,播放器无法正常解码。

  • 推流端网络波动:推流端网络不稳定,数据传输中断。

解决方案:

  • 检查推流设备和软件稳定性,确保推流端正常运行。

  • 设置 GOP 在 2 秒以内,确保定期插入关键帧。

  • 排查推流端带宽及网络状况,确保上行带宽充足、连接稳定。

鸿蒙系统下 Web 播放器白屏如何解决?

问题现象:在鸿蒙系统设备上使用 Web 播放器播放直播流时,页面白屏、无画面。

问题原因:旧版本 Web 端播放器 SDK 不兼容鸿蒙系统环境。

解决方案:

  • 将 Web 端播放器 SDK 升级至 2.37.8 及以上版本以兼容鸿蒙环境。

  • 确认已正确配置 Web 端播放器 License:端类型需选择「Web 端」且 License 已与应用绑定,配置方式参见 License 集成指南「配置 License」章节下的「Web 端 SDK License 获取与配置」小节。

警告

待人工确认:全仓代码检索未检出「2.37.8」「白屏」字符串,也未检出 Web 播放器与鸿蒙兼容性的任何代码或文案依据;版本号与「旧版本不兼容鸿蒙」的因果链均源自工单描述,需业务侧人工核实后再对外发布。代码中命中的 HarmonyOS 均属于移动端原生应用创建场景(HarmonyOS BundleID 表单项、PlatformEnum.HarmonyOS 归入 mobile 分组),与鸿蒙设备上的 Web 播放器白屏问题无关,不可混用作为本条依据。

RTMP 协议播放出现绿屏

问题现象:使用 RTMP 协议播放直播流时画面出现绿屏。

解决方案:

  • 将播放协议切换为 FLV 或 M3U8(HLS)协议。这两种协议相对更稳定,有助于解决偶发的绿屏问题。

iOS 设备及 Mac 端播放视频有声音无画面或快进卡顿如何排查?

排查建议:

  1. 优先更换网络环境后重试。

  2. 切换其他 iOS 设备或 Android 设备进行对比测试,以排除特定设备或网络环境问题。

  3. 若以上基础排查未解决,再进一步分析是否为多端兼容性问题。

播放报错与加载失败排查

报错 4008「缓冲数据超时」

问题原因:播放端网络连接不稳定,或播放器缓冲策略配置不当,数据加载超时。

解决方案:

  • 检查播放端网络连接,确保网络稳定。

  • 刷新页面或重新加载播放器重试。

  • 如问题持续,排查播放端缓冲策略配置是否合理。

H5 播放器加载 m3u8 格式直播流时报错 manifestLoadError(错误码 4006)

问题原因

  • HTTPS 证书或 CORS 配置异常:播放域名的 HTTPS 证书未正确配置,或未设置 CORS 跨域策略。

  • Referer 防盗链拦截:开启 Referer 防盗链后,播放器域名未加入白名单。

  • 流地址参数不匹配:URL 中的 AppName 或 StreamName 与控制台配置不一致。

解决方案:

  • 检查播放域名的 HTTPS 证书是否正确配置,确认证书有效且域名匹配。

  • 确认 CORS 跨域配置已允许播放器所在域名访问。

  • 如开启 Referer 防盗链,将播放器域名或阿里云默认 Referer 加入白名单。

  • 核对播放 URL 中的 AppName 和 StreamName 与控制台推流配置完全一致。

多路并发拉流失败

问题现象:同时拉取多路直播流时部分流加载失败,关闭某路后其他路恢复正常。

问题原因

  • StreamName 冲突:多路流的 StreamName 存在重复,资源分配冲突。

  • 播放端资源限制:播放器本地连接数或解码资源受限,无法同时处理多路流。

解决方案:

  • 检查各路流的 StreamName 是否唯一,避免名称冲突。

  • 排查播放器的并发连接限制,必要时调整播放器并发配置或分批拉流。

iOS 集成 AliPlayerSDK 播放 RTMP 流超时怎么办?

问题原因:iOS 端支持 RTMP 拉流,但不能使用 Xcode 在线调试。如果手机和电脑通过 USB 连接进行调试,会导致播放超时。

解决方案:

  • 断开 USB 连接后再进行测试播放。

提示“接收音频帧时间间隔过大”并伴有卡顿

问题原因:该提示说明推流端送达的音频帧不连续,根因在推流侧输入不稳定,平台侧无法通过配置规避。

解决方案:

  1. 校对推流参数:帧率不低于 15 帧每秒,关键帧间隔(GOP)不超过 2 秒,码率保持稳定不频繁波动。

  2. 检查推流设备的处理器占用与上行网络质量,设备负载过高或上行带宽不足会直接导致音频帧堵塞。

  3. 确认音频采集未被其他应用抢占,并使用固定采样率与 AAC 编码推流。

拉流返回 404,流恢复后播放器不自动重连

问题原因:404 表示当前流不存在(未推流或已断流)。播放器遇到 404 时默认不会持续自动重试,需由业务层实现恢复逻辑。

解决方案:

  1. 监听播放器错误事件,捕获到 404 后延时 2~5 秒重新发起播放,并限制重试次数避免频繁请求。

  2. 更稳妥的做法:先调用查询推流信息接口确认流已开始推送,或通过推流断流回调感知开播状态,再发起播放。

  3. 业务侧可在未开播时展示占位页或轮播内容,避免直接向观众暴露报错。

云端混流(合流)后小窗流播放失败

问题现象:主流可正常播放,合流中的小窗画面缺失或混流任务未启动。

解决方案:

  1. 参与混流的各路流,AppName 与 StreamName 不能重复,必须互不相同。

  2. 推流地址建议统一使用控制台地址生成器生成,避免手工拼接导致鉴权或参数出错。

  3. 小窗流地址需有效且与主流协议保持一致;混流任务至少需要一路有效推流才会启动。

播放协议、编码与延迟优化

ARTC 格式直播流为什么在浏览器/VLC/自研播放器中无法播放?

问题原因:ARTC 协议不能用普通浏览器、VLC 或自研播放器直接播放,必须集成阿里云 RTS 播放 SDK 或使用官方 Web 播放器。

解决方案:

  • 使用阿里云 Web 播放器或集成 RTS 播放 SDK 播放 ARTC 流。

  • Chrome 等浏览器无法播放 ARTC 时,优先检查播流域名的 HTTPS 证书是否有效(ARTC 要求有效证书,不同浏览器校验策略不同)。

  • 无法集成 SDK 的场景,可改用 HTTP-FLV/HLS 等通用协议播放(延迟高于 ARTC)。

播放延迟大,如何降低延迟?

解决方案:

  • 优先使用 HTTP-FLV 或 RTMP 协议播放,HLS(M3U8)延迟相对较高。

  • 推流端将 GOP(关键帧间隔)设置为 1~2 秒,GOP 过大会显著增加首屏时间和延迟。

  • 对延迟要求严苛(秒级以内)的场景,建议使用超低延时直播 RTS。

FLV 播放报“不支持此编码”,阿里云 Web 播放器支持哪些音视频编码?

问题原因:阿里云 Web 播放器音频仅支持 MP3 和 AAC 编码,推流端使用 pcm_alaw 等其他音频编码时,播放会报“不支持此编码”。

解决方案:

  • 将推流端音频编码切换为 AAC 或 MP3。

  • 如需使用 H.265 拉流播放,需先通过商务申请开通,并在播放地址中添加参数 is_enhanced_rtmp_play=on

如何配置播放器 SDK 以支持 H.265 格式播放?

说明:若需使用阿里云播放器 SDK 播放 H.265 格式直播流,需满足以下前提:

  • 先申请开通 H.265 播放权限(或在后台配置项目支持 H.265)。

  • 在播放地址中添加参数 is_enhanced_rtmp_play=on

本条侧重播放器 SDK 配置与播放地址参数;如需排查编码格式导致的「有声音无画面」问题,请参考本文档「控制台或浏览器播放只有声音无画面」条目。

播放失败或卡顿,如何判断是推流端还是拉流端问题?

排查思路:

  1. 查看控制台推流事件日志:若推流频繁断开重连,属于推流端网络问题,建议推流码率不超过 4Mbps、使用有线网络、就近接入节点并开启自动重连。

  2. 源流卡顿会导致所有拉流、转推同步卡顿,此类问题根因在推流源头而非 CDN 分发。

  3. 使用控制台自助问题排查工具检测推流/播流地址有效性与鉴权配置是否正确。

  4. 推流正常而部分观众卡顿时,排查观众侧网络质量与播放器缓冲配置。

使用 live-player 等第三方插件拉流画面卡住如何排查?

排查步骤:

  1. 使用阿里云播放器官方 Demo进行对比测试:视频类型选择直播,输入拉流地址预览。

  2. 若 Demo 播放正常,则问题出在第三方插件或客户端环境,需排查客户端日志。

  3. 若 Demo 仍复现卡顿,检查拉流域名离线日志,排除服务端 5xx 错误及 403/404 配置问题。

如何判断当前使用的是超低延时直播 1.0 还是 2.0?

判断方法:在控制台的域名管理中打开目标域名,查看推流信息与协议配置:若仅开启了常规协议、未开启超低延时 2.0 相关开关,则为 1.0。1.0 为默认状态,只要未主动升级即为 1.0。

为何需要先判断版本:

  • 两个版本的降延迟参数与推荐配置不同,按错误版本调整不但无效,还可能劣化体验。

  • 升级为 2.0 需单独开启,升级后播放地址与计费项可能发生变化,请先在测试环境验证。

标准直播(原画)与超低延时能否共用同一个推流地址?

可以共用同一个推流地址,一路推流可同时提供标准直播与超低延时播放。

  • 前提:两边使用的 AppName 与 StreamName 必须完全相同。

  • 区别在播放侧:标准直播使用常规协议播放地址(如 FLV、HLS),超低延时使用超低延时协议地址;两个播放地址不同,但对应同一路推流。

  • 计费上两种播放分别统计,超低延时流量不能用标准直播流量包抵扣。

推流正常,但控制台历史流列表查不到记录

排查顺序:

  1. 确认是否开启了半秒延时模式:该模式下不存储历史流信息,这是最常见原因,关闭后重新推流即可正常记录。

  2. 确认查询的 AppName、StreamName 与推流时完全一致(区分大小写),且域名选择正确。

  3. 历史流仅展示已结束的推流,进行中的推流请在在线流列表查看。

  4. 历史流记录保留期为 30 天,超出保留期的记录不再保留;如需长期留存,请自行通过接口定期拉取并存储。

使用 SRT 推流,网络切换时会不会断流?

会断流。网络切换(如无线局域网与移动网络互切)会使链接中断,SRT 本身的丢包重传能力不能避免链接重建。

  • 需在业务侧实现断流检测与自动重连,不要依赖推流端默认行为。

  • 协议组合上,SRT 推流与超低延时协议播放可以配合使用。

  • 建议上线前针对自身网络环境做多场景切换测试,评估重连耗时与观看体验。