印刷する

各種操作

プルストリーム

EMSは、ストリームプロトコルの再カプセル化を行う非常に堅牢なプラットフォームを提供します。つまりEMSによって、ひとつのストリーミングプロトコルから他のストリーミングプロトコルへの変換が可能となり、元のvideo/audioソースの設定方法に関係なく、多様なクライエント向けにアクセスを可能とします。
プロトコルの再カプセル化を実現する為の最初のステップは、元のストリームをEMSに取り込む事です。
最も一般的な方法はプルストリーム(Pull a Stream)による方法ですが、外部のシステムからEMSのストリームをプッシュする事も可能です。
pullStream APIは、EMSが既存のストリームを取得するように指示します。

プルの設定

さまざまな形式でストリームを取得(プルストリーム)する方法を以下に示します。

RTMPストリーム
pullStream uri=rtmp://<STREAM_ADDRESS> localStreamName=RTMPTest
RTSPストリーム
pullStream uri=rtsp://<STREAM_ADDRESS> localStreamName=RTSPTest
RTP-UDPストリーム
pullStream uri=rtp://<STREAM_ADDRESS> localStreamName=RTPTest isAudio=0 spsBytes=Z0LAHpZiA2P8vCAAAAMAIAAABgHixck= ppsBytes=aMuMsg==
MPEG-TSストリーム

UDP MPEG-TSストリーム

pullStream uri=dmpegtsudp://<STREAM_ADDRESS>:<PORT> localStreamName=TSTest

これはマルチキャストストリームにも使用できます。ストリームのアドレスがIPマルチキャスト範囲内にある場合、EMSは自動的にマルチキャストグループに参加してストリームをプルできるようにします。

TCP MPEG-TS

pullStream uri=dmpegtstcp://<STREAM_ADDRESS>:<PORT> localStreamName=TSTest
LOCAL SDPファイル

EMSはSession Description Protocol(SDP)ファイルをプルすることも可能です。
SDPはストリーミングメディアセッションの初期化パラメータの記述フォーマットです。SDPはメディアそのものの配信は行わず、メディアタイプ、フォーマット、及び全ての関連プロパティのエンドポイント間のネゴシエーションに使用されます。

pullStream uri=file://<FILEPATH>/FILENAME.sdp localStreamName=sdpFileTest

注:SDPはEMSからアクセス可能なファイルシステムに存在している必要があります。

JSON CLI レスポンス

API呼び出し

pullstream uri=rtmp://s2pchzxmtymn2k.cloudfront.net/cfx/st/mp4:sintel.mp4 localStreamname=testpullstream

JSONレスポンス

Command entered successfully!
Stream rtmp://s2pchzxmtymn2k.cloudfront.net/cfx/st/mp4:sintel.mp4 enqueued for pulling

    configId: 1
    forceTcp: false
    keepAlive: true
    localStreamName: testpullstream
    uri:
      fullUri: rtmp://s2pchzxmtymn2k.cloudfront.net/cfx/st/mp4:sintel.mp4
      port: 1935
      scheme: rtmp

プルストリームの再生

EMSにストリームが追加されたら、さまざま方法でアクセスする事が出来ます。EMSのストリーミングプロトコル変換機能により、ターゲットプレーヤーが使えるフォーマットでリクエストをするだけであとはEMSが適切に処理をおこないます。
EMSでプルストリームを再生する際の基本的なコマンドは以下の通りです。

RTMP
RTMP URIフォーマット

rtmp[t|s]://[username[:password]@]ip[:port]/<appName>/<stream_name>

RTMPストリームを再生するには、下記のURIをFlash対応プレーヤーで使用します。

rtmp://<EMS_IP_ADDRESS>/live/localStreamName

RTSP
RTSP URIフォーマット

rtsp://[username[:password]@]ip[:port]/[ts|vod|vodts]/<stream_name or MP4 file name>

このコマンドは"appName"フィールドが無い事を除けばRTMPととてもよく似ています。

RTSPストリームを再生するには、下記のURIをRTSP対応プレーヤーで使用します。

rtsp://<EMS_IP_ADDRESS>:5544/localStreamName

EMSはデフォルトでvideo/audioペイロードデータをRTP経由で送信します。MPEG-TSが必要な場合は、下記のリクエストURIを指定します。

rtsp://<EMS_IP_ADDRESS>:5544/ts/localStreamName

関連リンク

pullStream API
インバウンドストリームの追加
ストリーム自動ルーティング