継承元: : Object

定義場所: : lib/opentok/broadcasts.rb

概要

OpenTokのライブ配信を扱うためのクラスです。詳細については、 / ライブ配信.

インスタンスメソッドの概要

インスタンスメソッドの詳細

#add_stream(broadcast_id, stream_id, options) ⇒ オブジェクト

streamMode が「manual」に設定されて開始された、現在実行中の放送にストリームを追加します。この機能の詳細については、<https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

add_stream に同じストリーム ID を指定してこのメソッドを繰り返し呼び出すことで、配信におけるそのストリームの音声または映像の表示/非表示を切り替えることができます。has_audio と has_video の両方を false に設定すると、エラー応答が返されます。

パラメータ:

  • broadcast_id (文字列) —

    放送ID。

  • stream_id (文字列) —

    放送に追加するストリームのID

  • opts (ハッシュ) —

    カスタマイズ可能なオプションのセット

引き上げ:

  • (ArgumentError) —

    broadcast_id パラメータが空です。

  • (ArgumentError) —

    stream_id パラメータが空です。

  • (ArgumentError) —

    options パラメータの has_audio および has_video プロパティは、いずれも「false」に設定されています。

#すべて(options = {}) ⇒ BroadcastList

指定されたAPIキーに対応する、完了済みおよび進行中のブロードキャストの配列であるBroadcastListを返します。

tokbox.com/developer/rest/#list_broadcasts

パラメータ:

  • オプション (ハッシュ) (デフォルトは:{})

    どの範囲のブロードキャストを取得するかを定義するキーを含むハッシュ。

オプションハッシュ (options):

  • :offset (整数)

    -

    オプション。最初のブロードキャストのインデックスオフセット。0 は、最も最近開始されたブロードキャストのオフセットです。1 は、その直前に開始されたブロードキャストのオフセットです。オフセットを指定しない場合は、0 が使用されます。

  • :count (整数)

    -

    オプション。返すブロードキャストの数。返されるブロードキャストの最大数は 1000 です。

  • :session_id (文字列)

    -

    オプション。ブロードキャストが属するセッションID。

リターンズ

  • (BroadcastList) —

    BroadcastList オブジェクト。これは、Broadcast オブジェクトの配列です。

引き上げ:

  • (ArgumentError)

#作成する(session_id, options = {}) ⇒ ブロードキャスト

OpenTokセッションのライブ配信を開始します。

配信を正常に開始するには、クライアントがOpenTokセッションにアクティブに接続されている必要があります。

これにより、セッションがHLS(HTTPライブストリーミング)またはRTMPストリームに配信されます。

Broadcasts#find method.

パラメータ:

  • session_id (文字列) —

    配信対象のOpenTokセッションのセッションID。

  • オプション (ハッシュ) (デフォルトは:{})

    ブロードキャストのオプションを定義するハッシュ。

オプションハッシュ (options):

  • :layout (ハッシュ)

    -

    放送の初期レイアウトタイプを指定するには、これを指定してください。これは、以下の3つのキーを含むハッシュです: :type, :stylesheet<code> and <code>:screenshare_type. の有効な値は :type 「bestFit」(最適適合)、「custom」(カスタム)、

    "horizontalPresentation" (horizontal presentation),
    

    「pip」(ピクチャー・イン・ピクチャー)および「verticalPresentation」(縦向き表示)。「custom」レイアウトタイプを指定する場合は、 :stylesheet スタイルシート(CSS)のキー。(その他のレイアウトタイプの場合は、 :stylesheet key。)有効な値は :screenshare_type は「bestFit」、「pip」、「verticalPresentation」、「horizontalPresentation」です。このプロパティはオプションです。指定された場合、 :type プロパティ マスト 「bestFit」に設定してください。初期のレイアウトタイプを指定しない場合、ブロードキャストは「bestFit」レイアウトタイプを使用します。

  • :multiBroadcastTag (String)

    — デフォルト: 省略可 —

    同じセッションに対して複数の同時放送をサポートするには、これを設定してください。進行中のセッションの同時放送ごとに、一意の文字列を設定してください。なお、「multiBroadcastTag」の値は 違う 以下のメソッドに対する応答に含まれる ライブ配信の一覧 そして ライブ配信に関する情報を入手する. 同時放送をご覧ください.

  • maxBitRate (int)

    -

    ブロードキャストストリームの最大ビットレート(ビット/秒)。最小値は 100,000、最大値は 6,000,000 です。

  • maxDuration (int)

    -

    ブロードキャストの最大継続時間(秒単位)。最大継続時間に達すると、ブロードキャストは自動的に停止します。最大継続時間は、60(60秒)から36000(10時間)までの値に設定できます。デフォルトの最大継続時間は4時間(14,400秒)です。

  • 出力 (ハッシュ)

    — デフォルト: 必須 —

    このオブジェクトは、開始したいブロードキャストストリームの種類(HLSおよびRTMPの両方)を定義します。ブロードキャストストリームとして、HLS、RTMP、あるいはその両方を指定できます。RTMPストリーミングを含める場合、最大5つのターゲットRTMPストリーム(または1つだけ)を指定できます。

    複数のRTMPストリームの場合、(:rtmp) プロパティは、Rtmp [Hash] オブジェクトの [Array] に設定されます。各 RTMP ハッシュについて、以下を指定します (:serverUrl) RTMPサーバーのURLとして、(:streamName) 例えば、YouTubeライブ配信名やFacebookのストリームキーなど)、および(任意で)(:id)、ストリームの固有のID。IDを指定すると、それが(broadcast_json) クライアントからの #start_broadcast メソッド呼び出しに対する応答であり、(broadcast_json) Broadcasts#find メソッドからの応答。Vonage は、指定した各 RTMP URL へセッションをストリーミングします。なお、OpenTok のライブストリーミングは RTMP および RTMPS をサポートしています。RTMP URL を 1 つだけサポートする必要がある場合は、(:rtmp) のプロパティ値は (:outputs) [ハッシュ]。

    HLSについては、(:hls) プロパティが (:outputs) [Hash] は HLS [Hash] オブジェクトに設定されます。このオブジェクトには、以下のオプションのプロパティが含まれます:

    • (:dvr) (ブール値)。有効にするかどうか DVR機能 (巻き戻し、一時停止、再生再開)に対応しているプレーヤー(true)か、対応していないプレーヤー(false、デフォルト)か。DVRが有効になっている場合、HLS URLの末尾に「?DVR」というクエリ文字列が追加されます。
    • (:low_latency) (ブール値)。有効にするかどうか 低遅延モード HLSstream用です。一部のHLSプレーヤーでは、低遅延モードに対応していません。この機能は、DVRモードのHLS配信とは互換性がありません(両方を「true」に設定することはできません)。これはベータ機能です。

    HLSのURLは(broadcast_json) クライアントからの #start_broadcast メソッド呼び出しに対する応答であり、(broadcast_json) からの回答

  • 解像度 (文字列)

    -

    放送の解像度は、「640x480」(SD 横向き、デフォルト)、「1280x720」(HD 横向き)、「1920x1080」 (FHD 横向き)、「480x640」(SD 縦向き)、「720x1280」(HD 縦向き)、または「1080x1920」(FHD 縦向き)のいずれかです。

  • :streamMode (文字列)

    — デフォルト: 省略可 —

    放送に含めるストリームを、自動的に選択するか(「自動」、デフォルト)、手動で選択するか(「手動」)。 ストリームが自動的に選択される場合(「auto」)、セッション内のすべてのストリームを放送に含めることができます。ストリームが手動で選択される場合(「manual」)、 #add_stream メソッド。ストリームの音声、動画、あるいはその両方を放送に含めるかどうかを指定できます。自動モードと手動モードのいずれにおいても、放送コンポーザーは以下に基づいてストリームを含めます。 ストリーム優先ルール. 重要:この機能は現在、Standard環境でのみ利用可能です。

  • :hasAudio (ブール値)

    -

    放送に音声があるかどうか(デフォルトは「true」)

  • :hasVideo (ブール値)

    -

    その放送に動画が含まれているかどうか(デフォルトは「true」)

リターンズ

  • (ブロードキャスト) —

    ブロードキャストオブジェクト。これには、ブロードキャストIDを含む、ブロードキャストを定義するプロパティが含まれています。

引き上げ:

  • (OpenTokBroadcastError) —

    放送を開始できませんでした。リクエストが無効であるか、放送がすでに開始されています。

  • (OpenTok認証エラー) —

    ブロードキャストの開始中に認証に失敗しました。APIキーが無効です。

  • (OpenTokエラー) —

    OpenTokサーバーエラー。

#検索(broadcast_id) ⇒ ブロードキャスト

指定されたブロードキャスト ID に対応する Broadcast オブジェクトを取得します。

パラメータ:

  • broadcast_id (文字列) —

    放送ID。

リターンズ

  • (ブロードキャスト) —

    ブロードキャストを定義するプロパティを含むブロードキャストオブジェクト。

引き上げ:

#レイアウト(broadcast_id, options = {}) ⇒ Object

OpenTok 放送のレイアウトを動的に変更します。詳細については、以下を参照してください。詳細については、以下を参照してください。 OpenTokライブ配信の動画レイアウトの設定.

パラメータ:

  • broadcast_id (文字列) —

    放送ID。

  • オプション (ハッシュ) (デフォルトは:{})

    カスタマイズ可能なオプションのセット

オプションハッシュ (options):

  • :type (文字列)

    -

    レイアウトの種類。これを「bestFit」、「pip」、「verticalPresentation」、「horizontalPresentation」、「focus」、または「custom」に設定します。

  • :stylesheet (文字列)

    -

    カスタムレイアウト用のスタイルシート。以下の設定を行う場合は、このパラメータを設定してください。 type への "custom". それ以外の場合は、未定義のままにしておきます。

  • :screenshare_type (文字列)

    -

    画面共有のレイアウトタイプです。これを「bestFit」、「pip」、「verticalPresentation」、または「horizonalPresentation」に設定します。これが定義されている場合、 type パラメータは、次のように設定する必要があります。 "bestFit".

引き上げ:

  • (OpenTokBroadcastError) —

    放送のレイアウトを更新できませんでした。

  • (OpenTok認証エラー) —

    認証に失敗しました。APIキーまたはシークレットが無効です。

  • (OpenTokエラー) —

    OpenTokサーバーエラー。

  • (ArgumentError) —

    broadcast_id または options パラメータが空です。

  • (ArgumentError) —

    「custom」タイプが、スタイルシートオプションを指定せずに指定されました。

  • (ArgumentError) —

    「custom」以外の型に対してスタイルシートが渡されました。あるいは、無効な型が渡されました。

  • (ArgumentError) —

    無効なレイアウトタイプが渡されました。

#remove_stream(broadcast_id, stream_id) ⇒ オブジェクト

streamMode が「manual」に設定されて開始された、現在配信中の放送からストリームを削除します。この機能の詳細については、<https://tokbox.com/developer/rest/#selecting-broadcast-streams>.

パラメータ:

  • broadcast_id (文字列) —

    放送ID。

  • stream_id (文字列) —

    放送から削除するストリームのID

引き上げ:

  • (ArgumentError) —

    broadcast_id パラメータの値が空です。

  • (ArgumentError) —

    stream_id パラメータが空です。

#ストップ(broadcast_id) ⇒ ブロードキャスト

OpenTokの放送を停止します

なお、放送は120分後に自動的に終了しますのでご注意ください。

パラメータ:

  • broadcast_id (文字列) —

    放送ID。

リターンズ

  • (ブロードキャスト) —

    ブロードキャストを定義するプロパティを含むブロードキャストオブジェクト。

引き上げ: