OpenTok パブリッシャー。 続きを読む...

#include "base.h" #include "config.h" #include "stream.h" #include "video_frame.h" #include "camera_capture_resolution.h" #include "media_transformer.h" #include "video_capturer.h" #include "media_utils.h"

マクロ
#define OTC_MAX_VIDEO_LAYERS   3
列挙型
enum otc_publisher_error_code {   OTC_PUBLISHER_INTERNAL_ERROR = 2000 , OTC_PUBLISHER_SESSION_DISCONNECTED , OTC_PUBLISHER_TIMED_OUT = 1541 , OTC_PUBLISHER_UNABLE_TO_PUBLISH = 1500 ,   OTC_PUBLISHER_WEBRTC_ERROR = 1610 , OTC_PUBLISHER_ENCRYPTION_INTERNAL_ERROR , OTC_PUBLISHER_ENCRYPTION_UNSUPPORTED_CODEC = 6005 }
enum otc_publisher_video_type { OTC_PUBLISHER_VIDEO_TYPE_CAMERA = 1 , OTC_PUBLISHER_VIDEO_TYPE_SCREEN = 2 }
enum otc_media_type { OTC_MEDIA_TYPE_VIDEO = 0 , OTC_MEDIA_TYPE_AUDIO }
メディアの種類。
enum otc_video_bitrate_preset { OTC_VIDEO_BITRATE_PRESET_DEFAULT , OTC_VIDEO_BITRATE_PRESET_BW_SAVER , OTC_VIDEO_BITRATE_PRESET_EXTRA_BW_SAVER , OTC_VIDEO_BITRATE_PRESET_CUSTOM }
パブリッシャーのストリームにおける動画ビットレートを制御するためのプリセット戦略。 続きを読む...
enum otc_劣化_優先度 {   OTC_DEGRADATION_PREFERENCE_NOT_SET = -1 , OTC_DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE_AND_RESOLUTION = 0 , OTC_DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE = 1 , OTC_DEGRADATION_PREFERENCE_MAINTAIN_RESOLUTION = 2 ,   OTC_DEGRADATION_PREFERENCE_BALANCED = 3 }
帯域幅やCPUリソースが限られている場合に、ビデオエンジンがフレームレートや解像度を調整する際に従おうとするポリシーについて説明します。これは「ベストエフォート」方式のポリシーです。フレームレートについては保証されるものではなく、その他の理由により一部のフレームがスキップされる可能性があります。 続きを読む...
機能
otc_publisher * otc_publisher_new (const char *name, const struct otc_video_capturer_callbacks *capturer, const struct otc_publisher_callbacks *コールバック)
otc_publisher_settings * otc_publisher_settings_new ()
otc_status otc_publisher_settings_delete (otc_publisher_settings *設定)
otc_status otc_publisher_settings_set_name (otc_publisher_settings *settings, const char *name)
otc_status otc_publisher_settings_set_video_capturer (otc_publisher_settings *設定、定数構造体 otc_video_capturer_callbacks *キャプチャ担当)
otc_status otc_publisher_settings_set_audio_track (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_video_track (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_sender_stats_track (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_stereo (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_opus_dtx (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_auto_gain_control (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_noise_suppression (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_echo_cancellation (otc_publisher_settings *設定、 otc_bool 有効)
otc_status otc_publisher_settings_set_disable_audio_processing (otc_publisher_settings *設定、 otc_bool (無効)
otc_status otc_publisher_settings_set_default_camera_capture_resolution (otc_publisher_settings *設定、定数列挙型 otc_camera_capture_resolution (camera_capture_resolution)
otc_status otc_publisher_settings_set_scalable_screenshare (otc_publisher_settings *設定、定数 otc_bool 有効)
otc_status otc_publisher_settings_set_allow_audio_capture_while_muted (otc_publisher_settings *設定、定数 otc_bool 有効)
otc_publisher * otc_publisher_new_with_settings (const struct otc_publisher_callbacks *コールバック、 otc_publisher_settings *設定)
otc_status otc_publisher_delete (otc_publisher *出版社)
otc_stream * otc_publisher_get_stream (otc_publisher *出版社)
otc_status otc_publisher_set_publish_video (otc_publisher *出版社、 otc_bool publish_video)
otc_status otc_publisher_set_publish_audio (otc_publisher *出版社、 otc_bool publish_audio)
otc_status otc_publisher_set_publish_captions (otc_publisher *出版社、 otc_bool publish_captions)
otc_bool otc_publisher_get_publish_video (const otc_publisher *出版社)
otc_bool otc_publisher_get_publish_audio (const otc_publisher *出版社)
otc_bool otc_publisher_get_publish_captions (const otc_publisher *出版社)
otc_session * otc_publisher_get_session (const otc_publisher *出版社)
otc_status otc_publisher_set_max_audio_bitrate (otc_publisher *publisher, uint32_t bitrate)
otc_status otc_publisher_set_rtc_stats_report_cb (otc_publisher *publisher, const struct otc_publisher_rtc_stats_report_cb cb)
otc_status otc_publisher_get_rtc_stats_report (const otc_publisher *出版社)
const char * otc_publisher_get_publisher_id (const otc_publisher *出版社)
otc_status otc_publisher_set_video_type (struct otc_publisher *発行元、列挙型 otc_publisher_video_type video_type)
enum otc_publisher_video_type otc_publisher_get_video_type (const struct otc_publisher *出版社)
void * otc_publisher_get_user_data (const struct otc_publisher *出版社)
const char * otc_publisher_get_name (const struct otc_publisher *出版社)
otc_status otc_publisher_set_video_transformers (otc_publisher *出版社、 otc_video_transformer **transformers, uint8_t size)
このパブリッシャーのビデオストリームに、ビデオトランスフォーマーの配列を設定します。null を指定すると、トランスフォーマーがリセットされます。 続きを読む...
otc_status otc_publisher_set_audio_transformers (otc_publisher *出版社、 otc_audio_transformer **transformers, uint8_t size)
このパブリッシャーのオーディオストリームに、オーディオトランスフォーマーの配列を設定します。null を指定すると、トランスフォーマーがリセットされます。 続きを読む...
otc_status otc_publisher_set_target_scalability_mode (otc_publisher *publisher, const char *scalability_mode)
このパブリッシャーのターゲットスケーラビリティモード(SVC - スケーラブル・ビデオ・コーディング)を設定します。 スケーラビリティモードは、WebRTC がエンコードする空間(解像度)および時間(フレームレート)レイヤーの数を制御します。このモードは、現在どのレッグがアクティブであるかに関係なく、ルーティングされた(パブリッシャー ↔ SFU)ピア接続にのみ適用されます。 続きを読む...
const char * otc_publisher_get_target_scalability_mode (otc_publisher *出版社)
以下を通じて明示的に設定されたターゲットのスケーラビリティモードを取得します。 otc_publisher_set_target_scalability_mode. セッターに最後に渡された値を返します。セッターが一度も呼び出されていない場合はNULLを返します。これはユーザーの意図を反映したものであり、実際に適用されたモード(コーデック依存のフォールバックにより異なる場合があります)を示すものではありません。 続きを読む...
otc_status otc_publisher_set_max_video_bitrate (otc_publisher *publisher, int bitrate_bps)
このパブリッシャーの動画ストリームに設定されている最大動画ビットレートを取得します。 続きを読む...
イント otc_publisher_get_max_video_bitrate (const otc_publisher *出版社)
このパブリッシャーの動画ストリームに設定されている最大動画ビットレートを取得します。 続きを読む...
otc_status otc_publisher_set_video_bitrate_preset (otc_publisher *発行元、列挙型 otc_video_bitrate_preset (プリセット)
このパブリッシャーの動画ストリームに対して、動画ビットレートのプリセットを設定します。 続きを読む...
enum otc_video_bitrate_preset otc_publisher_get_video_bitrate_preset (const otc_publisher *出版社)
このパブリッシャーのストリームについて、現在有効になっている動画ビットレートのプリセットを取得します。 続きを読む...
otc_status otc_publisher_set_degradation_preference (otc_publisher *発行元、列挙型 otc_劣化_優先度 degradation_preference)
帯域幅やCPUリソースが制限されている状況において、ビデオエンジンがフレームレートや解像度を調整する際に従う優先ポリシーを設定します。設定可能な値の詳細については、otc_degradation_preference を参照してください。 続きを読む...
enum otc_劣化_優先度 otc_publisher_get_degradation_preference (const otc_publisher *出版社)
帯域幅やCPUの制約に応じてフレームレートや解像度を調整する際、ビデオエンジンが従う優先ポリシーを取得します。設定可能な値の詳細については、otc_degradation_preference を参照してください。 続きを読む...
otc_status otc_publisher_settings_set_subscriber_audio_fallback_enabled (otc_publisher_settings *設定、定数 otc_bool 有効)
otc_status otc_publisher_settings_set_publisher_audio_fallback_enabled (otc_publisher_settings *設定、定数 otc_bool 有効)
otc_status otc_publisher_settings_set_preferred_video_codecs (otc_publisher_settings *設定、定数 otc_video_codec_type *codecs, size_t num_codecs)
このパブリッシャーのストリームで使用する優先ビデオコーデックを設定します。 続きを読む...
otc_status otc_publisher_settings_set_preferred_video_codecs_automatic (otc_publisher_settings *設定)
この配信者のストリームに対して、コーデックの優先順位付けを自動的に行うようにします。 続きを読む...

詳細な説明

OpenTok パブリッシャー。

このファイルには、OpenTokパブリッシャーの型定義と、いくつかの関数の宣言が含まれています。

Typedef のドキュメント

otc_publisher

typedef struct otc_publisher otc_publisher

OpenTokのパブリッシャータイプの定義。

OpenTokセッションへのオーディオ・ビデオストリームの配信元を表す型。

otc_publisher_settings

OpenTok パブリッシャー設定のタイプ定義。

列挙型のドキュメント

otc_劣化_優先度

帯域幅やCPUリソースが限られている場合に、ビデオエンジンがフレームレートや解像度を調整する際に従おうとするポリシーについて説明します。これは「ベストエフォート」方式のポリシーです。フレームレートについては保証されるものではなく、その他の理由により一部のフレームがスキップされる場合があります。

詳しくは 分解の優先順位.

調査員
OTC_DEGRADATION_PREFERENCE_NOT_SET デフォルト値。ビデオエンジンが最適な画質低下設定を決定します。
OTC_DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE_AND_RESOLUTION ビデオエンジンは解像度を下げず、フレームレートを安定させようとします。規格のバージョンによっては、このオプションは「DISABLED」と呼ばれており、リソースが限られている場合でも、画質の低下は一切生じないことを意味します。
OTC_DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE ビデオエンジンはフレームレートを一定に保つよう努めますが、必要に応じて解像度を下げる場合があります。
OTC_DEGRADATION_PREFERENCE_MAINTAIN_RESOLUTION ビデオエンジンは解像度を下げることはありませんが、必要に応じてフレームレートを下げる場合があります。
OTC_DEGRADATION_PREFERENCE_BALANCED ビデオエンジンは、必要に応じて解像度とフレームレートの両方を調整し、バランスを取るよう努めます。

otc_publisher_error_code

OpenTokパブリッシャー向けのエラーコード一覧。

この列挙型は、パブリッシャーに関連するいくつかのエラーコードを表しています。

調査員
OTC_PUBLISHER_INTERNAL_ERROR 内部エラー。
OTC_PUBLISHER_SESSION_DISCONNECTED 接続していないセッションで字幕の再生を開始しようとした際にエラーが発生しました。
OTC_PUBLISHER_TIMED_OUT 公開中にタイムアウトが発生しました。
OTC_PUBLISHER_UNABLE_TO_PUBLISH 公開できませんでした。
OTC_PUBLISHER_WEBRTC_ERROR WebRTCのエラー。
OTC_PUBLISHER_ENCRYPTION_INTERNAL_ERROR パケットの暗号化中に内部エラーが発生しました
OTC_PUBLISHER_ENCRYPTION_UNSUPPORTED_CODEC 暗号化に対応していないメディアコーデック

otc_publisher_video_type

パブリッシャーの動画タイプの列挙。

この列挙は、サポートされているさまざまな動画形式を表しています。

調査員
OTC_PUBLISHER_VIDEO_TYPE_CAMERA カメラの動画ストリーム。
OTC_PUBLISHER_VIDEO_TYPE_SCREEN 動画ストリームのスクリーンキャプチャ。

otc_video_bitrate_preset

パブリッシャーのストリームにおける動画ビットレートを制御するためのプリセット戦略。

これらのプリセットを使用することで、開発者は手動でビットレートを指定することなく、帯域幅戦略を適用することができます。プリセットは、手動によるビットレート設定とは互いに排他的です。

詳しくは パブリッシャー最大ビットレート.

調査員
OTC_VIDEO_BITRATE_PRESET_DEFAULT デフォルトの設定です。追加の制限は適用されません。これがデフォルトのモードです。
OTC_VIDEO_BITRATE_PRESET_BW_SAVER 帯域幅節約プリセット。適度な制限を設け、妥当な画質を維持しつつ、帯域幅の使用量を削減します。
OTC_VIDEO_BITRATE_PRESET_EXTRA_BW_SAVER 追加の帯域幅節約プリセット。帯域幅の使用量を最小限に抑えるため、厳しい制限を適用します。
OTC_VIDEO_BITRATE_PRESET_CUSTOM カスタムビットレート。 を使用して手動で設定したビットレートを表します。 otc_publisher_set_max_video_bitrate(). この値は、内部的な追跡目的でのみプリセットのゲッターによって返されるものであり、プリセットのセッターに渡すことはできません。

関数のドキュメント

otc_publisher_delete()

otc_status otc_publisher_delete ( otc_publisher * 出版社 )

パブリッシャーインスタンスを解放します。これには、そのインスタンスにバインドされているすべてのハードウェアリソースも含まれます。

パラメータ : | | | | --- | --- | | publisher | 削除対象のパブリッシャーインスタンス。 |

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

otc_publisher_get_degradation_preference()

enum otc_劣化_優先度 otc_publisher_get_degradation_preference ( const otc_publisher * 出版社 )

帯域幅やCPUの制約に応じてフレームレートや解像度を調整する際、ビデオエンジンが従う優先ポリシーを取得します。設定可能な値の詳細については、otc_degradation_preference を参照してください。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 |

戻り値 : 現在の劣化設定。

otc_publisher_get_max_video_bitrate()

int otc_publisher_get_max_video_bitrate ( const otc_publisher * 出版社 )

このパブリッシャーの動画ストリームに設定されている最大動画ビットレートを取得します。

現在設定されている動画の最大ビットレートを、ビット毎秒(bps)単位で返します。もし otc_publisher_set_max_video_bitrate()、またはプリセット(デフォルトを含む)が有効な場合、この関数は 0 を返します。

注: 戻り値が 0 の場合は、明示的なビットレート制限が適用されておらず、代わりにプリセットに基づく動作が使用されていることを示します。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 |

戻り値 : 現在の最大ビデオビットレート(ビット/秒)。手動で設定されていない場合は 0 を返します。

otc_publisher_get_name()

const char * otc_publisher_get_name ( const struct otc_publisher * 出版社 )

指定されたパブリッシャーの名前を取得します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

戻り値 : 名前。

otc_publisher_get_publish_audio()

otc_bool otc_publisher_get_publish_audio ( const otc_publisher * 出版社 )

パブリッシャーがオーディオを配信しているかどうかを返します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

Returns : パブリッシャーがオーディオを配信しているかどうか。

otc_publisher_get_publish_captions()

otc_bool otc_publisher_get_publish_captions ( const otc_publisher * 出版社 )

パブリッシャーでキャプションが有効になっているかどうかを返します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

返り値 : パブリッシャーでキャプションが有効になっているかどうか。

otc_publisher_get_publish_video()

otc_bool otc_publisher_get_publish_video ( const otc_publisher * 出版社 )

パブリッシャーが動画を配信しているかどうかを返します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

Returns : パブリッシャーが動画を配信しているかどうか。

otc_publisher_get_publisher_id()

const char * otc_publisher_get_publisher_id ( const otc_publisher * 出版社 )

パブリッシャーの固有識別子を取得します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

戻り値 : パブリッシャーの固有識別子。エラーが発生した場合は、null になります。

otc_publisher_get_rtc_stats_report()

otc_status otc_publisher_get_rtc_stats_report ( const otc_publisher * 出版社 )

パブリッシャーのRTC統計レポートを取得します。これは非同期操作です。 otc_publisher_rtc_stats_report_cb 構造体に渡す。 otc_publisher_set_rtc_stats_report_cb この関数を呼び出す前に、function を実行してください。統計情報が利用可能になると、 otc_publisher_set_rtc_stats_report_cb コールバック関数が呼び出される。

こちらも参照 otc_publisher_callbacks.on_audio_stats, otc_publisher_callbacks.on_video_statsそして otc_subscriber_get_rtc_stats_report.

パラメータ : | | | | --- | --- | | 発行元 | 発行元。 |

otc_publisher_get_session()

otc_session * otc_publisher_get_session ( const otc_publisher * 出版社 )

次の値を返します。 otc_session このパブリッシャーインスタンスに関連付けられました。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

返品 : ザ otc_session このインスタンスに関連付けられています。エラーがある場合は、null になります。

otc_publisher_get_stream()

otc_stream * otc_publisher_get_stream ( otc_publisher * 出版社 )

パブリッシャーに関連付けられたストリームを返します。コールバックは含まれません。 otc_publisher_callbacks このメソッドの呼び出しに伴い(またはその後に)、呼び出されます。

パラメータ : | | | | --- | --- | | publisher | ストリームを取得するパブリッシャーインスタンス。 |

戻り値 : パブリッシャーに関連付けられたストリーム。エラーが発生した場合は、null になります。

otc_publisher_get_target_scalability_mode()

const char * otc_publisher_get_target_scalability_mode ( otc_publisher * 出版社 )

以下を通じて明示的に設定されたターゲットのスケーラビリティモードを取得します。 otc_publisher_set_target_scalability_mode. セッターに最後に渡された値を返します。セッターが一度も呼び出されていない場合はNULLを返します。これはユーザーの意図を反映したものであり、実際に適用されたモード(コーデック依存のフォールバックにより異なる場合があります)を示すものではありません。

これはベータ版の機能です。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

戻り値 : 呼び出し元によって設定されたターゲットスケーラビリティモード。明示的に設定されていない場合はNULL。

otc_publisher_get_user_data()

void * otc_publisher_get_user_data ( const struct otc_publisher * 出版社 )

指定されたパブリッシャーのユーザーデータを取得します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

戻り値 : メモリ内のユーザーデータへのポインタ。

otc_publisher_get_video_bitrate_preset()

enum otc_video_bitrate_preset otc_publisher_get_video_bitrate_preset ( const otc_publisher * 出版社 )

このパブリッシャーのストリームについて、現在有効になっている動画ビットレートのプリセットを取得します。

以前に、以下のコマンドを使用してカスタムビットレートを設定していた場合 otc_publisher_set_max_video_bitrate(), このメソッドは OTC_VIDEO_BITRATE_PRESET_CUSTOM を返します。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 |

戻り値 : アクティブなビットレートのプリセット。

otc_publisher_get_video_type()

enum otc_publisher_video_type otc_publisher_get_video_type ( const struct otc_publisher * 出版社 )

パブリッシャーの動画タイプを取得します。詳しくは、 otc_publisher_set_video_type 関数である。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 |

戻り値 : パブリッシャーの動画タイプ。

otc_publisher_new()

otc_publisher * otc_publisher_new ( const char * 名称,
const struct otc_video_capturer_callbacks * キャプチャ機能,
const struct otc_publisher_callbacks * コールバック
)

新しい otc_publisher インスタンスを作成します。

パラメータ : | | | | --- | --- | | name | パブリッシャーの名前。他のクライアントは、セッション内のストリームの名前を取得できます。 | | capturer | カスタムビデオキャプチャ機能を提供する場合にこのパラメータを使用します。null に設定された場合、パブリッシャーはシステムのカメラを使用するデフォルトのビデオキャプチャ機能を使用します。 | | callbacks | パブリッシャーのコールバック関数ポインタを含む構造体へのポインタ。 |

戻り値 : 新しい otc_publisher インスタンス。エラーが発生した場合は null になります。

otc_publisher_new_with_settings()

otc_publisher * otc_publisher_new_with_settings ( const struct otc_publisher_callbacks * コールバック,
otc_publisher_settings * 設定
)

新しい otc_publisher インスタンスを作成します。

パラメータ : | | | | --- | --- | | callbacks | パブリッシャーのコールバック関数ポインタを含む構造体へのポインタ。 | | settings | パブリッシャーに適用する設定を含む設定構造体。 |

戻り値 : 新しい otc_publisher インスタンス。エラーが発生した場合は null になります。

otc_publisher_set_audio_transformers()

otc_status otc_publisher_set_audio_transformers ( otc_publisher * 出版社,
otc_audio_transformer ** トランスフォーマー,
uint8_t サイズ
)

このパブリッシャーのオーディオストリームに、オーディオトランスフォーマーの配列を設定します。null を指定すると、トランスフォーマーがリセットされます。

この配列は、ml-library が提供する vonage オーディオトランスフォーマーや、カスタムトランスフォーマーで構成することができます。トランスフォーマーには、各オーディオフレームごとに呼び出されるコールバックへのポインタが含まれています。

注: この機能は、Vonage Video API macOS SDKにのみ適用されます。Vonage Video API Linux SDKでは動作しません。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーのインスタンス。 | | [in] | transformers | ストリームに適用される順序で並んだ、otc_audio_transformer への不透明ポインタの配列。 | | [in] | size | 配列のサイズ。 |

戻り値 : エラーが発生した場合はエラーを返し、それ以外の場合は OTC_SUCCESS を返す。

otc_publisher_set_degradation_preference()

otc_status otc_publisher_set_degradation_preference ( otc_publisher * 出版社,
enum otc_劣化_優先度 劣化優先度
)

帯域幅やCPUリソースが制限されている状況において、ビデオエンジンがフレームレートや解像度を調整する際に従う優先ポリシーを設定します。設定可能な値の詳細については、otc_degradation_preference を参照してください。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 | | [in] | degradation_preference | 品質低下設定。 |

戻り値 : OTC_SUCCESS またはエラー。

otc_publisher_set_max_audio_bitrate()

otc_status otc_publisher_set_max_audio_bitrate ( otc_publisher * 出版社,
uint32_t ビットレート
)

パブリッシャーのオーディオ最大ビットレートを設定します。

パラメータ : | | | | --- | --- | | publisher | 影響を受けるパブリッシャー。 | | bitrate | 希望するビットレート(kbps)。 |

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

otc_publisher_set_max_video_bitrate()

otc_status otc_publisher_set_max_video_bitrate ( otc_publisher * 出版社,
イント ビットレート(bps)
)

このパブリッシャーの動画ストリームに設定されている最大動画ビットレートを取得します。

現在の最大ビデオビットレートをビット毎秒(bps)単位で返します。もし otc_publisher_set_max_video_bitrate()、またはビットレートのプリセット(デフォルトのプリセットを含む)が有効な場合、この関数は 0 を返します。

注: 戻り値が 0 の場合は、手動によるビットレートの上限設定が適用されておらず、ストリームが事前設定された構成で動作していることを示します。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 |

戻り値 : 現在の最大ビデオビットレート(ビット/秒)。設定されていない場合やプリセットが使用されている場合は 0 を返します。

otc_publisher_set_publish_audio()

otc_status otc_publisher_set_publish_audio ( otc_publisher * 出版社,
otc_bool publish_audio
)

音声を配信するかどうか。デフォルトでは、ストリームは音声と動画の両方を配信します。

パラメータ : | | | | --- | --- | | publisher | 影響を受けるパブリッシャー。 | | publish_audio | オーディオを公開するかどうか。 |

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

otc_publisher_set_publish_captions()

otc_status otc_publisher_set_publish_captions ( otc_publisher * 出版社,
otc_bool キャプションの公開
)

キャプションを有効にするかどうか。デフォルトでは無効になっています。

パラメータ : | | | | --- | --- | | publisher | 影響を受けるパブリッシャー。 | | publish_captions | キャプションを有効にするかどうか。 |

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

otc_publisher_set_publish_video()

otc_status otc_publisher_set_publish_video ( otc_publisher * 出版社,
otc_bool publish_video
)

動画を配信するかどうか。デフォルトでは、ストリームは音声と動画の両方を配信します。

パラメータ : | | | | --- | --- | | publisher | 影響を受けるパブリッシャー。 | | publish_video | 動画を公開するかどうか。 |

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

otc_publisher_set_rtc_stats_report_cb()

otc_status otc_publisher_set_rtc_stats_report_cb ( otc_publisher * 出版社,
const struct otc_publisher_rtc_stats_report_cb cb
)

パブリッシャーに対して、RTC 統計レポートのコールバックを設定します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーインスタンス。 | | cb | otc_publisher_rtc_stats_report_cb RTC統計レポート用のコールバック関数を含む構造体。 |

関連項目 : otc_publisher_get_rtc_stats_report.

otc_publisher_set_target_scalability_mode()

otc_status otc_publisher_set_target_scalability_mode ( otc_publisher * 出版社,
const char * スケーラビリティ_モード
)

このパブリッシャーのターゲットスケーラビリティモード(SVC - スケーラブル・ビデオ・コーディング)を設定します。 スケーラビリティモードは、WebRTC がエンコードする空間(解像度)および時間(フレームレート)レイヤーの数を制御します。このモードは、現在どのレッグがアクティブであるかに関係なく、ルーティングされた(パブリッシャー ↔ SFU)ピア接続にのみ適用されます。

このメソッドはいつでも呼び出すことができます。ルーティングされたレグのネゴシエーションが完了している必要はありません。モードは、ルーティングされたレグが確立された時点で適用されます。

ルーティングされた区間でSVC以外のコーデック(VP8、H.264)がネゴシエーションされた場合、最も近い適用可能なモードが使用されます。具体的には、空間レイヤーが強制的に1に設定され、時間次元は維持されます(例:VP8がネゴシエーションされた場合、L2T2 → L1T2)。

これはベータ版の機能です。

エラー:

  • 要求されたモードが有効なスケーラビリティ・モードでない場合(つまり、L1T1、L1T2、L1T3、L2T1、L2T2、L2T3、L3T1、L3T2、L3T3のいずれでもない場合)、OTC_ERRORを返します。

パラメータ : | | | | --- | --- | | publisher | パブリッシャーのインスタンス。 | | scalability_mode | 対象のスケーラビリティモード。 |

戻り値 : 操作が成功した場合は OTC_SUCCESS、それ以外の場合はエラーコードを返します。

otc_publisher_set_video_bitrate_preset()

otc_status otc_publisher_set_video_bitrate_preset ( otc_publisher * 出版社,
enum otc_video_bitrate_preset プリセット
)

このパブリッシャーの動画ストリームに対して、動画ビットレートのプリセットを設定します。

あらかじめ定義された動画ビットレート戦略を適用し、エンコーダの動作を制御します。これらのプリセットは、Applicationsのニーズに応じて、動画の画質と帯域幅の使用量のバランスをとることを目的としています。

注: プリセット「OTC_VIDEO_BITRATE_PRESET_CUSTOM」は直接設定できません。以下の関数を呼び出すと、 otc_publisher_set_max_video_bitrate() これによりプリセットが上書きされ、プリセットのゲッターが OTC_VIDEO_BITRATE_PRESET_CUSTOM を返すようになります。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 | | [in] | preset | 以下の値のいずれか otc_video_bitrate_preset 応募するには。 |

戻り値 : エラーが発生した場合はエラーを返し、それ以外の場合は OTC_SUCCESS を返す。

otc_publisher_set_video_transformers()

otc_status otc_publisher_set_video_transformers ( otc_publisher * 出版社,
otc_video_transformer ** トランスフォーマー,
uint8_t サイズ
)

このパブリッシャーのビデオストリームに、ビデオトランスフォーマーの配列を設定します。null を指定すると、トランスフォーマーがリセットされます。

この配列は、ml-library が提供する vonage ビデオトランスフォーマーや、カスタムトランスフォーマーで構成することができます。トランスフォーマーには、各ビデオフレームごとに呼び出されるコールバックへのポインタが含まれています。

注: この機能は、Vonage Video API macOS SDKにのみ適用されます。Vonage Video API Linux SDKでは動作しません。

パラメータ : | | | | | --- | --- | --- | | [in] | publisher | パブリッシャーインスタンス。 | | [in] | transformers | ストリームに適用される順序で並んだ、otc_video_transformer への不透明ポインタの配列。 | | [in] | size | 配列のサイズ。 |

戻り値 : エラーが発生した場合はエラーを返し、それ以外の場合は OTC_SUCCESS を返す。

otc_publisher_set_video_type()

otc_status otc_publisher_set_video_type ( struct otc_publisher * 出版社,
enum otc_publisher_video_type video_type
)

パブリッシャーの動画タイプを設定します。デフォルトでは、動画のタイプは OTC_PUBLISHER_VIDEO_TYPE_CAMERA に設定されています(動画のソースがカメラであることを示します)。動画のソースが画面共有であることを示すには、これを OTC_PUBLISHER_VIDEO_TYPE_SCREEN に設定してください。 他のクライアントは、セッション内のストリームの動画タイプを検知できます(動画ソースの種類を判別するため)。

パラメータ : | | | | --- | --- | | publisher | 影響を受けるパブリッシャー。 | | video_type | パブリッシャーの動画タイプ。 |

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

otc_publisher_settings_delete()

otc_status otc_publisher_settings_delete ( otc_publisher_settings * 設定 )

otc_publisher_settings インスタンスを削除します。

パラメータ : | | | | --- | --- | | settings | 削除対象の otc_publisher_settings インスタンス。 |

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

otc_publisher_settings_new()

otc_publisher_settings * otc_publisher_settings_new ( )

新しい `otc_publisher_settings` インスタンスを作成します。

戻り値 : 新しい otc_publisher_settings インスタンス

otc_publisher_settings_set_allow_audio_capture_while_muted()

otc_status otc_publisher_settings_set_allow_audio_capture_while_muted ( otc_publisher_settings * 設定,
const otc_bool 使用可能
)

いつ otc_publisher_settings_set_allow_audio_capture_while_muted に設定されている。 false、すべてのパブリッシャーが音声をミュートすると、マイクは自動的にオフになります。少なくとも1人のパブリッシャーがミュートを解除すると、マイクは自動的に再びオンになります。設定が true, すべてのパブリッシャーがオーディオをミュートしている場合でも、マイクは常にオン状態のままになります。マイクがオフになっている場合、パブリッシャーに対して audio_level や audio_data などのコールバックは呼び出されなくなる点に注意してください。デフォルト値は true.参照 otc_session_new_with_settings.

パラメータ : | | | | --- | --- | | settings | セッション設定オブジェクトへのポインタ。 | | enable | このフラグを無効化(OTC_FALSE、デフォルト値)または有効化(OTC_TRUE)するためのブール値フラグ。 |

戻り値 : otc_status 操作のステータスを返します。

otc_publisher_settings_set_audio_track()

otc_status otc_publisher_settings_set_audio_track ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

パブリッシャーのオーディオトラックを以下を使用して構築できるようにします otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | パブリッシャーの構築時にオーディオトラックを生成するかどうかを有効/無効にする。 otc_publisher_new_with_settings. |

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

otc_publisher_settings_set_auto_gain_control()

otc_status otc_publisher_settings_set_auto_gain_control ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

これにより、パブリッシャー向けのオーディオ自動ゲイン制御を以下のように構築できるようになります。 otc_publisher_new_with_settings.

Vonage Video APIのLinux SDKでは動作しません。

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | 自動ゲイン制御を有効にするか(true、デフォルト)、無効にするか(false)。 |

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

otc_publisher_settings_set_default_camera_capture_resolution()

otc_status otc_publisher_settings_set_default_camera_capture_resolution ( otc_publisher_settings * 設定,
const enum otc_camera_capture_resolution camera_capture_resolution
)

デフォルトの動画キャプチャ機能のカメラキャプチャ解像度を設定します。

カスタムビデオキャプチャ機能は、によって設定されたキャプチャ解像度を反映すべきではありません。 otc_publisher_settings_set_default_camera_capture_resolution、この機能はデフォルトの動画キャプチャ機能でのみ使用可能です。

パラメータ : | | | | --- | --- | | camera_capture_resolution | デフォルトのビデオキャプチャ機能におけるカメラのキャプチャ解像度。 | | settings | 影響を受ける otc_publisher_settings インスタンス。 |

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

otc_publisher_settings_set_disable_audio_processing()

otc_status otc_publisher_settings_set_disable_audio_processing ( otc_publisher_settings * 設定,
otc_bool 使用不能
)

いつ otc_publisher_settings_set_disable_audio_processing に設定されている。 true, 音響エコーキャンセル、自動ゲイン制御、およびノイズ抑制の個別の設定は無視され、音声は一切処理されません。デフォルト値は false.参照 otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | オーディオ処理のサポートを有効にするか(true)、無効にするか(false、デフォルト)。 |

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

otc_publisher_settings_set_echo_cancellation()

otc_status otc_publisher_settings_set_echo_cancellation ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

以下の方法でパブリッシャーの音響エコーキャンセルを有効にします。 otc_publisher_new_with_settings.

注: この機能は、Vonage Video API macOS SDKにのみ適用されます。Vonage Video API Linux SDKでは動作しません。

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | 音響エコーキャンセル機能を有効にするか(true、デフォルト)、無効にするか(false)。 |

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

otc_publisher_settings_set_name()

otc_status otc_publisher_settings_set_name ( otc_publisher_settings * 設定,
const char * 名称
)

これを使用して作成されるパブリッシャーの希望する名前を設定します otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 影響を受ける otc_publisher_settings インスタンス。 | | name | パブリッシャーの名前。他のクライアントは、セッション内のストリームの名前を取得できます。 |

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

otc_publisher_settings_set_noise_suppression()

otc_status otc_publisher_settings_set_noise_suppression ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

以下の方法でパブリッシャのノイズ抑制を有効にします。 otc_publisher_new_with_settings.

注: この機能は、Vonage Video API macOS SDKにのみ適用されます。Vonage Video API Linux SDKでは動作しません。

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | ノイズ抑制を有効にするか(true、デフォルト)、無効にするか(false)。 |

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

otc_publisher_settings_set_opus_dtx()

otc_status otc_publisher_settings_set_opus_dtx ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

有効にする Opus DTX 出版社を構築するには、 otc_publisher_new_with_settings. Opus DTX を有効にすると、長時間の無音部分があるストリームにおいて、帯域幅の使用量を削減できます。

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | Opus DTX サポートを有効にするか(true)、無効にするか(false、デフォルト)。 |

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

otc_publisher_settings_set_preferred_video_codecs()

otc_status otc_publisher_settings_set_preferred_video_codecs ( otc_publisher_settings * 設定,
const otc_video_codec_type * コーデック,
size_t コーデック数
)

このパブリッシャーのストリームで使用する優先ビデオコーデックを設定します。

この機能を使用すると、ネゴシエーションの際に優先すべきビデオコーデックを、順序付きの一覧として明示的に指定することができます。指定されたコーデックは、SDPオファーの先頭に(指定された順序で)記載されますが、その他のサポートされているコーデックも、優先順位を低くして含まれる場合があります。

これは、交渉の対象をこれらのコーデックに限定するものではありません。

空のリストを渡すと、OT_INVALID_PARAMETER エラーが発生します。この関数が呼び出されない場合、SDK はダッシュボードプロジェクトの設定で定義されたデフォルトの動作に切り替わります。

パラメータ : | | | | | --- | --- | --- | | [in,out] | settings | 変更対象のパブリッシャー設定インスタンス。 | | [in] | codecs | 優先するビデオコーデックの配列(空であってはなりません)。 | | [in] | num_codecs | codecs 配列の要素数。 |

戻り値 : 操作が成功した場合は OTC_SUCCESS、リストが空または無効な場合は OT_INVALID_PARAMETER。

otc_publisher_settings_set_preferred_video_codecs_automatic()

otc_status otc_publisher_settings_set_preferred_video_codecs_automatic ( otc_publisher_settings * 設定 )

この配信者のストリームに対して、コーデックの優先順位付けを自動的に行うようにします。

自動モードでは、SDK が最適なコーデックの優先順位を決定し、ダッシュボードで設定されたプロジェクトのデフォルト設定を上書きします。

これにより、手動でリストを指定することなく、コーデックの優先順位をSDKに委ねることができる。

パラメータ : | | | | | --- | --- | --- | | [in,out] | settings | 変更対象のパブリッシャー設定インスタンス。 |

戻り値 : 操作が成功した場合は OTC_SUCCESS、それ以外の場合はエラーコードを返します。

otc_publisher_settings_set_publisher_audio_fallback_enabled()

otc_status otc_publisher_settings_set_publisher_audio_fallback_enabled ( otc_publisher_settings * 設定,
const otc_bool 使用可能
)

パブリッシャーのオーディオフォールバック機能を有効または無効にします。

パブリッシャーのオーディオフォールバック機能が有効になっている場合、パブリッシャーがストリームの品質が著しく低下したと判断すると、オーディオ品質を維持するためにビデオストリームを無効にし、オーディオストリームの送信を継続します。このパブリッシャーに対応するキャプチャ機能は無効化されず、キャプチャされたフレームは引き続きパブリッシャー側で確認できます。

デフォルト設定は OTC_FALSE です(オーディオフォールバック機能は無効になっています)。OpenTok Media Server を使用するセッションでスクリーンビデオタイプを使用する場合、サブスクライバー側で映像が途切れないように、パブリッシャーのオーディオフォールバック設定はデフォルトで OTC_FALSE に設定されています。

パラメータ : | | | | --- | --- | | settings | 影響を受けるパブリッシャーの設定。 | | enabled | オーディオフォールバック機能を有効にするかどうか。 |

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

otc_publisher_settings_set_scalable_screenshare()

otc_status otc_publisher_settings_set_scalable_screenshare ( otc_publisher_settings * 設定,
const otc_bool 使用可能
)

スケーラブルビデオの使用を許可する スケーラブルビデオ 次のような出版社にとっては、 otc_publisher_video_type に設定する。 OTC_PUBLISHER_VIDEO_TYPE_SCREENotc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | 画面共有ストリームでのスケーラブルビデオの使用を有効/無効にします。 |

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

otc_publisher_settings_set_sender_stats_track()

otc_status otc_publisher_settings_set_sender_stats_track ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

パブリッシャーの送信者統計チャネルを、以下を使用して構築できるようにします。 otc_publisher_new_with_settings. 現在、この機能は参加者が3人以上の通話のみに対応しています。デフォルトでは、発信者統計チャンネルは無効になっています。

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | パブリッシャーに対して送信者統計チャネルを作成するかどうかを有効/無効にする。 otc_publisher_new_with_settings. |

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

otc_publisher_settings_set_stereo()

otc_status otc_publisher_settings_set_stereo ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

パブリッシャーでステレオオーディオを構築できるようにします。 otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | 構築されるパブリッシャーのステレオオーディオサポートを有効/無効にする。 otc_publisher_new_with_settings. |

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

otc_publisher_settings_set_subscriber_audio_fallback_enabled()

otc_status otc_publisher_settings_set_subscriber_audio_fallback_enabled ( otc_publisher_settings * 設定,
const otc_bool 使用可能
)

サブスクライバーのオーディオフォールバック機能を有効または無効にします(公開されたストリームのサブスクライバー向け)

加入者向けオーディオ・フォールバック機能は、Vonage Video Media Router を使用するセッションで利用可能です。 オーディオフォールバック機能が有効になっている場合(デフォルト設定)、Vonage Video Media Router が特定の加入者に対するストリームの品質が著しく低下したと判断すると、オーディオ品質を維持するために、その加入者に対するビデオを無効にします。

デフォルト設定は OTC_TRUE です(オーディオフォールバック機能が有効になっています)。スクリーン動画タイプを使用する場合、加入者側のオーディオフォールバック設定はデフォルトで OTC_FALSE に設定されるため、加入者側で動画が途切れることはありません。

パラメータ : | | | | --- | --- | | settings | 影響を受けるパブリッシャーの設定。 | | enabled | オーディオフォールバック機能を有効にするかどうか。 |

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

otc_publisher_settings_set_video_capturer()

otc_status otc_publisher_settings_set_video_capturer ( otc_publisher_settings * 設定,
const struct otc_video_capturer_callbacks * キャプチャ機能
)

パブリッシャーのビデオキャプチャ機能を、以下を使用して構築するように設定します。 otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | capturer | ビデオキャプチャ装置。 |

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

otc_publisher_settings_set_video_track()

otc_status otc_publisher_settings_set_video_track ( otc_publisher_settings * 設定,
otc_bool 使用可能
)

パブリッシャーのビデオトラックを以下を使用して構築できるようにします。 otc_publisher_new_with_settings.

パラメータ : | | | | --- | --- | | settings | 対象となる otc_publisher_settings インスタンス。 | | enabled | パブリッシャー用に構築されるビデオトラックの有無を有効/無効にする otc_publisher_new_with_settings. |

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