我尝试使用您的网络摄像头拍摄照片,但收到错误消息:
javax.media.NoPlayerException: Cannot find a Player for :vfw:Microsoft WDM Image Capture (Win32):0
我有一个简单的标准代码:
public class Main extends JFrame {
Player player;
Main() {
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
try{
player.stop();
player.deallocate();
player.close();
}catch(Exception ex){}
System.exit(0);
}
});
setSize(640, 480);
JPanel panel = (JPanel) getContentPane();
panel.setLayout(new BorderLayout());
String mediaFile = "vfw:Microsoft WDM Image Capture (Win32):0";
try {
MediaLocator mlr = new MediaLocator(mediaFile);
player = Manager.createRealizedPlayer(mlr);
player.setRate(100);
if (player.getVisualComponent() != null) {
panel.add("Center", player.getVisualComponent());
}
if (player.getControlPanelComponent() != null) {
panel.add("South", player.getControlPanelComponent());
}
} catch (Exception e) {
System.err.println("Got exception " + e);
}
}
public static void main(String[] args) {
Main m = new Main();
m.setVisible(true);
}
}
我已经检查过JMF注册表,相机匹配,这是毫无疑问的:
Name = vfw:Microsoft WDM Image Capture (Win32):0
Locator = vfw://0
JMStudio也正常工作并显示视频
我还阅读了有关 jmf.propertis 的页面,并将该文件放置在 Eclipse 项目的root 以及根 src< 中/strong>
现在我不知道为什么它不能工作?
最佳答案
- 需要在windows环境变量中将java路径设置为32位jdk。
- 然后使用JMF来捕获设备
- 将正确的 JMF jar 添加到项目
- 运行项目。
这对我有用。
关于java - 找不到 :vfw:Microsoft WDM Image Capture (Win32):0 的播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15986023/