次の方法で共有


MediaCapture.SetEncodingPropertiesAsync メソッド

定義

メディア エンコード プロパティを非同期に設定します。

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 を使用します

適用対象

こちらもご覧ください