FMX.Media.TVideoCaptureDevice.Quality

提供:RAD Studio API Documentation

Delphi

property Quality: TVideoCaptureQuality read GetQuality write SetQuality;

C++

__property TVideoCaptureQuality Quality = {read=GetQuality, write=SetQuality, nodefault};

プロパティ

種類 可視性 ソース ユニット 親
property public
FMX.Media.pas
FMX.Media.hpp
FMX.Media TVideoCaptureDevice


説明

ビデオ キャプチャの品質を指定します。

TVideoCaptureQuality 型の Quality プロパティでは、次の値のいずれかを取ることができます。

値 意味

PhotoQuality

キャプチャされたデータは高解像度写真レベルの品質です。

HighQuality

キャプチャされたデータは高解像度です(デバイスによる)。

MediumQuality

キャプチャされたデータは中解像度です(デバイスによる)。

LowQuality

キャプチャされたデータは低解像度です(デバイスによる)。

CaptureSettings

このオプションを使用すると、カスタマイズされたキャプチャ データ解像度を設定できます。

デフォルトでは、Quality は CaptureSettings に設定されており、解像度をまず優先して、使用可能な最高のカメラ品質(最高の解像度と最高のフレーム レート)を適用します。

たとえば、VideoCaptureDevice1 という TVideoCaptureDevice の Quality を LowQuality に変更するには、次のコードを使用できます。

Delphi の場合:
VideoCaptureDevice1.Quality := TVideoCaptureQuality.LowQuality;
C++ の場合:
VideoCaptureDevice1->Quality = TVideoCaptureQuality::LowQuality;

カスタム品質キャプチャ設定の設定

Quality を TVideoCaptureQuality.CaptureSettings に設定することにより、カスタマイズされたキャプチャ データ解像度を設定できます。

フレーム レートを優先させて使用可能な最高のキャプチャ設定を設定するには、たとえば、次のようなコードを使用できるでしょう。

Delphi の場合:
procedure TForm1.SetMaxFrameRateClick(Sender: TObject);
var
  LSettings: TArray<TVideoCaptureSetting>;
begin
  VideoCaptureDevice1.CaptureSettingPriority := TVideoCaptureSettingPriority.FrameRate;
  LSettings := VideoCaptureDevice1.AvailableCaptureSettings;
  VideoCaptureDevice1.CaptureSetting := LSettings[0];
end;
C++ の場合:
void __fastcall TForm1::SetMaxFrameRateClick(TObject *Sender)
{
	DynamicArray<TVideoCaptureSetting> LSettings;
	VideoCaptureDevice1->CaptureSettingPriority = TVideoCaptureSettingPriority::FrameRate;
	LSettings = VideoCaptureDevice1->AvailableCaptureSettings;
	VideoCaptureDevice1->CaptureSetting = LSettings[0];
}
メモ: 特定の CaptureSetting を設定すると、Quality プロパティには TVideoCaptureQuality.CaptureSettings が自動的に設定されます。

関連項目