|
<< Нажмите, чтобы показать Содержание >>
|
TRVCamera работает с камерами: осуществляет поиск, настройку, приём видеопотока, сохранение или воспроизведение видеофайла. Также компонент работает с другими источниками видео.
Модуль [VCL и LCL] MRVCamera;
Модуль [FMX] fmxMRVCamera;
Синтаксис
TRVCamera = class(TRVVideoSource)
TObject TPersistent TComponent |
Видео, полученное TRVCamera, может отображаться в компонентах TRVCamView или TRVCamMultiView. Движение камеры контролируется компонентом TRVCamControl или самим компонентом для отображения видео.
TRVCamera может быть назначена в качестве VideoSource компоненту TRVCamSender.
Вы можете записывать видео с TRVCamera с помощью TRVCamRecorder.
TRVCamera может получать видео из следующих источников:
•IP-камера из сети (MJPEG; обновляемый файл JPEG; набор файлов JPEG, обновляемых циклически; потоки H.264**)
•RTSP* (потоки MJPEG, потоки H.264, файлы AVI и MP4, содержащие видеоданные H.264 и MPEG-4 Part 2)
•HTTP (потоки MJPEG, потоки H.264*, файлы AVI и MP4, содержащие видеоданные H.264 и MPEG-4 Part 2*)
•вебкамера, подключённая через USB;
•экран (рабочий стол);
•файл;
•видеокадры, предоставляемые программистом в событии.
Вы можете выбрать источник видео, используя свойство DeviceType. После назначения необходимых свойств (в зависимости от типа источника) вызовите PlayVideoStream.
Видео можно записать в файл MJPEG и воспроизвести из файла MJPEG.
____
* требуется GStreamer или FFmpeg
** требуется FFmpeg
Если видео получено с помощью FFmpeg (с IP-камеры, видеопотока RTSP или HTTP, или локального файла), звук может быть прочитан компонентом TRVCamSound, связанным с этим компонентом TRVCamera.
В Windows-версии, если видео получено из локального файла с использованием DirectX, звук воспроизводится непосредственно на устройстве вывода звука по умолчанию. Аналогично при проигрывании локального файла на macOS.
В Lazarus этот компонент должен иметь в качестве владельца оконный компонент: его можно разместить на форме, но нельзя разместить на модуле данных.
Если компонент создан с параметром Owner = nil, он назначает главную форму в качестве своего владельца.