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

Expo-Video欧洲设备播放1秒卡顿的技术排查问询

Expo Video 地域播放卡顿问题排查

场景概述

基于Expo SDK 55开发的React Native应用中,使用expo-video组件播放存储在AWS S3桶的聊天开场短视频,所有印度设备均可正常播放,但欧洲设备播放约1秒后就会卡顿,无可见错误提示,Sentry仅能捕获卡顿前的正常播放事件。

已捕获的播放器事件序列

  • session_start
  • play_requested
  • progress_started
  • 若干playback_tick事件
  • 播放停止推进,全程未触发status_error、freeze_detected或duration_mismatch事件

核心组件代码示例

const player = useVideoPlayer(videoSource, (player) => {
  player.loop = false;
});

useEffect(() => {
  player.volume = isChatAudioEnabled ? 1.0 : 0;

  const statusSub = player.addListener("statusChange", (payload) => {
    if (payload?.error) {
      // 记录错误日志
    }
  });

  const timeSub = player.addListener("timeUpdate", ({ currentTime }) => {
    // 检测播放进度/卡顿
  });

  player.play();

  return () => {
    statusSub.remove();
    timeSub.remove();
    player.pause();
  };
}, [player, videoSource]);

视频编码参数(AWS S3存储)

  • 视频编码:H264 Main/Baseline
  • 像素格式:yuv420p
  • 音频编码:AAC LC
  • 已添加+faststart处理,moov原子置于文件头部

怀疑的可能原因

  • CDN/网络/地域路由问题
  • 编码或远程媒体交付问题
  • expo-video的设备/播放器特性问题
  • iOS区域或语言环境相关问题

待解答问题

  1. 调试expo-video中视频启动后卡顿的最佳方法是什么?
  2. 特定区域的网络/CDN行为是否会导致此类卡顿且不触发明确的播放器错误?
  3. expo-video是否存在已知问题,导致播放停止推进但不触发statusError?
  4. 应添加哪些额外诊断日志来区分媒体交付问题与播放器问题?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.02 01:27:27