代码之家  ›  专栏  ›  技术社区  ›  ronline

执行com。代码名1.components。MediaPlayer支持HLS自适应比特率流

  •  2
  • ronline  · 技术社区  · 7 年前

    最适合移动的自适应比特率流是HLS(HTTP实时流)。

    HLS使用主m3u8清单文件将不同的屏幕分辨率与媒体文件块映射,并根据客户端屏幕分辨率和网络波动提供适当的分辨率。

    我已经检查了你的KitchenSink应用程序的代码,我看到你的MediaPlayer正在提供mp4文件。 你们有没有人试图用m3u8清单替换mp4链接? 它应该工作吗? 您是否考虑将现有解决方案包括在您的MediaPlayer中=> https://github.com/videojs/videojs-contrib-hls .

    2 回复  |  直到 7 年前
        1
  •  1
  •   Shai Almog    7 年前

    媒体依赖于本机操作系统播放,因此,如果操作系统支持本机编解码器,它就可以正常工作。

    主要动机是避免媒体的问题性,这是一个专利诉讼和复杂性领域。

    话虽如此,如果您有编解码器的纯Java实现,您可能可以将其移植到Codename One。上述编解码器的JavaScript版本可能也适用于web浏览器组件,但可能无法在模拟器中工作,因为JavaFX的webview在HTML5支持方面相当弱,但可能适用于设备。

        2
  •  1
  •   ronline    7 年前

    我在KitchenSink/src/com/codename1/demos/KitchenSink/Video中用演示m3u8链接替换了mp4媒体链接。java并在iPhone 6S/IOS 11.0.2和Galaxy Tab Note/Android 7.1.1上测试生成的apk和ipa。
    m3u8流媒体在Android和iPhone设备上运行正常。 对于那些需要一些m3u8工作样本的人,请在videojs contrib repos中自助=> https://github.com/videojs/videojs-contrib-hls .