【问题标题】:Xuggler not working with webappXuggler 不使用 webapp
【发布时间】:2013-12-26 20:12:07
【问题描述】:

您好,我正在尝试将 Xuggler 与我的 Web 应用程序一起使用,我正在尝试将视频文件从一种格式转换为另一种格式。对于桌面 Java 应用程序,我可以这样做,但对于 Web 应用程序,我得到了跟随错误

 frontend.DownloadServlet -
java.awt.HeadlessException
        at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:2
07)
        at java.awt.Window.<init>(Window.java:535)
        at java.awt.Frame.<init>(Frame.java:420)
        at java.awt.Frame.<init>(Frame.java:385)
        at javax.swing.JFrame.<init>(JFrame.java:180)
        at com.xuggle.mediatool.MediaViewer$PositionFrame.<init>(MediaViewer.jav
a:1315)
        at com.xuggle.mediatool.MediaViewer$MediaFrame.<init>(MediaViewer.java:1
427)
        at com.xuggle.mediatool.MediaViewer.onAddStream(MediaViewer.java:421)
        at com.xuggle.mediatool.AMediaToolMixin.onAddStream(AMediaToolMixin.java
:78)
        at com.xuggle.mediatool.MediaReader.getStreamCoder(MediaReader.java:375)

        at com.xuggle.mediatool.MediaReader.readPacket(MediaReader.java:461)
        at com.dms.frontend.client.widget.Download.MediaConvertor.<init>(Medi
aConvertor.java:33)
        at com.dms.servlet.frontend.DownloadServlet.service(DownloadServlet.java:204);

我的猜测是它试图创建一个显示编码的窗口(我注意到桌面应用程序)并且无法为网络应用程序这样做。

我的视频文件转换代码。

public MediaConvertor(File Dest,File Source) {
    IMediaReader mediaReader =
               ToolFactory.makeReader(Source.getPath());

        // create a media writer
        IMediaWriter mediaWriter =
               ToolFactory.makeWriter(Dest.getPath(), mediaReader);

        // add a writer to the reader, to create the output file
        mediaReader.addListener(mediaWriter);

        // create a media viewer with stats enabled
        IMediaViewer mediaViewer = ToolFactory.makeViewer(true);

        // add a viewer to the reader, to see the decoded media
        mediaReader.addListener(mediaViewer);

        // read and decode packets from the source file and
        // and dispatch decoded audio and video to the writer
        while (mediaReader.readPacket() == null) ;
}

任何人都可以对此有所了解吗?就像我需要为我的网络应用程序做的额外配置一样。

我将 maven m2e 与 eclipse juno 和 xuggler 5.4 一起使用。 我已将 xuggle-xuggler-5.4.jar 放入我的 tomcat lib 文件夹中。

【问题讨论】:

    标签: java xuggler xuggle


    【解决方案1】:

    显然我在代码行中犯​​了错误

     // create a media viewer with stats enabled
        IMediaViewer mediaViewer = ToolFactory.makeViewer(true);
    
        // add a viewer to the reader, to see the decoded media
        mediaReader.addListener(mediaViewer);
    

    是为我提出的所有视频请求创建查看器的人。由于某些原因,此代码不适用于网络应用程序。删除了它并且它起作用了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-26
      • 1970-01-01
      • 1970-01-01
      • 2011-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多