Expo-Video欧洲设备播放1秒卡顿的技术排查问询
Expo Video 地域播放卡顿问题排查
场景概述
基于Expo SDK 55开发的React Native应用中,使用expo-video组件播放存储在AWS S3桶的聊天开场短视频,所有印度设备均可正常播放,但欧洲设备播放约1秒后就会卡顿,无可见错误提示,Sentry仅能捕获卡顿前的正常播放事件。
已捕获的播放器事件序列
session_startplay_requestedprogress_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区域或语言环境相关问题
待解答问题
- 调试
expo-video中视频启动后卡顿的最佳方法是什么? - 特定区域的网络/CDN行为是否会导致此类卡顿且不触发明确的播放器错误?
expo-video是否存在已知问题,导致播放停止推进但不触发statusError?- 应添加哪些额外诊断日志来区分媒体交付问题与播放器问题?
内容的提问来源于stack exchange,提问作者Kartic Joshi
相关产品推荐
相关产品推荐

