【问题标题】:Casting m3u8 file from android app从android应用程序投射m3u8文件
【发布时间】:2017-04-16 23:44:59
【问题描述】:

我正在尝试使用提供的 chromecasting 框架在电视上播放视频。 The approach i followed 播放 mp4 效果很好。但现在我有不同的来源可以玩。我的服务器上有一个由 m3u8 文件指向的视频文件。 因此,为了在电视上播放 m3u8 文件,我使用了以下带有 content-type mentioned here 变体的 MediaInfo 对象。 我返回的 MediaObject 是:`

return new MediaInfo.Builder(Uri.parse(path).toString())
            .setStreamType(MediaInfo.STREAM_TYPE_LIVE)
            .setContentType("videos/mp4") //need to know **what should be content-type here**
            .setMetadata(movieMetadata)
            .setStreamDuration(mSelectedMedia.getData().getDuration() * 1000)
            .build();

请指导我在我的 chromecast 或电视上播放 m3u8 文件。 谢谢

【问题讨论】:

    标签: android video video-streaming chromecast google-cast


    【解决方案1】:

    正如@naddaf 所建议的,CORS 存在问题。所以,我只是在服务器上添加了我的域(gstatic.com 和我的情况下的另一个),从那里我收到了对我的媒体的请求。一切都开始完美运行。

    【讨论】:

      【解决方案2】:

      首先,我看不出您遇到了什么问题;始终将其包含在您的帖子中,以便您获得更好的回复。根据您提供的描述,您似乎正在播放指向某些文件的播放列表;如果是这种情况,则不应将流类型设置为实时流,而应使用缓冲类型(就像您对简单 mp4 所做的那样)。其次,你用的是什么接收器?您的接收器应该能够处理 m3u8 播放列表。如果您使用 Styled 或 Default 接收器(或使用我们 GitHub 存储库中的 Reference 接收器,那么您应该没问题。最后,请确保您使用 https 作为视频流(对于播放列表,它是必需的)以及您的服务器支持 CORS 标头。

      【讨论】:

      • 阿里感谢您的宝贵回复,能否请您多指导一下Receiver。我还没到可以玩我的接收器设备的地步。不确定我是否需要编写单独的应用程序,然后如何在我的 chromecast 设备上调试它?
      • 您可能需要查看developers.google.com/cast/docs/developers 以了解整体架构并了解构建应用程序所需的组件;您需要一个在 chromecast 上运行的发送方应用程序(您编写的 Android 应用程序)和一个接收方应用程序(在 javascript 中)。您可以使用 Google 提供的接收器,而不是编写自己的接收器。详细信息可以在我之前提到的链接中找到。
      • Naddaf 我对默认接收器应用程序没问题(我没有在 chromecast 设备上做任何事情),所以不要干预。那么你能告诉我如何在电视中播放这种类型的视频:“livestreamapis.com/v2/accounts/xxx/events/xxx/videos/…”,其中所有 xs 都代表整数。
      • 如果您使用的是默认接收器,您无需做任何特别的事情;您只需提供一个 MediaInfo,其中包含您的 m3u8 文件的 url,并且流类型设置为 MediaInfo.STREAM_TYPE_BUFFERED。您需要确保您的服务器具有 CORS 标头,并且您的 url 是 https。
      • 服务器支持 CORS 并且 url 也是 https,但是当我通过它进行投射时,它仍然开始加载,然后最终没有视频播放。我已将 STREAM_TYPE 更改为 BUFFERED,内容类型为 application/x-mpegURL。但仍然没有播放视频。请注意,我的 URL 以其他几个参数结束,而只是 m3u8。
      猜你喜欢
      • 1970-01-01
      • 2023-03-17
      • 2015-06-03
      • 2017-11-05
      • 2015-01-06
      • 2016-01-06
      • 2021-03-09
      • 2020-11-30
      • 2016-08-23
      相关资源
      最近更新 更多