Closed loprx closed 11 months ago
I encountered a block while using Javacv to read the stream. I observed through the logs that it took nearly 90 minutes for the result to be returned.
This my code.
try (FFmpegFrameGrabber grabber = new FFmpegFrameGrabber("rtps://xxxxxxxx"); Java2DFrameConverter java2dFrameConverter = new Java2DFrameConverter()) { grabber.setOption("rtsp_transport", "tcp"); grabber.setOption("buffer_size", "10240000"); grabber.setOption("stimeout", "300000"); grabber.setOption("fflags", "+discardcorrupt"); grabber.setVideoOption("fflags", "+discardcorrupt"); grabber.setOption("threads", "2"); grabber.setAudioChannels(0); grabber.setNumBuffers(8); grabber.start(); while (true) { Frame frame = grabber.grabImage(); BufferedImage image = java2dFrameConverter.convert(frame); if (image != null) { // do something } else { log.debug("Source {} screenshot frame is null.", source); break; } frame.close(); } }
This is log.
2023-06-12 10:08:45.947 [tid] DEBUG org.bytedeco.javacpp.PointerScope : Opening org.bytedeco.javacpp.PointerScope@310172e0 2023-06-12 11:33:52.645 [tid] DEBUG org.bytedeco.javacpp.PointerScope : Closing org.bytedeco.javacpp.PointerScope@310172e0
Sounds like a network issue.
Yes, it has only appeared once so far. It does sound like a network problem. I am observing.
Close.
I encountered a block while using Javacv to read the stream. I observed through the logs that it took nearly 90 minutes for the result to be returned.
This my code.
This is log.