Skip to main content

AOQ Client SDK Windows API リファレンス

このトピックでは、AOQ Client SDK for Windows の C++ API、コールバック、およびデータ型について説明します。

AOQ SDK は汎用の動画 API を提供します。Qwen-Audio-Realtime は動画の入出力をサポートしていません。その他のモデルのメディア機能は、それぞれのアクセスドキュメントをご覧ください。
この SDK は、エンジンインスタンスをグローバルシングルトンとして保持し、AoqClientEngine クラスを介して API を提供し、AoqEngineEventListener 抽象クラスを介して非同期イベントを通知します。すべての型定義は AoqClientSdk 名前空間にあり、ヘッダーファイルは AoqClientEngine.h です。
呼び出し元は、すべての const char* 文字列のライフサイクルに責任を負います。これらは、対応する呼び出しが返るまで少なくとも有効である必要があります。エンジンは必要に応じて内部でこれらをコピーします。

API インデックス

エンジンライフサイクル

API

説明

createEngine

エンジンインスタンス (シングルトン) の作成

destroy

エンジンインスタンスの削除

getVersion

SDK バージョンの取得

connect

リレーサーバーへの接続

disconnect

サーバーからの切断

オーディオデバイス管理

API

説明

startAudioCapture

音声キャプチャデバイス (マイク) のオープン

stopAudioCapture

オーディオキャプチャデバイスを閉じます

muteAudioCapture

音声キャプチャのミュートまたはミュート解除

startAudioPlayer

リモート音声を再生するための音声レンダリングの開始

stopAudioPlayer

音声レンダリングの停止

pauseAudioPlayer

音声レンダリングの一時停止 (フェードアウト対応)

resumeAudioPlayer

音声レンダリングの再開 (フェードイン対応)

interruptAudioPlayer

現在のオーディオセッションの中断

enableLocalAudioVolumeIndication

ローカルキャプチャ音量レベル通知の有効化または無効化

音声エンコーディング構成

API

説明

setAudioEncoderConfig

音声エンコーディングパラメーターの設定

setAudioDecoderConfig

音声デコーディングパラメーターの設定

ビデオデバイス管理

API

説明

startVideoCapture

ビデオキャプチャデバイス (カメラ) のオープン

stopVideoCapture

ビデオキャプチャデバイスのクローズ

setLocalView

ローカルビデオレンダリングウィンドウの設定または削除

setRemoteView

リモートビデオレンダリングウィンドウの設定または削除

ビデオエンコーディングと外部入力

API

説明

setVideoEncoderConfig

ビデオエンコーディングパラメーターの設定

setVideoDecoderConfig

ビデオデコーディングパラメーターの設定

pushExternalVideoCapturedFrame

外部でキャプチャされたビデオフレームのプッシュ

pushExternalVideoEncodedFrame

外部でエンコードされたビデオフレームのプッシュ

メディアストリームコントロール

API

説明

enableSendMediaStream

ローカルメディアストリーム送信の有効化または無効化

オーディオファイルの再生

API

説明

startAudioFile

ローカルオーディオファイルのパブリッシングストリームへの再生開始

stopAudioFile

オーディオファイル再生の停止

pauseAudioFile

オーディオファイル再生の一時停止

resumeAudioFile

オーディオファイル再生の再開

getAudioFileDuration

オーディオファイルの合計再生時間の照会

getAudioFileCurrentPosition

オーディオファイルの現在の再生位置の照会

setAudioFilePositionMillis

オーディオファイルの再生位置の設定 (シーク)

setAudioFileVolume

オーディオファイルの音量の設定

getAudioFileVolume

オーディオファイルの現在の音量の照会

外部音声ストリーム

API

説明

addAudioExternalStream

外部音声ストリームの追加

pushAudioExternalStreamData

外部音声 PCM データの供給

setAudioExternalStreamVolume

外部音声ストリームの音量の設定

getAudioExternalStreamVolume

外部音声ストリームの音量の照会

clearAudioExternalStreamBuffer

外部音声ストリームのバッファーのクリア

removeAudioExternalStream

外部音声ストリームの削除

リアルタイムメッセージング

API

説明

sendDataMsg

リアルタイムデータメッセージの送信

音声フレームコールバック

API

説明

setAudioFrameObserver

音声フレームデータコールバックリスナーの設定

enableAudioFrameObserver

指定した位置での音声フレームコールバックの有効化または無効化

ビデオフレームコールバック

API

説明

setVideoFrameObserver

ビデオフレームデータコールバックリスナーの設定

enableVideoFrameObserver

指定した位置でのビデオフレームコールバックの有効化または無効化

AoqEngineEventListener コールバック

コールバック

説明

onError

エンジンエラーコールバック

onWarning

エンジン警告コールバック

onConnectionStatusChange

接続ステータス変更コールバック

onStats

エンジン統計コールバック

onAudioDeviceStateChanged

オーディオデバイス操作ステータス変更コールバック

onAudioDeviceRouteChanged

音声出力ルート変更コールバック

onAudioFileState

オーディオファイル再生ステータスコールバック

onLocalAudioVolumeIndication

ローカルキャプチャ音量レベル通知コールバック

onVideoDeviceStateChanged

ビデオデバイス操作ステータス変更コールバック

onDataMsg

受信したリアルタイムデータメッセージのコールバック

API 詳細

エンジンライフサイクル

createEngine

エンジンインスタンスを作成します。SDK はエンジンをグローバルシングルトンとして保持するため、このメソッドを再度呼び出すと既存のインスタンスが返されます。
static AoqClientEngine* createEngine(const AoqCreateConfig& config,
                                     AoqEngineEventListener* listener);
パラメーター

パラメーター

型

説明

config

const AoqCreateConfig&

エンジン作成構成。詳細については、AoqCreateConfig をご参照ください。

listener

AoqEngineEventListener*

イベントコールバックリスナー。詳細については、AoqEngineEventListener をご参照ください。

戻り値:エンジンインスタンスへのポインター。失敗した場合は nullptr が返されます。

destroy

エンジンインスタンスを削除します。エンジンが削除された後、引き続き使用するには再度 createEngine を呼び出す必要があります。
static int destroy();
戻り値:成功した場合は 0、失敗した場合は 0 以外。

getVersion

SDK バージョンを取得します。
static const char* getVersion();
戻り値:バージョン文字列。

connect

リレーサーバーに接続します。アプリケーションサーバーは、使用中のプロトコルに基づいて一時的な AOQ 接続パラメーターを取得し、クライアントに送信します。詳細については、「トークン認証」をご参照ください。
virtual int connect(const AoqConnectConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqConnectConfig&

接続認証構成。詳細については、AoqConnectConfig をご参照ください。

戻り値:0 は呼び出しがディスパッチされ、非同期で実行されることを示します。0 以外はパラメーターの検証に失敗したことを示します。

disconnect

サーバーから切断します。
virtual int disconnect();
戻り値:0 は呼び出しがディスパッチされ、非同期で実行されることを示します。0 以外は失敗を示します。

オーディオデバイス管理

startAudioCapture

音声キャプチャデバイス (マイク) を開きます。
virtual int startAudioCapture(const AoqAudioCaptureConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqAudioCaptureConfig&

音声キャプチャ構成。詳細については、AoqAudioCaptureConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

stopAudioCapture

音声キャプチャデバイスを閉じます。
virtual int stopAudioCapture();
戻り値:成功した場合は 0、失敗した場合は 0 以外。

muteAudioCapture

音声キャプチャをミュートまたはミュート解除します。
virtual int muteAudioCapture(bool mute);
パラメーター

パラメーター

型

説明

mute

bool

true はミュート、false はミュート解除

戻り値:成功した場合は 0、失敗した場合は 0 以外。

startAudioPlayer

リモート音声を再生するために音声レンダリングを開始します。
virtual int startAudioPlayer(const AoqAudioPlaybackConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqAudioPlaybackConfig&

音声再生構成。詳細については、AoqAudioPlaybackConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

stopAudioPlayer

音声レンダリングを停止します。
virtual int stopAudioPlayer();
戻り値:成功した場合は 0、失敗した場合は 0 以外。

pauseAudioPlayer

音声レンダリングを一時停止します。フェードアウトがサポートされています。
virtual int pauseAudioPlayer(int fadeMs);
パラメーター

パラメーター

型

説明

fadeMs

int

フェードアウト時間 (ミリ秒)。0 は即時一時停止を示します。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

resumeAudioPlayer

音声レンダリングを再開します。フェードインがサポートされています。
virtual int resumeAudioPlayer(int fadeMs);
パラメーター

パラメーター

型

説明

fadeMs

int

フェードイン時間 (ミリ秒)。0 は即時再開を示します。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

interruptAudioPlayer

現在のオーディオセッションを中断し、現在再生中の音声を停止します。
virtual int interruptAudioPlayer(AoqTrackType trackType, int fadeMs);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

トラックタイプ。詳細については、AoqTrackType をご参照ください。

fadeMs

int

フェードアウト時間 (ミリ秒)。0 は即時中断を示します。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

enableLocalAudioVolumeIndication

ローカルキャプチャ音量レベル通知を有効または無効にします。有効にすると、config.interval で指定された間隔で onLocalAudioVolumeIndication コールバックがトリガーされます。config.interval <= 0 の場合、コールバックは無効になります。音量データを取得するには、startAudioCapture の後にこのメソッドを呼び出す必要があります。
virtual int enableLocalAudioVolumeIndication(const AoqAudioVolumeIndicationConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqAudioVolumeIndicationConfig&

音量レベル通知構成。詳細については、AoqAudioVolumeIndicationConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

音声エンコーディング構成

setAudioEncoderConfig

音声エンコーディングパラメーターを設定します。
virtual int setAudioEncoderConfig(const AoqAudioCodecConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqAudioCodecConfig&

音声コーデック構成。詳細については、AoqAudioCodecConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

setAudioDecoderConfig

音声デコーディングパラメーターを設定します。
virtual int setAudioDecoderConfig(const AoqAudioCodecConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqAudioCodecConfig&

音声コーデック構成。詳細については、AoqAudioCodecConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

ビデオデバイス管理

startVideoCapture

ビデオキャプチャデバイス (カメラ) を開きます。isExternal=true が設定されている場合、カメラは開かれず、フレームは pushExternalVideoCapturedFrame によって供給されます。
virtual int startVideoCapture(const AoqVideoCaptureConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqVideoCaptureConfig&

ビデオキャプチャ構成。詳細については、AoqVideoCaptureConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

stopVideoCapture

ビデオキャプチャデバイスを閉じます。
virtual int stopVideoCapture();
戻り値:成功した場合は 0、失敗した場合は 0 以外。

setLocalView

ローカルビデオレンダリングウィンドウを設定または削除します。canvas.view == nullptr の場合、バインドは削除されます。
virtual int setLocalView(AoqTrackType trackType, const AoqVideoCanvas& canvas);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ビデオトラック。AoqTrackTypeVideo を渡します。

canvas

const AoqVideoCanvas&

レンダリングキャンバス。詳細については、AoqVideoCanvas をご参照ください。view が nullptr の場合、バインドは削除されます。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

setRemoteView

リモートビデオレンダリングウィンドウを設定または削除します。canvas.view == nullptr の場合、バインドは削除されます。
virtual int setRemoteView(AoqTrackType trackType, const AoqVideoCanvas& canvas);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ビデオトラック。AoqTrackTypeVideo を渡します。

canvas

const AoqVideoCanvas&

レンダリングキャンバス。詳細については、AoqVideoCanvas をご参照ください。view が nullptr の場合、バインドは削除されます。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

ビデオエンコーディングと外部入力

setVideoEncoderConfig

ビデオエンコーディングパラメーターを設定し、config.trackType に基づいてルーティングします。
virtual int setVideoEncoderConfig(const AoqVideoCodecConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqVideoCodecConfig&

ビデオコーデック構成。詳細については、AoqVideoCodecConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

setVideoDecoderConfig

ビデオデコーディングパラメーターを設定します (サブスクライブ側のコーデック提案であり、connect の前に呼び出す必要があります)。呼び出しは config.trackType に基づいてルーティングされます。
virtual int setVideoDecoderConfig(const AoqVideoCodecConfig& config);
パラメーター

パラメーター

型

説明

config

const AoqVideoCodecConfig&

ビデオコーデック構成。詳細については、AoqVideoCodecConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

pushExternalVideoCapturedFrame

外部ビデオフレームをプッシュします。まず startVideoCapture を呼び出し、isExternal=true を設定する必要があります。外部ビデオキャプチャが開始されていない場合、AoqECVideoExternalCaptureNotEnabled (211) が返されます。フレームフォーマットがサポートされていない場合、AoqECParamInvalid が返されます。
virtual int pushExternalVideoCapturedFrame(AoqTrackType trackType, const AoqVideoFrame& frame);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ルーティング先。AoqTrackTypeVideo を渡します。

frame

const AoqVideoFrame&

外部ビデオフレームデータ。詳細については、AoqVideoFrame をご参照ください。

戻り値:成功した場合は 0。AoqECVideoExternalBufferFull (210) はバッファーが満杯であることを示します。AoqECVideoExternalCaptureNotEnabled (211) は外部ビデオキャプチャが有効になっていないことを示します。AoqECParamInvalid はサポートされていないフレームフォーマットを示します。その他の 0 以外の値はその他のエラーを示します。

pushExternalVideoEncodedFrame

外部でエンコードされたビデオフレームを直接プッシュし、エンコーダーをバイパスします。まず setVideoEncoderConfig を呼び出し、isExternal=true を設定する必要があります。現在サポートされているのは JPEG のみです。
virtual int pushExternalVideoEncodedFrame(AoqTrackType trackType, const AoqVideoEncodedFrame& frame);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ルーティング先。AoqTrackTypeVideo を渡します。

frame

const AoqVideoEncodedFrame&

外部でエンコードされたフレームデータ。詳細については、AoqVideoEncodedFrame をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

メディアストリームコントロール

enableSendMediaStream

ローカルメディアストリームの送信を有効または無効にします。初期化後に送信を無効にし、onConnectionStatusChange コールバックが AoqConnectionStatusConnected を通知した後にのみ有効にすることを推奨します。
virtual int enableSendMediaStream(AoqTrackType trackType, bool enable);
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ルーティング先。AoqTrackTypeAudio と AoqTrackTypeVideo がサポートされています。

enable

bool

true は送信を有効にし、false は送信を無効にします

戻り値:0 は呼び出しがディスパッチされ、非同期で実行されることを示します。0 以外は失敗を示します。

オーディオファイルの再生

startAudioFile

ローカルオーディオファイルをパブリッシングストリームに再生開始します。
virtual int startAudioFile(const char* fileId, const AoqAudioFileMixConfig& config);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID。ビジネスレイヤーで一意性を保証する必要があります。

config

const AoqAudioFileMixConfig&

オーディオファイルミキシング構成。詳細については、AoqAudioFileMixConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

stopAudioFile

オーディオファイルの再生を停止します。
virtual int stopAudioFile(const char* fileId);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

戻り値:成功した場合は 0、失敗した場合は 0 以外。

pauseAudioFile

オーディオファイルの再生を一時停止します。
virtual int pauseAudioFile(const char* fileId);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

戻り値:成功した場合は 0、失敗した場合は 0 以外。

resumeAudioFile

オーディオファイルの再生を再開します。
virtual int resumeAudioFile(const char* fileId);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

戻り値:成功した場合は 0、失敗した場合は 0 以外。

getAudioFileDuration

オーディオファイルの合計再生時間を取得します。
virtual int64_t getAudioFileDuration(const char* fileId);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

戻り値:0 以上の値はオーディオファイルの再生時間 (ミリ秒) を示します。0 未満の値は失敗 (-AoqErrorCode) を示します。

getAudioFileCurrentPosition

オーディオファイルの現在の再生位置を取得します。
virtual int64_t getAudioFileCurrentPosition(const char* fileId);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

戻り値:0 以上の値は現在の再生位置 (ミリ秒) を示します。0 未満の値は失敗 (-AoqErrorCode) を示します。

setAudioFilePositionMillis

オーディオファイルの再生位置を設定します (シーク)。
virtual int setAudioFilePositionMillis(const char* fileId, int64_t positionMillis);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

positionMillis

int64_t

再生位置 (ミリ秒)

戻り値:成功した場合は 0、失敗した場合は 0 以外。

setAudioFileVolume

オーディオファイルの音量を設定します。
virtual int setAudioFileVolume(const char* fileId, AoqAudioStreamDirection type, int volume);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

type

AoqAudioStreamDirection

音声ストリームの方向。詳細については、AoqAudioStreamDirection をご参照ください。

volume

int

音量値。有効な値の範囲は 0 から 100 です。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

getAudioFileVolume

オーディオファイルの現在の音量を取得します。
virtual int getAudioFileVolume(const char* fileId, AoqAudioStreamDirection type);
パラメーター

パラメーター

型

説明

fileId

const char*

オーディオファイル ID

type

AoqAudioStreamDirection

音声ストリームの方向。詳細については、AoqAudioStreamDirection をご参照ください。

戻り値:0 から 100 の値は音量を示します。0 未満の値は失敗 (-AoqErrorCode) を示します。

外部音声ストリーム

addAudioExternalStream

外部音声ストリームを追加します。
virtual int addAudioExternalStream(const char* streamId, const AoqAudioExternalStreamConfig& config);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID。ビジネスレイヤーで一意性を保証する必要があります。

config

const AoqAudioExternalStreamConfig&

外部音声ストリーム構成。詳細については、AoqAudioExternalStreamConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

pushAudioExternalStreamData

外部音声 PCM データを供給します。AoqECAudioExternalBufferFull (110) が返された場合、SDK バッファーが満杯であることを示します。約 20 ms 待ってから現在のデータフレームを再送信することを推奨します。
virtual int pushAudioExternalStreamData(const char* streamId, AoqAudioFrameData& data);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID

data

AoqAudioFrameData&

外部の生音声データ。詳細については、AoqAudioFrameData をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。
ベストプラクティス:リアルタイムキャプチャのシナリオでは、一度に 10 ms のデータをプッシュし、データが利用可能になるたびにプッシュします。データがファイルからのものである場合は、30 ms の間隔で一度に 40 ms のデータをプッシュし、AoqECAudioExternalBufferFull の戻り値を処理します。

setAudioExternalStreamVolume

外部音声ストリームの音量を設定します。
virtual int setAudioExternalStreamVolume(const char* streamId, AoqAudioStreamDirection type, int vol);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID

type

AoqAudioStreamDirection

外部音声ストリームタイプ。詳細については、AoqAudioStreamDirection をご参照ください。

vol

int

音量値。有効な値の範囲は 0 から 100 です。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

getAudioExternalStreamVolume

外部音声ストリームの音量を取得します。
virtual int getAudioExternalStreamVolume(const char* streamId, AoqAudioStreamDirection type);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID

type

AoqAudioStreamDirection

外部音声ストリームタイプ。詳細については、AoqAudioStreamDirection をご参照ください。

戻り値:0 から 100 の値は音量を示します。0 未満の値は失敗 (-AoqErrorCode) を示します。

clearAudioExternalStreamBuffer

外部音声ストリームのバッファーをクリアします。
virtual void clearAudioExternalStreamBuffer(const char* streamId, int fadeoutMs);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID

fadeoutMs

int

フェードアウト時間。-1 は SDK のデフォルトのフェードアウトを使用し、0 はフェードアウトなしですべてをクリアし、0 より大きい値は指定されたミリ秒数のフェードアウトを維持します。

戻り値:なし。

removeAudioExternalStream

外部音声ストリームを削除します。
virtual int removeAudioExternalStream(const char* streamId);
パラメーター

パラメーター

型

説明

streamId

const char*

外部音声ストリーム ID

戻り値:成功した場合は 0、失敗した場合は 0 以外。

リアルタイムメッセージング

sendDataMsg

リアルタイムデータメッセージを送信します。
virtual int sendDataMsg(const AoqDataMsg& msg);
パラメーター

パラメーター

型

説明

msg

const AoqDataMsg&

メッセージ内容。詳細については、AoqDataMsg をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

音声フレームコールバック

setAudioFrameObserver

音声フレームデータコールバックリスナーを設定します。nullptr を渡すとコールバックが停止します。リスナーを設定した後、enableAudioFrameObserver を呼び出して、対応するデータソースのコールバックを有効にします。
virtual int setAudioFrameObserver(IAudioFrameObserver* observer) = 0;
パラメーター

パラメーター

型

説明

observer

IAudioFrameObserver*

音声フレームコールバックリスナー。詳細については、IAudioFrameObserver をご参照ください。nullptr を渡すとコールバックが停止します。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

enableAudioFrameObserver

指定した位置での音声フレームコールバックを有効または無効にします。
virtual int enableAudioFrameObserver(bool enabled, AoqAudioSource audioSource,
                                     const AoqAudioObserverConfig& config) = 0;
パラメーター

パラメーター

型

説明

enabled

bool

データコールバックを許可するかどうかを指定します

audioSource

AoqAudioSource

生音声データのソースタイプ。詳細については、AoqAudioSource をご参照ください。

config

const AoqAudioObserverConfig&

コールバックパラメーター設定。詳細については、AoqAudioObserverConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

ビデオフレームコールバック

setVideoFrameObserver

ビデオフレームデータコールバックリスナーを設定します。nullptr を渡すとコールバックが停止します。リスナーを設定した後、enableVideoFrameObserver を呼び出して、対応するデータソースのコールバックを有効にします。
virtual int setVideoFrameObserver(IVideoFrameObserver* observer) = 0;
パラメーター

パラメーター

型

説明

observer

IVideoFrameObserver*

ビデオフレームコールバックリスナー。詳細については、IVideoFrameObserver をご参照ください。nullptr を渡すとコールバックが停止します。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

enableVideoFrameObserver

指定した位置でのビデオフレームコールバックを有効または無効にします。
virtual int enableVideoFrameObserver(bool enabled, AoqVideoSource videoSource,
                                     const AoqVideoObserverConfig& config) = 0;
パラメーター

パラメーター

型

説明

enabled

bool

ある位置でのデータコールバックを有効にするかどうかを指定します

videoSource

AoqVideoSource

ビデオフレームコールバックのデータソース (パイプライン内の位置)。詳細については、AoqVideoSource をご参照ください。

config

const AoqVideoObserverConfig&

コールバックパラメーター設定。詳細については、AoqVideoObserverConfig をご参照ください。

戻り値:成功した場合は 0、失敗した場合は 0 以外。

コールバック

AoqEngineEventListener

AoqEngineEventListener は、SDK からのすべての非同期イベント通知の統一されたエントリポイントです。これは抽象クラスであり、継承して実装し、createEngine を呼び出すときに渡します。すべてのコールバックは内部スレッドでトリガーされる可能性があるため、スレッドセーフティはご自身で処理する必要があります。状態遷移:Disconnected → Connecting → Connected/Failed → Disconnected。

onError

エンジンエラーコールバック。
virtual void onError(int code, const char* message) = 0;
パラメーター

パラメーター

型

説明

code

int

エラーコード。詳細については、AoqErrorCode をご参照ください。

message

const char*

エラーの説明

onWarning

エンジン警告コールバック。
virtual void onWarning(int code, const char* message) = 0;
パラメーター

パラメーター

型

説明

code

int

警告コード。詳細については、AoqWarningCode をご参照ください。

message

const char*

警告の説明

onConnectionStatusChange

エンジン接続ステータス変更コールバック。
virtual void onConnectionStatusChange(AoqConnectionStatus status) = 0;
パラメーター

パラメーター

型

説明

status

AoqConnectionStatus

接続ステータス。詳細については、AoqConnectionStatus をご参照ください。

onStats

エンジン統計コールバック。
virtual void onStats(const AoqStats& stats) = 0;
パラメーター

パラメーター

型

説明

stats

const AoqStats&

統計データ。詳細については、AoqStats をご参照ください。

onAudioDeviceStateChanged

オーディオデバイスのキャプチャおよび再生操作ステータス変更のコールバック。
virtual void onAudioDeviceStateChanged(const AoqAudioDeviceState& state) = 0;
パラメーター

パラメーター

型

説明

state

const AoqAudioDeviceState&

オーディオデバイスの状態。詳細については、AoqAudioDeviceState をご参照ください。

onAudioDeviceRouteChanged

音声出力ルート変更コールバック。
virtual void onAudioDeviceRouteChanged(int routeType) = 0;
パラメーター

パラメーター

型

説明

routeType

int

ルートタイプ。有効な値については、AoqAudioDeviceRouteType をご参照ください。

onAudioFileState

オーディオファイル再生ステータスのコールバック。
virtual void onAudioFileState(const AoqAudioFileState& state) = 0;
パラメーター

パラメーター

型

説明

state

const AoqAudioFileState&

ファイル再生状態。詳細については、AoqAudioFileState をご参照ください。

onLocalAudioVolumeIndication

ローカルキャプチャ音量レベル通知コールバック。有効にするには、enableLocalAudioVolumeIndication を呼び出します。
virtual void onLocalAudioVolumeIndication(const AoqAudioVolume& volume) = 0;
パラメーター

パラメーター

型

説明

volume

const AoqAudioVolume&

ローカル音量情報。詳細については、AoqAudioVolume をご参照ください。

onVideoDeviceStateChanged

ビデオデバイスキャプチャ操作ステータス変更のコールバック。
virtual void onVideoDeviceStateChanged(const AoqVideoDeviceState& state) = 0;
パラメーター

パラメーター

型

説明

state

const AoqVideoDeviceState&

ビデオデバイスの状態。詳細については、AoqVideoDeviceState をご参照ください。

onDataMsg

受信したリアルタイムデータメッセージのコールバック。
virtual void onDataMsg(const AoqDataMsg& msg) = 0;
パラメーター

パラメーター

型

説明

msg

const AoqDataMsg&

データメッセージ。詳細については、AoqDataMsg をご参照ください。

IAudioFrameObserver

音声フレームデータコールバックのインターフェースで、呼び出し元が継承によって実装します。コールバック内で時間のかかる操作を実行しないでください。実行すると、音声の異常が発生する可能性があります。

onCapturedAudioFrame

キャプチャされた生データのコールバック。有効にするには、enableAudioFrameObserver を呼び出し、audioSource = AoqAudioSourceCaptured を設定します。サンプルレートとチャンネル数を設定でき、読み書きモードがサポートされています。
virtual void onCapturedAudioFrame(const AoqAudioFrameData& data) = 0;
パラメーター

パラメーター

タイプ

説明

data

const AoqAudioFrameData&

キャプチャされた生音声データ。詳細については、AoqAudioFrameData をご参照ください。

onProcessCapturedAudioFrame

3A 処理後のデータのコールバック。有効にするには、enableAudioFrameObserver を呼び出し、audioSource = AoqAudioSourceProcessCaptured を設定します。サンプルレートとチャンネル数を設定でき、読み書きモードがサポートされています。
virtual void onProcessCapturedAudioFrame(const AoqAudioFrameData& data) = 0;
パラメーター

パラメーター

型

説明

data

const AoqAudioFrameData&

3A 処理後の生音声データ。詳細については、AoqAudioFrameData をご参照ください。

onPublishAudioFrame

パブリッシュデータのコールバック。有効にするには、enableAudioFrameObserver を呼び出し、audioSource = AoqAudioSourcePublish を設定します。サンプルレートとチャンネル数を設定でき、読み取り専用モードのみがサポートされています。
virtual void onPublishAudioFrame(AoqTrackType trackType, const AoqAudioFrameData& data) = 0;
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

トラックタイプ。詳細については、AoqTrackType をご参照ください。

data

const AoqAudioFrameData&

パブリッシュされる生音声データ。詳細については、AoqAudioFrameData をご参照ください。

onPlaybackAudioFrame

再生データのコールバック。有効にするには、enableAudioFrameObserver を呼び出し、audioSource = AoqAudioSourcePlayback を設定します。サンプルレートとチャンネル数を設定でき、読み書きモードがサポートされています。
virtual void onPlaybackAudioFrame(const AoqAudioFrameData& data) = 0;
パラメーター

パラメーター

型

説明

data

const AoqAudioFrameData&

再生用の生音声データ。詳細については、AoqAudioFrameData をご参照ください。

IVideoFrameObserver

ビデオフレームデータコールバックのインターフェースで、呼び出し元が継承によって実装します。コールバック内で時間のかかる操作を実行しないでください。実行すると、ビデオのコマ落ちが発生する可能性があります。戻り値 true は、データが変更され、SDK に書き戻す必要があることを示します。書き戻しは I420 のみで有効です。戻り値 false は読み取り専用を示します。frame 内のデータはコールバック中のみ有効です。非同期で使用するには、ご自身でコピーする必要があります。

onCapturedVideoFrame

キャプチャ後、前処理前のローカル生データのコールバック。有効にするには、enableVideoFrameObserver を呼び出し、videoSource = AoqVideoSourceCaptured を設定します。
virtual bool onCapturedVideoFrame(AoqVideoFrame& frame) = 0;
パラメーター

パラメーター

型

説明

frame

AoqVideoFrame&

キャプチャされたビデオフレームデータ。詳細については、AoqVideoFrame をご参照ください。

戻り値:true はデータが変更され、SDK に書き戻す必要があることを示します。false は読み取り専用を示します。

onPreEncodeVideoFrame

エンコーディング前、前処理後のローカル生データのコールバック。有効にするには、enableVideoFrameObserver を呼び出し、videoSource = AoqVideoSourcePreEncode を設定します。
virtual bool onPreEncodeVideoFrame(AoqTrackType trackType, AoqVideoFrame& frame) = 0;
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ビデオトラックタイプ。詳細については、AoqTrackType をご参照ください。

frame

AoqVideoFrame&

エンコーディング前のビデオフレームデータ。詳細については、AoqVideoFrame をご参照ください。

戻り値:true はデータが変更され、SDK に書き戻す必要があることを示します。false は読み取り専用を示します。

onRemoteVideoFrame

デコーディング後、レンダリング前のリモート生データのコールバック。有効にするには、enableVideoFrameObserver を呼び出し、videoSource = AoqVideoSourceRemote を設定します。
virtual bool onRemoteVideoFrame(AoqTrackType trackType, AoqVideoFrame& frame) = 0;
パラメーター

パラメーター

型

説明

trackType

AoqTrackType

ビデオトラックタイプ。詳細については、AoqTrackType をご参照ください。

frame

AoqVideoFrame&

リモートビデオフレームデータ。詳細については、AoqVideoFrame をご参照ください。

戻り値:true はデータが変更され、SDK に書き戻す必要があることを示します。false は読み取り専用を示します。

データ型と列挙

一般的な型

AoqCreateConfig

エンジン作成構成。

フィールド

型

デフォルト値

説明

workDir

const char*

nullptr

SDK の作業ディレクトリ

enableDumpAudio

bool

false

音声データを保存するかどうかを指定します (デバッグ用)

extras

const char*

nullptr

拡張パラメーター (JSON 文字列)

AoqConnectConfig

リレーサーバーへの接続構成。relayEndpoints / publishTracks / subscribeTracks は長さを持つ C スタイルの配列です。配列のメモリは呼び出し元が保持し、connect 呼び出し中のみ有効である必要があります。

フィールド

型

説明

token

const char*

接続認証トークン

sid

const char*

セッション ID

certFingerprint

const char*

サーバー証明書の指紋

workspaceIdHash

const char*

ワークスペースのハッシュ ID

relayEndpoints

const AoqRelayEndpoint*

リレーアクセスポイントの配列

relayEndpointsCount

size_t

リレーアクセスポイントの数

publishTracks

const AoqTrackParam*

ローカルパブリッシングトラック属性の配列

publishTracksCount

size_t

パブリッシングトラックの数

subscribeTracks

const AoqTrackParam*

ローカルサブスクライブトラック属性の配列

subscribeTracksCount

size_t

サブスクライブトラックの数

AoqRelayEndpoint

リレーアクセスポイント。

フィールド

型

デフォルト値

説明

route_index

int

-1

パスインデックス

endpoint

const char*

nullptr

サーバーアドレス (ドメイン名または IP アドレス)

port

int

0

サーバーポート

AoqTrackParam

トラック属性。

フィールド

型

デフォルト値

説明

trackType

AoqTrackType

Audio

トラックタイプ

trackMode

AoqTrackMode

Segment

ストリーミングまたは非ストリーミングモード。音声ダウンリンクにのみ有効です。

AoqDataMsg

メッセージデータ構造。コールバックで使用される場合、コールバック中のみ有効であることが保証されます。非同期で使用する必要がある場合は、ご自身でコピーしてください。

フィールド

型

説明

data

const uint8_t*

メッセージ内容。呼び出し元が保持するメモリを指します。

dataSize

size_t

バイト数

統計タイプ

AoqStats

エンジン統計。各統計配列はポインターとカウントとして提供されます。

フィールド

型

説明

audioPublishStats / audioPublishStatsCount

const AoqAudioPublishStats* / unsigned int

音声のパブリッシング統計の配列とエントリ数

videoPublishStats / videoPublishStatsCount

const AoqVideoPublishStats* / unsigned int

ビデオのパブリッシング統計の配列とエントリ数

dataMsgPublishStats / dataMsgPublishStatsCount

const AoqDataMsgPublishStats* / unsigned int

データメッセージのパブリッシング統計の配列とエントリ数

audioSubscribeStats / audioSubscribeStatsCount

const AoqAudioSubscribeStats* / unsigned int

音声のサブスクライブ統計の配列とエントリ数

videoSubscribeStats / videoSubscribeStatsCount

const AoqVideoSubscribeStats* / unsigned int

ビデオのサブスクライブ統計の配列とエントリ数

dataMsgSubscribeStats / dataMsgSubscribeStatsCount

const AoqDataMsgSubscribeStats* / unsigned int

データメッセージのサブスクライブ統計の配列とエントリ数

networkStats

const AoqNetworkStats*

ネットワーク統計

AoqNetworkStats

ネットワーク統計。

フィールド

型

説明

sendBitrate

unsigned int

送信ビットレート (bit/s)

sendBytes

uint64_t

累積送信バイト数

recvBitrate

unsigned int

受信ビットレート (bit/s)

recvBytes

uint64_t

累積受信バイト数

loss

unsigned int

パケットロス率 (0 から 100)

rtt

unsigned int

ラウンドトリップ遅延 (ms)

AoqAudioPublishStats

音声のパブリッシング統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

encodeVolume

unsigned int

パブリッシングストリームのエンコーディング音量

AoqVideoPublishStats

ビデオのパブリッシング統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

encodeFps

unsigned int

エンコーディングフレームレート

AoqDataMsgPublishStats

データメッセージのパブリッシング統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

AoqAudioSubscribeStats

音声のサブスクライブ統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

playVolume

unsigned int

再生音量

AoqVideoSubscribeStats

ビデオのサブスクライブ統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

decodeFps

unsigned int

デコーディングフレームレート

renderFps

unsigned int

レンダリングフレームレート

AoqDataMsgSubscribeStats

データメッセージのサブスクライブ統計。

フィールド

型

説明

trackType

AoqTrackType

トラックタイプ

bitrate

unsigned int

ビットレート (bit/s)

bytes

uint64_t

累積バイト数

列挙

AoqErrorCode

エラーコード列挙。

列挙値

値

説明

AoqECOK

0

成功

AoqECParamInvalid

1

無効なパラメーター

AoqECStateInvalid

2

無効な状態

AoqECUnSupport

3

API が呼び出されましたが、現在のプラットフォームまたはモードでは実装されていません

AoqECAudio

100

一般的な音声エラー

AoqECAudioExternalBufferFull

110

外部音声バッファーが満杯です

AoqECAudioDevice

120

一般的なオーディオデバイスエラー

AoqECAudioDeviceRecordingAuthFailed

121

録音権限が付与されていません

AoqECAudioDeviceRecordingOccupied

122

録音デバイスが使用中です

AoqECAudioDeviceRecordingBackgroundStart

123

バックグラウンドでの録音開始

AoqECAudioDeviceRecordingStartFail

124

録音の開始に失敗しました

AoqECAudioDevicePlayoutOccupied

125

再生デバイスが使用中です

AoqECAudioDevicePlayoutBackgroundStart

126

バックグラウンドでの再生開始

AoqECAudioDevicePlayoutStartFail

127

再生の開始に失敗しました

AoqECAudioDeviceEarpieceRequiresVoipMode

128

受話器モードでは VoIP を有効にする必要があります

AoqECVideo

200

一般的なビデオエラー

AoqECVideoExternalBufferFull

210

外部ビデオバッファーが満杯です

AoqECVideoExternalCaptureNotEnabled

211

外部ビデオキャプチャが有効になっていません

AoqECVideoExternalEncoderNotEnabled

212

外部ビデオエンコーディングが有効になっていません

AoqECVideoDevice

220

一般的なビデオデバイスエラー

AoqECVideoDeviceCameraOpenFail

221

カメラのオープンに失敗しました

AoqECVideoDeviceCameraAuthFailed

222

カメラの権限が付与されていません

AoqECVideoDeviceCameraOccupied

223

カメラが使用中です

AoqECVideoDeviceCameraRunningError

224

カメラの実行時エラー

AoqECVideoCodec

230

一般的なビデオコーデックエラー

AoqECVideoCodecEncoderInitFail

231

エンコーダーの初期化に失敗しました

AoqECVideoRender

240

一般的なビデオレンダリングエラー

AoqECVideoRenderCreateFail

241

レンダリングビューの作成に失敗しました

AoqECVideoRenderDrawError

242

レンダリング描画エラー

AoqWarningCode

警告コード列挙。

列挙値

値

説明

AoqWCOK

0

警告なし

AoqWCAudio

100

一般的な音声警告

AoqWCAudioHowling

101

音声ハウリングが検出されました

AoqWCAudioDevice

120

一般的なオーディオデバイス警告

AoqWCAudioDeviceMicEnumerateError

121

マイク列挙エラー

AoqWCAudioDeviceMicStartTimeout

122

マイクの起動がタイムアウトしました

AoqWCAudioDeviceRecordingError

123

録音エラー

AoqWCAudioDeviceSpeakerEnumerateError

124

スピーカー列挙エラー

AoqWCAudioDeviceSpeakerStartTimeout

125

スピーカーの起動がタイムアウトしました

AoqWCAudioDevicePlayoutError

126

再生エラー

AoqWCVideo

200

一般的なビデオ警告

AoqWCVideoCameraEnumerateError

201

カメラ列挙エラー

AoqWCVideoEncoderSwitched

202

ビデオエンコーダーが切り替わりました

AoqWCVideoRenderDowngrade

203

ビデオレンダリングがスペックダウンしました

AoqTrackType

トラックタイプ。

列挙値

値

説明

AoqTrackTypeAudio

0

オーディオトラック

AoqTrackTypeVideo

1

ビデオトラック

AoqTrackTypeData

2

データメッセージトラック

AoqEncoderType

エンコーダータイプ。

列挙値

値

説明

AoqEncoderTypeUnknown

0

不明なフォーマット

AoqEncoderTypeAudioPCM

1

音声 PCM

AoqEncoderTypeAudioOpus

2

音声 Opus (プラグインベース。SDK チームに連絡して組み込むか、アプリに動的にダウンロードしてください)

AoqEncoderTypeVideoH264

3

ビデオ H.264

AoqEncoderTypeVideoJpeg

4

ビデオ JPEG

AoqEncoderTypeDataText

5

メッセージテキスト

AoqTrackMode

ストリーミングまたは非ストリーミングモード。音声ダウンリンクにのみ有効です。

列挙値

値

説明

AoqTrackModeSegment

0

セグメント化:データは文などの意味的なセグメントでパッケージ化され、配信されます。

AoqTrackModeStream

1

ストリーミング:データは継続的に配信されます。

AoqConnectionStatus

エンジン接続ステータス。

列挙値

値

説明

AoqConnectionStatusDisconnected

0

切断済み

AoqConnectionStatusConnecting

1

接続中

AoqConnectionStatusConnected

2

接続済み

AoqConnectionStatusFailed

3

接続に失敗しました

音声タイプ

AoqAudioCaptureConfig

音声キャプチャ構成。

フィールド

型

デフォルト値

説明

isExternal

bool

false

外部キャプチャを使用するかどうかを指定します

channel

int

1

音声キャプチャチャンネル数。1 と 2 がサポートされています。

AoqAudioPlaybackConfig

音声再生構成。

フィールド

型

デフォルト値

説明

isExternal

bool

false

外部再生を使用するかどうかを指定します

channel

int

1

音声再生チャンネル数。1 と 2 がサポートされています。

AoqAudioCodecConfig

音声コーデック構成。

フィールド

型

デフォルト値

説明

trackType

AoqTrackType

Audio

トラックタイプ

codecType

AoqEncoderType

AudioPCM

コーデックフォーマット

sampleRate

int

48000

サンプルレート (Hz)。エンコーディングでは、Opus 8/16/48K と PCM 8/16/32/48K がサポートされています。デコーディングでは、24K が追加でサポートされますが、24K はセグメントモードに限定されます。ストリームモードは 24K をサポートせず、無効な組み合わせは connect 中に AoqECParamInvalid で onError コールバックをトリガーします。

channel

int

1

チャンネル数。1 と 2 がサポートされています。

bitrate

int

32000

ビットレート (bit/s)

AoqAudioDeviceState

オーディオデバイスの状態。

フィールド

型

説明

state

AoqAudioDeviceStateCode

ステータスコード

reason

int

エラーコード (AoqErrorCode)

AoqAudioDeviceStateCode

オーディオデバイスのステータスコード。

列挙値

値

説明

AoqAudioDeviceNone

0

状態なし

AoqAudioDeviceRecordStarting

1

キャプチャ開始中

AoqAudioDeviceRecordStarted

2

キャプチャ開始済み

AoqAudioDeviceRecordStopping

3

キャプチャ停止中

AoqAudioDeviceRecordStopped

4

キャプチャ停止済み

AoqAudioDeviceRecordFail

5

キャプチャ失敗

AoqAudioDevicePlayStarting

6

再生開始中

AoqAudioDevicePlayStarted

7

再生開始済み

AoqAudioDevicePlayStopping

8

再生停止中

AoqAudioDevicePlayStopped

9

再生停止済み

AoqAudioDevicePlayFail

10

再生失敗

AoqAudioDeviceRouteType

オーディオデバイスのルートタイプ。

列挙値

値

説明

AoqAudioDeviceRouteDefault

0

デフォルト

AoqAudioDeviceRouteHeadset

1

ヘッドフォン

AoqAudioDeviceRouteEarpiece

2

受話器

AoqAudioDeviceRouteHeadsetNoMic

3

マイクなしのヘッドフォン

AoqAudioDeviceRouteSpeakerPhone

4

内蔵スピーカー

AoqAudioDeviceRouteUsb

5

USB

AoqAudioDeviceRouteBluetooth

6

Bluetooth

AoqAudioDeviceRouteBluetoothA2dp

7

Bluetooth A2DP

AoqAudioFileMixConfig

パブリッシングストリームへのオーディオファイル再生構成。

フィールド

型

デフォルト値

説明

fileName

const char*

nullptr

ファイル名 (パスを含む)。必須。

cycles

int

-1

ループ回数。-1 は無制限のループを示します。

startPosMs

long

0

再生開始位置 (ms)

publishVolume

int

100

パブリッシュボリューム。有効値: 0~100。

playoutVolume

int

100

再生音量。有効な値の範囲は 0 から 100 です。

AoqAudioFileState

オーディオファイルの状態。

フィールド

型

説明

fileId

const char*

ファイル ID

stateCode

AoqAudioFileStateCode

ステータスコード

errorCode

AoqAudioFileErrorCode

エラーコード

AoqAudioFileStateCode

オーディオファイルのステータスコード。

列挙値

値

説明

AoqAudioFileNone

0

状態なし

AoqAudioFileStarted

1

開始済み

AoqAudioFileStopped

2

停止済み

AoqAudioFilePaused

3

一時停止中

AoqAudioFileResumed

4

再開済み

AoqAudioFileEnded

5

再生完了

AoqAudioFileBuffering

6

バッファリング中

AoqAudioFileBufferingEnd

7

バッファリング終了

AoqAudioFileFailed

8

再生失敗

AoqAudioFileErrorCode

オーディオファイル再生エラーコード。

列挙値

値

説明

AoqAudioFileNoError

0

エラーなし

AoqAudioFileOpenFailed

1

ファイルのオープンに失敗しました

AoqAudioFileDecodeFailed

2

ファイルのデコードに失敗しました

AoqAudioExternalStreamConfig

外部音声ストリーム構成。

フィールド

型

デフォルト値

説明

trackType

AoqTrackType

Audio

オーディオトラックタイプ

codecType

AoqEncoderType

AudioPCM

音声ストリームフォーマット。PCM がサポートされています。

channels

int

1

チャンネル数。パブリッシングストリームの音声コーデックによって制限され、1 と 2 がサポートされています。追加のチャンネルは無視されます。

sampleRate

int

48000

サンプルレート (Hz)。8、12、16、24、32、44.1、48、64、88.2、96、176.4、192K がサポートされています。

playoutVolume

int

100

再生音量。有効な値の範囲は 0 から 100 です。

publishVolume

int

100

パブリッシング音量。有効な値の範囲は 0 から 100 です。

maxBufferDuration

int

600000

最大バッファー時間 (ms)。有効な値は 100 以上です。SDK のバッファー時間がこの値を超えると、プッシュは失敗します。

enable3A

bool

false

入力 PCM に 3A 処理を適用するかどうかを指定します

AoqAudioFrameData

音声データ。

フィールド

型

説明

dataPtr

void*

音声データへのポインター

numOfSamples

int

サンプル数 (チャンネルあたり)

bytesPerSample

int

サンプルあたりのバイト数

numOfChannels

int

チャンネル数

samplesPerSec

int

1 秒あたりのサンプル数

pushSequence

int

PCM 入力ラウンド (pushAudioExternalStreamData の消費完了通知に使用)

timeStamp

int64_t

タイムスタンプ

dataSize

int

データ長

autoGenMute

bool

データコールバックで有効。true は SDK が生成した無音データを示します。

AoqAudioStreamDirection

音声ストリームの方向。

列挙値

値

説明

AoqAudioStreamPublish

0

音声の公開

AoqAudioStreamPlayout

1

再生音声

AoqAudioExternalStreamToggle

外部音声ストリームコントロール。

列挙値

値

説明

AoqAudioExternalStreamToggleNormal

0

回復済み

AoqAudioExternalStreamTogglePause

1

一時停止中

AoqAudioSource

音声データのソースタイプ。

列挙値

値

説明

AoqAudioSourceCaptured

0

キャプチャされた音声データ

AoqAudioSourceProcessCaptured

1

3A 処理後の音声データ

AoqAudioSourcePublish

2

パブリッシュされる音声データ (Connect 成功が必要)

AoqAudioSourcePlayback

3

再生される音声データ

AoqAudioObserverMode

音声フレームコールバックモード。

列挙値

値

説明

AoqAudioObserverModeReadOnly

0

読み取り専用

AoqAudioObserverModeReadWrite

1

読み書き

AoqAudioObserverConfig

音声データコールバックのパラメーター設定。

フィールド

型

デフォルト値

説明

sampleRate

int

48000

コールバック音声のサンプルレート。ソースによって制限されます。レートが一致しない場合はリサンプリングが実行されます。8、12、16、24、32、44.1、48、64、88.2、96、176.4、192K がサポートされています。

channels

int

1

コールバックの音声チャンネル数。1 と 2 がサポートされています。このパラメーターは、サブスクライブストリームのコーデックパラメーターによって制限されます。

mode

AoqAudioObserverMode

ReadOnly

コールバックモード

AoqAudioVolumeIndicationConfig

ローカル音量レベル通知構成。

フィールド

型

デフォルト値

説明

interval

int

0

コールバック間隔 (ms)。0 以下の値はコールバックを無効にします。0 より大きく 10 未満の値は 10 として扱われます。

smooth

int

3

音量平滑化係数。有効な値の範囲は 0 から 10 です。値が大きいほど、出力が滑らかになります。

AoqAudioVolume

ローカル音量情報。

フィールド

型

説明

volume

int

平滑化された瞬間音量。有効な値の範囲は 0 から 255 です。

ビデオタイプ

AoqVideoCaptureConfig

ビデオキャプチャ構成。

フィールド

型

デフォルト値

説明

width

int

1280

キャプチャ幅 (ピクセル)。このパラメーターは isExternal=true の場合は無効です。

height

int

720

キャプチャ高さ (ピクセル)。このパラメーターは isExternal=true の場合は無効です。

fps

int

15

キャプチャフレームレート。このパラメーターは isExternal=true の場合は無効です (ペースはフレーム配信によって決定されます)。

isExternal

bool

false

外部キャプチャを使用するかどうかを指定します。true の場合、カメラは開かれず、フレームは pushExternalVideoCapturedFrame によって供給されます。

AoqVideoCanvas

ビデオレンダリングのデータ構造。view はプラットフォームネイティブのビューハンドルへの不透明ポインターです。Windows では、ウィンドウハンドル HWND を渡します。呼び出し元は、setLocalView / setRemoteView によって設定されている期間中、view のライフサイクルが続くことを保証する必要があります。

フィールド

型

デフォルト値

説明

view

void*

nullptr

表示ビューのハンドル (HWND)。nullptr を渡すとレンダリングバインドが削除されます。

renderMode

AoqRenderMode

Auto

レンダリングモード

AoqRenderMode

レンダリング表示モード。

列挙値

値

説明

AoqRenderModeAuto

0

自動モード

AoqRenderModeStretch

1

ストレッチフィルモード。縦横比が一致しない場合、画像はターゲットの比率に引き伸ばされ、歪みます。

AoqRenderModeFill

2

レターボックスモード。縦横比が一致しない場合、上下または左右に黒枠が追加されます。

AoqRenderModeCrop

3

クロップモード。縦横比が一致しない場合、幅または高さがクロップされ、画像の一部が失われます。

AoqVideoPixelFormat

ビデオピクセルフォーマット。

列挙値

値

説明

AoqVideoPixelFormatUnknown

0

不明なフォーマット

AoqVideoPixelFormatI420

1

I420

AoqVideoPixelFormatNV12

2

NV12

AoqVideoPixelFormatNV21

3

NV21

AoqVideoPixelFormatBGRA

4

BGRA

AoqVideoPixelFormatRGBA

5

RGBA

AoqVideoFrame

外部ビデオデータ。

フィールド

型

説明

format

AoqVideoPixelFormat

ピクセルフォーマット

width

int

幅 (ピクセル)

height

int

高さ (ピクセル)

dataPtr

void*

パック形式データ (NV12/NV21/BGRA/RGBA) へのポインター

dataSize

int

パックデータのバイト数

dataY / dataU / dataV

void*

3 つの I420 プレーンのデータへのポインター

strideY / strideU / strideV

int

3 つの I420 プレーンのストライド

timeStamp

int64_t

タイムスタンプ (ms)。0 の場合、SDK はローカルクロックで埋めます。

AoqVideoEncodedFrame

外部でエンコードされたビデオフレーム。呼び出し元がエンコーディングを行い、SDK は再エンコーディングせずにフレームを直接パッケージ化して送信します。

フィールド

型

説明

codec

AoqVideoCodecType

コーデックフォーマット

data

void*

エンコードされたデータへのポインター

dataSize

int

エンコードされたデータのバイト数

width

int

幅 (ピクセル)

height

int

高さ (ピクセル)

timeStamp

int64_t

タイムスタンプ (ms)。0 の場合、SDK はローカルクロックで埋めます。

AoqVideoCodecType

外部でエンコードされたフレームのコーデックタイプ。

列挙値

値

説明

AoqVideoCodecTypeJPEG

0

JPEG

AoqVideoDeviceState

ビデオデバイスの状態。

フィールド

型

説明

state

AoqVideoDeviceStateCode

ステータスコード

reason

int

エラーコード (AoqErrorCode)

AoqVideoDeviceStateCode

ビデオデバイスのステータスコード。

列挙値

値

説明

AoqVideoDeviceNone

0

状態なし

AoqVideoDeviceCaptureStarting

1

カメラ開始中

AoqVideoDeviceCaptureStarted

2

カメラ開始済み

AoqVideoDeviceCaptureStopping

3

カメラ停止中

AoqVideoDeviceCaptureStopped

4

カメラ停止済み

AoqVideoDeviceCaptureFail

5

カメラの起動に失敗しました (例:権限が拒否された、またはデバイスが利用できない)

AoqMirrorMode

ミラーモード。

列挙値

値

説明

AoqMirrorModeDisabled

0

ミラーリングを無効にする

AoqMirrorModeEnabled

1

ミラーリングを有効にする

AoqOrientationMode

向きモード。

列挙値

値

説明

AoqOrientationModeAuto

0

自動

AoqOrientationModePortrait

1

ポートレート

AoqOrientationModeLandscape

2

ランドスケープ

AoqVideoCodecConfig

ビデオコーデックパラメーター。エンコーディングとデコーディングで共有されます。デコーディングでは、trackType / codecType / width / height / fps / bitrate のみが有効で、サブスクリプション提案としてネゴシエーションに参加します。一方、minBitrate / keyframeInterval / mirrorMode / orientationMode / isExternal はエンコーディングにのみ使用されます。

フィールド

型

デフォルト値

説明

isExternal

bool

false

外部エンコーディングモード。true の場合、エンコードされたフレームをプッシュし、SDK はキャプチャやエンコーディングを行いません。

trackType

AoqTrackType

Video

トラックタイプ

codecType

AoqEncoderType

VideoH264

コーデックフォーマット

width

int

540

解像度の幅

height

int

960

縦解像度

fps

int

5

フレームレート

bitrate

int

500000

初期ビットレート (bit/s)

minBitrate

int

128000

最小ビットレート (bit/s)

keyframeInterval

int

2

キーフレーム間隔 (秒)

mirrorMode

AoqMirrorMode

Disabled

ミラーモード

orientationMode

AoqOrientationMode

Auto

向きモード

AoqVideoSource

ビデオフレームコールバックのデータソース (パイプライン内の位置)。

列挙値

値

説明

AoqVideoSourceCaptured

0

前処理前のキャプチャされたビデオデータ

AoqVideoSourcePreEncode

1

エンコーディング前、前処理後のビデオデータ

AoqVideoSourceRemote

2

デコーディング後、レンダリング前のリモートビデオデータ

AoqVideoObserverMode

ビデオフレームコールバックモード。

列挙値

値

説明

AoqVideoObserverModeReadOnly

0

読み取り専用

AoqVideoObserverModeReadWrite

1

読み書き

AoqVideoObserverAlignment

ビデオ出力の幅の配置方法。

列挙値

値

説明

AoqVideoObserverAlignmentDefault

0

デフォルト

AoqVideoObserverAlignmentEven

1

偶数配置

AoqVideoObserverAlignment4

2

4 バイト配置

AoqVideoObserverAlignment8

3

8 バイト配置

AoqVideoObserverAlignment16

4

16 バイト配置

AoqVideoObserverConfig

ビデオデータコールバックのパラメーター設定。

フィールド

型

デフォルト値

説明

format

AoqVideoPixelFormat

I420

コールバックデータの期待されるピクセルフォーマット

alignment

AoqVideoObserverAlignment

Default

幅の配置ポリシー

mode

AoqVideoObserverMode

ReadOnly

コールバックモード。ReadWrite は I420 のみでサポートされています。

mirrorApplied

bool

false

コールバックデータをミラーリングするかどうかを指定します