2011-03-30 64 views
0

我试图从通过USB连接的网络摄像头捕获视频,但由于某些原因,FMJ无法加载或找到注册表文件。当我尝试运行我的程序,到FMJ函数每个调用产生的警告:Java中的FMJ视频捕获

[time] net.sf.fmj.utility.Registry <init> 
WARNING: Problem loading JMF registry: org/jdom/JDOMException. Using Defaults 

因此,它不能识别的摄像头和程序失败。 该程序适用于JMF,但为了使其跨平台,我正在将代码迁移。我卸载了JMF,但我不明白为什么它试图加载JMF注册表。

FINE: PlugInUtility: Unable to register plugin net.sf.fmj.ffmpeg_java 
FINE: PlugInUtility: Unable to register plugin net.sf.fmj.theora_java.NativeOggParser 
FINE: PlugInUtility: Unable to register plugin com.omnividea.media.parser.video.Parser 
FINE: PlugInUtility: Unable to register plugin com.omnividea.media.codec.video.NativeDecoder 
FINE: PlugInUtility: Unable to register plugin com.omnividea.media.codec.video.JavaDecoder 

以上所有都抛出java.lang.ClassNotFoundException

请帮帮忙,视频用java就是这样一个令人头疼

+0

那么你是如何去做你的实际安装和你使用什么操作系统? – user489041 2011-03-30 19:49:14

+1

通过放置代码来表达你的努力.. – 2013-05-08 10:16:24

回答

1

这个问题:运行fmjregistry.bat时,我也得到了以下错误可能会有点老,但对于那些面临同样问题的人(比如我),这里就是答案。

FMJ需要JDOM(不JDOM2)将包含在类路径中,因为它用它看

C:\Documents And Settings\[user]\.fmj.registry.xml 

此文件包含从FMJ注册表设置。 JDOM jar位于您从其主页下载的FMJ包中的libs目录中。您可以复制它,包括在你的项目构建路径,或添加依赖关系,如果你是一个Maven用户:

<dependency> 
    <groupId>org.jdom</groupId> 
    <artifactId>jdom</artifactId> 
    <version>1.1.3</version> 
</dependency> 

不要忘记添加其他所需的库]

如果这不是如此,那么还有其他可能的选项:

  1. 你的程序没有权限来读取该文件,或者该文件内容的
  2. XML语法格式不正确(不正确的XML) - 在这种情况下,找到了在XML代码中的错误,你可以验证我t与免费的XML验证器之一在线提供