ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры

Почему обнаружение ONVIF может работать при сбое потока RTSP, и как отлаживать профили камер, URL-адреса мультимедиа, аутентификацию, транспорт и доказательства SDP.

onvif rtsp, URL-адрес rtsp, путь потока IP-камеры, диагностика камеры, sdp

Обычно IP-камера правильно отображается при обнаружении ONVIF, хотя URL-адрес RTSP по-прежнему не работает. Устройство видно в сети, имя и модель камеры определяется, может даже профили указаны, но собственно видеопоток не открывается. Пользователи ищут «ONVIF работает, но RTSP не работает», «камера обнаружена, но нет видео RTSP» или «как найти URL-адрес RTSP из ONVIF», потому что кажется, что успех обнаружения должен гарантировать успех потоковой передачи.

Это не так.

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

Инспектор RTSP фокусируется на второй половине: что на самом деле происходит, когда используется определенный URL-адрес RTSP.

Что доказывает ONVIF

Открытие ONVIF может доказать, что:

  • Камера реагирует на WS-Discovery.
  • Камера предоставляет конечную точку службы ONVIF.
  • Клиент может получить доступ к интерфейсу управления камерой.
  • Камера может иметь один или несколько медиа-профилей.
  • Устройство может сообщать URI потока через медиа-службы ONVIF.

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

Камера может пройти обнаружение ONVIF и при этом не пройти RTSP, потому что:

  • RTSP отключен в настройках камеры.
  • Учетная запись ONVIF не имеет разрешения RTSP.
  • Возвращенный URI потока является неполным или предназначен только для внутреннего использования.
  • Порт RTSP заблокирован брандмауэром.
  • Камера требует чередующегося транспорта TCP, но клиент пытается использовать UDP.
  • Профиль указывает на H.265, но клиент ожидает H.264.
  • Путь к каналу NVR неправильный.
  • Камера возвращает SDP, но не отправляет пакеты RTP.

URI потока ONVIF может быть недоступен для прямого использования.

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

rtsp://192.168.1.50/Streaming/Channels/101

The real usable URL may need:

ONVIF profile does not guarantee codec support

The symptom may be:

RTSP Inspector helps by separating the layers:

RTSP transport can fail after ONVIF succeeds

This is common when:

Authentication can differ between ONVIF and RTSP

You may see:

RTSP/1.0 401 Unauthorized
WWW-Authenticate: Digest realm="IP Camera", nonce="..."

хотя обнаружение ONVIF сработало. Это означает, что служба RTSP запрашивает учетные данные. Если клиент отправляет учетные данные, а камера продолжает возвращать «401», проверьте разрешения учетной записи, дайджест-аутентификацию, кодировку URL-адреса и права канала.

Сетевые видеорегистраторы усложняют ситуацию, поскольку устройством ONVIF может быть сетевой видеорегистратор, а путь потока RTSP ссылается на канал камеры позади сетевого видеорегистратора. Учетной записи может быть разрешено запрашивать сетевой видеорегистратор, но не выполнять потоковую передачу основного потока канала 1.

Путаница основного потока и подпотока

Многие камеры предоставляют несколько профилей:

  • Основной поток: высокое разрешение, высокий битрейт, часто H.265.
  • Дополнительный поток: более низкое разрешение, более низкий битрейт, часто H.264.
  • Мобильный поток: небольшой размер кадра и более низкая частота кадров.

ONVIF может возвращать один из этих профилей по умолчанию. URL-адрес RTSP, скопированный из форума или PDF-файла поставщика, может указывать на другой. Если основным потоком является H.265, но клиент поддерживает только H.264, подпоток может работать, в то время как основной поток не работает.

К этой категории часто относятся запросы типа «Основной поток RTSP не работает, дополнительный поток работает». Проблема не в открытии. Это выбор профиля, выбор кодека, битрейт или поведение транспорта.

Как отладить ONVIF работает, но RTSP не работает

Используйте многоуровневый контрольный список:

  1. Убедитесь, что служба RTSP камеры включена.
  2. Убедитесь, что порт RTSP (обычно 554) доступен клиенту.
  3. Получите профиль мультимедиа ONVIF и URI потока.
  4. Нормализуйте URL-адрес RTSP для сетевого пути, который вы фактически используете.
  5. Аккуратно добавляйте учетные данные и кодируйте специальные символы в URL-адресе.
  6. Запустите RTSP «ОПЦИИ» и «ОПИСАНИЕ».
  7. Проверьте проблемы аутентификации и ответы.
  8. Проверьте SDP на предмет кодека, типа полезной нагрузки, тактовой частоты и URL-адресов управления отслеживанием.
  9. Сравните чередующийся транспорт UDP и TCP.
  10. Подтвердите, что пакеты RTP приходят после PLAY.
  11. Проверьте непрерывность последовательности RTP, временные метки и тип полезной нагрузки.
  12. Тестируйте основной поток и дополнительный поток отдельно.

Этот контрольный список предотвращает распространенную ошибку: рассматривать успешное обнаружение ONVIF как доказательство того, что потоковая передача мультимедиа должна работать автоматически.

Что должна показать трассировка RTSP

Здоровый поток RTSP обычно выглядит так:

OPTIONS rtsp://camera/stream RTSP/1.0
RTSP/1.0 200 OK

DESCRIBE rtsp://camera/stream RTSP/1.0
RTSP/1.0 200 OK
Content-Type: application/sdp

SETUP rtsp://camera/stream/trackID=1 RTSP/1.0
RTSP/1.0 200 OK
Transport: RTP/AVP/TCP;unicast;interleaved=0-1

PLAY rtsp://camera/stream RTSP/1.0
RTSP/1.0 200 OK

Final diagnosis

<!-- rtsp-localized-evidence-foundation-v1:start -->

Воспроизводимая проверка темы «ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры»

Краткий ответ: чёрный экран или одиночный код не доказывает источник сбоя. Надёжная диагностика связывает запрос и ответ RTSP, согласованный Transport, действующую Session, а затем номера последовательности RTP, временные метки и данные RTCP. Для «ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры» начните с уровня, ближайшего к симптому, но сохраняйте единую временную шкалу, чтобы не смешать управление, сеть и декодирование.

До изменения камеры, межсетевого экрана или VMS создайте небольшой базовый тест. Запишите RTSP URL без пароля, время, путь, запрошенный Transport, ответ сервера и момент первого медиапакета. Проверяйте UDP и TCP interleaved отдельно, если устройство поддерживает оба режима. Не меняйте одновременно путь, учётные данные и транспорт: иначе успешная вторая попытка не покажет решающую переменную.

Уровень Сохраняемое доказательство Вопрос
RTSP метод, статус, заголовки, CSeq и Session Сервер принял именно эту операцию?
SDP control, payload type, clock rate и codec Описана ожидаемая дорожка?
Transport client_port, server_port или interleaved Обе стороны используют один канал?
RTP SSRC, sequence, timestamp и marker Медиаданные идут в объяснимом порядке?
RTCP sender report, CNAME и BYE Часы, идентичность и конец прослеживаются?
Decoder SPS/PPS/VPS и packetization mode Полученный payload позволяет инициализацию?

Разделяйте «медиа не пришло» и «медиа пришло, но не декодируется». Отсутствие RTP после успешных SETUP и PLAY ведёт к проверке UDP, NAT, firewall и ответа Transport. Пробелы последовательности доказывают потерю или перестановку. Непрерывный RTP без изображения переводит расследование к payload type, clock rate, границам кадра и параметрам H.264 или H.265. Эта граница полезнее общего сообщения проигрывателя.

Как написать цитируемый ответ?

Используйте три предложения: последняя успешная операция, первое отсутствующее доказательство и следующий разделяющий тест. Пример: «DESCRIBE, SETUP и PLAY успешны; RTP не приходит на объявленные порты клиента; проверка TCP interleaved отделит блокировку UDP от неверного медиапути». Не обвиняйте камеру или сеть без ответа либо пакета, подтверждающего границу.

Что делает случай воспроизводимым?

Сохраните OPTIONS, DESCRIBE, SETUP и PLAY, SDP, ответ Transport и очищенный Session. Для RTP запишите SSRC, первый и последний sequence, clock rate, число пробелов и длительность. Результат VLC или другой VMS используйте как дифференциальный тест, а не как доказательство правильной реализации всех правил успешным клиентом.

Когда проверять сервер или клиент?

Проверяйте сервер при отказе метода, несуществующем control URL, несовместимом Transport или необъяснимой смене SSRC или часов. Проверяйте клиент при повторном старом nonce, потере Session, запросе UDP без открытых портов или трактовке каждого конца NAL как конца access unit. Для промежуточной неисправности каждому выводу нужны пакет и время.

Как проверить отчёт?

Повторите тест с нового соединения и сравните временные шкалы до первого отличия. Удалите пароли и полные Authorization. Свяжите выводы с CSeq, sequence или timestamp. Используйте связанный справочник RTSP, а RTSP Inspector — для локальной проверки RTSP-потока и сбора доказательств без загрузки видео в публичный сервис.

Добавьте явный критерий приёмки. На том же URL и с теми же учётными данными управляющие запросы должны завершиться ожидаемыми статусами, RTP — непрерывно идти по выбранному Transport, а после нужных параметров кодека должен восстановиться реальный кадр. Смена Session или SSRC после нового подключения сама по себе не является ошибкой; не объединяйте пакеты старой и новой сессии. Оставшуюся неопределённость формулируйте как непроверенный порт, трек, интервал времени или условие декодера, а не как общий «сбой камеры».

<!-- rtsp-localized-evidence-foundation-v1:end --><!-- multilingual-blog-closeout:start -->

Прямой ответ и граница приемки

Краткий ответ по теме «ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры»: Почему обнаружение ONVIF может работать при сбое потока RTSP, и как отлаживать профили камер, URL-адреса мультимедиа, аутентификацию, транспорт и доказательства SDP. Считайте это проверяемым результатом, а не обещанием для любого входа, устройства, проекта или окружения. Полный результат фиксирует исходное состояние, точное действие, видимый выход и условие, подтверждающее завершение задачи в RTSP Inspector.

Порядок работы от доказательств

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

Контрольная точка 1: ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры

Закрывайте «ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.

Контрольная точка 2: Почему обнаружение ONVIF может работать при сбое потока RTSP, и как отлаживать профили кам

Для «Почему обнаружение ONVIF может работать при сбое потока RTSP, и как отлаживать профили камер, URL-адреса мультимедиа, аутентификацию, транспорт и дока» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.

Контрольная точка 3: Что доказывает ONVIF

Закрывайте «Что доказывает ONVIF» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.

Контрольная точка 4: URI потока ONVIF может быть недоступен для прямого использования.

Для «URI потока ONVIF может быть недоступен для прямого использования.» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.

Контрольная точка 5: ONVIF profile does not guarantee codec support

Закрывайте «ONVIF profile does not guarantee codec support» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.

Контрольная точка 6: RTSP transport can fail after ONVIF succeeds

Для «RTSP transport can fail after ONVIF succeeds» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.

Контрольная точка 7: Authentication can differ between ONVIF and RTSP

Закрывайте «Authentication can differ between ONVIF and RTSP» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.

Контрольная точка 8: Путаница основного потока и подпотока

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

Контрольная точка 9: Как отладить ONVIF работает, но RTSP не работает

Закрывайте «Как отладить ONVIF работает, но RTSP не работает» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.

Контрольная точка 10: Что должна показать трассировка RTSP

Для «Что должна показать трассировка RTSP» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.

Матрица приемки

Точка Сохраняемое доказательство Критерий успеха
ONVIF работает, но URL-адрес RTSP не работает: поиск реального пути потока камеры Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат
Почему обнаружение ONVIF может работать при сбое потока RTSP, и как отлаживать профили камер, URL-адреса мультимедиа, ау Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат
Что доказывает ONVIF Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат
URI потока ONVIF может быть недоступен для прямого использования. Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат
ONVIF profile does not guarantee codec support Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат
RTSP transport can fail after ONVIF succeeds Исходное состояние, одно действие и результат Второй оператор воспроизводит заявленный результат

Изоляция, восстановление и передача

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

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

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

Вопросы и ответы

Как надежнее всего начать?

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

Какие доказательства сохранять?

Сохраните идентификатор входа, версию, платформу, настройки, точное действие, первый неожиданный переход и конечный выход. Закройте и повторно откройте проект, сеанс, отчет или экспорт.

Когда повторять процедуру?

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

Когда результат готов к передаче?

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

Связанные руководства

Эти страницы на том же языке описывают соседние этапы, не меняя канонического владельца темы:

<!-- multilingual-blog-closeout:end -->