无法在Chrome投射设备上流式传输视频
问题描述:
嗨,我正在开发小型Android应用程序,我在其中启用了Chrome投射支持。我已经构建了小型视频流应用程序,并试图在Chrome投射设备上进行流式处理。如果使用带有mp4扩展名的媒体文件,那么它工作正常,但是当我尝试使用m3u8扩展名流媒体文件时,它不起作用。我的媒体信息数据看起来像这样无法在Chrome投射设备上流式传输视频
mediaInfo = new MediaInfo.Builder("http://example.com/videos/hercules.mp4/playlist.m3u8")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setContentType("video/m3u8")
.setMetadata(movieMetadata)
.build();
我setContentType("video/application/x-mpegURL")
也setContentType("video/vnd.apple.mpegURL")
尝试,但它不能流数据。但在设备上它工作正常,但在铬铸造设备上它不能正常工作。
有没有解决方案。需要帮忙。谢谢。
答
您为内容类型设置的m3u8文件的正确mimetype应为application/x-mpegURL
。而对于流类型,M3U8视频应该是MediaInfo.STREAM_TYPE_BUFFERED
而HLS流应该是MediaInfo.STREAM_TYPE_LIVE
mediaInfo = new MediaInfo.Builder("http://example.com/videos/hercules.mp4/playlist.m3u8")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setContentType("application/x-mpegURL")
.setMetadata(movieMetadata)
.build();
是否有可能使用此解决方案? http://*.com/questions/24178164/can-chromecast-cast-m3u8-live-stream-on-default-receiver – Chnoch 2014-09-24 12:42:38
你需要提供控制台日志,看看发生了什么;确保CORS要求得到满足。 – 2014-09-24 15:21:38
我在哪里必须提到接收方或发送方的CORS要求?我的发件人方是android媒体流应用程序,接收方是chromecast html5默认应用程序。 – nilkash 2014-09-25 03:58:54