gpt4 book ai didi

Java - xuggle/ffmpeg - 未找到 mov 原子

转载 作者:行者123 更新时间:2023-12-01 05:44:53 26 4
gpt4 key购买 nike

我正在尝试使用 Xuggle 从本地读取 mov 文件。这给了我以下错误:

30-mag-2011 15.56.55 com.xuggle.ferry.NativeLogger log
GRAVE: [mov,mp4,m4a,3gp,3g2,mj2 @ 0x102840600] moov atom not found

问题是直到两分钟前它都没有给出任何错误并且代码是相同的。

但是,我发现了这一点:

如果我使用字节数组打开 IContainer,它将不起作用并给出错误:

ByteArrayInputStream b = new ByteArrayInputStream(file);
DataInputStream data = new DataInputStream(b);
IContainer container = IContainer.make();
if (container.open(data, null) < 0)
throw new IllegalArgumentException("E001 - Cannot open the container");

如果我使用临时文件打开 IContainer,它就可以工作。

File temp = File.createTempFile("temp_", ".mov");

try
{
FileOutputStream fos = new FileOutputStream(temp);
fos.write(file);
fos.close();
}
catch(FileNotFoundException e)
{
System.out.println(e);
}

IContainer container = IContainer.make();

if (container.open(temp.toString(), IContainer.Type.READ, null) < 0)
throw new IllegalArgumentException("E001 - Cannot open the container");

有什么建议吗?

最佳答案

当您将 ByteArrayInput 分配给 DataInputStream 时,它可能会丢失一些数据。检查它们的avaiable()值是否相同。

关于Java - xuggle/ffmpeg - 未找到 mov 原子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6177346/

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