Depuração de URL de controle agregado RTSP: controle SDP:*, rastrear URLs, SETUP 404 e PLAY falha

Como solucionar problemas de URLs de controle agregado RTSP, atributos de controle SDP:*, caminhos de controle em nível de trilha, erros SETUP 404, falhas de PLAY e bugs de construção de URL de câmera.

controle agregado rtsp, controle sdp, configuração 404, URL da faixa rtsp, jogo falhou, URL da câmera, diagnóstico rtsp

URLs de câmeras RTSP geralmente falham porque o cliente cria a URL de controle errada a partir do SDP. Os usuários procuram por "RTSP SETUP 404", "estrela de controle SDP", "URL de controle agregado RTSP", "URL de rastreamento RTSP errado", "DESCRIBE funciona, mas a CONFIGURAÇÃO falha" e "PLAY falha após a CONFIGURAÇÃO" quando uma câmera retorna o SDP com sucesso, mas a mídia nunca inicia.

O RTSP Inspector é útil porque essa falha não se refere à capacidade do player de extrair vídeo. Trata-se de saber se o cliente RTSP interpretou corretamente os atributos de controle no nível da sessão e no nível da mídia.

O sintoma comum

Um traço típico é assim:

DESCRIBE rtsp://camera/live
200 OK
SDP contains a=control:*
SDP video media contains a=control:trackID=1
SETUP rtsp://camera/trackID=1
404 Not Found

The camera did not necessarily reject RTSP. The client may have constructed SETUP with the wrong base URL.

Session-level and media-level control

SDP can contain control attributes at different levels:

a=control:*
m=video 0 RTP/AVP 96
a=control:trackID=1
m=audio 0 RTP/AVP 97
a=control:trackID=2

O controle em nível de sessão pode identificar o recurso agregado usado para PLAY e PAUSE. O controle de nível de mídia identifica cada trilha RTP usada para SETUP.

Se um cliente tratar cada valor control como um caminho absoluto, ele poderá criar URLs inválidos.

URLs de controle relativo versus absoluto

Os valores de controle RTSP SDP podem ser:

  • URLs RTSP absolutos.
  • Caminhos relativos.
  • Rastrear identificadores.
  • * controle agregado.
  • Caminhos específicos do fornecedor.

Exemplos:

a=control:rtsp://192.168.1.10/live/trackID=1
a=control:trackID=1
a=control:streamid=0
a=control:video
a=control:*

The client must combine relative track control values with the correct base URL. A tiny difference such as /live/trackID=1 vs /trackID=1 can turn a working camera into a 404 Not Found.

DESCRIBE succeeds but SETUP fails

This is one of the strongest search patterns for this article. DESCRIBE proves the camera accepted the main URL and returned SDP. SETUP failure points to transport negotiation, track URL construction, unsupported media track, or camera firmware behavior.

Evidence to collect:

  • Original DESCRIBE URL.
  • Content-Base header if present.
  • Content-Location header if present.
  • Session-level a=control.
  • Media-level a=control for each track.
  • Exact SETUP URL.
  • SETUP response status.
  • Transport header used by SETUP.

Without the SETUP URL, the diagnosis is incomplete.

Content-Base and Content-Location

Some cameras include Content-Base or Content-Location headers in the DESCRIBE response. These headers can affect how relative SDP control paths should be resolved.

Failure patterns:

  • Client ignores Content-Base.
  • Client uses the original DESCRIBE URL when camera intended a different base.
  • Camera returns a base URL with trailing slash differences.
  • Proxy rewrites the RTSP URL but not SDP.
  • Client normalizes away a path component needed by the camera.

These details are exactly why protocol evidence matters.

PLAY uses aggregate control

After SETUP succeeds for one or more tracks, PLAY may need to target the aggregate control URL instead of a single track URL. Some cameras accept either. Others are strict.

Search symptoms:

  • "RTSP SETUP works but PLAY fails"
  • "RTSP 460 Only Aggregate Operation Allowed"
  • "RTSP PLAY 404"
  • "RTSP track SETUP OK no video"

If PLAY targets the wrong URI, the RTP stream may never start even though SETUP returned 200 OK.

Multi-track audio and video

The bug is easier to see when both audio and video exist:

m=video ...
a=control:trackID=1
m=audio ...
a=control:trackID=2

O cliente deve CONFIGURAR ambas as faixas com seus próprios URLs de controle e, em seguida, PLAY o URL agregado correto. Se o cliente configurar apenas o vídeo, mas o PLAY tiver como alvo o áudio, ou se mesclar as duas faixas em um URL de CONFIGURAÇÃO, a câmera poderá retornar um erro que parece não relacionado.

URL do perfil ONVIF vs URL da faixa RTSP

O ONVIF pode relatar URIs de fluxo que diferem dos URLs finais de rastreamento do SDP. Um URI de fluxo do ONVIF pode ser válido para DESCRIBE, mas não diretamente válido para todas as solicitações SETUP.

Isso cria a frase de suporte comum: “ONVIF funciona, mas o URL RTSP falha”. A próxima etapa do diagnóstico é inspecionar o SDP e os URLs de SETUP derivados, e não continuar gerando novos URLs ONVIF.

Lista de verificação de depuração

Use este fluxo de trabalho:

  1. Capture a resposta DESCRIBE.
  2. Salve Content-Base e ​​Content-Location.
  3. Extraia a=control no nível da sessão.
  4. Extraia cada nível de mídia a=control.
  5. Crie o URL de CONFIGURAÇÃO esperado manualmente.
  6. Compare-o com o URL de CONFIGURAÇÃO do cliente.
  7. Verifique se SETUP falha com 404, 461 ou 500.
  8. Confirme se o PLAY segmenta URL agregado ou de rastreamento.
  9. Verifique o comportamento de áudio/vídeo multitrilha.
  10. Preserve as linhas exatas de solicitação RTSP para suporte do fornecedor.

Diagnóstico final

Bugs de controle agregado RTSP se escondem dentro da interpretação SDP. Uma câmera pode aceitar DESCRIBE e ainda rejeitar SETUP ou PLAY se o cliente criar a trilha errada ou URL de controle agregado.

O RTSP Inspector ajuda a expor os atributos de controle SDP, cabeçalhos Content-Base, URLs SETUP e destino PLAY para que os engenheiros possam provar se o problema é construção de URL, rigidez da câmera, reescrita de proxy ou manipulação de SDP do lado do cliente.

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

Evidência reproduzível para “Depuração de URL de controle agregado RTSP: controle SDP:*, rastrear URLs, SETUP 404 e PLAY falha”

A resposta direta é que uma tela preta ou um único código não prova a origem da falha. Um diagnóstico confiável liga pedido e resposta RTSP, transporte negociado, sessão válida e depois números de sequência RTP, timestamps e sinais RTCP. Em “Depuração de URL de controle agregado RTSP: controle SDP:*, rastrear URLs, SETUP 404 e PLAY falha”, comece pela camada mais próxima do sintoma, mas mantenha uma cronologia comum para não confundir controle, rede e decodificação.

Antes de alterar câmera, firewall ou VMS, crie um teste de referência pequeno. Registre URL RTSP sem senha, horário, caminho, Transport solicitado, resposta do servidor e chegada do primeiro pacote de mídia. Teste UDP e TCP interleaved separadamente quando disponíveis. Não mude caminho, credenciais e transporte juntos; caso a segunda tentativa funcione, será necessário identificar a variável decisiva.

Camada Evidência a preservar Pergunta
RTSP método, estado, cabeçalhos, CSeq e Session O servidor aceitou exatamente a operação?
SDP control, payload type, clock rate e codec A faixa esperada foi descrita?
Transport client_port, server_port ou interleaved Os dois lados usam o mesmo canal?
RTP SSRC, sequência, timestamp e marker As unidades chegam em ordem explicável?
RTCP sender report, CNAME e BYE Relógio, identidade e fim são rastreáveis?
Decoder SPS/PPS/VPS e packetization mode O payload recebido inicializa o decoder?

Separe “nenhuma mídia chegou” de “a mídia chegou, mas não decodifica”. Se RTP falta depois de SETUP e PLAY bem-sucedidos, verifique UDP, NAT, firewall e resposta Transport. Lacunas de sequência provam perda ou reordenação. Uma sequência contínua sem imagem desloca a investigação para payload type, clock rate, limites de frame e parâmetros H.264 ou H.265. Essa fronteira é mais útil que a mensagem genérica do player.

Como escrever uma resposta citável?

Use três frases: última operação bem-sucedida, primeira evidência com falha e próximo teste que separa duas causas. Exemplo: “DESCRIBE, SETUP e PLAY funcionam; nenhum RTP chega às portas anunciadas; um teste TCP interleaved separará bloqueio UDP de caminho de mídia errado”. Não atribua a falha à câmera ou rede sem resposta ou pacote que demonstre o limite.

Quais dados tornam o caso reproduzível?

Preserve OPTIONS, DESCRIBE, SETUP e PLAY, SDP, resposta Transport e Session sem segredos. Para RTP registre SSRC, primeira e última sequência, clock rate, lacunas e duração. Informe se VLC ou outro VMS funciona, mas trate isso como comparação controlada, não como prova de que o cliente bem-sucedido interpreta corretamente todas as regras.

Quando examinar servidor ou cliente?

Examine o servidor quando recusar método, fornecer control URL ausente, responder com transporte incompatível ou mudar SSRC ou relógio sem transição. Examine o cliente quando reutilizar nonce vencido, perder Session, solicitar UDP sem abrir portas ou tratar todo fim de NAL como fim de access unit. Se o problema estiver entre os dois, pacote e horário devem acompanhar cada conclusão.

Como revisar o relatório?

Repita a partir de uma conexão nova e compare as cronologias até a primeira diferença. Remova senhas e valores Authorization completos. Ligue cada conclusão a CSeq, sequência ou timestamp. Siga o guia RTSP relacionado e use RTSP Inspector para testar um stream RTSP e coletar evidências localmente, sem enviar o vídeo para um serviço público.

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

Resposta direta e limite de aceitação

A resposta curta para “Depuração de URL de controle agregado RTSP: controle SDP:, rastrear URLs, SETUP 404 e PLAY falha” é: Como solucionar problemas de URLs de controle agregado RTSP, atributos de controle SDP:, caminhos de controle em nível de trilha, erros SETUP 404, falhas de PLAY e bugs de construção de URL de câmera. Trate essa frase como um resultado a verificar, não como promessa para qualquer entrada, dispositivo, projeto ou ambiente. Um resultado completo registra estado inicial, ação exata, saída visível e condição que comprova a conclusão da tarefa no RTSP Inspector.

Procedimento orientado por evidências

Comece com um caso pequeno e repetível antes de alterar um projeto completo. Registre versão do aplicativo, sistema operacional, identidade da entrada ou dispositivo, configurações relevantes e resultado esperado. Execute uma ação deliberada, preserve a primeira transição inesperada e compare com um caso conhecido quando possível. Alterar vários controles ao mesmo tempo esconde qual condição criou ou corrigiu o problema.

Ponto de controle 1: Depuração de URL de controle agregado RTSP: controle SDP:, rastrear URLs, SETUP 404 e PLAY

Quando “Depuração de URL de controle agregado RTSP: controle SDP:*, rastrear URLs, SETUP 404 e PLAY falha” for ambíguo, compare um caso bom e outro falho sob condições equivalentes. Marque a primeira diferença significativa, não todos os sintomas posteriores. Esse limite costuma produzir uma solicitação de suporte mais clara e um experimento mais seguro.

Ponto de controle 2: Como solucionar problemas de URLs de controle agregado RTSP, atributos de controle SDP:, c

Verifique “Como solucionar problemas de URLs de controle agregado RTSP, atributos de controle SDP:*, caminhos de controle em nível de trilha, erros SETUP 404, fa” com a menor entrada representativa. Mantenha configurações não relacionadas, repita a mesma ação e confira o resultado após reabrir ou reconectar. Uma captura isolada é mais fraca que um registro com entrada, configuração, ação, saída e horário.

Ponto de controle 3: O sintoma comum

Quando “O sintoma comum” for ambíguo, compare um caso bom e outro falho sob condições equivalentes. Marque a primeira diferença significativa, não todos os sintomas posteriores. Esse limite costuma produzir uma solicitação de suporte mais clara e um experimento mais seguro.

Ponto de controle 4: Session-level and media-level control

Verifique “Session-level and media-level control” com a menor entrada representativa. Mantenha configurações não relacionadas, repita a mesma ação e confira o resultado após reabrir ou reconectar. Uma captura isolada é mais fraca que um registro com entrada, configuração, ação, saída e horário.

Ponto de controle 5: URLs de controle relativo versus absoluto

Quando “URLs de controle relativo versus absoluto” for ambíguo, compare um caso bom e outro falho sob condições equivalentes. Marque a primeira diferença significativa, não todos os sintomas posteriores. Esse limite costuma produzir uma solicitação de suporte mais clara e um experimento mais seguro.

Ponto de controle 6: DESCRIBE succeeds but SETUP fails

Verifique “DESCRIBE succeeds but SETUP fails” com a menor entrada representativa. Mantenha configurações não relacionadas, repita a mesma ação e confira o resultado após reabrir ou reconectar. Uma captura isolada é mais fraca que um registro com entrada, configuração, ação, saída e horário.

Ponto de controle 7: Content-Base and Content-Location

Quando “Content-Base and Content-Location” for ambíguo, compare um caso bom e outro falho sob condições equivalentes. Marque a primeira diferença significativa, não todos os sintomas posteriores. Esse limite costuma produzir uma solicitação de suporte mais clara e um experimento mais seguro.

Ponto de controle 8: PLAY uses aggregate control

Verifique “PLAY uses aggregate control” com a menor entrada representativa. Mantenha configurações não relacionadas, repita a mesma ação e confira o resultado após reabrir ou reconectar. Uma captura isolada é mais fraca que um registro com entrada, configuração, ação, saída e horário.

Ponto de controle 9: Multi-track audio and video

Quando “Multi-track audio and video” for ambíguo, compare um caso bom e outro falho sob condições equivalentes. Marque a primeira diferença significativa, não todos os sintomas posteriores. Esse limite costuma produzir uma solicitação de suporte mais clara e um experimento mais seguro.

Ponto de controle 10: URL do perfil ONVIF vs URL da faixa RTSP

Verifique “URL do perfil ONVIF vs URL da faixa RTSP” com a menor entrada representativa. Mantenha configurações não relacionadas, repita a mesma ação e confira o resultado após reabrir ou reconectar. Uma captura isolada é mais fraca que um registro com entrada, configuração, ação, saída e horário.

Matriz de aceitação

Ponto Evidência a manter Condição de aprovação
Depuração de URL de controle agregado RTSP: controle SDP:, rastrear URLs, SETUP 404 e PLAY falha Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado
Como solucionar problemas de URLs de controle agregado RTSP, atributos de controle SDP:, caminhos de controle em nível d Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado
O sintoma comum Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado
Session-level and media-level control Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado
URLs de controle relativo versus absoluto Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado
DESCRIBE succeeds but SETUP fails Estado inicial, uma ação e estado resultante Outra pessoa reproduz o resultado declarado

Isolamento, recuperação e entrega

Pare no primeiro limite que falhar. Preserve fonte, projeto, sessão ou captura, duplique antes de edição destrutiva e altere uma variável por experimento. Repetir um fluxo amplo depois de várias mudanças pode gerar outro resultado sem explicar o motivo.

Separe ausência de evidência de evidência de ausência. Uma tela vazia pode indicar entrada, escopo, filtro, permissão, dispositivo, intervalo ou estado incorreto. Verifique aquisição ou importação antes de interpretar decoder, editor, relatório ou exportação.

Antes da entrega, reabra o artefato e examine início, ponto de decisão e final. Registre versão, plataforma, configuração, expectativa, observação e reprodução mínima. Remova ou oculte dados sensíveis e confirme a autorização do destinatário.

Perguntas e respostas

Qual é a maneira confiável mais rápida de começar?

Use o menor caso representativo, escreva o resultado esperado e altere uma variável. Confirme o caminho básico antes de adicionar filtros, efeitos, edições, automação ou uma fonte maior.

Quais evidências devem ser salvas?

Mantenha identidade da entrada, versão, plataforma, configurações, ação exata, primeira transição inesperada e saída final. Feche e reabra projeto, sessão, relatório ou exportação antes de tratá-lo como durável.

Quando o procedimento deve ser repetido?

Repita após mudanças relevantes no aplicativo, sistema, driver, firmware, modelo, fonte ou fluxo. Preserve o caso aceito anterior como referência sem alterações.

Quando a tarefa está pronta para entrega?

Quando outra pessoa autorizada identifica a entrada, repete a ação, vê o mesmo resultado, entende os limites restantes e abre o artefato sem depender de estado local não documentado.

Guias relacionados

Estas páginas no mesmo idioma cobrem etapas próximas sem alterar o proprietário canônico deste assunto:

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