Давайте сначала покажем зависимости maven, просто javacv
org.bytedeco
javacv-platform
1.5.1
pom
Затем есть тестовый класс
public static void testzc() throws FrameGrabber.Exception
{
String rtsp = "Получен соответствующий поток rtsp";
FFmpegFrameGrabber grabber = FFmpegFrameGrabber.createDefault(rtsp);
Grabber.setOption("rtsp_transport", "tcp"); // Используйте TCP, иначе потеря пакетов будет серьезной.
grabber.setImageWidth(960);
grabber.setImageHeight(540);
grabber.start();
CanvasFrame CanvasFrame = новый CanvasFrame("Zhengmao");//Создать окно
CanvasFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//Устанавливаем, будет ли соответственно закрываться и программа закрытия окна
canvasFrame.setAlwaysOnTop(true);
OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat();
int ex = 0;
while (true)
{
Frame frame = grabber.grabImage();
canvasFrame.showImage(frame);
//В программе фактически реализована функция предварительного просмотра. Следующий метод заключается в сохранении потока в виде изображения.
//opencv_core.Mat
Mat mat = converter.convertToMat(frame);
opencv_imgcodecs.imwrite(“E:\\tp\\” + ex + “.png”, mat);
ex++;
try
{
Thread.sleep(1000);
}
catch (InterruptedException e)
{
e.printStackTrace();
} // Обновляем изображение каждые 1000 миллисекунд.
}
}
Существует также основной класс, который вызывает этот метод, я его тоже опубликую.
public static void main(String[] args)
{
try
{
testzc();
}
catch (Exception e)
{
e.printStackTrace();
}
}
Наконец, я еще хочу кое-что сказать. Прежде чем вызывать поток rtsp, сначала уточните правила получения потока вашего устройства с камерой. Например, моя марка камеры — Hikvision. Соответствующие правила получения потока такие же, как я сказал в другом посте. чтобы найти соответствующие правила в соответствии с вашим брендом и получить поток перед выполнением вышеуказанной обработки потока.
Заявление об авторских правах: Содержание этой статьи добровольно предоставлено пользователями Интернета, а мнения, выраженные в этой статье, представляют собой только точку зрения автора. Данный сайт лишь предоставляет услуги по хранению информации, не имеет никаких прав собственности и не несет соответствующей юридической ответственности. Если вы обнаружите на этом сайте какое-либо подозрительное нарушение авторских прав/незаконный контент, отправьте электронное письмо, чтобы сообщить. После проверки этот сайт будет немедленно удален.
Издатель: Лидер стека программистов полного стека, укажите источник для перепечатки: https://javaforall.cn/184299.html Исходная ссылка: https://javaforall.cn