Chromecast 设备在寻找预定义的播放位置时存在音频和视频信号之间的同步问题
Chomecast device has an synchronization issue between audio and video signals when seeking to pre-defined playback position
我正在使用 Exoplayer 的 CastPlayer class,它支持在我的 Android 应用程序和 Chomecast 的默认 CAF 接收器应用程序中投射到 chromecast 设备。
当我在开始位置投射视频时一切正常(低于变量 positionMs 为 0)。
loadItem(com.google.android.gms.cast.MediaQueueItem item, long positionMs)
但是当我将视频投射到远高于 0 的预定义位置(例如:positonMs=1800000 ~ 30 分钟)时,chromecast 会在下方显示音频和视频信号之间的同步问题。
1. 有时,视频信号比音频信号快或慢,反之亦然。
2. 有时视频信号卡住音频(但声音不正常)
3. 有时,视频和音频信号很好。
有没有人遇到同样的问题,有什么解决办法吗?
P/S:我正在 chromecast ultra 4K 和 chomecast 2nd 设备上进行测试。
感谢您的关注与帮助,
此问题的当前解决方法是使用自定义 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;
}
});
我正在使用 Exoplayer 的 CastPlayer class,它支持在我的 Android 应用程序和 Chomecast 的默认 CAF 接收器应用程序中投射到 chromecast 设备。 当我在开始位置投射视频时一切正常(低于变量 positionMs 为 0)。
loadItem(com.google.android.gms.cast.MediaQueueItem item, long positionMs)
但是当我将视频投射到远高于 0 的预定义位置(例如:positonMs=1800000 ~ 30 分钟)时,chromecast 会在下方显示音频和视频信号之间的同步问题。 1. 有时,视频信号比音频信号快或慢,反之亦然。 2. 有时视频信号卡住音频(但声音不正常) 3. 有时,视频和音频信号很好。
有没有人遇到同样的问题,有什么解决办法吗?
P/S:我正在 chromecast ultra 4K 和 chomecast 2nd 设备上进行测试。
感谢您的关注与帮助,
此问题的当前解决方法是使用自定义 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;
}
});