Skip to content

Instantly share code, notes, and snippets.

@kauailabs
Created January 4, 2018 20:53
Show Gist options
  • Select an option

  • Save kauailabs/3b8aa551bde267ba825cd9405e99e48f to your computer and use it in GitHub Desktop.

Select an option

Save kauailabs/3b8aa551bde267ba825cd9405e99e48f to your computer and use it in GitHub Desktop.
package video_to_disk;
import edu.wpi.cscore.UsbCamera;
import edu.wpi.cscore.VideoMode;
import edu.wpi.cscore.MjpegServer;
import edu.wpi.cscore.CvSink;
import edu.wpi.cscore.CvSource;
import org.opencv.core.Mat;
import org.opencv.core.Core;
import org.opencv.core.Size;
import org.opencv.videoio.VideoCapture;
import org.opencv.videoio.VideoWriter;
import org.opencv.videoio.Videoio;
public class video_to_disk{
public static void main(String argv[]) {
UsbCamera camera = new UsbCamera("usbcam", 0);
camera.setVideoMode(VideoMode.PixelFormat.kMJPEG, 320, 240, 15);
MjpegServer mjpegServer = new MjpegServer("httpserver", 8081);
mjpegServer.setSource(camera);
CvSink cvsink = new CvSink("cvsink");
cvsink.setSource(camera);
CvSource cvsource = new CvSource("cvsource",
VideoMode.PixelFormat.kMJPEG, 320, 240, 15);
MjpegServer cvMjpegServer = new MjpegServer("cvhttpserver", 8082);
cvMjpegServer.setSource(cvsource);
Size frameSize = new Size(320, 240);
VideoWriter videoWriter = new VideoWriter("/data/output.avi",
VideoWriter.fourcc('F', 'M', 'P', '4'), 15.0, frameSize, true);
Mat frame = new Mat();
int count = 0;
while (count < 100) {
long time = cvsink.grabFrame(frame);
videoWriter.write(frame);
count++;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment