Канал
В службах мультимедиа Azure (AMS) сущность "канал" представляет конвейер для обработки содержимого потоковой трансляции. Канал получает входные потоки одним из двух способов.
Локальный динамический кодировщик отправляет многоскоростной
RTMP
илиSmooth Streaming
(фрагментированный MP4) в канал. Вы можете использовать следующие динамические кодировщики, выдающие содержимое в формате потоковой передачи Smooth Streaming с несколькими скоростями: MediaExcel, Imagine Communications, Ateme, Envivio, Cisco и Elemental. Следующие динамические кодировщики выдают содержимое в формате RTMP: Adobe Flash Live Encoder, Haivision, Telestream Wirecast, Teradek и Tricaster. Переданные потоки проходят через каналы без дополнительной обработки. При получении запроса службы мультимедиа предоставляют потоки клиентам.Односкоростной поток (в одном из следующих форматов:
RTP
(MPEG-TS),RTMP
илиSmooth Streaming
(фрагментированные MP4)) отправляется вChannel
, который поддерживает динамическое кодирование с помощью Служб мультимедиа. Затем этотChannel
выполняет динамическое кодирование входящего односкоростного потока в многоскоростной (адаптивный) видеопоток. При получении запроса службы мультимедиа предоставляют потоки клиентам.
Начиная с выпуска 2.10 служб мультимедиа, при создании канала можно указать, как он должен принимать входной поток и должен ли он выполнять его кодирование в реальном времени. Имеются две возможности.
None
— задайте это значение, если вы планируете использовать локальный динамический кодировщик, который будет выдавать многоскоростной поток. В этом случае входящий поток передается на выход без кодирования. Таким образом каналы работали до выпуска 2.10. Дополнительные сведения о работе с каналами этого типа см. в статье Работа с каналами, получающими многоскоростной динамический поток из локальных кодировщиков.Standard
— Если вы планируете использовать Службы мультимедиа для кодирования односкоростного динамического потока в многоскоростной, выберите это значение.Примечание
Помните о том, что за кодирование в реальном времени взимается плата, поэтому, если вы оставите канал кодирования в реальном времени в состоянии "Работает", вам будут выставлены соответствующие счета. Рекомендуется сразу же прекращать работу канала после завершения потоковой передачи в реальном времени во избежание оплаты дополнительных часов. Дополнительные сведения можно найти в разделе Работа с каналами, выполняющими кодирование в реальном времени с помощью служб мультимедиа Azure.
Дополнительные сведения о потоковой трансляции и управлении каналами см. в статье Доставка потоковой передачи в реальном времени с помощью Служб мультимедиа Azure.
Важно!
При доступе к сущностям в службах мультимедиа необходимо задать определенные поля и значения заголовков в HTTP-запросах.
Дополнительные сведения см. в статье Настройка rest API Служб мультимедиа Разработка и подключение к Службам мультимедиа с помощью REST API Служб мультимедиа.
В данном разделе приводится описание сущности Channel
и демонстрируется выполнение различных операций с API REST служб мультимедиа.
Сущность канала
Сущность Channel
включает в себя следующие свойства.
Свойство | Тип | Описание |
---|---|---|
Id Только для чтения. Задается Media Services. |
Edm.String | Идентификатор канала, назначенный во время создания. Формат будет следующим: nb:chid:UUID:<GUID>. |
Name |
Edm.String | Имя канала. 1. Должен быть уникальным в пределах вашей учетной записи Служб мультимедиа. 2. Максимальная длина = 32 символа. 3. Не может содержать пробелы. 4. Дефисы и буквенно-цифровые символы. 5. Не может начинаться или заканчиваться дефисом. |
Created Только для чтения. Задается Media Services. |
Edm.DateTime | Значение даты/времени UTC указывает время создания. |
Description |
Edm.String | Предоставленное пользователем описание. Максимальная длина составляет 256 символов. |
LastModified Только для чтения. Задается Media Services. |
Edm.DateTime | Дата и время последнего обновления канала. |
State Только для чтения. Задается Media Services. |
Edm.String | Текущее состояние канала. Возможные значения: — Stopped. Это начальное состояние канала после его создания. В этом состоянии можно изменять свойства канала, но потоковая передача запрещена. — Starting. Канал запускается. В этом состоянии обновление и потоковая передача запрещены. В случае появления ошибки канал возвращает состояние Остановлен. — Running. Канал может обрабатывать динамические потоки. — Stopping. Канал останавливается. В этом состоянии обновление и потоковая передача запрещены. — Deleting. Канал удаляется. В этом состоянии обновление и потоковая передача запрещены. |
Input |
ChannelInput ComplexType | Входные параметры (параметры приема) канала. |
Output |
ChannelOutput ComplexType | Выходные параметры канала |
Preview |
ChannelPreview ComplexType | Параметры предварительного просмотра канала. |
CrossSiteAccessPolicies |
CrossSiteAccessPolicies | Политики межсайтового доступа. |
Programs Только для чтения. Задается Media Services. |
Коллекция программ. | Ссылка на коллекцию программ, связанную с каналом. |
EncodingType |
Edm.String |
Optional . Описывает конфигурацию канала. Допустимые значения:- None — Это значение по умолчанию. При выборе этого значения входящий поток передается в выходные данные без какого-либо кодирования (это поведение канала до выхода версии 2.10).- Standard – Входящий односкоростной поток отправляется в канал и перекодируется в поток с несколькими скоростями с помощью предустановок системы. |
Encoding |
Кодировка ComplexType | Параметры динамического кодировщика Azure. |
Slate |
Планшет | Этот параметр поддерживается только в Encoding Type том случае, если для параметра канала задано значение Standard .Динамическому кодировщику канала можно дать сигнал переключиться на изображение листа. Ему также можно дать сигнал завершить показ этого изображения. Можно настроить динамический кодировщик, чтобы он переключался на заставку и маскировал входящий видеосигнал в определенных ситуациях — например, во время рекламной паузы. Если лист не настроен, видео во время рекламной паузы не скрывается. |
ChannelInput ComplexType
Имя | Тип | Описание |
---|---|---|
KeyFrameInterval |
Edm.Time | Это значение игнорируется, если параметр EncoderType имеет значение Standard .При использовании локального динамического кодировщика для создания потока с несколькими скоростями интервал ключевого кадра определяет длительность GOP (в том виде, в котором используется этот внешний кодировщик). После того, как канал получит входящий поток, вы можете предоставить динамический поток клиентским приложениям для воспроизведения в любом из следующих форматов: Smooth Streaming, DASH и HLS. При динамической потоковой передаче HLS всегда упаковывается динамически. По умолчанию службы мультимедиа автоматически вычисляют коэффициент упаковки сегментов HLS (число фрагментов на сегмент) с учетом интервала опорных кадров, которые также называются группой изображений (GOP), получаемой из динамического кодировщика. |
StreamingProtocol Только для чтения. |
Edm.String | После выбора типа кодировщика можно задать протокол приема.Encoder Type Если для задано значение None , допустимые параметры:— Фрагментированные MP4 с несколькими скоростами (Smooth Streaming) — RTMP с несколькими скоростами Encoder Type Если для задано значение None , это допустимо, но нежелательно для отправки потоковой трансляции с одной скоростью RTMP или Smooth Streaming. Канал не выполняет никакую обработку этого потока, поэтому он будет проходить, но клиентские приложения будут получать односкоростной поток.Encoder Type Если для задано значение Standard , допустимые параметры:1. Фрагментированные MP4 с одной скоростью (Smooth Streaming) 2. Односкоростной RTMP 3. RTP (MPEG-TS): транспортный поток MPEG-2 через RTP. |
AccessControl |
ChannelInputAccessControl ComplexType | Параметры управления доступом к входу канала |
Endpoints Только для чтения. |
ChannelEndpoint ComplexType | Входные конечные точки канала Канал предоставляет входные конечные точки (URL-адреса приема), которые затем используются для приема динамического потока. Канал получает динамические входные потоки и делает выходные потоки доступными для потоковой передачи через одну или несколько конечных точек потоковой передачи. |
ChannelPreview ComplexType
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
AccessControl |
ChannelPreviewAccessControl ComplexType | Параметры управления доступом к предварительному просмотру канала. |
Endpoints Только для чтения. |
ChannelEndpoint ComplexType | Конечные точки предварительного просмотра канала |
ChannelInputAccessControl ComplexType
Имя | Тип | Описание |
---|---|---|
IP |
IPAccessControl | IP-адреса, которым разрешено подключаться к входным конечным точкам канала. IP-адреса должны иметь один из следующих форматов: IpV4-адрес с 4 номерами, диапазон адресов CIDR. |
ChannelPreviewAccessControl ComplexType
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
IP |
IPAccessControl | IP-адреса, которым разрешено подключаться к входным конечным точкам канала. IP-адреса должны иметь один из следующих форматов: ipV4-адрес с 4 числами, диапазон адресов CIDR |
IPAccessControl
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
Allow | IPRange ComplexType | IP-адреса, которым разрешено подключаться к входным конечным точкам канала. Примечание: Установка этого значения null позволяет подключаться ко всем IP-адресам источника. Установите его на пустую строку (""), что не позволит никому осуществлять подключение. |
IPRange ComplexType
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
Name |
Edm.String | Понятное имя для данного диапазона IP-адресов. |
Address |
Edm.String | Базовый IP-адрес для представления подсети (например:192.168.0.1). |
SubnetPrefixLength |
Edm.Int32 | Количество значимых битов для маски подсети (например в IP-адресе 192.168.0.1/24 цифра 24 указывает на количество значимых битов). |
ChannelEndpoint ComplexType
Имя | Тип | Описание |
---|---|---|
Protocol |
Edm.String | Протокол конечной точки потоковой передачи канала. |
Url |
Edm.String | URL-адрес конечной точки потоковой передачи. |
ChannelOutput ComplexType
Дополнительные сведения об этом типе и его свойствах см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
Hls |
ChannelOutputHls ComplexType | Специальные параметры HLS. |
ChannelOutputHls ComplexType
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
FragmentsPerSegment |
Edm.Int16 | Количество фрагментов в сегменте потоковой передачи HTTP (HLS). |
Кодировка ComplexType
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
AdMarkerSource |
Edm.String | Вы можете указать источник для сигналов маркера рекламы. Значение по умолчанию — Api , которое указывает, что динамический кодировщик в канале должен прослушивать асинхронный Ad Marker API кодировщик . Другой допустимый параметр — (допускается Scte35 только в том случае, если для протокола потоковой передачи приема задано значение RTP (MPEG-TS). Если Scte35 задано значение , кодировщик будет анализировать SCTE-35 сигналы из входного потока RTP (MPEG-TS). |
IgnoreCea708ClosedCaptions |
Edm.bool |
Optional . Необязательный флаг, который указывает динамическому кодировщику игнорировать данные подписей CEA-708, внедренные во входящее видео. Если этот флаг имеет значение false (по умолчанию), кодировщик обнаруживает данные CEA-708 и вставляет их в выходные видеопотоки. |
VideoStream |
VideoStream (Потоковая передача видео) |
Optional . Описывает входной видеопоток. Если это поле не задано, используется значение по умолчанию. Этот параметр допустим, только если протоколом входного потока является RTP (MPEG-TS). |
AudioStreams |
Аудиопотоки |
Optional . Описывает входной аудиопоток. Если это поле не задано, используются значения по умолчанию. Этот параметр допустим, только если протоколом входного потока является RTP (MPEG-TS). |
SystemPreset |
Edm.String | Задает предопределенный кодировщик, который должен использоваться для этого канала. В настоящее время единственным разрешенным значением является Default720p (по умолчанию).Дополнительные сведения см. в разделе SystemPreset. |
SystemPreset
Default720p
указывает для кодирования видео в следующие 6 слоев.
Скорость | Ширина | Высота: | Макс. кадров/с | Профиль | Имя выходного потока |
---|---|---|---|---|---|
3500 | 1280 | 720 | 30 | Высокий | Video_1280x720_3500kbps |
2200 | 960 | 540 | 30 | Высокий | Video_960x540_2200kbps |
1350 | 704 | 396 | 30 | Высокий | Video_704x396_1350kbps |
850 | 512 | 288 | 30 | Высокий | Video_512x288_850kbps |
550 | 384 | 216 | 30 | Высокий | Video_384x216_550kbps |
200 | 340 | 192 | 30 | Высокий | Video_340x192_200kbps |
Звук кодируется в стереоформате AAC-LC со скоростью 64 Кбит/с и частотой выборки 44,1 кГц.
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
VideoStream (Потоковая передача видео)
Описывает входной видеопоток. Если это поле не задано, используется значение по умолчанию. Этот параметр допустим, только если протоколом входного потока является RTP (MPEG-TS).
Имя | Тип | Описание |
---|---|---|
Index |
Edm.Int1 | Отсчитываемый от нуля индекс, указывающий входной видеопоток, который должен обрабатываться динамическим кодировщиком в канале. Этот параметр применяется, только если протоколом входного потока является RTP (MPEG-TS). Значение по умолчанию — нуль. Рекомендуется отправлять на вход однопрограммный транспортный поток (SPTS). Если входной поток содержит несколько программ, динамический кодировщик анализирует таблицу структуры программ (PMT), выявляет входные данные с именем типа потока "MPEG-2 Video" или "H.264" и располагает их в порядке, указанном в таблице PMT. Затем с помощью отсчитываемого от нуля индекса выбирается n-ный элемент в этой последовательности. |
Name |
Edm.String |
Optional . Описательный тег для этого входного видеопотока. |
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Аудиопотоки
Описывает входной аудиопоток. Если это поле не задано, используются значения по умолчанию. Этот параметр допустим, только если протоколом входного потока является RTP (MPEG-TS).
Имя | Тип | Описание |
---|---|---|
Index |
Edm.Int16 | Рекомендуется отправлять на вход однопрограммный транспортный поток (SPTS). Если входной поток содержит несколько программ, динамический кодировщик анализирует таблицу структуры программ (PMT), выявляет входные данные с именем типа потока "MPEG-2 AAC ADTS", "AC-3 System-A", "AC-3 System-B", "MPEG-2 Private PES", "MPEG-1 Audio" или "MPEG-2 Audio" и располагает их в порядке, указанном в таблице PMT. Затем с помощью отсчитываемого от нуля индекса выбирается n-ный элемент в этой последовательности. |
Name |
Edm.String |
Optional . Описательный тег для этого входного аудиопотока. |
Language |
Edm.String |
Optional . Идентификатор языка аудиопотока согласно стандарту ISO 639-2, например ENG. Если не указан, используется значение по умолчанию — UND (не определено).Если входной контент канала имеет формат MPEG-2 TS по RTP, может быть указано до 8 наборов аудиопотоков. Однако две записи с одинаковым значением индекса недопустимы. |
Может быть задано до 8 наборов {индекс, имя, язык}, если входные данные для кодировщика имеют тип MPEG-2 TS через RTP. Однако две записи с одинаковым значением индекса недопустимы. Если входные данные для кодировщика имеют тип RTMP или HTTP (Smooth Streaming), то во входных данных может быть только один звуковой поток.
Планшет
Этот параметр поддерживается только в Encoding Type
том случае, если для параметра канала задано значение Standard
.
Динамическому кодировщику канала можно дать сигнал переключиться на изображение листа. Ему также можно дать сигнал завершить показ этого изображения.
Можно настроить динамический кодировщик, чтобы он переключался на заставку и маскировал входящий видеосигнал в определенных ситуациях — например, во время рекламной паузы. Если лист не настроен, видео во время рекламной паузы не скрывается.
Имя | Тип | Описание |
---|---|---|
InsertSlateOnAdMarker |
Edm.Bool | Если задано значение True, этот параметр предписывает динамическому кодировщику вставлять заставку во время рекламной паузы. Значение по умолчанию — true. |
DefaultSlateAssetId |
Edm.String |
Optional . Указывает идентификатор ресурса Служб мультимедиа, который содержит изображение сланца. Значением по умолчанию является NULL.Перед созданием канала необходимо отправить изображение заставки с максимальным разрешением 1920 x 1080, в формате JPEG и размером не более 3 МБ в качестве выделенного ресурса (в этом ресурсе не должно быть никаких других файлов). Имя файла должно иметь расширение JPG, и этот AssetFile должен быть помечен как основной файл для этого ресурса. Этот ресурс не может быть зашифрован в хранилище. Если идентификатор ресурса по умолчанию не указан, а параметр insert slate on ad marker имеет значение true, для маскирования входного потока будет использоваться изображение Служб мультимедиа Azure по умолчанию. |
Дополнительные сведения об этом типе и его свойствах см. в разделе Обзор каналов, для которых включена функция кодирования в реальном времени.
Создание каналов
Каналы можно создавать с использованием запроса POST HTTP и задания значений свойства.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels> | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
В следующем тексте запроса показано, как создать канал, который включен для кодирования в реальном времени.
{
"Id":null,
"Name":"testchannel001",
"Description":"",
"EncoderType":"Standard",
"Created":"0001-01-01T00:00:00",
"LastModified":"0001-01-01T00:00:00",
"State":null,
"Input":
{
"StreamingProtocol":"RTPMPEG2TS",
"AccessControl":
{
"IP":
{
"Allow":
[
{
"Name":"testName1",
"Address":"1.1.1.1",
"SubnetPrefixLength":24
}
]
}
},
"Endpoints":[]
},
"Encoding":
{
"SystemPreset":"Default720p",
"IgnoreCea708ClosedCaptions": false,
"AdMarkerSource": "Api",
"VideoStream":
{
"Index":1,
"Name":"Video stream"
},
"AudioStreams":
[
{
"Index":0,
"Name":"English audio stream",
"Language":"ENG"
},
{
"Index":1,
"Name":"Spanish audio stream",
"Language":"SPA"
}
]
},
"EncodingType": "Standard",
"Slate":
{
"InsertOnAdMarker":true,
"DefaultSlateAssetId": "nb:cid:UUID:01234567-0123-0123-0123-01234567"
},
"Preview":
{
"AccessControl":
{
"IP":
{
"Allow":
[
{
"Name":"testName1",
"Address":"1.1.1.1",
"SubnetPrefixLength":24
}
]
}
},
"Endpoints":[]
}
}
В следующем тексте запроса показано, как создать канал в учетной записи, для этого не включена функция кодирования в реальном времени.
{
"Id":null,
"Name":"testchannel001",
"Description":"",
"Created":"0001-01-01T00:00:00",
"LastModified":"0001-01-01T00:00:00",
"State":null,
"Input":
{
"KeyFrameInterval":null,
"StreamingProtocol":"FragmentedMP4",
"AccessControl":
{
"IP":
{
"Allow":[{"Name":"testName1","Address":"1.1.1.1","SubnetPrefixLength":24}]
}
},
"Endpoints":[]
},
"Preview":
{
"AccessControl":
{
"IP":
{
"Allow":[{"Name":"testName1","Address":"1.1.1.1","SubnetPrefixLength":24}]
}
},
"Endpoints":[]
},
"Output":
{
"Hls":
{
"FragmentsPerSegment":1
}
},
"CrossSiteAccessPolicies":
{
"ClientAccessPolicy":null,
"CrossDomainPolicy":null
}
}
При успешном выполнении возвращается код состояния 202 Принято вместе с представлением созданной сущности в тексте ответа.
Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Запуск каналов
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Start | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Start HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Остановка каналов
Канал может быть остановлен, только если находится в состоянии Работает и все программы канала остановлены.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Stop | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Stop HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Перечисление каналов
Каналы можно получить с помощью HTTP-запроса GET.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
GET | Получение всех каналов: <https:// accountname.restv2>.<location.media.azure.net/api/Channels> Получение определенного канала. <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') |
HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
GET https://testrest.cloudapp.net/api/Channels HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
В случае успешного выполнения эта операция возвращает код состояния 200 OK и список всех каналов, созданных в вашей учетной записи Служб мультимедиа.
Сброс каналов
Сбрасывает состояние канала среды выполнения, поддерживаемое во время потоковой передачи презентации в реальном времени и позволяет повторно использовать канал в случае сброса презентации или перенастройки кодировщика. Останавливает все программы перед вызовом сброса. Сброс может быть вызван на канале, который находится в рабочем состоянии.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Reset | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Reset HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Обновление каналов
Обновляет свойства существующего канала. Канал должен находиться в состоянии Остановлен.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
PATCH/PUT/MERGE Дополнительные сведения об этих операциях см. здесь. |
<https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
PATCH https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393') HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
Тело запроса:
"Encoding":{"IgnoreCea708ClosedCaptions": true}
Если обновление завершается синхронно, оно возвращает код состояния 204 Нет содержимого. В противном случае оно возвращает код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Начать объявление
Динамический кодировщик может быть сигнализировать о начале объявления или коммерческого прерывания с помощью HTTP-запроса POST и указания значений свойств объекта в сущности StartAdvertisement Entity в тексте запроса.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/StartAdvertisement | HTTP/1.1 |
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Сущность StartAdvertisement
Эта сущность представляет API начала рекламного объявления — это асинхронный вызов динамического кодировщика для вставки объявления или рекламной паузы в выходной поток.
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
duration |
Edm.Duration | Длительность рекламной паузы в секундах. Чтобы рекламная пауза могла начаться, это должно быть положительное значение, отличное от нуля. Если установить длительность рекламной паузы, идущей в данным момент, равной нулю, эта пауза будет отменена. |
cueId |
Edm.Int | Уникальный идентификатор рекламной паузы, который используется подчиненным приложением для выполнения соответствующих действий. Должен быть положительным целым числом. |
showSlate |
Edm.Bool |
Optional . Указывает динамическому кодировщику в канале, что во время рекламной паузы он должен переключаться на изображение заставки по умолчанию (и маскировать входящий видеопоток). Значение по умолчанию — false.Используемый образ будет указан с помощью свойства идентификатора ресурса по умолчанию во время создания канала. |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/StartAdvertisement HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
Текст
{
"duration":"PT45S",
"cueId":"67520935",
"showSlate":"true"
}
При успешном выполнении возвращается код состояния 202 Принято.
Завершить объявление
Динамическому кодировщику можно сигнализировать, что следует завершить текущее объявление или рекламную паузу, с помощью запроса POST HTTP.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/EndAdvertisement | HTTP/1.1 |
Этот вызов должен выполняться только при наличии выполняющегося рекламного объявления.
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/EndAdvertisement HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято.
Показать сланец
Указывает динамическому кодировщику в канале, что во время рекламной паузы он должен переключаться на изображение заставки по умолчанию (и маскировать входящий видеопоток). Значение по умолчанию — false. Используемый образ будет указан с помощью свойства идентификатора ресурса по умолчанию во время создания канала.
Используйте свойства ShowSlate Entity в тексте HTTP-запроса.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/ShowSlate | HTTP/1.1 |
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Сущность ShowSlate
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Имя | Тип | Описание |
---|---|---|
duration |
Edm.Duration | Длительность заставки в секундах. Чтобы показ листа мог начаться, это должно быть положительное значение, отличное от нуля. Если имеется текущая заставка и указывается нулевая длительность, то текущая заставка будет прервана. |
assetId |
Edm.String | Указывает идентификатор ресурса Служб мультимедиа, который содержит изображение сланца. Перед созданием канала необходимо отправить изображение заставки с разрешением 1920 x 1080, в формате JPEG и размером не более 3 МБ в качестве выделенного ресурса (в этом ресурсе не должно быть никаких других файлов). Кодировщику можно сообщить, что следует переключиться на любое произвольное изображение заставки (не только на то, которое было указано в свойстве DefaultSlateAssetId во время создания канала). |
Если свойство DefaultSlateAssetId
задано, а свойство AssetId
не задано, то для маскировки входного потока будет использоваться изображение DefaultSlateAssetId
. Дополнительные сведения см. в разделе Slate.
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/ShowSlate HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
Текст
{
"duration":"PT45S",
"assetId":"nb:cid:UUID:01234567-ABCD-ABCD-EFEF-01234567"
}
При успешном выполнении возвращается код состояния 202 Принято.
Скрыть лист
Динамическому кодировщику можно сигнализировать, что следует завершить текущую заставку, с помощью запроса POST HTTP.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/HideSlate | HTTP/1.1 |
Этот вызов должен выполняться только при наличии выполняющейся заставки.
Дополнительные сведения см. в статье Общие сведения о каналах, для которых включена функция кодирования в реальном времени.
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/HideSlate HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
Удаление каналов
Удаление канала.
Метод | Универсальный код ресурса (URI) запроса | Версия HTTP |
---|---|---|
DELETE | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') | HTTP/1.1 |
Пример запроса
Вы можете опробовать следующий пример на вкладке Fiddler's Composer.
Сведения о том, как получить последнюю версию x-ms-version:
, см. в разделе REST Служб мультимедиа.
Заголовки запроса:
DELETE https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393') HTTP/1.1
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Accept: application/json;odata=minimalmetadata
Accept-Charset: UTF-8
x-ms-version: 2.19
Content-Type: application/json;odata=minimalmetadata
Host: <host URI>
User-Agent: Microsoft ADO.NET Data Services
Authorization: Bearer <token value>
При успешном выполнении возвращается код состояния 202 Принято. Код состояния 202 Принято указывает на асинхронную операцию. В этом случае также предоставляется значение заголовка идентификатора операции для опроса и отслеживания состояния долговременных операций, например, для запуска или остановки канала. Для получения состояния передайте значение заголовка идентификатора операции в сущность операции. Дополнительные сведения см. в разделе Опрос операций Long-Running вручную.
См. также:
Доставка динамической потоковой передачи с помощью служб мультимедиа Azure
Program