Tag: video

Java中的video播放(JMF,Fobs4JMF,Xuggler,FMJ)

我需要用Java简单的video播放。 这是我的要求: 生产质量 打开并解码video文件,我可以选择其video和音频编解码器。 IE我可以选择表现良好的编解码器。 能够播放 , 暂停 ,搜索ToFrame或seekToTime并停止播放。 基本上我希望能够以非线性方式播放单个video文件的片段。 例如,我可能想要播放段20.3秒到25.6秒,暂停10秒然后播放段340.3秒到350.5秒等。 在播放过程中,video和音频必须同步。 video必须显示在Swing JComponent中。 必须能够在商业产品中使用而无需开源(IE LGPL或Comercial是好的) 我的研究让我得到了以下解决方案: 使用Java Media Framework + Fobs4JMF http://fobs.sourceforge.net/f4jmf_first.html 我已经实现了一个快速原型,这似乎做我需要的。 我可以使用以下方式播放video片段: player.setStopTime(new Time(end)); player.setMediaTime(new Time(start)); player.start(); 虽然Fobs4JMF似乎有效,但我觉得代码的质量很差,而且项目不再活跃。 有谁知道任何使用Fobs4JMF的产品? 编写一个播放video的Flash应用程序,并使用JFlashPlayer将其引入我的Java Swing应用程序 与Java不同,Flash在播放video方面非常出色。 我可以使用以下方法编写一个小型Flash应用程序: open(String videoFile), play(), pause(), seek(int duration), stop() 然后使用JFlashPlayer将其带入Java,JFlashPlayer可以从Java调用Flash函数。 我喜欢这个解决方案的是Flash中的video播放应该坚如磐石。 有没有人用JFlashPlayer在Java中播放video? 在Xuggler上面写一个简单的媒体播放器 Xuggler是Java的FFMpeg包装器,它似乎是一个非常活跃和高质量的项目。 然而,实现要求中描述的简单video回放并不是微不足道的(特别是寻求),但是一些工作已经在MediaTools MediaViewer中完成,它将成为构建的基础。 使用FMJ 我试图让FMJ工作,但到目前为止还没有成功。 我很感激你对我的问题的看法。

如何创建videourl表单服务器的缩略图

如何创建urlvideo表单服务器的图像/缩略图 我尝试不工作(不显示缩略图) String String url = “http://clips.vorwaerts-gmbh.de/VfE_html5.mp4”; Bitmap thumb = ThumbnailUtils.createVideoThumbnail(url,MediaStore.Images.Thumbnails.MINI_KIND); Glide.with(context).load(thumb).asBitmap() /*.override(convertDpToPx(100), convertDpToPx(100))*/ .placeholder(R.drawable.camera) .override(200, 200) .diskCacheStrategy(DiskCacheStrategy.ALL) .into(new BitmapImageViewTarget(img_view) { protected void setResource(Bitmap resource) { RoundedBitmapDrawable circularBitmapDrawable = RoundedBitmapDrawableFactory.create(context.getResources(), resource); //circularBitmapDrawable.setCircular(true); img_view.setImageDrawable(circularBitmapDrawable); } }); 我通过回答1来解决它! 但是它在缩略图方面遇到了一些问题,它的变化颜色就是标准。 例

用Java处理video(DVD,.avi .mkv)

在寻找一个体面的图书馆来播放Javavideo后,我已经不知所措了。 周围的每个人都在尖叫不要使用JMF,因为它已经过时,过时而且需要用户安装它,其他替代品如VLCJ看起来很好,如果它们工作但仍然相对不稳定并且依赖大量的本机代码,以及处理DVD,在免费图书馆看起来像金尘! 当前选项: 现在JavaFX 2正在获得动力,这是我一直在认真研究的东西(因此我的问题在这里 )但是到目前为止我没有运气试图弄清楚如何让它比标准的FLVvideo更糟糕。 VLCJ的工作做得很好(参见我目前的答案),目前我正在努力。 它使用libvlc来做任何事情,因为它可以播放几乎任何文件并且开箱即用DVD。 最大的问题是你必须为每个玩家使用多个VM才能使其稳定运行,这意味着响应速度相对较慢。 我还没有这种方法在Mac上工作。 JMF是荒谬的过时,可怕的,就我而言,并不是一个真正的选择。 我过去玩过它,经验不是很好! FMJ表示这是JMF的替代品。 我还没有像我和其他大多数人一样努力工作,这本身就让我对它的质量和理解感到厌倦,即使我确实让它变得有效! Xuggler非常适合它的function,它有很棒的教程,而且编写得非常好。 但是虽然它对于低级转码工作很有用,播放video并以正确的顺序获得帧并同步等等只是一个噩梦才能正常工作,并再次添加更多代码,这意味着更多的维护,可能更多的错误等等… 我还没有尝试过任何愤怒的GStreamer-Java,虽然它似乎不支持DVD播放(它是一个我正在研究的开源应用程序,所以商业插件也不是一个选项)并且它的编解码器支持不会似乎是最宽的。 JCodec是一项有趣的工作,是我见过的唯一一个从纯Java角度实现video支持的工作 – 但目前缺乏对格式的支持,这是一个相对较新的项目。 为我想要支持的每个平台在不同的本地库中编写一些东西。 这是绝对的最后选择,因为它需要额外的维护和编码时间。 基于上述(或其他任何你能想到的),人们会推荐哪些选项,还有其他任何我错过的合理选择吗? 或者其他人认为可能在不久的将来有空?

Java中的video缩略图

我想用Java生成video的缩略图预览。 我主要是JMF和video操作疏远了。 有一个简单的方法吗? 编解码器怎么样? 我必须处理它吗? 是否支持任何video类型? (包括Quicktime)

绘制边界矩形以选择要记录的区域

如何在屏幕上绘制半透明矩形? 这不能是JFrame因为JFrames在右上角有通常的关闭,最小化,最大化选项。 如果它确实是一个挥杆能力,它是如何在空气中绘制的? 无需将其插入JFrame中? 请告诉我它是什么以及如何实现它……

如何使用Spring MVC返回video,以便可以使用html5 标记进行导航?

如果我在Web服务器(Tomcat)中有一个文件并创建一个标签,我可以观看video,暂停它,浏览它,并在完成后重新启动它。 但是如果我创建一个REST接口,在请求时发送video文件,并将其URL添加到标签,我只能播放和暂停。 没有倒带,没有快进,没有导航 ,没有。 那么,有没有办法解决这个问题? 我错过了某个地方的东西吗? video文件与REST接口位于同一服务器中 ,REST接口仅检查会话并在找到应发送的video后发送video。 这些是我到目前为止尝试过的方法。 它们都有效,但它们都不允许导航。 方法1,ResponseEntity: /* * This will actually load the whole video file in a byte array in memory, * so it’s not recommended. */ @RequestMapping(value = “/{id}/preview”, method = RequestMethod.GET) @ResponseBody public ResponseEntity getPreview1(@PathVariable(“id”) String id, HttpServletResponse response) { ResponseEntity result = null; try { String […]

用Java流video流

将实时video录制和流式传输到许多客户端的最佳方法是什么? 有图书馆吗?

为JavaFX 2.2添加其他video编解码器/ DVD支持

更新: 由于JFX的媒体方面是开源的,我自己也研究过这个问题,但确实有可能,但需要更改和重建JFX源代码(Java和C部分)。 这里描述的过程适用于任何想要的人。有一个去 – 我在这个例子中添加了MKV支持,但它应该与其他插件非常相似。 问题的其余部分因此主要是历史性的,但我会留在这里供参考。 背景 到目前为止,我一直在使用VLCJ在我的应用程序中播放video。 它可以工作,但是如果可能的话,我想看看我是否可以通过迁移到JavaFX来实现对常见编解码器的类似支持,并为多个虚拟机节省了很多麻烦,以及VLCJ需要可靠地播放多个video。 我不会在这里讨论,但如果你对细节感兴趣,请看我对这个问题的回答。 还有跨平台兼容性的问题,它适用于Mac和Linux,但我还没有弄清楚如何让它在Mac上显示(我相信有一些安全措施可以阻止一个进程获得对另一个本机的访问权限)组件,但这又超出了这个问题的范围。) 它归结为这样一个事实:虽然它有效,但是如果有另一种解决方案更容易,那么很多维护和麻烦与多个虚拟机一起工作并稳定地将它们连接起来。 VLC对于播放几乎任何东西都有着非常有传奇色彩的支持,这就是为什么到目前为止我已经用它了,我有兴趣看看我是否可以在JavaFX中得到类似的结果 – 或者至少它是否可以以跨平台的方式提供这样做的手段。 研究 JavaFX 2.0支持video – 太棒了! 但目前官方的产品线支持“包含VP6video和MP3音频的FLV”。 有没有办法扩展它以增加对更多编解码器的支持? 没有我想支持的硬编解码器,它更多的是尽我所能,所以我正在寻找一种可扩展的方法来实现上述目标。 我想知道它是否会播放本机安装在机器上的编解码器的video,并且它本身并不宣传自己(因为该function显然是依赖于机器而不是跨平台。)但是没有骰子,我尝试了一个数字常见的格式,除了它陈述的内容之外,它确实拒绝播放任何其他内容。 从查看JavaFX 1.3开始, 它还支持其他依赖于平台的编解码器,具体取决于它的安装位置 。 有没有办法在JavaFX 2中获得这种行为? 或者是否计划随后发布? 我无法在路线图上找到任何有关它的信息或Oracle的任何评论。 我能从广泛搜索中找到的东西就在这里意味着它可能是可能的,但似乎没有人知道如何。 我也有兴趣知道它是否基于GStreamer,为什么GStreamer支持的所有格式都不包含在默认值中? 在使用JavaFX播放DVD时,我绝对无处可去,所以我认为目前这只是一个禁忌。 如果有人确实有任何想法或信息,我会全力以赴。 其他方法 我想知道的一种方法可能是将JMC jar从这里描述的旧JavaFX中撬开,并尝试将其与JavaFX 2一起使用。我不认为任何人对这种方法有什么好运或类似的东西? 所有事情都失败了,如果有任何信息或链接,如果/当支持其他编解码器将支持开箱即用,那么我也有兴趣听到这一点。 或者,如果有人在Oracle有任何联系人详细信息,我可以要求,也将不胜感激! 我一直渴望在Java中获得体面的video支持一段时间,我想这可归结为是试图弄清楚JavaFX是否是这个的答案,或者只是另一个半心半意的尝试,它永远不会超过它此刻呢! 我希望它不是后者,但我还没有看到太多表明情况。