KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION

KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION は、ドライバーにおける背景ぼかしを制御するために使用されるプロパティ ID です。

このプロパティは、ドライバーが実行できるインストリーム補正を制御します。これにより、プレビューおよび記録された画像で使用される高品質の画像補正が有効になります。 インストリーム補正は、Windows またはアプリケーションで機能を制御できるように、一様にドライバー内で有効または無効にする必要があります。

KSPROPERTY コントロールの設定例は、GitHub の AVStream カメラ サンプル ドライバーでご確認ください。

KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION コントロールの更新

Windows 11 バージョン 22H2 以降では、Shallow フォーカス モードがオプション機能として既存の背景セグメンテーション コントロールに導入されました。

KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS は、ドライバーにおける Bokeh (シャロー フォーカス モード) を制御するために使用される KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION コントロールに追加された新しいフラグです。 これは、KSPROPERTY_CAMERACONTROL_EXTENDED_BACKGROUNDSEGMENTATION の背景ぼかしバージョンであり、プライバシーよりもユーザーの背景が強調され、被写界深度エフェクトを使用した高品質のカメラの写真のようです。 これは、多くの携帯電話で縦モードの写真が普及しているのと同様に、前景の被写体を視覚的に目立せることができます。

使用状況概要表

範囲 コントロール タイプ
バージョン 1 フィルター 同期

KSCAMERA_EXTENDEDPROP_HEADER.Flags フィールドに以下のフラグを配置することにより、シャロー フォーカス モードを制御できます。

#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_OFF          0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR         0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK         0x0000000000000002
#define KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS 0x0000000000000004

ドライバーがこのコントロールをサポートする場合は、BACKGROUNDSEMENTATION_OFF に加えてあと 1 つ以上の他のフラグをサポートする必要があります。

ドライバーが背景セグメンテーションをサポートしていない場合は、ドライバーでこのコントロールを実装しないでください。

このコントロールの SET 呼び出しは、ビデオまたは写真ピンが KSSTATE_RUN 状態にある場合も有効になります。 GET 呼び出しでは、ドライバーが Flags フィールドの現在の設定を返す必要があります。

以下の表では、フラグの機能について説明します。

フラグ 説明
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_OFF これは必須の機能です。 指定した場合、ドライバーで背景セグメンテーションが無効になります。 これが既定値です。
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR これはオプションの機能です。 指定した場合、ドライバーで背景ぼかしが有効になり、可能な場合はフレームに適用されます。
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK これはオプションの機能です。 指定した場合、ドライバーで背景マスクのメタデータの生成が有効になります (可能な場合は、KSCAMERA_EXTENDEDPROP_HEADER の Size フィールドに返された、KSPROPERTY_CAMERACONTROL_EXTENDED_ BACKGROUNDSEGMENTATION_CONFIGCAPS のセットを通じて表される MediaType が使用されます)。 これはカラー カメラだけでなく、深度カメラや IR カメラでもサポートできることに注意してください。
KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUS これはオプションの機能です。 KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR と共に指定した場合、ドライバーでシャロー フォーカスが有効になります。

Note

SET の観点では、KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_SHALLOWFOCUSKSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_BLUR と共に追加して有効にする必要があります。これらは、KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_MASK と共に設定することもできます。

次の表は、KSCAMERA_EXTENDEDPROP_HEADER 構造体について、このコントロールを使用する場合のフィールドの説明と要件を示します。

メンバー 説明
バージョン これは 1 である必要があります。
PinId これは KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) にする必要があります。
Size これは sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_値) にする必要があります。
Result 使用されていません。0 にする必要があります。
機能 上記で定義した、サポートされている KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION _* フラグのビット論理和にする必要があります。
Flags これは読み取り/書き込みフィールドです。 上で定義した KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION _* フラグのいずれか (ただし、有効にするには BLUR と共に設定する必要がある SHALLOWFOCUS を除く) またはこれらのビットの有効な組み合わせを指定できます。 SET の観点では、シャロー フォーカス モードは、SHALLOWFOCUS と BLUR の両方が同時に設定されている場合にのみ有効になり、MASK と共に設定できます。

要件

サポートされている最小クライアント: Windows 11 バージョン 22H2

ヘッダー: ksmedia.h (Ksmedia.h を含む)

関連項目

背景セグメンテーション縦長モードと視線入力凝視モードのドライバー サンプル

KSPROPERTY_CAMERACONTROL_EXTENDED_EYEGAZECORRECTION

KSCAMERA_EXTENDEDPROP_BACKGROUNDSEGMENTATION_CONFIGCAPS

KSCAMERA_EXTENDEDPROP_HEADER