Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video streaming 通过Java进行视频捕获(实时视频流)_Video Streaming_Video Capture_Live Streaming - Fatal编程技术网

Video streaming 通过Java进行视频捕获(实时视频流)

Video streaming 通过Java进行视频捕获(实时视频流),video-streaming,video-capture,live-streaming,Video Streaming,Video Capture,Live Streaming,我想写一个程序,可以通过我的摄像头捕获视频使用Java语言,即实时视频流。 我已经找到了一些关于这个主题的线索,但问题是如何使我的程序独立于操作系统,比如如何在32位和64位操作系统上捕获视频 请帮我解决这个问题,我做这项工作的时间很短。此外,如果有人对此话题有任何线索,请在此处发布其链接。。 谢谢 由于j2se中没有可用于从网络摄像机捕获视频的类,因此您需要一个外部库(如JMF或JavaCV)来完成同样的任务 要安装JavaCV,您可以在以下链接中找到说明: a。Ganeshtiwaridoc

我想写一个程序,可以通过我的摄像头捕获视频使用Java语言,即实时视频流。 我已经找到了一些关于这个主题的线索,但问题是如何使我的程序独立于操作系统,比如如何在32位和64位操作系统上捕获视频

请帮我解决这个问题,我做这项工作的时间很短。此外,如果有人对此话题有任何线索,请在此处发布其链接。。 谢谢

  • 由于j2se中没有可用于从网络摄像机捕获视频的类,因此您需要一个外部库(如JMF或JavaCV)来完成同样的任务

  • 要安装JavaCV,您可以在以下链接中找到说明:

    a。Ganeshtiwaridocmdotnp.blogspot.in

    b。code.google.com

  • 从摄像机实时捕获视频的代码:

    import com.googlecode.javacv.CanvasFrame;
    import com.googlecode.javacv.FrameGrabber;
    import com.googlecode.javacv.VideoInputFrameGrabber;
    import com.googlecode.javacv.cpp.opencv_core.IplImage;
    import static com.googlecode.javacv.cpp.opencv_core.cvFlip;
    
    class GrabberShow implements Runnable 
    {    
       IplImage image;
       CanvasFrame canvas = new CanvasFrame("Web Cam");
       public GrabberShow() {
           canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
       }
       @Override
       public void run() {
           FrameGrabber grabber = new VideoInputFrameGrabber(0); // 1 for next camera
           try {
               grabber.start();
               IplImage img;
               while (true) {
                   img = grabber.grab();
                   if (img != null) {
                       cvFlip(img, img, 1);// l-r = 90_degrees_steps_anti_clockwise
                       canvas.showImage(img);
                   }
               } 
           } catch (Exception e) {}
       }
    }
    
    public class Main 
    {
           public static void main(String[] args) 
           {
               GrabberShow gs = new GrabberShow();
               Thread th = new Thread(gs);
               th.start();
           }
    }
    
  • 希望这有帮助