基本関数。 続きを読む...

#include "config.h"

データ構造
struct otc_on_mute_forced_info
struct otc_transport_stats
型定義
typedef int otc_bool
typedef int otc_status
typedef void(* otc_logger_callback) (const char *message)
列挙型
enum otc_video_reason {   OTC_VIDEO_REASON_NONE = 0 , OTC_VIDEO_REASON_PUBLISH_VIDEO = 1 , OTC_VIDEO_REASON_SUBSCRIBE_TO_VIDEO = 2 , OTC_VIDEO_REASON_QUALITY = 3 ,   OTC_VIDEO_REASON_CODEC_NOT_SUPPORTED = 4 , OTC_VIDEO_REASON_QUALITY_DEGRADATION_BANDWIDTH = 5 , OTC_VIDEO_REASON_QUALITY_DEGRADATION_CPU , OTC_VIDEO_REASON_QUALITY_DEGRADATION_OTHER = 7 ,   OTC_VIDEO_REASON_CODEC_CHANGE = 8 , OTC_VIDEO_REASON_RESOLUTION_CHANGE = 9 , OTC_VIDEO_REASON_VIDEO_INTERRUPTION = 10 , OTC_VIDEO_REASON_SENDER_QUALITY_RESTRICTION = 11 }
enum otc_network_reason {   OTC_NETWORK_REASON_NONE = 0 , OTC_NETWORK_REASON_UNKNOWN = 1 , OTC_NETWORK_REASON_BANDWIDTH = 2 , OTC_NETWORK_REASON_PACKET_LOSS = 3 ,   OTC_NETWORK_REASON_NETWORK_CONDITION_CHANGE = 4 }
enum otc_constant { OTC_SUCCESS = 0 , OTC_FALSE = 0 , OTC_TRUE = !OTC_FALSE }
enum otc_エラーコード {   OTC_INVALID_PARAM = 1 , OTC_FATAL = 2 , OTC_INVALID_VIDEO_FORMAT = 3 , OTC_CONNECTION_DROPPED = 1022 ,   OTC_UNABLE_TO_FORCE_DISCONNECT = 1520 , OTC_UNABLE_TO_FORCE_MUTE = 1540 , OTC_CONNECTION_TIMED_OUT = 1542 , OTC_UNKNOWN_PUBLISHER_INSTANCE = 2003年 ,   OTC_UNKNOWN_SUBSCRIBER_INSTANCE = 2004年 , OTC_VIDEO_CAPTURE_FAILED = 3000 , OTC_CAMERA_FAILED = 3010 , OTC_VIDEO_RENDER_FAILED = 4000 ,   OT_UNABLE_TO_ACCESS_MEDIA_ENGINE = 5000 }
enum otc_log_level {   OTC_LOG_LEVEL_DISABLED = 0 , OTC_LOG_LEVEL_ERROR = 1 , OTC_LOG_LEVEL_WARN = 2 , OTC_LOG_LEVEL_INFO = 3 ,   OTC_LOG_LEVEL_DEBUG = 4 , OTC_LOG_LEVEL_TRACE = 5 , OTC_LOG_LEVEL_FATAL = OTC_LOG_LEVEL_ERROR , OTC_LOG_LEVEL_MSG = OTC_LOG_LEVEL_DEBUG ,   OTC_LOG_LEVEL_ALL = OTC_LOG_LEVEL_TRACE }
enum otc_network_condition {   OTC_NETWORK_CONDITION_UNKNOWN = 0 , OTC_NETWORK_CONDITION_CRITICAL = 1 , OTC_NETWORK_CONDITION_WARNING = 2 , OTC_NETWORK_CONDITION_FAIR = 3 ,   OTC_NETWORK_CONDITION_GOOD = 4 , OTC_NETWORK_CONDITION_EXCELLENT = 5 }
輸送便の推定ネットワーク状態スコア。 続きを読む...
enum otc_ネットワーク_品質低下_原因 { OTC_NETWORK_DEGRADATION_SOURCE_NONE = 0 , OTC_NETWORK_DEGRADATION_SOURCE_BOTH_OR_UNCLEAR , OTC_NETWORK_DEGRADATION_SOURCE_LOCAL , OTC_NETWORK_DEGRADATION_SOURCE_REMOTE }

詳細な説明

基本関数。

このファイルには、ライブラリエンジンの初期化および破棄に使用される関数に加え、コンソールへのログ出力を有効にするためのその他の関数が含まれています。

Typedef のドキュメント

otc_bool

typedef int otc_bool

ブール値の型定義。

ブール値(true および false)を表す変数に便利な型です。

otc_logger_callback

typedef void(* otc_logger_callback) (const char *message)

SDK によってログに記録されるメッセージを取得するための、カスタムロギングコールバックとして使用される関数への関数ポインタの型定義。

パラメータ : | | | | --- | --- | | message | ログに記録されるメッセージへのポインタ。 |

関連項目 : otc_log_set_logger_callback

otc_status

typedef int otc_status

ステータスの型定義。

これは、このライブラリの関数における戻り値として最も一般的に使用される型です。この型には、エラーコード列挙型の値が含まれます。

関連項目 : otc_constant : otc_エラーコード : otc_session_error_code : otc_publisher_error_code : otc_加入者_エラーコード

列挙型のドキュメント

otc_constant

この列挙には、よく使われる定数が含まれています。

調査員
OTC_SUCCESS 成功を表す定数。
OTC_FALSE 「false」を表す定数。
OTC_TRUE 「真」を表す定数。

otc_エラーコード

この列挙にはエラーコードが含まれます。

調査員
OTC_INVALID_PARAM 無効な関数引数のエラーコード。関数呼び出しで使用された引数が無効です。
OTC_FATAL 致命的なエラーコード。 一般的なエラー。
OTC_INVALID_VIDEO_FORMAT 無効な動画形式 キャプチャ機能が無効な動画形式で設定されている場合に発生します
OTC_CONNECTION_DROPPED 接続切断エラーコード。OpenTokメッセージングサーバーへの接続が切断されました。ネットワーク接続を確認してください。
OTC_UNABLE_TO_FORCE_DISCONNECT 強制切断エラーコード。呼び出しに失敗しました otc_session_force_disconnect、おそらく権限が不足しているためでしょう。
OTC_UNABLE_TO_FORCE_MUTE 強制ミュートのエラーコード。呼び出しに失敗しました otc_session_force_mute_all または otc_session_force_mute_stream、おそらく権限が不足しているためでしょう。
OTC_CONNECTION_TIMED_OUT 接続タイムアウトのエラーコード。接続操作の実行中にタイムアウトが発生しました。
OTC_UNKNOWN_PUBLISHER_INSTANCE 不明なパブリッシャー・インスタンスのエラーコード。関数の引数として、不明なパブリッシャー・インスタンスが使用されました。
OTC_UNKNOWN_SUBSCRIBER_INSTANCE 不明なサブスクライバー・インスタンスのエラーコード。関数の引数として、不明なサブスクライバー・インスタンスが使用されました。
OTC_VIDEO_CAPTURE_FAILED 動画キャプチャのエラーコード。動画キャプチャ機能でエラーが発生しました。
OTC_CAMERA_FAILED ビデオカメラのエラーコードを取得中。カメラからの映像取得中にエラーが発生しました。
OTC_VIDEO_RENDER_FAILED 動画のレンダリングエラーコード。動画のレンダリング中にエラーが発生しました。
OT_UNABLE_TO_ACCESS_MEDIA_ENGINE メディアエンジンのアクセスエラーコード。サポートされているビデオコーデックのリストを取得しようとした際にエラーが発生しました。

otc_log_level

ログレベルの列挙。

この列挙は、サポートされているさまざまなログレベルを表しています。

調査員
OTC_LOG_LEVEL_DISABLED 「メッセージなし」の列挙値。
OTC_LOG_LEVEL_ERROR エラーレベルのメッセージ。
OTC_LOG_LEVEL_WARN 警告レベルのメッセージ。
OTC_LOG_LEVEL_INFO 情報レベルのメッセージ。
OTC_LOG_LEVEL_DEBUG デバッグレベルのメッセージ。
OTC_LOG_LEVEL_TRACE トレースレベルのメッセージ(最も詳細)。
OTC_LOG_LEVEL_FATAL 非推奨。
OTC_LOG_LEVEL_MSG 非推奨。
OTC_LOG_LEVEL_ALL 非推奨。

otc_network_condition

輸送便のネットワーク状態スコアの推定値。

この列挙型は、特定のトランスポート(ローカルまたはリモート)におけるネットワーク接続の全体的な健全性を表します。通常、パケット損失や推定利用可能帯域幅などのメトリクスから算出されます。値が高いほど、ネットワークの状態が良好であることを示します。

OTC_NETWORK_CONDITION_WARNING および OTC_NETWORK_CONDITION_CRITICAL は、オーディオフォールバックのコールバックがトリガーされる可能性のあるネットワーク状態の悪化を示します。オーディオフォールバックが有効になっている場合、SDK は対応するコールバックを通じて通知を行い、CRITICAL 状態では、通話の安定性を維持するためにビデオが無効化されます。

調査員
OTC_NETWORK_CONDITION_UNKNOWN ネットワークの状態を確認できませんでした
OTC_NETWORK_CONDITION_CRITICAL 深刻なネットワーク障害が発生した場合、有効になっている場合はオーディオのフォールバックが作動します
OTC_NETWORK_CONDITION_WARNING ネットワーク状態が悪い場合、動画の画質に著しい影響が生じ、オーディオのフォールバックが有効になっていると、動画無効化の警告が表示される可能性があります
OTC_NETWORK_CONDITION_FAIR ネットワーク状況は普通です。メディアサーバーまたはピアによって、動画の画質が制限される場合があります。
OTC_NETWORK_CONDITION_GOOD ネットワークの状態は良好です。一時的な軽微な不具合が発生する場合があります。
OTC_NETWORK_CONDITION_EXCELLENT ネットワーク状態は良好です。動画の画質は最適であり、推定帯域幅は現在の解像度における最大ビットレートに対応可能です。

otc_ネットワーク_品質低下_原因

セッションにおける動画やネットワークの品質低下の原因を示します。

この列挙型は、動画の画質に影響を及ぼすネットワークの問題が、通話のどちら側で発生したかを特定するものです。これは、トランスポートごとのネットワーク状態メトリクスを補完するものです。

調査員
OTC_NETWORK_DEGRADATION_SOURCE_NONE 画質の劣化は見られず、映像の品質は良好です。
OTC_NETWORK_DEGRADATION_SOURCE_BOTH_OR_UNCLEAR 劣化が検出されましたが、原因となっている箇所を特定できません。
OTC_NETWORK_DEGRADATION_SOURCE_LOCAL パフォーマンス低下の原因は、ローカルネットワークまたはトランスポート層にあります。
OTC_NETWORK_DEGRADATION_SOURCE_REMOTE ネットワークまたはトランスポート層の問題が、パフォーマンス低下の原因となっています。

otc_network_reason

ネットワークの状態に影響を与える要因を記述する列挙型。

これらの値は、帯域幅の制約やパケット損失など、現在のネットワーク状態の評価に影響を与える主な要因を示しています。

調査員
OTC_NETWORK_REASON_NONE 特に理由はありません。
OTC_NETWORK_REASON_UNKNOWN 理由は不明。
OTC_NETWORK_REASON_BANDWIDTH ネットワーク状態のスコアは、帯域幅の影響を受ける。
OTC_NETWORK_REASON_PACKET_LOSS パケット損失がネットワーク状態スコアに影響を与えます。
OTC_NETWORK_REASON_NETWORK_CONDITION_CHANGE ローカルまたはリモートの参加者のネットワーク状態が変化したことを示します。ローカルまたはリモートの参加者のネットワークで著しい変化が検出された場合にトリガーされます。

otc_video_reason

動画の再生、停止、再開などの理由を表す列挙型。

調査員
OTC_VIDEO_REASON_NONE 画質の低下や目立った映像上の異常は見られない。原因不明、または既知の原因によるもの。
OTC_VIDEO_REASON_PUBLISH_VIDEO ストリームを配信していたクライアントが、動画の配信を停止しました。
OTC_VIDEO_REASON_SUBSCRIBE_TO_VIDEO その地域のクライアントが動画の購読を停止しました。
OTC_VIDEO_REASON_QUALITY この動画の不具合は、動画ストリームの画質変更が原因で発生しました。
OTC_VIDEO_REASON_CODEC_NOT_SUPPORTED この動画に関する問題は、サブスクライバーのストリームで使用されている動画コーデックがデバイスでサポートされていないため、そのストリームの動画が無効化されたことが原因で発生しました。
OTC_VIDEO_REASON_QUALITY_DEGRADATION_BANDWIDTH ネットワーク帯域幅の不足による品質の低下。
OTC_VIDEO_REASON_QUALITY_DEGRADATION_CPU クライアント端末のCPUの性能制限に起因する品質の低下。
OTC_VIDEO_REASON_QUALITY_DEGRADATION_OTHER その他の理由による品質の低下
OTC_VIDEO_REASON_CODEC_CHANGE ビデオコーデックが変更されました
OTC_VIDEO_REASON_RESOLUTION_CHANGE 動画の解像度やレイヤー数の変更 これは、ビットレートの制約、エンコーダの適応、カメラソースの変更(例:カメラの切り替えや入力解像度の変更)、あるいは設定の変更によって発生する可能性がありますが、必ずしも画質の低下を意味するわけではありません。
OTC_VIDEO_REASON_VIDEO_INTERRUPTION 動画の中断事象
OTC_VIDEO_REASON_SENDER_QUALITY_RESTRICTION 送信者による動画画質の制限

関数のドキュメント

otc_destroy()

otc_status otc_destroy ( )

ライブラリエンジンを破棄します。ライブラリを使用するコードの実行が完了したら、この関数を呼び出す必要があります。

戻り値 : エラーか成功かを示す戻り値。

otc_get_log_level()

enum otc_log_level otc_get_log_level ( )

現在のコンソールのロギングレベルを取得します。

戻り値 : 設定されたログレベル。

otc_init()

otc_status otc_init ( void * 予約済み )

ライブラリを初期化します。このライブラリを使用する他のコードを実行する前に、必ずこの関数を呼び出す必要があります。

パラメータ : | | | | --- | --- | | reserved | 内部実装に使用される予約済みリソースが格納されているメモリ領域への void ポインタ。これは必ず NULL. |

戻り値 : エラーか成功かを示す戻り値。

otc_log_enable()

void otc_log_enable ( enum otc_log_level log_level )

指定されたログレベルについて、SDKメッセージのロギングを有効にします。

パラメータ : | | | | --- | --- | | log_level | 希望するログレベル。 |

関連項目 : otc_log_set_logger_callback : otc_get_log_level

otc_log_set_logger_callback()

void otc_log_set_logger_callback ( otc_logger_callback コールバック )

SDK によって記録されるメッセージを取得するための、カスタムロギングコールバック関数への関数ポインタを設定します。ロギングコールバック関数を設定しない場合、SDK はメッセージをコンソールに記録します。

パラメータ : | | | | --- | --- | | callback | コールバック関数へのポインタ。 |

関連項目 : otc_log_enable