[Android RTMP] Краткое описание этапов прямой трансляции RTMP (построение на стороне сервера | Кодирование и потоковая передача мобильного телефона Android | просмотр прямой трансляции на компьютере | проверка состояния сервера)
[Android RTMP] Краткое описание этапов прямой трансляции RTMP (построение на стороне сервера | Кодирование и потоковая передача мобильного телефона Android | просмотр прямой трансляции на компьютере | проверка состояния сервера)

Каталог статей

1. Настройка сервера


Сначала подпишитесь 【Android RTMP】RTMP Прямая трансляция ( Покупка облачного сервера Alibaba | Удаленное управление сервером | строить RTMP сервер | сервер Конфигурация | Отправить конфигурацию программного обеспечения | Настройка программного обеспечения для прямой трансляции | Отображение эффекта прямой трансляции ) Процесс в настройке сервера , Затем вы можете начать операцию push ;

Вы также можете следить 【Android RTMP】RTMP Прямая трансляциясерверстроить ( Ubuntu 18.04.4 виртуальная машина ) Контент в блоге ,существовать VMWare виртуальная машинасерединастроить RTMP Прямая трансляциясервер ;

смелый стильКонфигурацияиллюстрировать :

① HTTP номер порта : существовать http server настроен вномер переносада Посмотреть RTMP номер сервераSTATUSURL порта , нравиться http://47.94.36.51:8080/stat по адресу , Необходимо указать его номер портада 8080 ;

Язык кода:javascript
копировать
 listen 8080;

② HTTP Адрес проверки статуса : существовать conf/nginx.conf Эта опция настроена в файле конфигурации , Это означает использование http://47.94.36.51:8080/stat Посетите адрес, чтобы просмотреть текущую Прямую трансляция , и смотрите статус прямого эфира ;

Язык кода:javascript
копировать
        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }

③ RTMP Прямая трансляция порта : Ниже приведено RTMP Конфигурация сервиса 1935 номер порта , да RTMP Номер по умолчанию порта , Итак, здесь rtmp://47.94.36.51/myapp/0 Прямая трансляция адресу Нетномер порта ;

④ RTMP Приложение для прямых трансляций : в myapp Просто название приложения на даливе , rtmp://47.94.36.51/myapp/0 по адресуиз myapp Просто дасуществовать rtmp настроен в application приложение;

Язык кода:javascript
копировать
rtmp {
    server {
        listen 1935;

        application myapp {
            live on;
        }
    }
}

2. Мобильная push-трансляция


1 . сотовый телефон Прямая трансляция :

① Начать играть в код : К rtmp://47.94.36.51/myapp/0 Адресный push ;

Язык кода:javascript
копировать
// rtmp://47.94.36.51/myapp/0
// 0 Эквивалентно жить пароль
// После настройки сервера Записывать IP адрес, заменять 47.94.36.51 IP адрес
mLivePusher.startLive("rtmp://47.94.36.51/myapp/0");

② Camera Сделайте снимок экрана и просмотрите push-поток. : Обратите внимание здесь , Предыдущее изображение было повернуто против часовой стрелки. 90 степень , После установки угла наклона датчика изображения , Изображение предварительного просмотра было исправлено. , Да Camera Датчик изображения собирает NV21 Изображение Формата также повернуто. 90 степень ;

Задействованы определенные форматы изображений , И метод датчика изображения , Соотношение размеров экрана , Справочный блог 【Android RTMP】Android Camera Предварительный просмотр сбора видеоданных ( Настройки метода датчика изображения | Camera Процесс использования | Приложение динамического разрешения )

2. О процессе разработки мобильного терминала:

① Сначала реализуйте камеру для сбора данных изображения:

【Android RTMP】Android Camera Предварительный просмотр сбора видеоданных ( Понятия, связанные с захватом видео | Настройки параметров предварительного просмотра камеры | Интерфейс обратного вызова данных предварительного просмотра камеры )

【Android RTMP】Android Camera Предварительный просмотр сбора видеоданных ( Настройки метода датчика изображения | Camera Процесс использования | Приложение динамического разрешения )

【Android RTMP】Android Camera Предварительный просмотр сбора видеоданных ( Настройки метода датчика изображения | Camera Процесс использования | Приложение динамического разрешения )

② Понимание данных изображения в формате NV21:

[Android RTMP] Формат данных RTMP (анализ видеоформата FLV | Анализ заголовка файла | Анализ тегов | Анализ данных тегов видеотегов)

[Android RTMP] Формат данных RTMP (анализ формата видео FLV | анализ формата заголовка последовательности AVC)

③ Кодирование данных изображения формата NV21 в данные изображения формата H.264:

[Android RTMP] Инициализация и настройки кодировщика x264 (получить параметры кодирования x264 | характеристики кодирования | скорость кода | частота кадров | количество B-кадров | интервал ключевого кадра | данные декодирования ключевого кадра SPS PPS)

Кодирование данных изображения Android RTMP】x264 (сбор данных изображения с камеры | данные изображения NV21 передаются в Native для обработки | массив байтов передачи JNI | обработка локальных ссылочных переменных | взаимное исключение потоков)

【Android RTMP】x264 Кодирование данных изображения ( NV21 в формате YUV Расположение данных | Y 灰степеньданныекопировать | U Копия данных значения цвета | V насыщенные степеньданные копии | Операции кодирования изображений )

④ Упакуйте закодированные данные видеокадра в формате H.264 в пакеты данных RTMP:

【Android RTMP】RTMPDump инкапсулирует пакеты данных RTMPPacket (инкапсулирует пакеты данных SPS/PPS)

[Android RTMP] RTMPDump инкапсулирует пакеты данных RTMPPacket (формат данных ключевого кадра | формат данных неключевого кадра | обработка данных в кодировке x264 | инкапсулирует кадры видеоданных H.264)

⑤ Воля RTMP пакетотправлятьприезжатьсервер конец :

【Android RTMP】RTMPDump Нажмите процесс ( Независимый толчок нити | Создать стример | Операция инициализации | Установить адрес push-уведомлений | Включить запись | соединять RTMP сервер | отправлять RTMP пакет )

3. Смотрите прямую трансляцию на компьютере.


использование ПК EVPlayer Смотреть в прямом эфире : Сначала настройте адрес прямой трансляции , Тогда вы можете посмотреть в прямом эфире ;

① Настроить адрес прямой трансляции : rtmp://47.94.36.51/myapp/0 . Это да Мобильная версия адреса прямой трансляции , myapp означает серверный терминал Nginx сервер Конфигурацияизприложение , номер портада 1935 ,RTMP по умолчаниюномер порта Сразуда 1935, сюда не надо это писать ;

② Компьютерная версия Смотреть в прямом отображение эффекта эфире : Экран вращается против часовой стрелки 90 степень , Это исправлено, поскольку раньше датчик камеры был установлен только на экран предварительного просмотра. , Да NV21 форматировать данные изображение также вращается против часовой стрелки 90 степеньизданные ;

Задействованы определенные форматы изображений , И метод датчика изображения , Соотношение размеров экрана , Справочный блог 【Android RTMP】Android Camera Предварительный просмотр сбора видеоданных ( Настройки метода датчика изображения | Camera Процесс использования | Приложение динамического разрешения )

4. Статус RTMP-сервера


Проверятьсервер конец状态信息 : Посмотреть адрес http://47.94.36.51:8080/stat , Вы можете видеть, что есть один publishing Нажмите конец ,есть один playing Смотреть в прямом эфиреконец ;

① сервер конец : сервер конецда Nginx сервер , Бегать RTMP Module приложение , Прямая может быть достигнута трансляциясередина文字幕 ;

② Нажмите конец : Прямая трансляцияконец Сразудасотовый телефон , Мобильная версия Camera коллекция NV21 форматировать данные изображения ,и использовать x264 Воля Чтокодирование为 H.264 Формат, последний раз использовался RTMPDump Воля H.264 Кадр данных кодируется как RTMP пакет , подтолкнуть к RTMP сервер конец ;

③ Конец воспроизведения : Живой контент Конец просто используйте его на своем компьютере EVPlayer Смотреть в прямом эфире ;

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose