我使用的是Exoplayer的CastPlayer类,它支持在我的安卓应用程序中使用chromecast设备,以及默认的CAF接收器应用程序Chomecast。当我在开头的位置投射视频时,一切工作正常(在变量position is为0的情况下)。
loadItem(com.google.android.gms.cast.MediaQueueItem item, long positionMs)但是当我在预定义的位置投射视频时(例如: positonMs=1800000 ~ 30分钟),chromecast将显示以下音频和视频信号之间的同步问题。1.有时,视频信号比音频信号快或慢,反之亦然。2.有时视频信号被音频冻结(但声音异常) 3.有时视频和音频信号都是正常的。
有没有人遇到过同样的问题,有什么解决方案吗?
P/S:我在chromecast ultra 4K和chomecast 2设备上测试。
感谢您的关注和帮助,
发布于 2019-12-04 17:57:06
此问题的当前解决方法是使用自定义CAF接收器应用程序,并在其中添加以下代码,以便在开始播放视频后同步音频和视频信号。然后问题就解决了。
onceTime = 0;
context.getPlayerManager().addEventListener(
cast.framework.events.EventType.BUFFERING, (event) => {
if (onceTime==0){
context.getPlayerManager().seek(context.getPlayerManager().getCurrentTimeSec()+1);
context.getPlayerManager().seek(context.getPlayerManager().getCurrentTimeSec()-1);
onceTime = 1;
}
});https://stackoverflow.com/questions/59067733
复制相似问题