Chromecast播放m3u8 Android的最后一段(.ts)

时间:2017-05-11 10:28:41

标签: android chromecast hls m3u8

如何告诉默认的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,但是没有效果。有什么建议吗?

0 个答案:

没有答案