我已经使用Xuggler 5.4制作了Screen Recorder和Player应用程序。我已经开发了Windows 8 64位环境。我已经使其成为WebStart项目并在MAC 10.8 64 bit中启动(.jnlp)。当我运行它时,Recorder可以正常工作,但是当我在播放机中打开它时,它将引发异常

Exception in thread "stopThread" java.lang.RuntimeException : Unhandled and unknown native exception
at com.xuggle.xuggler.XugglerJNI.IContainer_open__SWIG_0( Native Method )
at com.xuggle.xuggler.IContainer.open(IContainer.java:597 )


就Windows而言并非如此。
对于Xuggler来说,我是一个非常新的人。我不知道此异常的含义。这是我获得此异常的代码行。

if (container1.open( fileName, IContainer.Type.READ, container1.getContainerFormat()) < 0) {
            throw new IllegalArgumentException("could not open file: " + fileName);
        }


提前致谢。

附言:我使用的是Java(1.7.0_65)和Oracle的相同版本。

最佳答案

我知道了

我已经更改了打开容器的方法。

以前的方法:

if (container1.open( fileName, IContainer.Type.READ, container1.getContainerFormat()) < 0) {
            throw new IllegalArgumentException("could not open file: " + fileName);
        }


新方法:

InputStream inputStream = null ;
        try {
        inputStream = new FileInputStream(new File("fileName"));
        } catch (FileNotFoundException e2) {
            logger.error("File not found ");
        }

        IContainerFormat format = IContainerFormat.make();
        format.setInputFormat("flv");


        container1 = IContainer.make();


        if (container1.open( inputStream , format) < 0) {
            throw new IllegalArgumentException("could not open file: " + fileName);
        }


这适用于MAC OS。

奇怪但真实

关于java - MAC OS的Xuggler问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25140684/

10-12 00:26