次の方法で共有


IAudioInputEndpointRT::GetInputDataPointer メソッド (audioengineendpoint.h)

GetInputDataPointer メソッドは、オーディオ エンジンによってデータの読み取り元となるバッファーへのポインターを取得します。

構文

void GetInputDataPointer(
  [in, out] APO_CONNECTION_PROPERTY *pConnectionProperty,
  [in, out] AE_CURRENT_POSITION     *pAeTimeStamp
);

パラメーター

[in, out] pConnectionProperty

APO_CONNECTION_PROPERTY構造体へのポインター。

呼び出し元は、次のようにメンバー値を設定します。

  • pBufferNULL に設定されています。
  • u32ValidFrameCount には、取得したデータ ポインターに含める必要があるフレームの数が含まれています。 エンドポイント オブジェクトは、この情報をキャッシュすることはできません。 オーディオ エンジンは、処理のニーズに応じてこの数を変更できます。
  • u32BufferFlagsBUFFER_INVALID に設定されています。
この呼び出しが正常に完了した場合、エンドポイントはメンバー値を次のように設定する必要があります。
  • pBuffer は 、データが読み取られた有効なメモリを指します。 これには、 u32BufferFlags メンバーで設定されたフラグに応じて、無音が含まれる場合があります。
  • u32ValidFrameCount は変更されません。
  • u32BufferFlags は、データ ポインターに有効なデータが含まれている場合は BUFFER_VALID に設定され、データ ポインターにサイレント データのみが含まれている場合は BUFFER_SILENT に設定されます。 バッファー内のデータは実際には無音である必要はありませんが、 pBuffer で指定されたバッファーは、必要なフレーム数と一致するように u32ValidFrameCount に含まれるすべての無音フレームを保持できる必要があります。

[in, out] pAeTimeStamp

バッファーにキャプチャされたデータのタイム スタンプを含む AE_CURRENT_POSITION構造体への ポインター。 このパラメーターは省略できます。

戻り値

なし

解説

このメソッドは、入力としてエンジンに渡す必要があるデータを含むバッファー pConnectionProperty-pBuffer> へのポインターをエンドポイントから返します。 データとバッファー ポインターは、 IAudioInputEndpointRT::ReleaseInputDataPointer メソッドが呼び出されるまで有効なままである必要があります。 エンドポイント オブジェクトは、要求された情報量を設定し、有効なデータが存在しない場合は無音を挿入する必要があります。 エンドポイント オブジェクトによって返されるバッファー ポインター pConnectionProperty-pBuffer> は、フレーム揃えである必要があります。 エンドポイントは余分な領域をサポートしていません。これは、pConnectionProperty パラメーターで渡される接続プロパティに関連付けられているAPO_CONNECTION_PROPERTYで使用できる場合があります。

u32ValidFrameCount メンバーに 0 を渡すことは、有効な要求です。 この場合、入力ポインターは有効である必要がありますが、エンドポイントはそこから読み取りません。 pConnectionProperty-u32ValidFrameCount> 値は、エンドポイントでサポートされている最大フレーム数以下である必要があります。 サポートされているフレーム数を取得するには、 IAudioEndpoint::GetFramesPerPacket メソッドを呼び出します。

このメソッドは、リアルタイム処理スレッドから呼び出すことができます。 このメソッドの実装では、ページングされたメモリをブロックしたり、ページ メモリにアクセスしたり、ブロックしているシステム ルーチンを呼び出したりすることはできません。

リモート デスクトップ サービス AudioEndpoint API は、リモート デスクトップ シナリオで使用されます。クライアント アプリケーション用ではありません。

要件

要件
サポートされている最小のクライアント Windows 7
サポートされている最小のサーバー Windows Server 2008 R2
対象プラットフォーム Windows
ヘッダー audioengineendpoint.h

こちらもご覧ください

IAudioInputEndpointRT