Download OpenAPI specification:Download
RICOH Live Streaming REST API は Live Streaming サービスの公開 REST API です。
本ページでは録画 API の仕様について記載します。
クラウド録画機能 は、現在 β 版として提供しております。
そのため、商用サービスでの利用をご検討される際には、必ず事前にお問い合わせください。
β 版のクラウド録画機能の利用料金は無料です。正式版は有償での提供を検討しておりますので、あらかじめご了承ください。
正式版を公開せずに β 版の公開を終了する、もしくは、正式版では β 版から機能や仕様が変更される可能性がありますので、あらかじめご了承ください。
クラウド録画機能に関連して現在発生している問題はRICOH Live Streaming クラウド既知の問題を確認してください。
クラウド録画機能は、配信した映像を Live Streaming サービスのクラウド上で記録し、お客様のご用意したクラウドストレージに保存できる機能です。
大きく2つの種類があり、接続時に RoomSpec や ConnectionSpec で挙動の変更が可能です。
クラウド録画機能の詳細については、別途クラウド録画 開発ガイドも参照してください。
録画ストレージ設定 API を利用して録画ストレージを設定すると、保存ファイル仕様に示す保存パスに録画ファイルおよびメタデータファイルが保存されます。
録画ファイルには以下の種類があり、どの録画ファイルを保存するかを AccessToken で設定できます。
録画を実行した場合、各拠点について、単一拠点録画メタデータファイルは常に保存されます。 また、合成録画を有効にした場合、合成録画メタデータファイルが保存されます。
/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstance の存在開始時刻}-{ConnectionInstance の存在終了時刻}.mp4
/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstance の存在開始時刻}-{ConnectionInstance の存在終了時刻}_raw.webm
/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstance の存在開始時刻}-{ConnectionInstance の存在終了時刻}.json
/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/compositions/{RoomInstance の録画開始時刻}-{RoomInstance の録画終了時刻}.mp4
/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/compositions/{RoomInstance の録画開始時刻}-{RoomInstance の録画終了時刻}.json
CompositionRecordingMetadata
のスキーマを持つ JSON 形式のファイルです/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstanceの存在開始時刻}-{ConnectionInstanceの存在終了時刻}-connection-history.jsonl
\n
を区切り文字とし、複数のJSON形式を一つのファイルにまとめた形式です/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstanceの存在開始時刻}-{ConnectionInstanceの存在終了時刻}-video-track-history.jsonl
\n
を区切り文字とし、複数のJSON形式を一つのファイルにまとめた形式です/{room_id}/{RoomInstanceの開始時刻}/{Sequence}/{connection_id}-{ConnectionInstanceの存在開始時刻}-{ConnectionInstanceの存在終了時刻}-audio-track-history.jsonl
\n
を区切り文字とし、複数のJSON形式を一つのファイルにまとめた形式です記録される時刻について
yyyyMMddhhmmss
の形式になりますrecording_on_start
設定yyyyMMddhhmmss
の形式になりますSequence
は、1 つの RoomInstance の生存期間中に行った録画の通し番号です
配信中にカメラを縦向きから横向きに回転させた場合など、映像の解像度が途中で切り替わるケースがあります。 このときの録画データは次の仕様となります。
1フレーム目の解像度の高さか幅が奇数の場合、録画ファイルでは偶数に調整されます。
たとえば、解像度が 321x243 の場合、出力解像度は 322x244 となります。
また、「途中で解像度が変わる映像について」に記載の通りに解像度を算出後、解像度の高さか幅が奇数であった場合は調整が実施されます。
たとえば、解像度が 720x1283 だった場合、算出後の解像度は 2281x1283 となりますが、出力解像度は 2282x1284 となります。
映像のアスペクト比を維持するために必要な場合、黒色の余白が追加されます。
secret_access_key
フィールドは取り除かれますclient_id required | string
|
AWS S3 の録画ストレージ設定を更新するための AwsS3RecordingStorageConfig オブジェクト
s3_url required | string <= 255 characters
|
access_key_id required | string
|
secret_access_key required | string
|
{- "s3_url": "string",
- "access_key_id": "string",
- "secret_access_key": "string"
}
{- "s3_url": "string",
- "access_key_id": "string",
- "secret_access_key": "string"
}
s3_url required | string <= 255 characters
|
access_key_id required | string
|
secret_access_key required | string
|
{- "s3_url": "string",
- "access_key_id": "string",
- "secret_access_key": "string"
}
room_id required | string <IDString> Room の ID |
room_instance_id required | string <UUIDv4> ある Room の生死単位で割り振られる ID |
recording_id required | string Recording の ID |
connection_id required | string <IDString> Connection の ID |
connection_instance_id required | string <UUIDv4> ある Connection の生死単位で割り振られる ID |
exists_since required | string <date-time> ConnectionInstance の存在開始時刻。ConnectionInstance が RoomInstance に入室した時刻と RoomInstance の録画開始時刻の内遅い時刻 (ISO8601) |
exists_until required | string <date-time> ConnectionInstance の存在終了時刻。ConnectionInstance が RoomInstance から退出した時刻と RoomInstance の録画終了時刻の内早い時刻 (ISO8601) |
started_at required | string <date-time> ConnectionInstance の録画開始時刻。ただし、録画開始時に ConnectionInstance の映像音声の双方が hardmute であった場合、最初にどちらかが unmute になった時刻 (ISO8601) |
ended_at required | string <date-time> ConnectionInstance の録画終了時刻。ただし、録画終了時に ConnectionInstance の映像音声の双方が hardmute であった場合、最後に双方が hardmute になった時刻 (ISO8601) |
format | string Value: "mp4" メディアファイルのフォーマット
|
object (ConnectionRecordingVideoMetadata) 録画の映像データに関するメタデータ
| |
object (RecordingAudioMetadata) 録画の音声データに関するメタデータ
| |
object (RawConnectionRecordingMetadata) 生の録画に関するメタデータ
|
{- "room_id": "string",
- "room_instance_id": "string",
- "recording_id": "string",
- "connection_id": "string",
- "connection_instance_id": "string",
- "exists_since": "2019-08-24T14:15:22Z",
- "exists_until": "2019-08-24T14:15:22Z",
- "started_at": "2019-08-24T14:15:22Z",
- "ended_at": "2019-08-24T14:15:22Z",
- "format": "mp4",
- "video": {
- "codec": "h264",
- "width": 0,
- "height": 0
}, - "audio": {
- "codec": "aac"
}, - "raw_recording": {
- "format": "webm",
- "video": {
- "codec": "h264",
- "width": 0,
- "height": 0
}, - "audio": {
- "codec": "opus"
}
}
}
room_id required | string <IDString> Room の ID |
recording_id required | string Recording の ID |
required | Array of objects (ConnectionMetadata) 合成録画に含まれる ConnectionMetadata の配列 |
started_at required | string <date-time> RoomInstance の録画開始時刻。ただし、録画開始時に全 ConnectionInstance の映像音声の双方が hardmute であった場合、最初にある ConnectionInstance のどちらかが unmute になった時刻 (ISO8601) |
ended_at required | string <date-time> RoomInstance の録画終了時刻。ただし、録画終了時に全 ConnectionInstance の映像音声の双方が hardmute であった場合、最後にある ConnectionInstance の双方が hardmute になった時刻 (ISO8601) |
format required | string Value: "mp4" メディアファイルのフォーマット |
object (CompositionRecordingVideoMetadata) 録画の映像データに関するメタデータ | |
object (RecordingAudioMetadata) 録画の音声データに関するメタデータ
|
{- "room_id": "string",
- "recording_id": "string",
- "connections": [
- {
- "connection_id": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "ended_at": "2019-08-24T14:15:22Z"
}
], - "started_at": "2019-08-24T14:15:22Z",
- "ended_at": "2019-08-24T14:15:22Z",
- "format": "mp4",
- "video": {
- "codec": "vp9",
- "max_bitrate_kbps": 100,
- "width": 0,
- "height": 0
}, - "audio": {
- "codec": "aac"
}
}
timestamp required | string イベントの発生時刻 (ISO8601) |
meta required | object (Meta) Connect および Track の各種アプリで定義したメタデータ。 |
{- "timestamp": "string",
- "meta": { }
}
timestamp required | string イベントの発生時刻 (ISO8601) |
meta | object (Meta) Connect および Track の各種アプリで定義したメタデータ。 |
object (TrackSdkMeta) RICOH Live Streaming Client SDK から Track に送信されるメタデータ。 |
{- "timestamp": "string",
- "meta": { },
- "sdk_meta": {
- "muteState": "unmute"
}
}