AndroidExoPlayer播放音频有延迟
创始人
2024-10-07 16:31:08
0
  1. 使用AudioTrack作为音轨播放器

ExoPlayer内置了一个AudioTrack音轨,可以通过以下方式启用它:

AudioTrack audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT, bufferSize, AudioTrack.MODE_STREAM);

DefaultAudioSink audioSink = new DefaultAudioSink(audioTrack, new AudioProcessor[0]);

SimpleExoPlayer player = new SimpleExoPlayer.Builder(context).setAudioSink(audioSink).build();

  1. 调整缓冲大小

ExoPlayer播放音频时,可能会存在造成延迟的缓冲,通过调整设备输出的缓冲区大小,可以减小延迟。可以使用以下示例代码:

AudioTrack track = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT, bufferSize, AudioTrack.MODE_STREAM);

track.setPlaybackRate(sampleRate);

track.setBufferSizeInFrames(bufferSize);

  1. 调整播放器缓冲大小

通过调整播放器的缓冲大小,可以减小延迟。在创建ExoPlayer时,设置LoadControl对象即可进行缓冲区的大小调整:

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

SimpleExoPlayer player = new SimpleExoPlayer.Builder(context).setLoadControl(loadControl).build();

以上是几种解决ExoPlayer播放音频延迟问题的方式,选择合适的方式便可解决问题。

相关内容

热门资讯

透视中牌率!德州局透视脚本下载... 透视中牌率!德州局透视脚本下载安装最新版本,wpk安卓下载辅助,教程书教程(有挂技巧)-哔哩哔哩1、...
透视系统!sohoo辅助,如何... 透视系统!sohoo辅助,如何下载德普之星辅助软件,操作教程(有挂功能)-哔哩哔哩一、如何下载德普之...
透视神器!wepoker怎么破... 透视神器!wepoker怎么破解游戏,wepoker高级辅助,课程教程(确实有挂)-哔哩哔哩1、每一...
透视辅助!哈糖大菠萝可以开挂吗... 透视辅助!哈糖大菠萝可以开挂吗,wpk免费辅助,手册教程(有挂攻略)-哔哩哔哩1、哈糖大菠萝可以开挂...
透视存在!竞技联盟破解版最新版... 透视存在!竞技联盟破解版最新版,wepoker辅助器官方,操作教程(有挂攻略)-哔哩哔哩竞技联盟破解...
透视游戏!wepoker破解器... 透视游戏!wepoker破解器激活码,epoker有透视吗,绝活教程(证实有挂)-哔哩哔哩1、全新机...
透视挂透视!werplan免费... 透视挂透视!werplan免费挂下载,wepoker的辅助器,资料教程(有挂分享)-哔哩哔哩该软件可...
透视了解!德普之星透视,hhp... 透视了解!德普之星透视,hhpoker辅助挂是真的吗,方针教程(有挂辅助)-哔哩哔哩1、进入游戏-大...
透视存在!德普之星透视辅助软件... 透视存在!德普之星透视辅助软件激活码,wepokerplus万能挂,课程教程(确实有挂)-哔哩哔哩1...
透视智能ai!wepoker智... 您好,wepoker智能辅助插件这款游戏可以开挂的,确实是有挂的,需要了解加去威信【48527505...