【问题标题】:Is it possible to synchronize HLS livestreaming between devices?是否可以在设备之间同步 HLS 直播?
【发布时间】:2018-12-11 04:20:26
【问题描述】:

我设置了一个 2 秒片段长度的 HLS 直播,以及两个可以播放它的设备 - 两部带有 Exoplayer 的 Android 手机。

当我在两部 Android 手机(一部使用移动数据,一部使用 Wi-fi)中开始播放时,由于某种原因,连接到 Wi-fi 的设备比使用移动数据的设备早 2 秒(我注意到它是一个段的差异)。

是否可以让两个设备(这扩展到播放该 HLS 流的所有其他设备)使其播放开始与其他设备的播放同步,例如,从完全相同的实时边缘开始,或者是要求 HLS 流太多了?

编辑:HLS 标签EXT-X-PROGRAM-DATE-TIME 是一种在设备播放之间同步的可行方式吗?

【问题讨论】:

  • 嗨,有什么解决办法吗?

标签: android synchronization http-live-streaming exoplayer


【解决方案1】:

DefaultLoadControl 等到它有 5 秒的缓冲媒体,然后再继续播放。

你可以尝试将bufferForPlayBackMs和bufferForPlaybackAfterRebufferMs改为0,我没有测试。

DefaultLoadControl loadControl = new DefaultLoadControl.Builder().setBufferDurationsMs(minBufferMs, maxBufferMs, bufferForPlaybackMs, bufferForPlaybackAfterRebufferMs).createDefaultLoadControl();

【讨论】:

  • 已经尝试过使用 3000 minBufferedMs、4000 maxBufferedMs、0 bufferForPlaybackMs 和 0 bufferForPlaybackAfterRebufferMs。我可以选择 1000-2000 bufferedMs,但这只会使流缓冲更频繁。
猜你喜欢
  • 2019-08-05
  • 2011-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-05
  • 1970-01-01
相关资源
最近更新 更多