![]() |
SkyWay Embedded SDK 0.1.0
|
Subscriptionのイベントハンドラの登録。 [詳解]
データ構造 | |
| struct | skw_room_subscription_data_field_t |
| Subscriptionの取得結果を受け取る出力先。NULLを設定したフィールドには格納されない。 [詳解] | |
| struct | skw_room_subscription_handlers_t |
| Subscriptionの各イベント通知を受け取るハンドラ。不要なイベントのフィールドはNULLにできる。 [詳解] | |
マクロ定義 | |
| #define | SKW_ROOM_SUBSCRIPTION_ID_SIZE (36+1) |
| SubscriptionIDを格納するバッファのサイズ(NUL終端を含む)。 | |
型定義 | |
| typedef char | skw_room_subscription_id_t[SKW_ROOM_SUBSCRIPTION_ID_SIZE] |
| SubscriptionIDを格納する文字列型(NUL終端を含む)。 | |
| typedef void(* | skw_room_subscription_on_data_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length) |
| SubscribeしているStreamからデータを受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。 | |
| typedef void(* | skw_room_subscription_on_video_frame_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length, uint32_t pts) |
| SubscribeしているStreamからエンコード済み映像フレーム(H.264)を受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。 | |
| typedef void(* | skw_room_subscription_on_audio_frame_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length, uint32_t pts) |
| SubscribeしているStreamからエンコード済み音声フレーム(Opus)を受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。 | |
関数 | |
| skw_room_subscription_err_t | skw_room_subscription_register_handlers (const skw_room_subscription_handlers_t *handlers) |
| Subscriptionのイベント通知を受け取るハンドラを登録します。登録できる集合は単一で、再登録すると上書きされます。 | |
| skw_room_subscription_err_t | skw_room_subscription_unregister_handlers (void) |
| 登録済みのイベント通知ハンドラを解除します。 | |
Subscriptionのイベントハンドラの登録。
| typedef void(* skw_room_subscription_on_audio_frame_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length, uint32_t pts) |
SubscribeしているStreamからエンコード済み音声フレーム(Opus)を受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。
| subscription_id | 対象のSubscriptionのID |
| publication_id | 対象のPublicationのID |
| data | 受信したフレームデータ(呼び出し中のみ有効) |
| length | 受信したフレームデータの長さ(バイト数) |
| pts | フレームの表示タイムスタンプ(ミリ秒) |
| typedef void(* skw_room_subscription_on_data_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length) |
SubscribeしているStreamからデータを受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。
| subscription_id | 対象のSubscriptionのID |
| publication_id | 対象のPublicationのID |
| data | 受信したデータ(呼び出し中のみ有効) |
| length | 受信したデータの長さ(バイト数) |
| typedef void(* skw_room_subscription_on_video_frame_t) (const char *subscription_id, const char *publication_id, const uint8_t *data, size_t length, uint32_t pts) |
SubscribeしているStreamからエンコード済み映像フレーム(H.264)を受信したときに呼ばれます。ハンドラ内からunsubscribe等の破棄を伴うAPIとsubscribeは呼び出せません。
| subscription_id | 対象のSubscriptionのID |
| publication_id | 対象のPublicationのID |
| data | 受信したフレームデータ(呼び出し中のみ有効) |
| length | 受信したフレームデータの長さ(バイト数) |
| pts | フレームの表示タイムスタンプ(ミリ秒) |
Subscription APIのエラーコード。
| skw_room_subscription_err_t skw_room_subscription_register_handlers | ( | const skw_room_subscription_handlers_t * | handlers | ) |
Subscriptionのイベント通知を受け取るハンドラを登録します。登録できる集合は単一で、再登録すると上書きされます。
| handlers | Subscriptionのイベント通知を受け取るハンドラのポインタ |
| skw_room_subscription_err_t skw_room_subscription_unregister_handlers | ( | void | ) |
登録済みのイベント通知ハンドラを解除します。