java - 如何用 Java 录制网络摄像头视频?

标签 java video camera desktop video-recording

我正在开发 Java 桌面应用程序,但找不到录制网络摄像头视频的方法。我开始使用 Sarxos 库来检测连接的相机并预览您选择的任何相机。但是要进入示例中的视频录制部分,使用了 Xuggler,它已被弃用,甚至您都无法下载。我在某处读到使用 Humble-video,但我们唯一的示例是录制屏幕,没有相机...任何找到方法的帮助将不胜感激。

PS:我正在使用 JavaFX,但如有必要,我会切换到 Swing

最佳答案

这是一个 JavaCV 实现,也许可以帮助您:

    import static com.googlecode.javacv.cpp.opencv_core.cvFlip;
    import static com.googlecode.javacv.cpp.opencv_highgui.cvSaveImage;

    import com.googlecode.javacv.CanvasFrame;
    import com.googlecode.javacv.FrameGrabber;
    import com.googlecode.javacv.VideoInputFrameGrabber;
    import com.googlecode.javacv.cpp.opencv_core.IplImage;
    public class GrabberShow implements Runnable {
        //final int INTERVAL=1000;///you may use interval
        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); 
            int i=0;
            try {
                grabber.start();
                IplImage img;
                while (true) {
                    img = grabber.grab();
                    if (img != null) {
                        cvFlip(img, img, 1);// l-r = 90_degrees_steps_anti_clockwise
                        cvSaveImage((i++)+"-capture.jpg", img);
                        // show image on window
                        canvas.showImage(img);
                    }
                     //Thread.sleep(INTERVAL);
                }
            } catch (Exception e) {
            }


}
}

您可以修改代码并能够定期保存图像并进行其余您想要的处理。

在这里您可以找到另一个教程,也可以作为一个选项: Java Swing Program for capturing webcam

关于java - 如何用 Java 录制网络摄像头视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40022117/

相关文章:

java - 跨移动平台共享代码

c - 将libavcodec编码的视频保存为AVI文件格式

c++ - 从 PXCImage 获取像素值到二维数组

ios - 后置摄像头在 Swift 中无法正常工作

java - getIntent() 上的空指针异常

java - Httpsurlconnection 不关闭套接字

ios - 即使应用旋转后,AVMutableComposition 也无法旋转视频

ios - AVQueuePlayer 和多个视频播放和时间范围

java - 拍照后在onActivityResult中获取图像Uri?

java - 方法函数的数组