Как транслировать живое видео с Android на Wowza через RTMP
Проблема, которая занимала меня последние 7 дней, - это реализация потокового видео с Android на WowzaMediaEngine.
Я начал свои исследования на официальных страницах Wowza и был в восторге от наличия библиотеки GoCoderSDK для Android и IOS. "Небольшой" проблемой является цена (10 тыс. В первый год, 2 тыс. В год), и поскольку я создаю приложение для "малого" клиента, я пробовал другие библиотеки:
libstreaming в порядке, на мой взгляд, безобразно закодирован (без обид), с множеством ошибок, которые нужно исправить, но с довольно сложными техниками (хорошо сработано). Я тестировал зефир Nexus 5, и через некоторое время он работал, используя MediaCodec и низкое разрешение видео. Увеличение разрешения приведет к переключению на MediaRecorder, который в основном не работает. На устройстве KitKat я вообще не смог его запустить. После 3-4 дней внедрения исправлений я сдался. Свободные швы больше не поддерживаются
Медиа-вещательная библиотека выглядит многообещающе, но еще не пробовала. Действительно дорого 500$/ месяц это просто слишком много, на мой взгляд.
KickFlip довольно закодирован, выглядит красиво, отличные функции, и они убрали поддержку RTMP/RTSP. Пытался вернуть поддержку и не удалось.
Цена RealTimeLibs является приемлемой. Установлено Broadcast ME (демонстрационное приложение) из PlayStore, невозможно запустить поток. Демо приложение постоянно вылетает. Обескуражен, не пытался связаться с ними.
Что делать, купить GoCoderSDK, переписать библиотеку libstreaming (поскольку у меня были лучшие результаты с ней) или написать собственное решение (не знаю, сколько времени это займет). Требуется огромный мультимедийный опыт (чего у меня нет)?
1 ответ
Не упоминается в вопросе, но я несколько раз сталкивался с библиотекой JavaCV, но отзывы были не такими хорошими. Также я видел несколько весьма положительных комментариев здесь, поэтому я решил попробовать.
Поначалу это довольно запутанно (импорт javacv.jar, импорт javacpp.jar, импорт ffmpeg.jar, добавление большого количества.so файлов в jniLibs с соответствующими версиями и т. Д. И т. Д.). Посмотрев на примеры и несколько бурных постов. Ответ на этот вопрос ( Как добавить JavaCV в Android Studio, чтобы я мог использовать F *** MF?, Мне надоело, и с помощью Сэмюэля Одета (которому я очень благодарен)), я преуспел в потоковой передаче видео с Android через RTMP в Wowza с качеством и параметрами видео, которые я выбрал для установки.
Так как я потерял 7 дней работы над этим и в ответ на общение, я создал шаблонное (или стартовое) приложение для Android для потоковой передачи видео в реальном времени на медиа-движок wowza, так что многие другие wowza-зависимые приложения в будущем могут быть построены гораздо быстрее.