如何告诉默认的Chromecast接收器他必须播放m3u8文件中的最后一个块(.ts)?
我开发了一款播放实时电视流(HLS)的Android应用。所以我有一个.m3u8文件的链接,它包含三个链接到另一个m3u8文件(对于不同的BANDWIDTH),它们有一个块列表(.ts)。每个块都是录制电视流的最后10分钟的一部分。
以下是我在发件人应用中的代码:
MediaMetadata movieMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE);
movieMetadata.putString("mediaType", "video");
movieMetadata.putString(MediaMetadata.KEY_TITLE, "some title");
movieMetadata.putString(MediaMetadata.KEY_SUBTITLE, "some subtitle");
MediaInfo mediaInfo = new MediaInfo.Builder("myurl.m3u8")
.setMetadata(movieMetadata)
.setMediaTracks(tracks)
.setStreamType(MediaInfo.STREAM_TYPE_LIVE)
.setContentType("application/x-mpegURL")
.build();
remoteMediaClient.load(mediaInfo, true);
问题是Default Receiver播放FIRST块,但必须播放LAST,因为它是LIVE流。这导致10分钟的延迟。我试图在方法加载(...)中设置一个特定的位置并使用STREAM_TYPE_BUFFERED,但是没有效果。有什么建议吗?