android - 无法在 Chrome Cast 设备上流式传输视频

标签 android chromecast google-cast m3u8

您好,我正在开发小型 Android 应用程序,在其中启用 chromecast 支持。我已经构建了小型视频流应用程序,并尝试在 Chrome Cast 设备上流式传输它。如果使用带有 mp4 扩展名的媒体文件,那么它工作正常,但是当我尝试流式传输带有 m3u8 扩展名的媒体文件时,它无法工作。我的媒体信息数据如下所示

      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") 但它不是能够传输数据。但在设备上它工作正常,但在 chromecast 设备上它无法正常工作。

有没有办法解决这个问题。需要帮忙。谢谢。

最佳答案

您为内容类型设置的 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();

关于android - 无法在 Chrome Cast 设备上流式传输视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26016431/

相关文章:

android - 如果调用了 onApplicationDisconnected,如何断开 Android 设备与 Chromecast 的连接

android - 谷歌 Chromecast Android SDK : RemoteMediaPlayer Load() returns Service_Missing error

ios - google chromecast 中的设备 Controller 应用程序连接失败

java - 我可以在日历 View 中动态更改一周中不同日期的颜色吗?

Android OpenGL 库 + 用于准备 opengl 图形的软件,实际使用

java - 如何使用 Color.rgb?

android - runOnUiThread 导致应用程序变慢并最终强制关闭

android - 无效的应用程序 ID - chromecast

javascript - 在 Chromecast 上切换音轨

ios - 无法在 iOS 应用程序中通过谷歌正确转换视频