테스트 사이트 - 개발 중인 베타 버전입니다

자바만 되고 php는 왜안되지 흑흑

· 3년 전 · 1358 · 2

package webCam;

 

import java.awt.BorderLayout;

import java.awt.event.ItemEvent;

import java.awt.event.ItemListener;

import java.awt.event.WindowEvent;

import java.awt.event.WindowListener;

import java.lang.Thread.UncaughtExceptionHandler;

 

import javax.swing.JFrame;

import javax.swing.SwingUtilities;

 

import com.github.sarxos.webcam.Webcam;

import com.github.sarxos.webcam.WebcamDiscoveryEvent;

import com.github.sarxos.webcam.WebcamDiscoveryListener;

import com.github.sarxos.webcam.WebcamEvent;

import com.github.sarxos.webcam.WebcamListener;

import com.github.sarxos.webcam.WebcamPanel;

import com.github.sarxos.webcam.WebcamPicker;

import com.github.sarxos.webcam.WebcamResolution;

 

/**

 * Proof of concept of how to handle webcam video stream from Java

 * 

 * @author Bartosz Firyn (SarXos)

 */

public class WebcamViewerExample extends JFrame implements Runnable, WebcamListener, WindowListener,

        UncaughtExceptionHandler, ItemListener, WebcamDiscoveryListener {

 

    private Webcam webcam = null;

    private WebcamPanel panel = null;

    private WebcamPicker picker = null;

 

    @Override

    public void run() {

 

        Webcam.addDiscoveryListener(this);

        setTitle("Java Webcam Capture POC");

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        setLayout(new BorderLayout());

 

        addWindowListener(this);

 

        picker = new WebcamPicker();

        picker.addItemListener(this);

 

        webcam = picker.getSelectedWebcam();

 

        if (webcam == null) {

            System.out.println("No webcams found...");

            System.exit(1);

        }

 

        webcam.setViewSize(WebcamResolution.VGA.getSize());

        webcam.addWebcamListener(WebcamViewerExample.this);

 

        panel = new WebcamPanel(webcam, false);

        panel.setFPSDisplayed(true);

 

        add(picker, BorderLayout.NORTH);

        add(panel, BorderLayout.CENTER);

 

        pack();

        setVisible(true);

 

        Thread t = new Thread() {

 

            @Override

            public void run() {

                panel.start();

            }

        };

        t.setName("example-starter");

        t.setDaemon(true);

        t.setUncaughtExceptionHandler(this);

        t.start();

    }

 

    public static void main(String[] args) {

        SwingUtilities.invokeLater(new WebcamViewerExample());

    }

 

    @Override

    public void webcamOpen(WebcamEvent we) {

        System.out.println("webcam open");

    }

 

    @Override

    public void webcamClosed(WebcamEvent we) {

        System.out.println("webcam closed");

    }

 

    @Override

    public void webcamDisposed(WebcamEvent we) {

        System.out.println("webcam disposed");

    }

 

    @Override

    public void webcamImageObtained(WebcamEvent we) {

        // do nothing

    }

 

    @Override

    public void windowActivated(WindowEvent e) {

    }

 

    @Override

    public void windowClosed(WindowEvent e) {

        webcam.close();

    }

 

    @Override

    public void windowClosing(WindowEvent e) {

    }

 

    @Override

    public void windowOpened(WindowEvent e) {

    }

 

    @Override

    public void windowDeactivated(WindowEvent e) {

    }

 

    @Override

    public void windowDeiconified(WindowEvent e) {

        System.out.println("webcam viewer resumed");

        panel.resume();

    }

 

    @Override

    public void windowIconified(WindowEvent e) {

        System.out.println("webcam viewer paused");

        panel.pause();

    }

 

    @Override

    public void uncaughtException(Thread t, Throwable e) {

        System.err.println(String.format("Exception in thread %s", t.getName()));

        e.printStackTrace();

    }

 

    @Override

    public void itemStateChanged(ItemEvent e) {

        if (e.getItem() != webcam) {

            if (webcam != null) {

 

                panel.stop();

 

                remove(panel);

 

                webcam.removeWebcamListener(this);

                webcam.close();

 

                webcam = (Webcam) e.getItem();

                webcam.setViewSize(WebcamResolution.VGA.getSize());

                webcam.addWebcamListener(this);

 

                System.out.println("selected " + webcam.getName());

 

                panel = new WebcamPanel(webcam, false);

                panel.setFPSDisplayed(true);

 

                add(panel, BorderLayout.CENTER);

                pack();

 

                Thread t = new Thread() {

 

                    @Override

                    public void run() {

                        panel.start();

                    }

                };

                t.setName("example-stoper");

                t.setDaemon(true);

                t.setUncaughtExceptionHandler(this);

                t.start();

            }

        }

    }

 

    @Override

    public void webcamFound(WebcamDiscoveryEvent event) {

        if (picker != null) {

            picker.addItem(event.getWebcam());

        }

    }

 

    @Override

    public void webcamGone(WebcamDiscoveryEvent event) {

        if (picker != null) {

            picker.removeItem(event.getWebcam());

        }

    }

}

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 2개

베스트 댓글

3년 전 BEST
웹캠 실행코드인걸로 보이네요

http://www.vivekmoyal.in/webcam-in-php-how-to-use-webcam-in-php/

참고해보세요
원댓글 보기 →
3년 전
웹캠 실행코드인걸로 보이네요

http://www.vivekmoyal.in/webcam-in-php-how-to-use-webcam-in-php/

참고해보세요
너무 감사드립니다.

게시글 목록

번호 제목
1717629
1717626
1717625
1717621
1717619
1717611
1717610
1717609
1717607
1717601
1717598
1717591
1717590
1717583
1717575
1717572
1717568
1717566
1717549
1717545
1717533
1717512
1717511
1717508
1717495
1717479
1717473
1717470
1717463
1717452