Невозможно удаленно просматривать поток RTSP IP-камеры
Я недавно завершил установку системы наблюдения Zoneminder в удаленном месте. Выделенный сервер работает под управлением Ubuntu 14.04 LTS и в настоящее время подключен к 4 IP -камерам ( Hikvision DS-2CD2032-I) в одной подсети. Маршрутизатор Motorola Surf Board SBG6580-G228.
Сейчас я пытаюсь настроить Raspberry Pi для потоковой передачи видео с камеры в удаленном месте. Моя цель - использовать Zoneminder для записи событий и использовать Raspberry Pi в качестве средства просмотра основной камеры. Здесь я сталкиваюсь с неприятностями. Я могу удаленно подключиться к Zoneminder и веб-страницам управления камерой, но по какой-то причине не могу просмотреть поток RTSP камеры.
У меня открыт порт 554 и он перенаправлен на камеру, к которой я хочу подключиться. Когда я ввожу адрес RTSP в VLC без учетных данных для входа в систему, меня просят ввести их, поэтому я знаю, что на каком-то уровне это соединение. Однако после ввода учетных данных я не получаю сообщение об ошибке, но также и видео. Я знаю, что камера работает, потому что я могу войти в Zoneminder и увидеть его.
У кого-нибудь есть идеи, что я могу упустить?
6 ответов
Я не нашел ответа на свой вопрос (по крайней мере, не тот, который мне нравится), но я нашел обходной путь.
Основываясь на ответе Хэвида, я погуглил потоки RTSP, чтобы узнать больше о том, как они работают. Насколько я могу судить, он прав, видео возвращается через UDP, но не через предсказуемые порты. Это объясняет, почему клиент может получать видеопотоки RTSP в той же локальной сети, но не удаленно. Канал управления (порт 554) подключается, но возвращенные видео пакеты отбрасываются маршрутизатором.
Одно из предложений, которое я видел, - открыть все порты для получения потока. Полагаю, это сработает, но, на мой взгляд, это ужасное решение.
Мой обходной путь состоял в том, чтобы установить OpenVPN, используя поле Zoneminder в качестве VPN-сервера и Raspberry Pi в качестве VPN-клиента. Как только это было установлено и VPN-туннель был установлен, они снова оказались в одной сети, что позволило устранить проблему с портом.
Просто была точно такая же проблема - я пытался получить доступ к потоку DVR RTSP через проигрыватель VLC, и у меня не было видео, но также не было ошибки. Оказывается, в настройках VLC вы должны переключить потоковый транспорт Live555 с HTTP по умолчанию на RTP через RTSP (TCP).
VLC> Инструменты> Настройки> Ввод и кодеки> Сеть> Переключение на RTP через RTSP
Как сказал Артанис:
VLC> Инструменты> Настройки> Ввод и кодеки> Сеть> Переключение на RTP через RTSP
Это сработало для меня, после стольких дней поисков я наконец-то нашел облегчение!
Вот что я сделал для своей UnionCam (Q2Pro):
- Загрузите iSpyConnect (Opensource) ( http://www.ispyconnect.com/default.aspx)
- Добавить новую "IP-камеру с мастером"
- В случае успеха вы увидите ссылку RTSP; что-то вроде: rtsp://admin:password@192.168.1.105:554/user=admin_password=WEJwpbo6_channel=1_stream=0.sdp
Настройте переадресацию портов (я выполнил следующие действия: http://help.angelcam.com/general-guides-and-info/connecting-a-camera-to-angelcam/how-to-setup-port-forwarding-for-multiple-cameras)
И, наконец, используйте VLC с вышеупомянутыми настройками.
Сам RTSP не выполняет потоковую передачу мультимедиа, это всего лишь канал управления, используемый клиентами для сообщения медиасерверу, куда и когда отправлять мультимедиа. Возможно, вам потребуется открыть дополнительные порты, чтобы получить видеопоток.
У меня также была похожая проблема при использовании китайской IP-камеры с Zoneminder. Я решил эту проблему с помощью приложения Xeoma, чтобы найти правильный адрес для потоковой передачи. Иногда мои выводы могут быть полезны для вас. Подробности в этой ссылке здесь
URL-адрес, который я использую для примерно дюжины камер Hikvision, которые работают для VLC, — это rtsp://имя пользователя:пароль@IP-адрес камеры/Streaming/Channels/101?transportmode=unicast.
Установите имя пользователя и пароль, не содержащие специальных символов, таких как !@#$% и т. д. URL-адрес не будет работать со специальными символами в пароле. Мне потребовалось много времени, чтобы понять это.