このトピックでは、RTMP取り込みURLとその署名方法について説明します。
重要 バケットACLがpublic-read-writeでない場合にのみ、RTMP取り込みURLに署名を追加する必要があります。 RTMP取り込み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はRTMPの取り込みに "live" を使用します。channel
: LiveChannelの名前。 例:test-channel
LiveChannelsの命名規則の詳細については、「PutLiveChannel」をご参照ください。params
: 取り込みパラメーター。 パラメーターの形式は、HTTPリクエストのクエリ文字列の形式と同じである必要があります。 例:varA=valueA&varB=valueB
RTMP取り込みURLパラメータ
次の表に、RTMP取り込みURLのパラメーターを示します。
パラメーター | 説明 |
playlistName | 生成されたM3U8ファイルの名前。 説明 生成されたM3U8ファイルには、 ${channel_name}/ プレフィックスが含まれます。 |
RTMP取り込みURLの署名方法
署名されたRTMP取り込みURLの形式は、rtmp://${bucket}.${host}/live/${channel}?OSSAccessKeyId=xxx&Expires=yyy&Signature=zzz &${ params}
です。
次の表に、署名付きRTMP取り込みURLのパラメーターを示します。
パラメーター | 説明 |
OSSAccessKeyId | 署名付きHTTPリクエストのAccessKeyIdと同じ役割を果たします。 |
有効期限 | 時刻は UNIX のタイムスタンプです。 単位は秒です。 |
Signature | 署名文字列。 |
params | その他のパラメータ。 すべてのパラメーターを署名に含める必要があります。 |
署名は、次の方法を使用して計算されます。
base64(hmac-sha1(AccessKeySecret、
+ 期限切れ + "\n"
+ CanonicalizedParams
+ CanonicalizedResource)
次の表に、署名の計算に含まれるパラメーターを示します。
パラメーター | 説明 |
CanonicalizedParams | パラメーターキーをアルファベット順に並べて作成された正規化クエリ文字列。 パラメーターはkey:value\n 形式である必要があります。 説明
|
CanonicalizedResource | このパラメーターの値は、/BucketName/ChannelName 形式です。 例: examplebucket/test-channel |