...
Code Block | ||||
---|---|---|---|---|
| ||||
profiles: -webrtc-144: audio: type : AudioStreamProfile codec : opus rate : 48000 channels : 2 #this part forces transcoding video: type : VideoStreamProfile width : 256 height : 144 codecImpl : OPENH264 |
При запросе на воспроизведение потока, транскодированного по указанному профилю, имя профиля должно быть добавлено к имени потока, например
Code Block | ||
---|---|---|
| ||
test-webrtc-144 |
Рекомендуется для удобства задавать имена профилей, начинающиеся с дефиса.
Параметры профиля
Параметр |
---|
Допустимые значения | Описание | |
---|---|---|
Параметры аудио | ||
type | AudioStreamProfile | Тип профиля (аудио или видео) |
codec | opus mpeg4-generic | Используемый кодек аудио: Opus или AAC |
rate | 8000 11025 12000 16000 22050 24000 32000 44100 48000 | Частота дискретизации звука |
channels | 1 2 | Количество каналов: моно или стерео |
Параметры видео | ||
type | VideoStreamProfile | Тип профиля (аудио или видео) |
width | Зависит от требуемого качества и пропускной способности каналов | Ширина картинки |
height | Зависит от требуемого качества и пропускной способности каналов | Высота картинки |
codeImpl | FF OPENH264 | Используемый кодек видео: на основе FFmpeg или OpenH.264 |
Выбор маршрута для воспроизведения потока
Маршрут для воспроизведения потока на Edge сервере выбирается следующим образом:
1. Если на Edge сервере настроен профиль транскодирования:
1.1. Если поток, опубликованный на Origin, соответствует профилю, Edge забирает поток с Origin
1.2. Если поток, опубликованный на Origin, не соответствует профилю, выбирается Transcoder:
1.2.1. Если на Transcoder в одной группе с Edge есть поток с таким именем, транскодируемый по указанному профилю профилю, Edge забирает поток с Transcoder
1.2.2. Если на Transcoder в одной группе с Edge есть поток с таким именем:
1.2.2.1. Поток транскодируется по указанному профилю
1.2.2.2. Edge забирает поток с Transcoder
1.2.3. Если в одной группе с Edge есть Transcoder:
1.2.3.1. Transcoder забирает поток с Origin
1.2.3.2. Поток транскодируется по указанному профилю
1.2.3.3. Edge забирает поток с Transcoder
1.2.4. Если в одной группе с Edge нет узлов Transcoder, Edge забирает поток с Origin
2. Если на Edge сервере не настроен профиль транскодирования, Edge забирает поток с Origin
Пример распределения потоков в CDN с использованием Transcoder узлов
Здесь
- stream1, stream2, stream3 - потоки. опубликованные на Origin
- stream1-P1 - поток stream1, транскодированный по профилю P1
- stream2-P1 - поток stream1, транскодированный по профилю P2
Получение информации о маршрутах с помощью REST API
Для получения информации о маршрутах используется REST API запрос /cdn/show_stream_routes
REST-запрос должен быть HTTP/HTTPS POST запросом в таком виде:
- HTTP: http://test.flashphoner.com:8081/rest-api/cdn/show_stream_routes
- HTTPS: https://test.flashphoner.com:8444/rest-api/cdn/show_stream_routes
Здесь:
- test.flashphoner.com - адрес WCS-сервера
- 8081 - стандартный REST / HTTP порт WCS-сервера
- 8444 - стандартный HTTPS порт
- rest-api - обязательная часть URL
- /cdn/show_stream_routes - используемый REST-метод
REST-методы и статусы ответа
REST-метод | Пример тела REST-запроса | Пример тела REST-ответа | Статусы ответа | Описание | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
/cdn/show_stream_routes |
|
| 200 – OK 500 – Internal Server Error | Показать активные маршруты CDN |
Параметры
Описание | Пример |
---|---|
Имя потока (c указанием профиля, при необходимости) | test-webrtc-144 |
Параметры потока на Transcoder | |
Параметры потока, который Transcoder забрал с Edge | 1-STREAM-192.168.1.220 |
Параметры профиля аудио | AudioStreamProfile{bitrate=0, codec='opus', rate=48000, channels=2} |
Параметры профиля видео (в соответствии с работающими в данный момент профилями транскодирования) | VideoStreamProfile{width=320, height=180, gop=null, fps=null, bitrate=0, codec='H264', codecImpl='FF', quality=null} |
Параметры потока, который Trancoder может забрать с Edge | 2-NEW-TRANSCODER-192.168.1.220 |
Параметры потока на Origin | |
Параметры потока, который опубликован на Origin | 3-PROXY-192.168.1.219 |
Параметры аудио | AudioStreamProfile{bitrate=0, codec='opus', rate=48000, channels=2} |
Параметры видео | VideoStreamProfile{width=0, height=0, gop=null, fps=null, bitrate=0, codec='H264', codecImpl='', quality=null} |