当前位置: 首页 > 面试题库 >

使用java-ffmpeg包装器,还是只使用java运行时来执行ffmpeg?

萧明贤
2023-03-14
问题内容

我对Java还是很陌生,需要编写一个程序来侦听视频转换指令,并在新指令到达时转换视频(指令存储在Amazon SQS中,但这与我的问题无关)

我面临一个选择,要么使用Java RunTime来执行ffmpeg转换(例如从命令行执行),要么可以使用以Java http://fmj-
sf.net/ffmpeg-java/getting_started.php
编写的ffmpeg包装器

我更喜欢使用Java Runtime直接执行ffmpeg,并避免使用java-
ffmpeg包装器,因为我必须学习该库。所以我的问题是,直接使用运行时,使用java-ffmpeg包装器比使用exec
ffmpeg有什么好处吗?我不需要ffmpeg播放视频,只需转换视频

谢谢


问题答案:

如果我没记错的话,您链接到的“ ffmpeg包装器”项目已过时并且不会维护。ffmpeg是一个非常活跃的项目,经常进行很多更改并发布。

您应该查看Xuggler项目,该项目提供了您想要执行的操作的Java API,并且它们与ffmpeg紧密集成。

http://www.xuggle.com/xuggler/

如果您选择沿着Runtime.exec()路径运行,则此Red5线程应该很有用:

http://www.nabble.com/java-call-ffmpeg-
ts15886850.html



 类似资料:
  • 我在某个存储库类上有一个方法,它返回。完成这些期货的代码使用一个第三方库来阻止。我打算有一个单独的有界,这个存储库类将使用它来进行这些阻塞调用。 这里有一个例子: 我的应用程序的其余部分将组成这些期货,并用结果做一些其他的事情。当提供给、、等的其他函数时,我不希望它们在存储库的上运行。 另一个例子: JavaDoc声明: 为非异步方法的从属完成提供的操作可以由完成当前CompletableFutu

  • 目标:用 Tomcat 容器运行一个 J2EE 应用 本项目代码维护在 DaoCloud/docker-demo-java-tomcat 项目中。 您可以在 GitHub 找到本项目并获取本文中所提到的所有代码文件。 前言 在第一篇教程中,基于 Spring Boot 框架创建了一个 Docker 化的 Java 应用,应用编译的结果是一个 jar 包,而通常我们的 J2EE 应用的产出物是一个

  • 问题内容: 考虑到此代码,我是否可以绝对确定该块始终执行,无论它是什么? 问题答案: 是的,将在执行或代码块后调用。 唯一不会被调用的时间是: 如果你调用 如果你调用 如果JVM首先崩溃 如果JVM在或catch块中达到了无限循环(或其他不间断,不终止的语句) 操作系统是否强行终止了JVM进程;例如,在UNIX上 如果主机系统死机;例如,电源故障,硬件错误,操作系统崩溃等 如果该块将由守护程序线程

  • 现在,当我们知道提交给的工作是一个长时间运行的操作时,我们需要传递一个自定义执行器(否则默认情况下它将在上执行)。 每个控制器执行都有一个上下文,其中包含所有请求信息。如果使用,······ 如果我们只是创建自定义的并将其注入到控制器中,以便在中使用,那么我们将不会拥有所有的上下文信息。 下面是返回的某个控制器操作的示例 } 如果我们尝试在中运行类似的内容 使用CompletableFuture和

  • 我正在尝试将我制作的两个简单程序合并为一个。罐子我两个都打包了。将jar装入新的jar并在运行时使用。getRuntime()。exec方法来执行它们。 代码: 问题是只执行proj1.jar,proj2.jar不运行。我是新来的java,不知道为什么会这样。我该怎么解决这个问题?我想要两个文件都被执行。

  • 我们什么时候应该使用Spring boot执行器。如果包括在内,它对应用程序内存和CPU使用有多大影响? 我目前正在使用Spring Boot 2. x。