このトピックでは、RTMP インジェスト URL とその署名方法について説明します。
バケットのアクセス制御リスト (ACL) が公開読み書きでない場合にのみ、インジェスト URL に署名する必要があります。署名方法は OSS URL の署名方法と同様です。
RTMP インジェスト URL
RTMP インジェスト URL は、rtmp://${bucket}.${host}/live/${channel}?${params} の形式です。例: rtmp://examplebucket.oss-cn-hangzhou.aliyuncs.com/live/test-channel。
-
bucket:バケット名。例:examplebucket。「バケット」をご参照ください。 -
host:リージョンのエンドポイント。例:oss-cn-hangzhou.aliyuncs.com。「リージョンとエンドポイント」をご参照ください。 -
live:RTMP プロトコルのアプリケーション名。OSS では、この値は
liveに固定されています。 -
channel:チャネル名。例:test-channel。「PutLiveChannel」をご参照ください。 -
params:ストリームインジェストのパラメーター。形式は、HTTP リクエストのクエリ文字列と同じです。例:varA=valueA&varB=valueB。
RTMP インジェスト URL のパラメーター
次の表に、RTMP インジェスト URL のパラメーターを示します。
|
名前 |
説明 |
|
playlistName |
生成される M3U8 ファイルの名前を指定します。 説明
生成される M3U8 ファイルの名前には、 |
RTMP インジェスト URL の署名方法
署名付きのインジェスト URL は、rtmp://${bucket}.${host}/live/${channel}?OSSAccessKeyId=xxx&Expires=yyy&Signature=zzz&${params} の形式です。
次の表に、署名付き RTMP インジェスト URL のパラメーターを示します。
|
パラメーター名 |
説明 |
|
OSSAccessKeyId |
OSS HTTP リクエストの署名に使用する AccessKeyId と同じです。 |
|
Expires |
秒単位の UNIX タイムスタンプです。 |
|
Signature |
署名文字列です。 |
|
params |
その他のパラメーター。すべてのパラメーターに署名する必要があります。 |
署名は、次の方法で計算されます:
base64(hmac-sha1(AccessKeySecret,
+ Expires + "\n"
+ CanonicalizedParams
+ CanonicalizedResource))
次の表に、署名計算に関係するパラメーターを示します。
|
名前 |
説明 |
|
CanonicalizedParams |
すべてのパラメーターを、パラメーターキーの辞書順で連結した文字列です。形式は 説明
|
|
CanonicalizedResource |
形式は |