java - Xuggler:IContainer.open() block

标签 java mp4 xuggler xuggle

我正在尝试像这样用 xuggle 打开一个视频文件:

    if (container.open(in,  null) < 0) {  
        throw new IllegalArgumentException("could not open file: ");
    }

当我使用 mp4 文件并通过打开 InputStream 时出现问题:

       InputStream in = new FileInputStream(filename);

在这种情况下,IContainer.open 保持阻塞并且不返回任何内容。
但是,如果我将文件名传递给打开方法或者我使用 flv 格式,它就可以正常工作。 我必须将 InputStream 与 mp4 文件一起使用。
有人可以帮我找到问题吗?

最佳答案

如果其他人遇到这个问题,我会说我做了什么来解决我的问题: 我没有从 InputStream 打开,而是直接使用

打开文件
if (container.open(filename, IContainer.Type.READ, null) < 0)
{
    throw new IllegalArgumentException("Could not open file: " + filename);
}

我希望这对以后遇到此问题的人有所帮助。干杯。

关于java - Xuggler:IContainer.open() block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21428852/

相关文章:

ffmpeg - 将压缩的 swf 转换为 mp4

android - 如何将音频文件与新的视频文件合并?在 Android 中有可能吗?

java - 更喜欢哪个界面以及基于什么基础?

java - 带有 setter 和 setter 的基本 JAVA 应用程序,并将整数加 1

java - 如何在 mp4 视频文件中添加 MOOV 原子

bash - MP4 到 DASH(bash 脚本)

java - 使用 Java 进行云中的重复数据删除

java - Install4j 安装组件问题

java - 使用 Xuggler 通过 Java 检测网络摄像头

ffmpeg - 使用自定义 ByteChannel 读取时,IContainer.open() 失败