Воспроизведение RTSP: разница между VLC и встроенным в Android OpenCore - PullRequest
0 голосов
/ 24 марта 2011

Я работаю над приложением Android для воспроизведения видеопотока по протоколу RTSP, предоставленному потоковым сервером Darwin.

Моя проблема в том, что поток RTSP не может быть воспроизведен с помощью Android VideoView / MediaPlayer через определенные точки доступа WiFi, например на моем рабочем месте. Я искал и обнаружил, что потоковый сервер Darwin использует UDP-порты 6970 - 6999 для потоковой передачи мультимедийных данных, и проблема может быть в брандмауэре. но тот же поток может воспроизводиться с помощью VLC на ПК через ту же точку доступа WiFi.

В чем разница между механизмом, который использует VLC и встроенная медиа-структура Android OpenCore? Можно ли мне написать свой собственный RTSP-клиент с openRTSP-источником live555 на Android? Буду очень признателен за любую помощь.

Bolton

Ответы [ 2 ]

1 голос
/ 13 декабря 2012

Как вы указали в своем ответе, VLC переключается на Rlep с чередованием через Rtsp при сбое Udp.

Вот почему VLC продолжает работать.

Вы можете использовать мою библиотеку @ https://net7mma.codeplex.com/, если можете использовать .Net или использовать ее в качестве справочного материала для своей собственной разработки.

1 голос
/ 28 марта 2011

Я использовал wireshark для сканирования своей сети, и я думаю, что теперь я знаю разницу: Когда я использую эмулятор Android, я вижу, что клиент продолжает отправлять UDP-запросы через порты 6970, 6971, но не получает ответа. А при использовании VLC данные RTP передаются в TCP через порт 554. И проблема вызвана брандмауэром, я думаю.

...