инициирование RTSP-соединения по сотовой связи с Android - PullRequest
4 голосов
/ 30 декабря 2011

Большинство сим-аккаунтов общедоступны.Большинство, если не все сотовые провайдеры, не разрешают входящие подключения к публичным динамическим IP-адресам.(3g в любом случае, может быть, не 4g / LTE) Проблема подключения заключается не в динамическом ips, а в заблокированных входящих портах.

Итак, если бы я хотел передавать потоковое видео с телефона Android по требованию (на основеИз этого разговора почерпнута информация ( Потоковое видео с камеры Android на сервер )), какова будет цепочка событий для правильного установления соединения.

Мое представление об этом (примерно): *Приложение 1007 *

  1. на телефоне Android запускает и поддерживает какое-то соединение с медиасервером (wowza или что-то в этом роде).
  2. В какой-то момент, когда сервер хочет получить видео с телефона, он использует открытое соединениезапросить видеопоток.
  3. Телефон Android отправляет поток rtsp на сервер.

Это правильно, и если да, то какой тип соединения следует использовать в качестве соединения постоянного контроля.Кроме того, можно ли нажать rtsp или мне нужно сделать что-то еще?

Спасибо!

1 Ответ

0 голосов
/ 10 октября 2012

Я знаю, что это старый вопрос, но если кто-то ищет что-то подобное, теперь доступно следующее:

http://developer.android.com/guide/google/gcm/index.html

Это, по сути, позволяет отправлять сообщение с сервера в приложение на устройстве Android (оно заменяет C2DM, который сделал похожую вещь).

Обновление

Google GCM теперь поочередно заменяется Google Firebase Cloud Messaging:

Используя сервис обмена сообщениями на основе приложений, подобный этому, следующие шаги:

  • Добавление службы подписки на сообщения в ваше приложение (например, Firebase)
  • Приложение регистрируется в облачной службе обмена сообщениями при запуске
  • Когда сервер хочет получить видео с телефона (как отмечено в приведенных выше вопросах), сервер отправляет сообщение приложению
  • Приложение открывает соединения с потоковым сервером и начинает потоковую передачу видео на сервер.

Примечание : ниже приведен комментарий о том, что этот подход не разрешает входящее соединение с сервера на телефон Android.

Фактически, это не то, как обычно работает потоковая передача с телефона. Телефон фактически устанавливает «исходящее» соединение с сервером потоковой передачи, на который он затем передает потоковое видео. Другие устройства, желающие посмотреть видео, затем отправляют его здесь.

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

...