PC设备视频正常播放时,点击暂停后,再点击播放报错。

过滤Hilog日志中media_service媒体服务的日志信息,查看播放器流程是否正常,如果播放器状态变化与实际显示不符,说明播放器状态机回调处理时出现问题。
- // 媒体服务日志显示播放器状态切换为inited状态
- 06-10 08:24:22.977 1737 64160 I C02B2B/media_service/PlayerServer: #1798 instance: 0xDB4240 change state to inited_state
- // Callback State change说明播放器状态机回调变更,currentState is PLAYER_STATE_ERROR说明状态机切换发生错误
- 06-10 08:24:22.977 1737 64160 I C02B2B/media_service/PlayerServerTaskMgr: #212 0xDB43C0 task[preparing->prepared done] end
- 06-10 08:24:22.978 1737 64160 I C02B2B/media_service/PlayerServerState: #153 0xEEA6D8 Callback State change, currentState is PLAYER_STATE_ERROR
- // 播放器状态机回调错误,返回unsupport interface错误信息
- 06-10 08:24:22.978 1737 64160 E C02B2B/media_service/HiPlayerCallbackLooper: (DoReportError(), 252): Report error, error type: 0 error value: 331350544
- 06-10 08:24:22.978 1737 64160 E C02B2B/media_service/PlayerListenerProxy: #91 player callback onError, errorCode: 331350544, errorMsg: unsupport interface
界面截图显示暂停按钮状态,然而播放器实际状态没有进入paused状态,而是initialized状态,此时点击播放按钮,无法直接从inited状态变化到playing状态,从而导致播放器错误,日志信息中体现的当前状态为PLAYER_STATE_ERROR,说明在状态变化时发生了错误。
参考demo中setAVPlayerCallback方法对于状态机逻辑的监听变化,避免状态的异常导致播放器报错。
合作咨询
我们的专家服务团队将竭诚为您提供专业的合作咨询服务
解决方案
精准高效的一站式服务支持,助力开发者商业成功
