Можно ли отправить временный планшет (изображение или видео) в запущенный RTMP-поток Azure Live Event?
В настоящее время я создаю приложение для потоковой передачи видео, которое использует интерактивные события служб мультимедиа Azure.
Это состоит из:
- мобильное приложение, которое может транслировать видео в реальном времени и.
- веб-клиент, который воспроизводит видео в реальном времени.
- экран производителя с элементами управления для запуска и остановки доступа веб-клиента к видео.
- сервер, который обрабатывает различные операции по всей системе
Он работает очень хорошо, но я хотел бы добавить функцию, которая позволила бы продюсеру добавить немного элегантности этому опыту. Поэтому я пытаюсь понять, как я могу позволить продюсеру переключать входящий источник потока на предварительно записанное видео или вызывать неподвижное изображение в любой момент во время записи, а также переключаться обратно на живое видео. Какой-то переключатель отключения, который покроет время ожидания, если на съемочной площадке возникнут технические трудности, и его также можно использовать для брендинга до / после ролика при вводе и завершении видео-события. Я бы хотел, чтобы этот переключатель источника был встроен в видеопоток (также, чтобы его можно было добавить в конечный видео-продукт, если он мне понадобится в архиве для последующего воспроизведения)
Я пытаюсь сделать это таким образом, чтобы продюсер мог установить метку времени, когда должно произойти переопределение видео и когда оно должно остановиться. Я хочу, чтобы мой сервер отвечал на эти временные метки и отправлял инструкции по протоколу RTMP в событие Azure Live. Можно ли в RTMP-протоколе отправить такую инструкцию ("Эй, проиграть этот бит видео / показать это изображение в потоке на x секунд")? Я пытался понять это, и я читал о маркерах SCTE-35 и тому подобном, но я не смог найти никаких примеров того, как это сделать, поэтому я немного застрял.
Мой план-Б - сделать возможным потоковую передачу изображения из мобильного приложения, которое уже обрабатывает видеопоток в реальном времени, но я изначально нацелен на архитектуру, в которой мобильное приложение не знает ничего, кроме потоковой передачи в реальном времени, и это переопределение Переключатель предпочтительно должен обрабатываться сервером, что является настройкой функций firebase.
Если вы видите другие способы сделать это, я весь уши.
Я уже пытался создать метод ffmpeg, который прослушивает обновления состояния, установленного производителем, а затем передает изображение на тот же адрес RTMP, на который отправляется видео из мобильного приложения. Но это работает только тогда, когда живое видео еще не транслируется - кажется, я не могу взять на себя RTMP-поток, когда он уже запущен.