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

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

· 3년 전 · 1359 · 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/

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

게시글 목록

번호 제목
1717438
1717431
1717422
1717414
1717412
1717407
1717401
1717393
1717386
1717379
1717378
1717365
1717364
1717360
1717359
1717346
1717344
1717333
1717327
1717313
1717312
1717310
1717307
1717306
1717304
1717291
1717283
1717280
1717268
1717265