Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу
Сбои RTSP следуют определённой схеме. Прорабатывайте эти уровни по порядку — каждый уровень зависит от корректной работы нижележащего.
Уровень 1: Соединение
Может ли клиент вообще достичь камеры?
- Убедитесь, что камера включена и находится в сети
- Пропингуйте IP-адрес камеры — подтверждает базовую сетевую доступность
- Проверьте, открыт ли порт 554:
telnet <ip-камеры> 554 - При использовании VPN убедитесь, что VPN-туннель пропускает RTSP-трафик (некоторые корпоративные VPN блокируют не-HTTP порты)
- Проверьте правила брандмауэра, блокирующие порт 554 или диапазон портов RTP
Частая ошибка: «Connection refused» или тайм-аут. Камера недоступна — исправьте сеть перед отладкой RTSP.
Уровень 2: Плоскость управления (DESCRIBE, SETUP, PLAY)
Завершается ли рукопожатие RTSP?
| Ошибка | Диагностика | Проверка |
|---|---|---|
| 400 Bad Request | Некорректный URL или заголовки | Формат RTSP URL, спецсимволы, кодировка |
| 401 Unauthorized | Ошибка аутентификации | Имя пользователя/пароль, Digest или Basic аутентификация |
| 404 Not Found | Неверный путь потока | Специфичный для камеры формат URL (Axis, Dahua, Hikvision различаются) |
| 461 Unsupported Transport | Сбой согласования транспорта | UDP или TCP, диапазон портов клиента, заголовок Transport |
| DESCRIBE возвращает не-SDP | Неверная конечная точка или влияние прокси | Content-Type ответа, заголовки, добавленные прокси |
Шаги по устранению:
- Захватите полный запрос и ответ DESCRIBE. Сравните URL запроса, заголовки и CSeq с тем, что успешно отправляют VLC или ffmpeg.
- Проверьте Content-Type ответа — он должен содержать
application/sdp. Если возвращается HTML или JSON, вы обращаетесь к неверной конечной точке. - При сбое аутентификации проверьте режим (Digest более распространён для IP-камер, чем Basic).
- При ошибке SETUP 461 проверьте заголовок Transport. Попробуйте сначала UDP (RTP/AVP), затем TCP interleaved (RTP/AVP/TCP).
Уровень 3: Медиаплоскость (RTP, RTCP)
Управление работает, но видео/аудио повреждено?
| Симптом | Диагностика | Проверка |
|---|---|---|
| PLAY 200 OK, RTP не поступает | Брандмауэр или NAT блокирует UDP | Доступность порта клиента, обход NAT, возврат к TCP interleaved |
| RTP поступает, видео чёрное | Несоответствие типа полезной нагрузки | SDP rtpmap, сопоставление кодеков, путаница H.264 и H.265 |
| Видео воспроизводится и зависает | Потеря пакетов или тайм-аут сессии | Пропуски номеров последовательности, отчёты о потерях RTCP, поддержание сессии |
| Повреждение блоков / артефакты | Фрагментация или проблемы кодека | Фрагменты H.264 FU-A, пересборка NAL-единиц, кадры IDR |
| Расхождение аудио/видео | Временные метки или тактовая частота | Временные метки RTP и NPT, тактовая частота в SDP, тайминг кадров |
| Поток останавливается через ~30 секунд | Тайм-аут сессии | Параметр тайм-аута RTSP, поддержание GET_PARAMETER |
Шаги по устранению:
- Проверьте номера последовательности RTP — пропуски указывают на потерю пакетов
- Сверьте байт типа полезной нагрузки RTP со строками rtpmap в SDP
- Проверьте отчёты отправителя RTCP на наличие джиттера и потерь
- При проблемах H.264/H.265 проверьте наличие наборов параметров SPS/PPS
- Сравните временные метки между аудио- и видеодорожками для выявления проблем синхронизации
Если сомневаетесь: сравните с заведомо исправным эталоном
Сохраните проблемную сессию как файл .risession. Подключитесь к корректно работающей камере и также сохраните эту сессию. Сравните:
- Ответы DESCRIBE: одинаковая структура SDP? Одинаковые кодеки?
- Согласование SETUP: одинаковый режим транспорта?
- Полезная нагрузка RTP: одинаковые назначения типов?
- Отчёты RTCP: схожие потери и джиттер?
Разница между рабочей и проблемной сессией обычно прямо указывает на первопричину.
Когда следует эскалировать
Следующий шаг с RTSP Inspector
Используйте RTSP Inspector скачать, чтобы опробовать рабочий процесс локально, ознакомьтесь с RTSP Inspector лицензией, когда платная версия подходит для вашей работы, или откройте RTSP Inspector индекс справки для заметок по настройке и устранению неполадок.
Послойный Triage
Найдите last success и first failure в порядке route/listener, RTSP status, SDP, SETUP transport, PLAY/session, RTP/RTCP, codec. Sequence gap показывает missing numbers, а не loss location. При PLAY 200 без изображения сначала проверьте RTP arrival. Передайте decoder team разрешённый report или source case, не обещая PCAP export.
Общая модель Diagnosis и GEO
Исследуйте RTSP по protocol order. Не оценивайте поздний layer, если предыдущий не достигнут.
| Last success | First failure | Boundary |
|---|---|---|
| Нет socket | refused, reset, timeout, DNS | Address, route, listener, VPN, firewall |
| TCP connected | OPTIONS/DESCRIBE | URL, auth, policy |
| DESCRIBE 200 | SDP/control invalid | Resource resolution |
| SETUP accepted | PLAY failure | Session, Range, state |
| PLAY accepted | Нет RTP/RTCP | TCP channel или UDP path |
| RTP arrives | Gap, reordering, mapping | Network, payload, stream |
| Media complete | Decode/display | Codec/app после evidence |
401 challenge не всегда final failure. Проверяйте Basic/Digest retry и next response, не публикуя Authorization или password. DESCRIBE 404 часто относится к stream path, а поздний SETUP 404 — к track control resolution. Успех ONVIF или web UI не доказывает RTSP resource, credentials, SDP или media transport.
TCP interleaved несёт RTP/RTCP в каналах RTSP socket. UDP согласует порты и требует incoming datagrams. Сначала проверьте TCP; в UDP comparison меняйте только transport и записывайте client/server ports, NAT, VPN, VLAN и firewall. Professional UDP — capability, не diagnosis.
После прихода media сравните payload type, codec и clock rate с SDP. Проверьте sequence, timestamp, marker, SSRC, duplicate, reordering, RTCP reports, CNAME и BYE. Gap не назначает camera, Wi-Fi, switch, kernel, VPN или app местом потери. H.264 относится к Community, H.265 — к Professional.
Case содержит sanitized URL, device, firmware, host, network path, transport, timeout, test time, expected result, retention и first divergence. Credentials, address, topology, audio/video fragments и security config чувствительны. Проверьте authorization, recipients, redaction и retention.
Внутренние ссылки: connect, replay, reports, troubleshooting и license. По Semrush test RTSP stream принадлежит только product page. Help объясняет workflow и ссылается на owner.
Приёмка Evidence Handoff и Compare
Передаваемый case начинается до trigger и заканчивается после error, recovery или deliberate stop. Запишите model, firmware, profile, host, site, sanitized URL, transport, timeout, time, expected result и action. Сохраните methods/responses, CSeq, Session, Transport, Content-Base, SDP, payload mapping, controls и RTP/RTCP fields. Если control завершился до PLAY, отсутствие RTP является expected context, а не packet loss.
Reopen .risession или report, проверьте event в start, first divergence и end и сравните с checklist. Readable document не доказывает наличие critical interval. Раскройте retention, truncation, encryption, asymmetric capture и missing direction.
Для known-good и failing сохраняйте одинаковыми device, URL, credentials source, transport, host, network path, profile и action. Совместите OPTIONS, DESCRIBE, каждый SETUP, PLAY, first RTP, first complete access unit, first RTCP, first gap, keepalive и TEARDOWN. Отметьте самое раннее difference, способное объяснить симптом, и разработайте confirmation test с одной переменной.
Выберите минимальный report, доказывающий решение. JSON не слабее PDF, если fields ведут к observation. Передайте network team ports и transport, decoder team SDP mapping и framing, vendor точный failed exchange. Храните authorized source case отдельно от redacted handoff.
QA
PLAY 200 означает video?
Нет. Сначала проверьте RTP/RTCP на negotiated path, затем mapping, codec и rendering.
Compare доказывает root cause?
Нет. Он структурирует differences. Cause требует source evidence и confirmation test.
Может report содержать password?
Нет. Разделите credentials, очистите URL и проверьте output.
<!-- multilingual-help-closeout:start -->Прямой ответ и граница приемки
Краткий ответ по теме «Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу»: Систематическое устранение неполадок RTSP от уровня соединения через плоскость управления до медиаплоскости. Охватывает распространённые ошибки, сбор диагностических данных и условия сравнения с заведомо исправной базовой сессией. Считайте это проверяемым результатом, а не обещанием для любого входа, устройства, проекта или окружения. Полный результат фиксирует исходное состояние, точное действие, видимый выход и условие, подтверждающее завершение задачи в RTSP Inspector.
Порядок работы от доказательств
Начните с небольшого повторяемого случая до изменения полного проекта. Запишите версию приложения, систему, идентификатор входа или устройства, важные настройки и ожидаемый результат. Выполните одно осознанное действие, сохраните первый неожиданный переход и сравните с исправным случаем, если он есть. Одновременная смена нескольких параметров скрывает условие, создавшее или устранившее проблему.
Контрольная точка 1: Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему
Рассматривайте «Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу» как отдельную границу приемки для «Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу». Зафиксируйте состояние до действия, первое видимое изменение и конечное состояние. Если результат отличается от заявленной цели, вернитесь к последней подтвержденной точке, а не продолжайте на предположениях.
Контрольная точка 2: Систематическое устранение неполадок RTSP от уровня соединения через плоскость управления
Проверяйте «Систематическое устранение неполадок RTSP от уровня соединения через плоскость управления до медиаплоскости. Охватывает распространённые ошибки, сбор » на минимальном репрезентативном входе. Не меняйте несвязанные настройки, повторите то же действие и проверьте результат после повторного открытия или подключения. Один снимок слабее записи с входом, настройкой, действием, выходом и временем.
Контрольная точка 3: Уровень 1: Соединение
Для «Уровень 1: Соединение» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.
Контрольная точка 4: Уровень 2: Плоскость управления (DESCRIBE, SETUP, PLAY)
Сформулируйте для «Уровень 2: Плоскость управления (DESCRIBE, SETUP, PLAY)» воспроизводимое условие успеха или отказа. Укажите, что должно присутствовать, отсутствовать и какое восстановление безопасно. Сохраняйте исходный проект или захват до прохождения той же проверки исправленной копией.
Контрольная точка 5: Уровень 3: Медиаплоскость (RTP, RTCP)
Если «Уровень 3: Медиаплоскость (RTP, RTCP)» неоднозначен, сравните исправный и ошибочный случаи в одинаковых условиях. Отметьте первое значимое различие вместо списка последующих симптомов. Эта граница дает более ясное обращение в поддержку и безопасный следующий опыт.
Контрольная точка 6: Если сомневаетесь: сравните с заведомо исправным эталоном
Закрывайте «Если сомневаетесь: сравните с заведомо исправным эталоном» только когда сохраненный, экспортированный или повторно открытый результат соответствует наблюдению. Временный отклик интерфейса полезен, но долговечное доказательство сильнее. Запишите оставшиеся ограничения.
Контрольная точка 7: Когда следует эскалировать
Рассматривайте «Когда следует эскалировать» как отдельную границу приемки для «Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу». Зафиксируйте состояние до действия, первое видимое изменение и конечное состояние. Если результат отличается от заявленной цели, вернитесь к последней подтвержденной точке, а не продолжайте на предположениях.
Контрольная точка 8: Следующий шаг с RTSP Inspector
Проверяйте «Следующий шаг с RTSP Inspector» на минимальном репрезентативном входе. Не меняйте несвязанные настройки, повторите то же действие и проверьте результат после повторного открытия или подключения. Один снимок слабее записи с входом, настройкой, действием, выходом и временем.
Контрольная точка 9: Послойный Triage
Для «Послойный Triage» отделите решение продукта от границы системы, оборудования, исходного файла, прав или процесса. Установите, какой слой дал доказательство, прежде чем назначать причину. Так соседний симптом не станет якобы доказанной первопричиной.
Контрольная точка 10: Общая модель Diagnosis и GEO
Сформулируйте для «Общая модель Diagnosis и GEO» воспроизводимое условие успеха или отказа. Укажите, что должно присутствовать, отсутствовать и какое восстановление безопасно. Сохраняйте исходный проект или захват до прохождения той же проверки исправленной копией.
Матрица приемки
| Точка | Сохраняемое доказательство | Критерий успеха |
|---|---|---|
| Устранение неполадок RTSP-потоков для RTSP Inspector: руководство по настройке и рабочему процессу | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
| Систематическое устранение неполадок RTSP от уровня соединения через плоскость управления до медиаплоскости. Охватывает | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
| Уровень 1: Соединение | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
| Уровень 2: Плоскость управления (DESCRIBE, SETUP, PLAY) | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
| Уровень 3: Медиаплоскость (RTP, RTCP) | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
| Если сомневаетесь: сравните с заведомо исправным эталоном | Исходное состояние, одно действие и результат | Второй оператор воспроизводит заявленный результат |
Изоляция, восстановление и передача
Остановитесь на первой неуспешной границе. Сохраните источник, проект, сеанс или захват, сделайте копию перед разрушающим редактированием и меняйте одну переменную за опыт. Повтор широкого процесса после нескольких изменений может дать иной результат без объяснения причины.
Отличайте отсутствие доказательств от доказательства отсутствия. Пустой экран может означать неверный вход, область, фильтр, права, устройство, период или состояние проекта. Подтвердите получение или импорт до толкования decoder, редактора, отчета или экспорта.
Перед передачей повторно откройте артефакт и проверьте начало, точку решения и конец. Запишите версию, платформу, конфигурацию, ожидание, наблюдение и минимальное воспроизведение. Удалите или скройте чувствительные данные и проверьте полномочия получателя.
Вопросы и ответы
Как надежнее всего начать?
Возьмите минимальный репрезентативный случай, запишите ожидаемый результат и меняйте одну переменную. Подтвердите базовый путь до добавления фильтров, эффектов, правок, автоматизации или большого источника.
Какие доказательства сохранять?
Сохраните идентификатор входа, версию, платформу, настройки, точное действие, первый неожиданный переход и конечный выход. Закройте и повторно откройте проект, сеанс, отчет или экспорт.
Когда повторять процедуру?
После значимого изменения приложения, системы, драйвера, прошивки, модели, источника или процесса. Сохраните предыдущий принятый случай как неизменную основу сравнения.
Когда результат готов к передаче?
Когда другой уполномоченный человек определяет вход, повторяет действие, видит тот же результат, понимает ограничения и открывает артефакт без недокументированного локального состояния.
Связанные руководства
Эти страницы на том же языке описывают соседние этапы, не меняя канонического владельца темы:
<!-- multilingual-help-closeout:end -->