gpt4 book ai didi

java - 视频阅读器/编写器程序 xuggler 不工作

转载 作者:搜寻专家 更新时间:2023-11-01 03:54:03 25 4
gpt4 key购买 nike

我已经下载了 Xuggler 并将 Jar 文件添加到 Eclipse 库中,我为 java 编写了一些代码来获取 flv 文件并将其转换为 mov:

public class Main {

public static void main(String[] args) {
IMediaReader reader = ToolFactory.makeReader("res/input.flv");
IMediaWriter writer = ToolFactory.makeWriter("res/output.mov", reader);
reader.addListener(writer);
while(reader.readPacket() == null);
}}

我的 flv 文件也在 eclipse 中一个名为 res 的文件夹下。

当我运行这段代码时,我得到了这些错误:

    Exception in thread "main" java.lang.RuntimeException: could not open stream com.xuggle.xuggler.IStream@269225200[index:0;id:0;streamcoder:com.xuggle.xuggler.IStreamCoder@3536496[codec=com.xuggle.xuggler.ICodec@269351856[type=CODEC_TYPE_VIDEO;id=CODEC_ID_H264;name=libx264;];time base=1/15;frame rate=0/0;pixel type=YUV420P;width=235;height=217;];framerate:0/0;timebase:1/90000;direction:OUTBOUND;]: Operation not permitted
at com.xuggle.mediatool.MediaWriter.openStream(MediaWriter.java:1192)
at com.xuggle.mediatool.MediaWriter.getStream(MediaWriter.java:1052)
at com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:742)
at com.xuggle.mediatool.MediaWriter.encodeVideo(MediaWriter.java:783)
at com.xuggle.mediatool.MediaWriter.onVideoPicture(MediaWriter.java:1434)
at com.xuggle.mediatool.AMediaToolMixin.onVideoPicture(AMediaToolMixin.java:166)
at com.xuggle.mediatool.MediaReader.dispatchVideoPicture(MediaReader.java:610)
at com.xuggle.mediatool.MediaReader.decodeVideo(MediaReader.java:519)
at com.xuggle.mediatool.MediaReader.readPacket(MediaReader.java:475)
at Main.main(Main.java:12)

这些错误是什么意思,我该如何解决?

最佳答案

我们碰巧在我们的实验室中使用了完全相同的代码,而且它总是非常有效。事实上,我将您的代码复制到了我的一个 Eclipse 项目中。我从网上下载了 FLV 文件,并使用您的代码成功地将它们转换为 MOV。

我的学生经常报告与 Xuggler 一起使用的项目设置问题。也许您愿意将您的项目重新配置为 Maven,到目前为止我们从未失败过。在Maven dependencies平台相关库自动正确添加到Eclipse项目中。

自 Kepler 发布以来,作为 Eclipse 的 Maven 管理的 M2 模块是主线的一部分。这样创建maven项目应该很容易。之后只需将以下存储库和依赖项添加到您的 pom.xml。

存储库:



<pre><code><repositories>
<repository>
<id>xuggle repo</id>
<url>http://xuggle.googlecode.com/svn/trunk/repo/share/java/</url>
</repository>
</repositories>
</code></pre>

依赖关系:



<pre><code><dependencies>
<dependency>
<groupId>xuggle</groupId>
<artifactId>xuggle-xuggler</artifactId>
<version>5.4</version>
</dependency>
</dependencies>
</code></pre>

如前所述,在这样的项目设置中,您的代码可以正常工作。我们在 MacOS 10.9.4 和 Java 7 上进行了测试,供您引用。

关于java - 视频阅读器/编写器程序 xuggler 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14283172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com