TRVCamera.DesktopMode, DesktopRect, DesktopWindowHandle, DesktopForm [FireMonkey], DesktopZoomPercent

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

TRVCamera.DesktopMode, DesktopRect, DesktopWindowHandle, DesktopForm [FireMonkey], DesktopZoomPercent

Эти свойства определяют область рабочего стола, которая будет кодироваться в видео.

type

  // определено в модуле MRVType/fmxMRVType
  TRVDesktopMode = (rvdmFull, rvdmRect, rvdmWindow);

 
property DesktopMode: TRVDesktopMode;
property DesktopRect: TRVMRect;

property DesktopZoomPercent: Integer;

 

// только для Windows и macOS
property DesktopWindowHandle: TRVMWindowHandle;

// только для FireMonkey

property DesktopForm: TCustomForm; 

 

Эти свойства используются только если DeviceType=rvdtDesktop.

VCL, Lazarus для Windows, FireMonkey для Windows и macOS

Выбор области экрана зависит от свойства DesktopMode.

DesktopMode

Описание

rvdmFull

В качестве источника используется весь рабочий стол или весь монитор, см. свойства VideoDevice***

rvdmRect

Используется прямоугольник, заданный в DesktopRect.

rvdmWindow

Используется прямоугольник окна, указанного в параметре DesktopWindowHandle. Если DesktopWindowHandle=0, используется главная форма приложения.

Примечание для macOS: текущая реализация поддерживает только основной монитор.

Если вы хотите использовать окно другого приложения в качестве источника, вы можете использовать GetVisibleWindowsHandles, чтобы получить возможные значения DesktopWindowHandle.

FireMonkey

Версия РВ-Медиа для FireMonkey поддерживает все параметры DesktopMode только для платформ Windows и macOS.

На других платформах (Linux) она может транслировать только формы этого приложения. DesktopMode должен быть rvdmWindow. Исходная форма указывается в DesktopForm. На платформах Windows и macOS, если определены DesktopWindowHandle и DesktopForm, для потоковой передачи выбирается DesktopForm.

При потоковой передаче РВ-Медиа рисует DesktopForm в растровом изображении и использует его как кадр (вместо потоковой передачи области экрана, занимаемой этой формой).

Если DesktopWindowHandle и DesktopForm не определены, используется главная форма.

Общее

Свойство DesktopZoomPercent масштабирует видеокадры. Например, DesktopZoomPercent=100 оставляет кадры без изменений (размер 100%), а DesktopZoomPercent=50 уменьшает их ширину и высоту до 50%. Присваивайте значения в диапазоне от 1 до 99, чтобы уменьшить размер кадра и, следовательно, снизить нагрузку на систему. Также можно присвоить значения больше 100, чтобы увеличить размер кадров, но это не имеет смысла.

Значения по умолчанию:

DesktopMode: rvdmFull

DesktopWindowHandle: 0

DesktopForm: nil

DesktopZoomPercent: 100

См. также:

Методы DesktopVideoMode