0

私は Java アプリで自分のカムを使用しようとしていますが、いくつかのエラーが発生します。これが私のコードです。その単純な誰かが私のコードの何が問題なのか教えてくれます:

import java.util.Vector;
import javax.media.CaptureDeviceInfo;
import javax.media.CaptureDeviceManager;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.Player;
import javax.swing.JFrame;
public class Main extends JFrame {

    public Main(){

        super("Jcam");
        try {


        Vector v = CaptureDeviceManager.getDeviceList(null);
        CaptureDeviceInfo cam = null;
        for(int i=0;i<v.size();i++)
        {
            CaptureDeviceInfo dev = (CaptureDeviceInfo) v.elementAt(i);
            if(dev.getName().startsWith("vfw"))
            {
                cam = dev;
                break;
            }
            System.out.println(dev.getName());

        }
        if (cam == null){ System.exit(0); }
        MediaLocator ml = cam.getLocator();
        Player p = Manager.createRealizedPlayer(ml);
        add(p.getVisualComponent());
        p.start();
        } catch (Exception e) {

        }
        setSize(700, 700);
        setVisible(true);
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        new Main();
    }

ここにログがあります

Exception in thread "VFW Request Thread" java.lang.UnsatisfiedLinkError:     JMFSecurityManager: java.lang.UnsatisfiedLinkError: no jmvfw in java.library.path
    at com.sun.media.JMFSecurityManager.loadLibrary(JMFSecurityManager.java:206)
    at com.sun.media.protocol.vfw.VFWCapture.<clinit>(VFWCapture.java:19)
    at com.sun.media.protocol.vfw.VFWSourceStream.doConnect(VFWSourceStream.java:241)
    at com.sun.media.protocol.vfw.VFWSourceStream.run(VFWSourceStream.java:763)
    at java.lang.Thread.run(Unknown Source)
4

2 に答える 2

0

プラットフォームに依存しないディストリビューションをダウンロードして含めてみてください。Windowsでjmfを使用しようとしたときに同じエラーが発生しましたが、Windowsディストリビューションの使用からプラットフォームに依存しないディストリビューションに切り替えたところ、うまくいきました。

于 2013-01-12T19:00:13.557 に答える
0

解決済み..64 ビット オペレーティング システムのため..jmf は 64 ビットでは動作しません

于 2013-01-16T08:46:23.940 に答える