このトピックでは、グローバルパラメーターとローカルパラメーターの設定方法について説明します。
グローバルパラメーター
特定のインスタンスにグローバルパラメーターを設定することはできません。 グローバルパラメーターを設定するときは、インスタンスが実行されていないことを確認してください。 openまたはclose関数を呼び出すときに、これらのパラメーターを設定することはできません。 メッセージコールバック関数とログコールバック関数の設定方法の詳細については、Native RTS SDKのrtsdec.cファイルをご参照ください。
__rts_funcs->preconfig("LogCallback", addr_to_string(output_log, buf));
__rts_funcs->preconfig("LogCbParam", addr_to_string(s, buf));
__rts_funcs->preconfig("MessageCallback", addr_to_string(format_control_message, buf));
__rts_funcs->preconfig("MessageCbParam", addr_to_string(s, buf));
...
__rts_funcs->open(...);
// この期間中はpreconfig関数を呼び出さないでください。
__rts_funcs->close(...);
// preconfig関数を呼び出すことができます。ローカルパラメータ
ローカルパラメーターはインスタンスに固有です。 インスタンスのローカルパラメーターを設定するときは、インスタンスが実行されていることを確認してください。 openまたはclose関数を呼び出すときに、これらのパラメーターを設定する必要があります。 ローカルパラメーターを設定したときに呼び出す関数を使用すると、他の関数を呼び出してパラメーターを取得できます。 関数宣言:
ロングロング (* ioctl)(void * handle、const char * cmd、void * arg);パラメーター
| パラメーター | データ型 | 説明 |
|---|---|---|
| ハンドル | void * | ストリーミング中に取得されるハンドル。 |
| cmd | char * | コマンド。 使用可能なコマンドの詳細については、次の表をご参照ください。 |
| arg | void * | コマンドに対応するパラメーター。 |
| コマンド | 説明 | パラメーター | 戻り値 |
|---|---|---|---|
| get_stream_info | streamパラメーターを取得します。 | なし | streamパラメーターのポインターrts_worker_demux_info * 。 |
| reload | ストリームをサーバーに再接続します。 | なし | 0が返された場合、呼び出しは成功です。 0未満の値が返された場合、呼び出しは失敗します。 |
| get_state | キーと値のペアを照会します。 | ARTC_VIDEO_CACHE_SIZEは、ビデオの読み込み時間を指定します。 タイプ: int *. | ビデオの読み込み時間。 単位:ミリ秒。 |
| set_aes_key | 復号化キーを設定します。 | keyinfoです。 タイプ: char * 。 | 0が返された場合、呼び出しは成功です。 0未満の値が返された場合、呼び出しは失敗します。 |
| 退会 | ストリームのサブスクライブを停止します。 | なし | 0が返された場合、呼び出しは成功です。 0未満の値が返された場合、呼び出しは失敗します。 |
| サブスクライブ | ストリームにサブスクライブします。 | URLを使用します。 タイプ: char * 。 | 0が返された場合、呼び出しは成功です。 0未満の値が返された場合、呼び出しは失敗します。 |