MediaCapture.SetEncodingPropertiesAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
メディア エンコード プロパティを非同期に設定します。
public:
virtual IAsyncAction ^ SetEncodingPropertiesAsync(MediaStreamType mediaStreamType, IMediaEncodingProperties ^ mediaEncodingProperties, MediaPropertySet ^ encoderProperties) = SetEncodingPropertiesAsync;
IAsyncAction SetEncodingPropertiesAsync(MediaStreamType const& mediaStreamType, IMediaEncodingProperties const& mediaEncodingProperties, MediaPropertySet const& encoderProperties);
public IAsyncAction SetEncodingPropertiesAsync(MediaStreamType mediaStreamType, IMediaEncodingProperties mediaEncodingProperties, MediaPropertySet encoderProperties);
function setEncodingPropertiesAsync(mediaStreamType, mediaEncodingProperties, encoderProperties)
Public Function SetEncodingPropertiesAsync (mediaStreamType As MediaStreamType, mediaEncodingProperties As IMediaEncodingProperties, encoderProperties As MediaPropertySet) As IAsyncAction
パラメーター
- mediaStreamType
- MediaStreamType
ストリームが表すメディア データの種類 (ビデオやオーディオなど)。
- mediaEncodingProperties
- IMediaEncodingProperties
メディア エンコードのプロパティ。
- encoderProperties
- MediaPropertySet
エンコーダーのプロパティ。
戻り値
非同期操作を制御するために使用される オブジェクト。
Windows の要件
アプリの機能 |
backgroundMediaRecording
|
注釈
このメソッドは、表示、IRandomAccessStream または StorageFile への書き込み、またはカスタム メディア シンクへの配信を行う CaptureElement に渡される前にデータを処理するエンコーダーのエンコード プロパティを設定します。 この方法では、カメラ デバイスであるデータソースの構成は変更されません。 エンコード プロパティを、カメラでネイティブにサポートされていない解像度に設定できます。 この場合、 MediaCapture パイプラインはエンコーダーを使用して、要求された形式への変換を実行します。 この変換ではシステム リソースが消費され、特にグラフィックス アクセラレーションが制限されているデバイスやないデバイスでは、パフォーマンスが低下したり、エラーが発生したりする可能性があることに注意してください。 一般的なシナリオでは、目的の解像度に最も近いカメラでサポートされている解像度を選択することをお勧めします。 VideoDeviceController.GetAvailableMediaStreamProperties を呼び出すことで、キャプチャ デバイスでサポートされている解像度の一覧を取得できます。 詳細については、「MediaCapture のフォーマット、解像度、フレーム レートの設定」および「カメラ解像度サンプル」を参照してください。
Note
SetEncodingPropertiesAsync は、既定のプレビュー ストリームがストリーミング状態である場合 、つまり StartPreviewAsync が正常に呼び出された後にのみ成功します。 MediaCapture オブジェクトが MediaPlayerElement または MediaFrameReader を介して MediaFrameSource からビデオをストリーミングしているときに SetEncodingPropertiesAsync が呼び出されると、この呼び出しは失敗します。
レコードまたはプレビュー ストリームをローテーションするには、MF_MT_VIDEO_ROTATIONによって定義された GUID を使用して、ストリームにメタデータを追加します。 この回転は 、CaptureElement やビデオ プレーヤー アプリなどのストリームのコンシューマーによって実行されますが、ストリーム内の実際のピクセルは元の向きを保持します。 カメラを使用するときの向きの処理方法に関するガイダンスについては、「 MediaCapture を使用してデバイスの向きを処理する」を参照してください。
キャプチャ デバイスのプロパティを変更するには、 VideoDeviceController.SetMediaStreamPropertiesAsync を使用します。