【问题标题】:Exoplayer video loading speedExoplayer 视频加载速度
【发布时间】:2020-01-27 07:38:24
【问题描述】:

我希望在我的项目中实现 exoplayer。我已经成功实现了它,但是视频的加载时间很慢。如何在 exoplayer 中实现或实现视频的快速加载?就像 tiktok 一样 - 立即加载视频并开始播放

【问题讨论】:

  • 提高你的服务器速度,我认为问题可能是服务器速度或互联网速度
  • @ManoharReddy 感谢您的即时回复,我认为这不是互联网速度问题,但在提高速度后我会再试一次,我认为 exoplayer 存在视频初始加载问题和然后播放,像 tiktok 这样的任何其他解决方案都使用立即加载视频。
  • @akash 您是否在适配器或片段中初始化并设置播放器?

标签: android exoplayer


【解决方案1】:

试试下面的代码

它使缓冲时间变小,因此,您可以更快地加载视频。

//Minimum Video you want to buffer while Playing
private int MIN_BUFFER_DURATION = 2000;
//Max Video you want to buffer during PlayBack
private int MAX_BUFFER_DURATION = 5000;
//Min Video you want to buffer before start Playing it
private int MIN_PLAYBACK_START_BUFFER = 1500;
//Min video You want to buffer when user resumes video
private int MIN_PLAYBACK_RESUME_BUFFER = 2000;

LoadControl loadControl = new DefaultLoadControl.Builder()
.setAllocator(new DefaultAllocator(true, 16))
.setBufferDurationsMs(MIN_BUFFER_DURATION,
MAX_BUFFER_DURATION,
MIN_PLAYBACK_START_BUFFER,
MIN_PLAYBACK_RESUME_BUFFER)
.setTargetBufferBytes(-1)
.setPrioritizeTimeOverSizeThresholds(true).createDefaultLoadControl();

TrackSelector trackSelector = new DefaultTrackSelector();
player = ExoPlayerFactory.newSimpleInstance(this, trackSelector, loadControl);

希望对你有帮助!

谢谢。

【讨论】:

  • ,感谢您的回复,我会尝试并告诉您是否存在任何问题。
  • ,DefaultLoadControl.Builder 报错,请告诉我原因。
  • 我没有遇到任何错误请添加此依赖项 - implementation 'com.google.android.exoplayer:exoplayer:2.11.1'
  • 我已经实现了你的代码,它工作正常,但初始加载需要时间,如何解决这个问题。顺便说一句,我会接受你的回答。谢谢。
  • 尽可能缩短缓冲时间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多