화질 세트 생성
- 인쇄
- PDF
화질 세트 생성
- 인쇄
- PDF
기사 요약
이 요약이 도움이 되었나요?
의견을 보내 주셔서 감사합니다.
Live Station 에서 사용할 화질 세트를 생성하는 API 입니다. 생성한 화질 세트 조회를 위해 화질 세트 목록 조회 API와 화질 세트 정보 조회 API를 제공합니다.
주의
- Low latency 화질 세트는 베타 서비스로 제공되고 있습니다.
- 베타 기간 동안 Low latency 화질은 네이버 클라우드 Video Player Enhancement만을 이용해 안정적인 재생 가능합니다.
요청
POST https://livestation.apigw.ntruss.com/api/fin-v2/qualitySets
요청 헤더
헤더명 | 필수 여부 | 설명 |
---|---|---|
x-ncp-apigw-timestamp | YES | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타내며 API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | YES | 네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값x-ncp-iam-access-key:{Sub Account Access Key} |
x-ncp-apigw-signature-v2 | YES | Access Key ID 값과 Secret Key로 암호화한 서명x-ncp-apigw-signature-v2:{API Gateway Signature} |
Content-Type | YES | Request body content type을 application/json으로 지정Content-Type: application/json |
x-ncp-region_code | YES | 리전 코드 (FKR) |
요청 바디
필드명 | 필수 여부 | 타입 | 제약 사항 | 설명 |
---|---|---|---|---|
name | Yes | String | 화질명은 숫자,영문으로 최소 3글자 이상 최대 20자까지 입력 가능 특수 문자“-” 허용 | |
qualityIds | Yes | Integer[] | 화질 구성 갯수는 1~ 4 | |
segmentCount | Yes | Integer | 1 ~ 10 | LL-HLS, DASH 일 경우 무시됨 (if protolType is ll-hls or dash, the option should be ignored.) |
isEnabledUll | Yes | Boolean | Low Latency 용 화질 세트 생성할 경우 true | |
segmentDuration | Yes | Integer | 1000 ~ 10000 | HLS 프로토콜의 segment duration 길이 설정 (in milliseconds.) LL-HLS, DASH 일 경우 무시됨 |
enableHlsTimedMetadata | Yes | Boolean | ||
timedMetadata | No | Object | ||
timedMetadata.header | No | String | ||
timedMetadata.interval | No | Integer | ||
timedMetadata.key | No | String |
응답
필드명 | 타입 | 설명 | 비고 |
---|---|---|---|
enableHlsTimedMetadata | Boolean | ||
timedMetadata | Object | ||
timedMetadata.interval | Integer | ||
timedMetadata.key | String | ||
timedMetadata.header | String | ||
id | Integer | ||
status | String | ||
genType | String | ||
name | String | ||
createdTime | Integer | ||
segmentDuration | Integer | ||
segmentCount | Integer | ||
isEnabledUll | Boolean | Low Latency 화질 세트 여부 | |
targetLatency | Integer | Low Latency 화질 세트의 target latency | |
qualityIds[] | Integer[] | ||
qualities[] | Object[] | ||
qualities[].id | Integer | ||
qualities[].name | String | 화질 프로파일 이름 | |
qualities[].type | String | AUDIO, NORMAL | |
qualities[].genType | String | CUSTOM,SYSTEM | |
qualities[].status | String | ||
qualities[].video | Object | if type = AUDIO, video Object doesn not need. | |
qualities[].video.fps | Integer | 1 ~ 60 fps | |
qualities[].video.birate | Integer | 1 ~ 204800000 bps | |
qualities[].video.bframes | Integer | 0 ~ 4 사이 정수 | |
qualities[].video.level | Integer | -1 | |
qualities[].video.width | Integer | 16 ~ 4096 | |
qualities[].video.height | Integer | 16 ~ 4096 | |
qualities[].video.bypass | Boolean | ||
qualities[].video.orientation | String | FIX, FREE | FIX |
qualities[].video.keepRatio | Boolean | ||
qualities[].video.codec | String | H264 | |
qualities[].video.profile | String | BASELINE, MAIN, HIGH | |
qualities[].video.rateControl | Integer | VBR,CBR | VBR |
qualities[].video.videoH264ParamRefFrames | Integer | 1 | 1 |
qualities[].audio | Object | ||
qualities[].audio.codec | String | AAC, MP3 | AAC |
qualities[].audio.profile | String | LC | LC |
qualities[].audio.samplerate | Integer | AAC : [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 64000, 88200, 96000] MP3 : [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000] | 44100 |
qualities[].audio.channels | Integer | AAC : 0 ~ 8 MP3 : 0 ~ 2 | 0 |
qualities[].audio.bitrate | Integer | 16 ~ 320 kbps | |
qualities[].audio.bypass | Boolean | false |
예시
요청 예시
HLS 용 화질 세트 생성
POST /api/fin-v2/qualitySets
HOST: livestation.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp:1521787414578
x-ncp-iam-access-key:6uxz1nKkcYwUjWRG5Q1V7NsW0i5jErlu2NjBXXgy
x-ncp-apigw-signature-v2:iJFK773KH0WwQ79PasqJ+ZGixtpDQ/abS57WGQdld2M=
x-ncp-region_code:FKR
{
"enableHlsTimedMetadata":true,
"name":"myqualityset",
"qualityIds":[
4,
5
],
"segmentCount":3,
"segmentDuration":3000,
"timedMetadata":{
"header":"ncloud.livestation.metadata",
"interval":1000,
"key":"utc"
}
}
Low Latency 용 화질 세트 생성
POST /api/fin-v2/qualitySets
HOST: livestation.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp:1521787414578
x-ncp-iam-access-key:6uxz1nKkcYwUjWRG5Q1V7NsW0i5jErlu2NjBXXgy
x-ncp-apigw-signature-v2:iJFK773KH0WwQ79PasqJ+ZGixtpDQ/abS57WGQdld2M=
x-ncp-region_code:KR
{
"enableHlsTimedMetadata": true,
"isEnabledUll": true,
"name": "myqualityset",
"qualityIds": [
1,2
],
"timedMetadata": {
"header": "ncloud.livestation.metadata",
"interval": 1000,
"key": "utc"
}
}
응답 예시
HLS 용 화질 세트 생성 응답
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 12 Sep 2018 09:53:32 GMT
Content-Type: application/json;charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4
{
"content": {
"createdTime": 1585656720798,
"enableHlsTimedMetadata": true,
"genType": "CUSTOM",
"id": 23,
"name": "testquality-api",
"qualities": [
{
"audio": {
"bypass": false,
"bitrate": 128,
"channels": 0,
"codec": "AAC",
"profile": "LC",
"samplerate": 48000
},
"genType": "SYSTEM",
"id": 4,
"name": "720p-16-9",
"status": "CREATED",
"type": "NORMAL",
"video": {
"bypass": false,
"bframes": 0,
"bitrate": 2500000,
"codec": "H264",
"fps": 30.0,
"height": 720,
"level": -1,
"profile": "MAIN",
"rateControl": "VBR",
"videoH264ParamRefFrames": 1,
"width": 1280
}
},
{
"audio": {
"bypass": false,
"bitrate": 128,
"channels": 0,
"codec": "AAC",
"profile": "LC",
"samplerate": 48000
},
"genType": "SYSTEM",
"id": 5,
"name": "720p-9-16",
"status": "CREATED",
"type": "NORMAL",
"video": {
"bypass": false,
"bframes": 0,
"bitrate": 2500000,
"codec": "H264",
"fps": 30.0,
"height": 1280,
"level": -1,
"profile": "MAIN",
"rateControl": "VBR",
"videoH264ParamRefFrames": 1,
"width": 720
}
}
],
"qualityIds": [
4,
5
],
"segmentCount": 3,
"segmentDuration": 3000,
"status": "CREATED",
"timedMetadata": {
"header": "ncloud.livestation.metadata",
"interval": 1000,
"key": "utc"
}
},
"result": "success"
}
Low Latency 화질 세트 생성 응답
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 12 Sep 2018 09:53:32 GMT
Content-Type: application/json;charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4
{
"content": {
"disabled": false,
"id": 246,
"status": "CREATED",
"createdTime": 1666009295544,
"genType": "CUSTOM",
"name": "testquality-llhls",
"qualityIds": [
1,
2
],
"qualities": [
{
"disabled": false,
"id": 1,
"status": "CREATED",
"createdTime": 1546300800000,
"genType": "SYSTEM",
"name": "bypass",
"type": "BYPASS",
"video": {},
"audio": {
"bypass": true
}
},
{
"disabled": false,
"id": 2,
"status": "CREATED",
"createdTime": 1546300800000,
"genType": "SYSTEM",
"name": "1080p-16-9",
"type": "NORMAL",
"video": {
"fps": 30,
"bitrate": 5000000,
"bframes": 0,
"level": -1,
"width": 1920,
"height": 1080,
"bypass": false,
"codec": "H264",
"profile": "HIGH",
"rateControl": "VBR",
"videoH264ParamRefFrames": 1
},
"audio": {
"codec": "AAC",
"profile": "LC",
"samplerate": 48000,
"channels": 0,
"bitrate": 192,
"bypass": false
}
}
],
"enableHlsTimedMetadata": true,
"isEnabledUll": true,
"targetLatency": 3,
"timedMetadata": {
"key": "utc",
"header": "ncloud.livestation.metadata",
"interval": 1000
}
}
}
이 문서가 도움이 되었습니까?