我有一个小型JavaFX应用程序在Windows / Linux客户端上播放一些GoPro视频。在过去,我使用过GoPro 4.我已经将视频下载到客户端并从本地存储中播放。像这样:
File file = new File("AnyVideo.MP4");
Media m = new Media(file.toURI().toString());
MediaPlayer mp = new MediaPlayer(m);
mp.setAutoPlay(true);
mediaView.setMediaPlayer(mp);
我现在尝试切换到新的GoPro 6。但它并没有像预期的那样发挥作用。
问题可能是JavaFX MediaPlayer不支持新GoPro 6的编解码器。
JavaFX MediaPlayer supports only the h264 codec。
有没有人知道如何使用我的JavaFX应用程序播放h265 HEVC视频。在最好的情况下,一个解决方案可以立即从摄像机播放视频,而无需先将视频下载到客户端。 GoPro有一个小型媒体服务器来通过HTTP获取视频。例如: http://10.5.5.9:8080/videos/DCIM/100/GPR10973.MP4
答案 0 :(得分:3)
原生JavaFX解决方案
也许这是重复的或至少与:
有关请参阅我对该问题的回答,以获取JavaFX错误跟踪系统中相关功能请求的链接。
使用JavaFX中的非JavaFX技术的解决方案
除了那些可能适合您的问题的答案中讨论的解决方案之外,还有其他解决方案。特别是如果您主要关注的是获得某种播放,即使它没有与JavaFX媒体系统进行深度集成。
例如,除了原生JavaFX播放之外的其他方法可能是:
Xuggler处于中断状态,因为没有人正在积极开发它。抱歉。也就是说,你总能找到源代码并开始自己攻击。祝你好运!
在上面列出的选项中,我个人建议使用HostServices在本机浏览器中播放视频,如果这种解决方案可能适合您。
详细介绍各种选项可能超出了StackOverflow的范围(即使上面的列表看起来有时候看起来有点不满意库推荐)。