我有一个 Android 应用程序,它通过 Google Cast 从网络(主要是 icecast)播放实时流。一切正常且快速,但现在某些流开始(发出声音)需要更长的时间。这可能与 Chromecast 固件升级有关,因为我的 Chromecast 设备最近更新到最新版本 (1.32.124602)。
这是我通过 Cast 播放流的方式:
MediaMetadata metadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_GENERIC);
metadata.putString(MediaMetadata.KEY_TITLE, "My title");
metadata.putString(MediaMetadata.KEY_SUBTITLE, "My subtitle");
metadata.addImage(new WebImage(myImageUri);
MediaInfo mediaInfo = new MediaInfo.Builder(streamUrl)
.setStreamType(MediaInfo.STREAM_TYPE_LIVE)
.setContentType("audio/mpeg")
.setMetadata(metadata)
.build();
MediaLoadOptions options = new MediaLoadOptions.Builder()
.setAutoplay(true)
.setPlayPosition(0)
.build();
sessionManager.getCurrentCastSession().getRemoteMediaClient().load(mediaInfo, options);
Run Code Online (Sandbox Code Playgroud)
奇怪的是,有些流非常快,有些则不然:
我还注意到 load() 函数的 ResultCallback 对于第二个流几乎立即触发,而第一个需要大约 3 秒。
我感谢任何帮助或想法如何解决这个问题。
android audio-streaming internet-radio google-cast chromecast