【问题标题】:Cast HLS Live stream URL to Cast Device with Cast Companion Library使用 Cast Companion Library 将 HLS 直播 URL 投射到投射设备
【发布时间】:2016-10-08 12:35:19
【问题描述】:
我想使用 Cast Companion Library Android 将 HLS 直播流投射到投射设备。
我尝试了 url,但无法在 Cast Device 上播放。
使用 VOD HLS URL 时,视频可以在 Cast Device 上播放。
我已经更改了流类型:
MediaInfo.Builder(url).setStreamType(MediaInfo.STREAM_TYPE_LIVE)
或者还有什么我必须改变的?
这是我要投射的直播 URL:
http://vevoplaylist-live.hls.adaptive.level3.net/vevo/ch3/appleman.m3u8
如何使用 Cast Companion Library Android 投射 HLS 直播?
有人已经尝试过了,或者是否有任何我可以学习的示例代码?
谢谢
【问题讨论】:
标签:
android
chromecast
google-cast
http-live-streaming
live-streaming
【解决方案1】:
如果不是实时流(即,如果知道持续时间),您应该使用 MediaInfo.STREAM_TYPE_BUFFERED,对于 HLS,您应该将内容类型设置为“application/x-mpegURL”。
总体上应该是这样的:
MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE);
mediaMetadata.putString(MediaMetadata.KEY_TITLE, "Media Title");
MediaInfo mSelectedMedia = new MediaInfo.Builder(
"http://vevoplaylist-live.hls.adaptive.level3.net/vevo/ch3/appleman.m3u8")
.setContentType("application/x-mpegURL")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setMetadata(mediaMetadata)
.build();
int startPosition = 0;
boolean autoPlay = true;
mCastManager.startVideoCastControllerActivity(getContext(), mSelectedMedia, startPosition, autoPlay);
【解决方案2】:
可能还有其他问题,但我注意到的第一个问题是它缺少 CORS 标头。