java - 找不到 :vfw:Microsoft WDM Image Capture (Win32):0 的播放器

标签 java webcam jmf

我尝试使用您的网络摄像头拍摄照片,但收到错误消息:

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>

Accessing webcams with JMF?

现在我不知道为什么它不能工作?

最佳答案

  1. 需要在windows环境变量中将java路径设置为32位jdk。
  2. 然后使用JMF来捕获设备
  3. 将正确的 JMF jar 添加到项目
  4. 运行项目。

这对我有用。

关于java - 找不到 :vfw:Microsoft WDM Image Capture (Win32):0 的播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15986023/

相关文章:

java - JTextField无法在if语句java中使用输入

JavaScript - 如何使用 EXIF 数据在网络摄像头中拍照?

Java Media Framework 始终生成 TTL=1 的多播数据包

Java - JMF 无法添加捕获或视频设备

java - 在Java中用下划线+小写字母替换大写字母?

java - Android Canvas 上的弹出窗口

java - 如果从 try-with-resource 返回一个 InputStream 是安全的

windows - 使用/作为网络摄像头视频捕获和录制桌面屏幕

html - 如何将网络摄像头直接输出到简单的 HTML 页面?

Java JMF不会播放任何视频文件