[Облачная функция SCF] Прямая трансляция TRTC + рендеринг страниц, практика облачной прямой трансляции
[Облачная функция SCF] Прямая трансляция TRTC + рендеринг страниц, практика облачной прямой трансляции
Введение
Этот документ представляет собой только функциональную практику.,Расскажите читателям о прямой трансляции trtc,Рендеринг страницы,И иметь грубое и интуитивное понимание Облачного прямого эфира.,Не для использования в производственных средах.
Этот документ требует активации Tencent Cloud.TRTC,Облачный прямой эфир,scfОблачные продукты,где Рендеринг в scf страницы Необходимо активироватьcos,redis,vpcждать Облачные продукты。
Практические шаги по этому документу заключаются в следующем:
Использование веб-сайта TRTC демо открывает комнату для прямых трансляций
Используйте функцию шаблона «ТРТС в прямом эфире» облачной функции для отправки потоков в комнату прямой трансляции в Интернете.
Используйте Облачный прямой эфир для создания адресов записи и прямой трансляции.
«Рендеринг» с использованием облачных функций страница» записывает комнату прямой трансляции TRTC и отправляет поток на Облачный прямой эфир。Когда тестовый документ записал прямую трансляцию TRTC, поскольку URL-адрес был просто статической веб-страницей, в конечном итоге он записывал только статическую веб-страницу комнаты и не записывал аудио и видео, передаваемые облачной функцией.
использовать Облачный прямой играет адрес прямой трансляции эфира Облачный прямой эфир Нажмите на потоковую запись.
Использование веб-сайта TRTC demo(ссылка:https://github.com/LiteAVSDK/TRTC_Web)Измените соответствующий код, чтобы создать комнату прямой трансляции.,Затем опубликуйте его в Интернете (это может быть общедоступная сеть или интранет).,Если это интранет, приложение «Рендеринг страницы» должно соответствовать URL-адресу прямой трансляции в интрасети.,В противном случае запись будет невозможна).
Примечание. В этом примере тестируется окончательная веб-комната, поскольку это статическая страница. Рендеринг страницы записи статической комнаты прямой трансляции,Потоковый эффект не был зафиксирован. Необходимо разработать веб-интерфейс на основе SDK, связанного с TRTC, для записи прямых трансляций.
Это преобразование является всего лишь тестом, поскольку основным интерфейсом по умолчанию после выпуска веб-демо является имя пользователя, номер комнаты, а затем вход в комнату. При записи вы можете записать только этот интерфейс. Его нужно преобразовать в интерфейс комнаты, где находится основной интерфейс.
Пункт модификации 1. Найдите TRTC_Web-main/base-js/index.html в загруженной веб-демоверсии, добавьте onload="login()" на вкладку body и поместите код, ссылающийся на js, за index.html в заголовке.
Пункт модификации 2: установите для параметра roomId в функции входа() в TRTC_Web-main/base-js/js/common.js значение 111, указывая, что номер комнаты равен 111. По умолчанию пользователь присоединяется к комнате как test1.
После завершения преобразования проверьте и щелкните файл index.html. Окно комнаты и имя пользователя по умолчанию должны отобразиться напрямую.
Используйте nginx, чтобы опубликовать демо-версию в общедоступном Интернете. Это развертывается с использованием контейнеризации + общедоступной сети clb. После развертывания доступ к общедоступной сети осуществляется следующим образом.
После публикации,в соответствии с Справочная статья[Tencent Cloud] ТРТС в прямом эфире практикаиспользовать Шаблон облачной функции"ТРТС в прямом эфире"Отправьте push-поток на соответствующий идентификатор комнаты (111), соответствующий SdkAppId. После отправки проверьте наличие push-видео и push-пользователей в опубликованной веб-комнате.
После добавления доменного имени,Будет консоли «Облачный прямой эфир"->"Управление доменными именами"Посмотрите настроенное доменное имя воспроизведения и Нажмите доменное имя
В консоли «Облачный прямой эфир"->"генератор адреса», выберите имя домена для push-уведомлений, затем установите AppName (в качестве примера возьмем live) и StreamName (в качестве примера возьмем williamji), затем нажмите, чтобы сгенерировать адрес, а затем запишите сгенерированные результаты отдельно. странице требуется push-адрес
В консоли «Облачный прямой эфир"->"генератор адреса», выберите имя домена воспроизведения, а затем установите AppName (в качестве примера возьмем live) и StreamName (в качестве примера возьмем williamji), затем щелкните, чтобы сгенерировать адрес, а затем запишите сгенерированные результаты отдельно. Обратите внимание, что AppName и StreamName, используемый для генерации адреса имени домена воспроизведения, должен быть таким же, как и у push-потока, в противном случае адрес воспроизведения не будет виден после отправки потока.
Облачный прямой эфир Тестовый поток push-уведомлений/играть
ссылка Облачный прямой эфир Документация веб-толчок
Нажмите"Облачный прямой эфир"->"WebPush-стриминг",В качестве примера возьмем «многоканальный смешанный поток».,Выберите «Несколько потоков».
Добавьте источник входного сигнала в конфигурацию входа «Многоканальная смешанная потоковая передача». В качестве первого источника входного сигнала выберите «Получение изображения с камеры». Включите камеру.
Добавьте источник входного сигнала в конфигурацию входа «Многоканальная смешанная потоковая передача». В качестве второго источника входного сигнала возьмите «Локальный сбор файлов» в качестве примера и выберите локальное тестовое изображение.
После установки источника входного сигнала вы можете просмотреть его справа.
После ввода адреса push-уведомления WebRTC нажмите «Начать push». Я вижу, что интерфейс показывает, что поток снова был отправлен.
Протестируйте здесьиспользоватьtcplayer Просмотрите URL-адрес адреса прямой трансляции, и вы увидите экран push-уведомлений в реальном времени, указывающий, что тест push/воспроизведения прошел успешно.
Рендеринг страницы
Рендеринг страница — это комплексное приложение, предоставляемое бессерверным приложением Cloud Function. Его основные функции включают запись аудио и видео, транскодирование и потоковую передачу. прямой эфир и т. д. По сравнению с панорамной записью, здесь больше возможностей принудительной потоковой передачи. прямой Функция эфира. В настоящее время он находится в оттенках серого, и его необходимо открыть для производства и исследований, Рендеринг. страницы Еще нетпродуктдокумент,Можетссылка全景录制документ里的接口:https://cloud.tencent.com/document/product/583/62573
создавать Рендеринг страницыприложение
Рендеринг страниц основан на vpc, cos и redis. Для их создания сначала обратитесь к соответствующим документам по облачным продуктам.
Рендеринг страницы После признания,Можно найти в"Serverless"->"Serverlessприложение"->"Новыйприложение"来Новыйприложение
Найдите «Рендеринг» на новой странице приложения. страницы» и выберите, если нет, то необходимо обратиться к архитектору на открытие
существовать Рендеринг страницы интерфейса конфигурации, после написания базовой конфигурации нажмите «Готово». Рендеринг Приложение страницы создаст несколько облачных функций, что займет определенное время.
После создания рендеринга страницы,Можно найти в"Serverless"->"Serverlessприложение"Поиск и просмотр
Нажмите, чтобы войти в приложение, и вы увидите облачные функции приложения и шлюз API.
Вы можете использовать услуги, предоставляемые API-шлюзом, для вызова Рендеринга. страница. Здесь тест обрабатывается с использованием интерфейса отладки в apigw.
Вы можете видеть, что шлюз API использует тип аутентификации «Аутентификация приложения».,Аутентификация приложений и образцы документов аутентификации на нескольких языках,pythonссылка:https://cloud.tencent.com/document/product/628/56048
Этот пример служит проверкой,Непосредственно используйте интерфейс отладки в apigw.,И измените тип аутентификации на"Без сертификации"(Уведомление:Никогда не используйте метод без аутентификации в производственной среде.),Нажмите Рендеринг Ссылка на шлюз API, представленная в приложении на странице, ведет к соответствующему шлюзу API «Сервис» и «Управление API». Измените конфигурацию «Тип аутентификации» на «Бесплатная аутентификация», затем нажмите «Готово» и, наконец, опубликуйте.
Нажмите «Отладка API» в соответствующем API, используйте метод POST и выберите «Тело». Соответствующее тело тела — json.
Пример ввода json выглядит следующим образом. Поле «Тело» в основном такое же, как панорамная запись, с добавлением полей «Режим» и «Параметр обслуживания».
Режим в образце json равен 3, что указывает на запись и Облачный. прямой режим передачи эфира, RtmpUrl в ServiceParam написан Облачным прямой Адрес эфиргенерации push-потока (адрес rtmp), RecordURL записывает URL-адрес комнаты прямой трансляции TRTC.
После вызова API для отладки код состояния равен 200, а в теле возврата присутствуют TaskID и RequestID, указывающие на то, что был вызван рендеринг. страница успеха. Вы можете перейти к функции облака записи, соответствующей приложению, чтобы просмотреть журналы записи и потоковой передачи.
Хранилище промежуточных файлов записи и информация журнала принудительной отправки в функции облака записей следующие:
использоватьtcplayer Предварительный просмотр адреса прямой трансляцииurl,Может看到直播Push-стримингкартина。Тест показал, что в контенте прямой трансляции присутствует только один пользователь «test1» и нет облачной функции ТРТС. в прямом Пользователь эфире "williamji2" и TRTC пуш-видео, причина в сети URL-адрес соответствует статическому index.html, Рендеринг страницазапись ведется Имитируйте браузер, чтобы открыть URL-адрес для записи экрана. Комната прямых трансляций TRTC нуждается в доработке
Вызов интерфейса остановки записи интерфейса Рендеринг страницыapi,Используйте метод POST,пример тела json
Окончательный результат записи сохраняется в Выходе, указанном в теле вызывающего интерфейса записи. Путь теста находится в каталоге Record-output/, соответствующем экземпляру корзины cos. Воспроизведите файл результатов записи следующим образом.