>  기사  >  백엔드 개발  >  PHP를 사용하여 실시간 감시 카메라에서 영상을 캡처하는 방법

PHP를 사용하여 실시간 감시 카메라에서 영상을 캡처하는 방법

PHPz
PHPz원래의
2023-07-30 20:06:211473검색

PHP를 통해 실시간 감시 카메라에서 이미지를 캡처하는 방법

카메라는 일상 생활에서 점점 더 많이 사용되고 있으며 집, 사무실, 쇼핑몰 및 기타 장소를 모니터링하는 데 사용할 수 있습니다. PHP 프로그래밍을 통한 카메라 영상의 실시간 모니터링은 매우 의미 있고 실용적인 기능이 되었습니다. 이 기사에서는 해당 코드 예제와 함께 PHP를 통해 이 기능을 구현하는 방법을 소개합니다.

1단계: 카메라가 연결 및 구성되어 있는지 확인하세요

먼저, 카메라가 컴퓨터에 제대로 연결되어 있고 관련 드라이버가 구성되어 있는지 확인하세요. 또한 클라이언트에 비디오를 스트리밍하려면 적합한 스트리밍 서버 소프트웨어를 설치해야 합니다. 일반적으로 사용되는 스트리밍 미디어 서버 소프트웨어는 ffmpeg 또는 VLC를 사용하도록 선택할 수 있습니다.

2단계: PHP 코드 작성

다음으로, 프로젝트 폴더에 Camera.php라는 파일을 만들고 그 안에 다음 PHP 코드를 작성합니다.

<?php
set_time_limit(0);

// 定义摄像头的IP地址和端口号
$camera_ip = '192.168.0.100';
$camera_port = 8080;

// 创建一个连接到摄像头的URL
$camera_url = "http://{$camera_ip}:{$camera_port}/video";

// 获取视频流
$stream = fopen($camera_url, 'r');

// 无限循环读取视频流并输出到浏览器
while (!feof($stream)) {
    echo fread($stream, 8192);
    flush();
}

// 关闭流
fclose($stream);
?>

위 코드에서는 먼저 set_time_limit(0)을 사용합니다. ; 카메라 화면의 지속적인 모니터링을 보장하기 위해 PHP 스크립트의 시간 초과 제한을 비활성화합니다. 다음으로 카메라의 IP 주소와 포트 번호를 정의하고 실제 상황에 맞게 수정해야 합니다. 그런 다음 fopen 함수를 사용하여 카메라에 연결된 URL을 열고 비디오 스트림을 가져옵니다. 마지막으로 무한 루프에 들어가서 비디오 스트림의 데이터를 읽고 echo를 사용하여 브라우저에 출력하고 flush 함수를 사용하여 버퍼를 새로 고칩니다. set_time_limit(0);来禁用PHP脚本的超时限制,以确保持续监控摄像头画面。接着定义了摄像头的IP地址和端口号,你需要根据实际情况进行修改。然后使用fopen函数打开一个连接到摄像头的URL,并获取视频流。最后进入无限循环并读取视频流的数据,并使用echo输出到浏览器,并使用flush函数刷新缓冲区。

步骤3:运行程序

保存上述代码后,通过命令行或在浏览器中输入http://localhost/camera.php

3단계: 프로그램 실행

위 코드를 저장한 후 명령줄을 통해 프로그램을 실행하거나 브라우저에 http://localhost/camera.php를 입력하세요. 카메라가 캡처한 실시간 영상을 브라우저에서 볼 수 있습니다.

이 솔루션은 로컬 모니터링 및 테스트 환경에만 해당되며 공용 네트워크 환경에는 적용되지 않습니다. 공용 네트워크 환경에서는 보안 및 개인정보 보호와 관련된 문제를 더 깊이 고려하고 그에 따른 보안 조치를 취해야 합니다. 🎜🎜요약하자면 이 글에서는 PHP를 사용하여 카메라 영상을 실시간으로 모니터링하는 방법을 소개하고 해당 코드 예제를 제공합니다. 이러한 방식으로 카메라 모니터링을 쉽게 구현할 수 있으며 보안 및 모니터링을 위한 편리하고 실용적인 솔루션을 제공합니다. 🎜

위 내용은 PHP를 사용하여 실시간 감시 카메라에서 영상을 캡처하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.