СтРим программа на Андроид что это такое

Потоковое видео в Android

В этой заметке я хочу рассказать о некоторых подводных камнях, с которыми можно столкнуться при работе с потоковым видео в Android приложениях. Конкретно, речь пойдёт о конвертации видео и протоколах доставки/воспроизведения видео.
Сразу оговорюсь, что экспертом я в данной области не являюсь, а лишь хочу поделится недавно полученным опытом.

Представим, что перед вами стоит задача реализовать Android приложение, способное проигрывать множество файлов, заливаемых пользователями на ваш сервер. Написать свой youtube, с блекджеком и кодеками. Для этого вам придётся решить как минимум две задачи: конвертации видео к поддерживаемому на Android формате, воспроизведение видео с удалённого источника. Рассмотрим обе эти задачи более подробней.

Конвертация видео

И так, прежде чем воспроизвести какое-то видео нашем Android устройстве, надо это видео перекодировать в поддерживаемый формат. В документации к Android чётко обозначен список этих самых форматов.

КАК СТРИМИТЬ С ТЕЛЕФОНА С ДОНАТОМ? / Стрим с андроид! DonationAlerts Studio

Для того, что бы перекодировать файлы, заливаемые пользователями на ваш сервис, или же записать поток с TV-тюнера, вам потребуется помощь специальной утилиты ffmpeg, являющейся де-факто стандартом в отрасли. Подробную инструкцию по её установке можно найти на сайте одноимённого проекта.

Наиболее распространённым сейчас (на мой взгляд) способом хранения видео является контейнер MP4 с использованием кодека H.264 AVC. Их мы, собственно, и рассмотрим.

Первым делом обратите внимание, что Android поддерживает не все возможности кодека H.264, а только определённый набор — профиль, именуемый Baseline Profile(BP). Так, например, в BP не входят такие полезные фичи H.264 как CABAC или B-Frames.

Для нас это значит, что если мы будем использовать эти фичи при кодировании видео, то Android проигрывать это видео будет не обязан. Хотя и может, если ваш телефон достаточно мощный и вендор позаботился об установке и поддержке дополнительных кодеков. Так, например, видео в Main Profile без проблем проигрывается на Samsung Galaxy SII. На телефонах же обычного класса (например, Samsung Galaxy Ace) мы получим сообщение о невозможности воспроизведения видео и ошибку с кодом неверного кодека в logcat’е.

Но перейдём от теории к практике. Для того, что бы пережать видео, необходимо выполнить следующую команду:

ffmpeg -i in.3gp -f mp4
-vcodec libx264 -vprofile baseline -b:v 1500K
-acodec libfaac -b:a 128k -ar 44100 -ac 2
-y out.mp4

  • -i src входной (перекодируемый) файл;
  • -f mp4 используемый видеоконтейнер;
  • -vcodec libx264 используемый видеокодек;
  • -vprofile baseline используемый профиль;
  • -b:v 1500K bitrate;
  • -acodec libfaac используемый аудиокодек;
  • -b:a 128k аудио bitrate;
  • -ar 44100 частота звука;
  • -ac 2 количество аудиопотоков;
  • -y флаг перезаписи выходного файла;

Так же стоит отметить, что можно обойтись и без указания профиля, а явно включить/отключить нужные опции кодека H.264 через параметр -x264opts, так что бы они удовлетворяли условиям BP. Но это же занятие для любителей.

Раздача видео

Самый простой способ воспроизвести видео с удалённого сервера — это скачать его во временное хранилище и воспроизвести локально. Однако, думаю всем понятно, что в виду размеров современных видеозаписей — это не вариант.

  • HTTP/HTTPS progressive streaming;
  • HTTP/HTTPS live streaming;
  • RTSP (RTP, SDP);

Рассмотрим их по порядку.

Progressive streaming

Наиболее простой способ раздачи видео с помощью обычного web-сервера, сводящийся по сути к скачиванию заранее подготовленного файла по HTTP(S) протоколу. Вся соль в данном случае заключается в том, что воспроизведение файла начинается не по окончанию загрузки, а как только будет скачано достаточно данных (наполнен некоторый буфер).

Тут стоит уточнить, что при использовании контейнера MP4, необходимо сформировать файл так, что бы метаданные о видео потоке (moov atoms) располагались в начале файла (после атома ftyp), перед видеоданными (mdat atoms). Сделать это можно с помощью обработки файла утилитой qt-faststart:

qt-faststart output.mp4 result.mp4

Основной проблемой progressive streaming’а является невозможность перемотки видео к нескачанному моменту, наличие достаточного количества свободного места на устройстве и необходимость поддержки большого числа «толстых» клиентов, скачивающих видео, на web-сервере.

Воспроизведение с помощью данной технологии поддерживается платформой Android нативно. Вы без проблем (если не считать канал связи, мощность девайса и наличие свободного места) сможете проиграть удалённый файл с помощью стандартного класса MediaPlayer.

Читайте также:
Что за программа про измены

Pseudo streaming

Данная технология является логическим расширением progressive streaming’a и позволяет решить одну из его главных проблем — перемотки к ещё не скачанному фрагменту. Применима для контейнеров MP4/FLV с кодеком H.264/AAC.

Единственным отличием от progressive streaming’a в данным случае является, тот факт, что вам потребуется специальный web-сервер, который с учётом временной метки в GET-запросе будет отдавать нужный вам фрагмент видео файла. Примером такого web-сервера естественно может служить православный NGINX с его ngx_http_mp4_module.

Мне не удалось найти какой-либо официальной информации относительно поддержки данного стандарта в Android. Однако, эмперическим путём было установлено, что она присутствует как минимум на устройствах HTC Desire и Samsung Galaxy SII. Однако, хочу обратить внимание, что да же в случае отсутствия нативной поддержки на вашем устройстве всегда можно воспользоваться сторонними плеерами типа MX Player, которые самостоятельно реализуют логику скачки и воспроизведения фрагментов видео с нужной временной меткой, что позволяет организовать перемотку.

Live streaming

Довольно нестандартный протокол передачи данных от компании Apple. Суть его сводится к тому, что раздаваемый файл «пилится» на множество небольших частей, объединяемых спецтальным файлом-playlist’ом формата M3U8. Передача данных происходит по протоколу HTTP(S).

Ни каких проблем с перемоткой и свободным местом на устройстве в данном случае не возникает. Более того, при некоторых условиях у вас появляется возможность выбирать качество проигрываемого видео.

Однако, появляются и проблемы. Для «распила» файла и создания playlist’а потребуется ресурсы процессора, время и место на сервере. Для вещания файла в сеть, как и в предыдущих примерах, потребуется HTTP сервер (без каких-либо дополнительных модулей).

«Распилить» видео файл можно использовать VLC:

Воспроизвести такой файл можно по URL localhost/pornofilm.m3u8.

Поддержка HTTP Live Streaming на нативном уровне в Android присутствует начиная с версии 3.0. С помощью сторонних плееров (DicePlayer, MX Player), судя по wiki, можно добиться поддержки с версии 2.2.

Real Time Streaming Protocol (RTSP)

Протокол прикладного уровня с поддержкой состояния, разработанный специально для передачи видео. Формат команд очень напоминает HTTP. Сами же команды напоминают кнопки на обычном кассетном магнитофоне: PLAY, PAUSE, RECORD и т.д.

В отличие от HTTP Live Streaming RTSP не требует разбиения фалов на мелкие части и составления playlist’ов. Нужные части файла будут генерироваться и отдаваться клиенту налету. В качестве RTSP сервера можно использовать VLC.

Стоит заметить, что сам протокол RTSP не определяет способ передачи данных, а делегирует это другим протоколам. Например, RTP. Для вещания файла по протоколу RTP нужно будет запустить VLC со следующими параметрами:

vlc -vvv /path/to/pornofilm.mp4 —sout ‘#rtp’

Однако, поднимать для каждого файла свой процесс с отдельным портом вне зависимости от наличия пользователей, желающих его просмотреть, было бы глупо.

Поэтому вернёмся к протоколу RTSP и воспроизведению видео по требованию (Vidoe On Demand). Для того, что бы использовать VLC в качестве RTSP сервера для проигрывания VOD необходимо прежде всего запустить VLC, указав атрибуты RTSP сервера и Telnet интерфейса:

vlc -vvv -I telnet —telnet-password 123 —rtsp-host 127.0.0.1 —rtsp-port 5554

После этого как сервер запущен, необходимо произвести его настройку. Делать это удобнее всего с помощью telnet’a, так как такой подход даёт возможность настройки налету:

setup porno input /path/to/pornofilm.mpg

Для воспроизведения видео (в том числе и на платформе Android) необходимо запросить его по URL rtsp://localhost:5554/pornofilm.

Из недостатков можно отметить тот факт, что HTTP открыт зачастую на всех firewall’ах и проксях… с RTSP в случае политики Deny,Allow всё иначе.

Кроме того, при использовании RTSP-сервера для добавления/удаления файлов на сервере придётся обновлять его конфигурацию (список vod’ов). Да, для этого есть telnet, но это всё равно сложнее, чем просто заливать или удалять файлы из каталогов web-сервера.

Воспроизведение с помощью данной технологии поддерживается платформой Android нативно. Например, с помощью всё того же стандартного класса MediaPlayer.

Multicast

Многие считают, что multicast не работает в Android. Это не совсем так.

Во первых, в большинстве случаев он просто отключен по умлочанию, что бы не грузить ресурсы девайса лишней работой. Его можно просто включить.

Во вторых, да — на довольно внушительном количестве устройств он отключен во все или работает некорректно. В интернетах, поэтому поводу можно найти много слёз и даже некоторые решения.

Однако, как показывает практика, проигрывать multicast видео на Android всё можно. В моём случае с этой задачей удачно справился недавно вышедший VLC Beta для Android.

Читайте также:
Кортана что это за программа Windows 10 нужна ли

Кроме того с помощью VLC-сервера всегда можно свести воспроизведение multicast’a к HLS:

new multicast-porno vod enabled

Что выбрать

Если с форматом видео всё ясно (H.264 BP / MP4), то со спобом дистрибуции вопрос открыт. У каждого их них есть свои достоинства и недостатки.

Первым делом из рассмотрения я бы убрал обычный progressive streaming. Да он работает всегда и везде, но отсутствие перемотки и загрузка всего файла целиком — это уже слишком.

Следующим кандидатом на вылет является live streaming. Главным его недостатком является нативная поддержка в Android начиная с версии 3.0. А игнорирование более 80% пользователей c версией 2.x — не вариант. Хотя тут можно посмотреть на сторонний плеер, или заняться собственной реализацией (свободных наработок для поддержки HLS я, увы, не нашёл).

И последним я бы вычеркнул RTSP. Да, это протокол, разработанный специально для видео. Да, его использование идейно верно. Но есть два момента. Во первых — необходимо постоянно обновлять конфигурацию сервера.

Во вторых, HTTP открыт всегда и везде, чего нельзя сказать о RTSP/RTP.

Лично я бы остановился на pseudo streaming. Он позволяет осуществлять перемотку и при этом не скачивать весь файл полностью. От нас требуется только немного донастроить web-сервер.

Источник: habr.com

Стрим.Онлайн Безопасное общение


Поделитесь ссылкой с друзьями

Стрим для общения


просто стрим для общения

Для этого приложения пока нет обзоров

Для этого приложения пока не указаны ссылки

Аналоги Стрим.Онлайн Безопасное общение на андроид

Источник: appvisor.ru

Как стримить с телефона на Twitch: возможно ли это?

Уже знаете, как стримить с телефона на Twitch или используете исключительно браузерную версию платформы? Научим вас работать со смартфоном в новом ключе – удивляйте фолловеров интересными видеороликами!

Трансляция геймплея

Итак, если по какой-то причине вы не можете или не хотите стримить в Твич с компьютера — спешим вас порадовать! Ответ на вопрос, можно ли стримить с телефона на Твиче, положительный – вы можете использовать смартфон! Сначала поговорим о том, как демонстрировать геймплей – стандартных средств программы недостаточно, нужно скачать стороннее приложение.

Пользуйтесь только магазинами Плэй Маркет или Эп Стор, не загружайте софт из сторонних источников!

  • Mobizen Live Stream;
  • Screen Stream Mirroring;
  • Gusher – Screen Broadcaster;
  • Live on YouTub;
  • Mobcrush;
  • BitStream.

Это лишь некоторые приложения, позволяющие стримить на Твиче с телефона Андроид или Айфон! Скачайте любое из них. Мы рассмотрим процесс использования на примере Screen Stream Mirroring – одной из самых простых и популярных утилит.

  • Скачайте программу из магазина и запустите;

  • В открывшемся меню найдите раздел с названием платформы и откройте настройки;
  • Задайте адрес потока и URL-сервера в соответствующих полях по инструкции, появившейся на экране;
  • Нажмите на кнопку «UPnP Streaming Mode»;
  • Готово – кликайте по кнопке воспроизведения для запуска.

Теперь нужно вернуться к приложению, чтобы проверить, правильно ли отображается трансляция. Стримить игры с телефона на Twitch несложно – главное, подобрать соответствующее программное обеспечение для качественной передачи изображения и звука на платформу. Скачайте разные программы и сравните их по уровню захвата экрана и потокового вещания – вы можете выбрать свой вариант!

Как стримить с камеры смартфона

Трансляция Твич с телефона может не иметь отношения к геймплею – вы ведете подкаст или показываете процесс приготовления блюд, рассказываете об искусстве или просто общаетесь с подписчиками? Можно воспользоваться встроенными инструментами мобильной платформы – научим стримить!

  • Откройте приложение Твич с телефона;
  • Нажмите на аватар в верхнем правом углу, чтобы перейти к меню настроек;

  • Под разделом с фолловерами вы увидите кнопку «Начать стрим с телефона на Твич» ;

  • Дайте приложению разрешения на использование камеры и микрофона, нажав «Включить» напротив соответствующих устройств;

  • Подтвердите разрешение при необходимости;
  • Прочтите краткую информационную справку и кликните «Понятно» ;

  • Дайте описание трансляции в соответствующем поле;
  • Выберите категорию из списка – всего доступно 11 категорий;
  • Настройте камеру – в верхнем правом углу есть иконка, позволяющая переключиться с фронтальной на основную или наоборот;

  • Кликните по кнопке «Начать» .

Поздравляем – аудитория может присоединиться к видео, фолловеры получат соответствующее оповещение. Даже смартфон можно сделать источником публикации контента!

Как стримить на Твиче с телефона – рассказали, не отказывайте себе в возможности всегда оставаться на связи со своими фолловерами! Демонстрируйте игры, повседневную жизнь или общайтесь в любое время.

Источник: twitchgid.ru

Приложения для запуска стримов и трансляций

Zapusk strima

Видео

Запустить стрим и смотреть онлайн трансляции блогеров на Андроид и iOS телефоне. Выходи в прямой эфир или смотри популярные стримы. Подборка приложений для трансляции в реальном времени.

Читайте также:
Trackview что за программа это

Twitch

Онлайн трансляции в Twitch.

Общение в прямом эфире с многоязычной аудиторией. Поделись своим творчеством, событиями, музыкой, игрой. Смотрите стримы со всего мира.

  • Трансляции игровых матчей (спорт и киберспорт).
  • Концерты, кулинарные шоу, искусство, домашние животные и другие темы.
  • Прямые эфиры компаний Blizzard, Sony, Riot Games.

Система рекомендаций контента.
Интерфейс на русском языке.
Много популярных ютуб стримеров.
Лёгкий запуск трансляции.
Чат для общения.

Некоторые функции платны.

Youtube

Прямой эфир youtube.

Ютуб даёт возможность создавать и смотреть онлайн трансляции в прямом эфире. Тематика видео любая. Новости, политические шоу, игровой стриминг, обзоры, музыкальные эфиры.

  • Возможна монетизация рекламой и донаты от зрителей (не во всех странах).
  • Живой чат для общения.
  • Модерация чата и участников.

Преимущества
Многоязычный интерфейс, включая русский.
Качество видео до 4K.
Подписки на блогеров.
Лента рекомендаций.
Встроенные инструменты для работы с видео.
Недостатки
Подбор рекомендуемых видео может не учитывать интересы пользователя.
На территории РФ недоступны монетизация, донаты и платная подписка “Youtube Premium”.

Не нашел любимых блогеров в youtube? Поищи на платформах аналогах ютуб.

VK

Создание и просмотр трансляций в VK.

Для просмотра прямых эфиров надо перейти во вкладку “Видео”, далее жмём “Трансляции”. Для быстрой навигации имеется сортировка на Популярное, Мобильные, Видеоигры, Спорт, Новости, Музыка, Хобби.

  • Просмотр в вертикальном и горизонтальном режиме.
  • Общение в чате.
  • Можно слушать звук эфира с выключенным экраном телефона.
  • Функции подписки, лайков, добавление в список видео, поделиться трансляцией и др.

Для запуска прямого эфира:
1. В правом верхнем углу нажимаем на значок плюса (+).
2. Далее в нижней части экрана пункт – Начать трансляцию.

Запуск прямого эфира в VK.

Русский интерфейс.
Большой функционал и дополнительный контент.
Алгоритм рекомендаций видео.
Работа в фоновом режиме.
Необходима регистрация в соцсети вконтакте.

Есть реклама.

Bigo Live

Приложение для стримеров Bigo Live.

Видео-трансляции от пользователей всего мира. Любые темы, включая игры, творчество, животные, музыка, лайв и др. Создайте прямой эфир и общайтесь.

  • Игровые стримы по Mobile Legends, GTA V, PUBG Mobile, Call of Duty, World of Tanks и др.
  • Аудио чаты бесплатно.
  • Стримы “один на один” и открытые всем зрителям.

Преимущества
Поиск ведущих поблизости и по странам, включая РФ.
Рейтинг топ эфиров.
Сортировка по местности, популярности, чатам, играм.
Стикеры, анимация, подарки.

Возможна монетизация.
Недостатки
Жалобы пользователей на непонятные условия модерации.
Повышенный расход заряда аккумулятора.

OK Live

Создание стримов в OK Live.

Сервис онлайн трансляций от социальной сети Одноклассники. Запустить прямой эфир может любой желающий. Платформой пользуются и популярные авторы.

  • Поиск блогеров в рубрике “Популярные стримеры”.
  • Онлайн эфиры из разных стран.
  • Архив видеозаписей.

Просмотр возможен без регистрации.
Нет рекламы.
Русский интерфейс.
Чат для общения зрителей.
Подписки и уведомления.
Стример может обменять на деньги, подаренные пользователями “подарки”.

Плохо реализована функция “Комментарии”.

Trovo

Прямые эфиры в приложении Trovo.

Приложение для запуска и просмотра игровых стримов. Популярные категории: GTA 5, World of Tanks, Call of Duty, Dota 2, Apex Legends, Valorant и др. Русскоязычные и иностранные блогеры.

  • Можно поддержать стримера специальными наградами.
  • Зрителям доступен чат во время эфира.
  • За просмотр трансляций пользователю начисляются “маны” (баллы).

Преимущества
Картинка в картинке.
Фоновое воспроизведение.
Анимации и аватары.
Многоязычный интерфейс, включая русский.
Недостатки

Качество Full HD 1080p+, перемотка и остановка доступны в платной подписке.
Нет функции скорости просмотра записи.
Заряд аккумулятора расходует быстрее, чем аналогичные приложения.

Omlet

Онлайн трансляции игр и событий в Omlet.

Сервис в основном для игровых стримов, но можно запустить и трансляцию событий. Большая аудитория любителей игр. Прямые эфиры игровых турниров, к которым можно присоединиться.

  • Общение с пользователями разных стран мира.
  • Сообщества по любым мобильным играм.
  • Лента с рекомендуемыми трансляциями по интересам.
  • Доступен стриминг на внешние платформы (youtube, twitch).

Преимущества
Функция донатов и подарков.
Подписки на стримеров.
Голосовой чат.
Встроенный видеоредактор.
Защита видео водяными знаками.
Мультиплеер для майнкрафт.

Интерфейс на русском языке.
Возможность заработать на рекламе.
Недостатки
Многие функции доступны после оплаты.
Есть реклама.
Итоговая таблица рейтинга

Оцените статью
( 1 оценка, среднее 5 из 5 )
Поделиться с друзьями

Добавить комментарий Отменить ответ
Вам также может понравиться

Prilozheniya dlya filmov

Naydi put v igrah golovolomkah

Prilozheniya dlya fitnesa

Сайт использует cookie для хранения данных. Продолжая использовать сайт, Вы соглашаетесь на работу с этими файлами. Ok

Источник: droid-top.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru