rvcamsender TRVCamSender

Свойства   Методы   События

<< Нажмите, чтобы показать Содержание >>

rvcamsender TRVCamSender

Свойства   Методы   События

TRVCamSenser передает видео и аудио (а также другие данные) по сети.

Модуль [VCL и LCL] MRVSender;

Модуль [FMX] fmxMRVSender;

Синтаксис

TRVCamSender = class(TCustomRVSender)

hmtoggle_arrow1Hierarchy

Описание

Если Active=True, компонент получает видео из VideoSource и аудио из AudioSource и отправляет их по сети. Эти отправленные видео- и аудиопотоки могут быть приняты TRVCamReceiver или TRVMediaServer. Помимо аудио и видео, отправитель может отправлять команды и файлы.

Формат видео указывается параметре Encoding.

Медиаканалы

Данные могут быть организованы в несколько медиаканалов.

Медиаканалы полезны при отправке информации через TRVMediaServer; например, они позволяют клиентам отправлять видео с нескольких камер. Для прямых подключений (к TRVCamReceiver) вместо медиаканалов можно использовать несколько компонентов TRVCamSender.

Источники видео и аудио для медиаканала по умолчанию (0-го) задаются в свойствах VideoSource и AudioSource.

Источники видео и аудио для 1-го, 2-го медиаканалов и так далее задаются в свойствах VideoSource и AudioSource элементов коллекции ExtraMediaSource.

К медиаканалу также могут быть привязаны команды, файлы и особые данные. Соответствующие методы имеют параметр MediaIndex, где можно указать номер медиаканала.

Соединение с TRVCamReceiver - 1. Установка соединения

Для передачи видео и аудио, особенно видео, рекомендуется использовать UDP-соединение. Для других типов данных оно крайне не рекомендуется.

При использовании прокси-серверов требуется HTTP-соединение.

Настройки, общие для всех типов соединения:

Настройка TRVCamSender:

Active=True

Настройка TRVCamReceiver:

Active=True

hmtoggle_arrow1 Вариант 1: UDP-соединение от Отправителя к Получателю

hmtoggle_arrow1 Вариант 2: TCP (или HTTP) соединение от Отправителя к Получателю

hmtoggle_arrow1 Вариант 3: TCP (или HTTP) соединение от Получателя к Отправителю

Соединение с TRVCamReceiver - 2. Использование уникальных идентификаторов

Для идентификации отправителей и получателей могут использоваться уникальные идентификаторы.

Идентификация получателей

Получатель может (по желанию) проверять, действительно ли данные адресованы ему. Это помогает игнорировать неавторизованных отправителей.

Чтобы включить эту функцию, присвойте допустимое значение свойству TRVCamReceiver.GUIDMy. Если оно присвоено, получатель принимает данные только от отправителей, содержащих то же значение в свойствах GUIDTo.

Идентификация отправителей

В простейшем случае, когда один отправитель подключен к одному получателю, идентификация отправителя не требуется.

Однако получатель может получать видео от нескольких отправителей; свойство GUIDFrom позволяет различать отправителей. Получатель может либо принимать данные от указанных отправителей (перечисленных в TRVCamReceiver.Senders), либо принимать данные от всех отправителей (в этом случае TRVCamReceiver.Senders должен быть пустым).

Соединение с TRVMediaServer

См. раздел о TRVMediaServer.

Дополнительные сведения о режимах соединения

См. раздел обзора.

Примечание для Lazarus

В Lazarus этот компонент должен иметь оконный компонент в качестве владельца: вы можете разместить его на форме, но не можете разместить его на модуле данных.

Если компонент создан с параметром Owner = nil, ему назначается главная форма в качестве владельца.