You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用RecordRTC录制的视频无法在iOS Safari/Chrome播放,求兼容格式

RecordRTC兼容iOS设备的录屏格式方案

核心兼容方案

iOS的Safari和Chrome(基于WebKit内核)仅原生支持H.264编码的MP4格式,对应的MIME类型为video/mp4;codecs=avc1,这是目前唯一能稳定兼容iOS的RecordRTC录屏格式。

具体配置示例

在初始化RecordRTC时,直接指定对应的MIME类型及相关参数:

const mediaStream = await navigator.mediaDevices.getDisplayMedia({ video: true });
const recorder = RecordRTC(mediaStream, {
  type: 'video',
  mimeType: 'video/mp4;codecs=avc1',
  videoBitsPerSecond: 2500000, // 控制视频码率,平衡画质和体积
  frameRate: 30 // 适配iOS常见帧率支持
});

为什么之前的格式不兼容

  • video/webm;codecs=vp9:iOS全版本几乎不原生支持VP9编码的WebM视频,无法直接播放。
  • video/x-matroska;codecs=avc1:Matroska(MKV)容器格式未被iOS WebKit内核原生支持,即便编码是兼容的H.264,容器不匹配也无法播放。

额外兼容注意事项

  • 录制完成后,务必将视频保存为.mp4后缀,避免iOS因扩展名识别问题拒播。
  • 针对旧版iOS(iOS 12及以下),建议将H.264编码设置为Baseline或Main profile、Level 3.1及以下,进一步提升兼容性。

内容的提问来源于stack exchange,提问作者coure2011

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 12:42:14