A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de câmera ociosa
Por que os fluxos RTSP param após 30 segundos, 60 segundos ou alguns minutos e como depurar solicitações de manutenção de atividade, tempo limite de sessão, NAT, silêncio RTP e desconexões de câmera.
Um fluxo RTSP que inicia com êxito e para após 30 segundos é um problema diferente de um fluxo que nunca inicia. A autenticação funcionou. O SDP foi devolvido. SETUP e PLAY provavelmente foram bem-sucedidos. A mídia pode ter chegado há algum tempo. Então a câmera fechou a sessão, o RTP parou, o player congelou ou a conexão expirou.
Pesquisas como "O fluxo RTSP para após 30 segundos", "Tempo limite de manutenção de atividade RTSP", "O fluxo da câmera é desconectado após um minuto" e "Tempo limite da sessão RTSP" geralmente apontam para um problema de duração da sessão. O fluxo pode precisar de solicitações de manutenção de atividade, o mapeamento NAT pode expirar, a câmera pode fechar sessões RTSP ociosas, a mídia UDP pode ser bloqueada após uma mudança de caminho ou o RTCP pode revelar perda de mídia antes da desconexão.
O RTSP Inspector é útil aqui porque o cronograma é importante. Você precisa saber o que aconteceu no segundo 0, no segundo 30, no segundo 60 e no momento exato em que o fluxo parou.
Por que o RTSP pode parar depois de iniciado
As causas comuns incluem:
- O cliente não envia keepalive RTSP.
- A câmera espera
GET_PARAMETERkeepalive. - A câmera espera manter a atividade
OPTIONS. - O tempo limite da sessão RTSP é menor que o esperado.
- O estado do NAT ou do firewall expira.
- O UDP RTP para enquanto o RTSP TCP permanece aberto.
- A câmera fecha a conexão TCP após o silêncio da mídia.
- O cliente usou um URL de controle agregado incorreto.
- O firmware da câmera possui um bug de limpeza de sessão.
- O RTCP relata perda de pacotes ou jitter antes que o fluxo congele.
A correção depende de qual camada parou primeiro: controle RTSP, mídia RTP, feedback RTCP ou caminho TCP/UDP subjacente.
Cabeçalho e tempo limite da sessão RTSP
Após SETUP, a câmera geralmente retorna um cabeçalho Session:
RTSP/1.0 200 OK
Session: 12345678;timeout=60
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
OPTIONS vs GET_PARAMETER keepalive
Two common keepalive methods are:
OPTIONS rtsp://camera/stream RTSP/1.0
Session: 12345678
e:
GET_PARAMETER rtsp://camera/stream RTSP/1.0
Session: 12345678
When debugging, check:
Aggregate control URL problems
This can create subtle behavior:
NAT and firewall idle timeout
Symptoms:
Camera idle disconnects
Look for:
RTP silence vs RTSP disconnect
Checklist for streams that stop after 30 seconds
Use this process:
A useful report includes:
Final diagnosis
<!-- rtsp-localized-evidence-foundation-v1:start -->Evidência reproduzível para “A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de câmera ociosa”
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 “A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de câmera ociosa”, 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 “A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de câmera ociosa” é: Por que os fluxos RTSP param após 30 segundos, 60 segundos ou alguns minutos e como depurar solicitações de manutenção de atividade, tempo limite de sessão, NAT, silêncio RTP e desconexões 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: A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite
Para “A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de câmera ociosa”, separe uma decisão do produto de um limite do sistema, hardware, arquivo, permissão ou processo. Confirme qual camada produziu a evidência antes de atribuir causa. Isso evita transformar um sintoma próximo em causa raiz supostamente provada.
Ponto de controle 2: Por que os fluxos RTSP param após 30 segundos, 60 segundos ou alguns minutos e como depura
Encerre “Por que os fluxos RTSP param após 30 segundos, 60 segundos ou alguns minutos e como depurar solicitações de manutenção de atividade, tempo limite de s” somente quando o resultado salvo, exportado ou reaberto continuar igual ao estado observado. O retorno temporário da interface ajuda, mas evidência durável é mais forte. Registre qualquer limite restante para a próxima pessoa.
Ponto de controle 3: Por que o RTSP pode parar depois de iniciado
Para “Por que o RTSP pode parar depois de iniciado”, separe uma decisão do produto de um limite do sistema, hardware, arquivo, permissão ou processo. Confirme qual camada produziu a evidência antes de atribuir causa. Isso evita transformar um sintoma próximo em causa raiz supostamente provada.
Ponto de controle 4: Cabeçalho e tempo limite da sessão RTSP
Encerre “Cabeçalho e tempo limite da sessão RTSP” somente quando o resultado salvo, exportado ou reaberto continuar igual ao estado observado. O retorno temporário da interface ajuda, mas evidência durável é mais forte. Registre qualquer limite restante para a próxima pessoa.
Ponto de controle 5: OPTIONS vs GETPARAMETER keepalive
Para “OPTIONS vs GETPARAMETER keepalive”, separe uma decisão do produto de um limite do sistema, hardware, arquivo, permissão ou processo. Confirme qual camada produziu a evidência antes de atribuir causa. Isso evita transformar um sintoma próximo em causa raiz supostamente provada.
Ponto de controle 6: Aggregate control URL problems
Encerre “Aggregate control URL problems” somente quando o resultado salvo, exportado ou reaberto continuar igual ao estado observado. O retorno temporário da interface ajuda, mas evidência durável é mais forte. Registre qualquer limite restante para a próxima pessoa.
Ponto de controle 7: NAT and firewall idle timeout
Para “NAT and firewall idle timeout”, separe uma decisão do produto de um limite do sistema, hardware, arquivo, permissão ou processo. Confirme qual camada produziu a evidência antes de atribuir causa. Isso evita transformar um sintoma próximo em causa raiz supostamente provada.
Ponto de controle 8: Camera idle disconnects
Encerre “Camera idle disconnects” somente quando o resultado salvo, exportado ou reaberto continuar igual ao estado observado. O retorno temporário da interface ajuda, mas evidência durável é mais forte. Registre qualquer limite restante para a próxima pessoa.
Ponto de controle 9: RTP silence vs RTSP disconnect
Para “RTP silence vs RTSP disconnect”, separe uma decisão do produto de um limite do sistema, hardware, arquivo, permissão ou processo. Confirme qual camada produziu a evidência antes de atribuir causa. Isso evita transformar um sintoma próximo em causa raiz supostamente provada.
Ponto de controle 10: Checklist for streams that stop after 30 seconds
Encerre “Checklist for streams that stop after 30 seconds” somente quando o resultado salvo, exportado ou reaberto continuar igual ao estado observado. O retorno temporário da interface ajuda, mas evidência durável é mais forte. Registre qualquer limite restante para a próxima pessoa.
Matriz de aceitação
| Ponto | Evidência a manter | Condição de aprovação |
|---|---|---|
| A transmissão RTSP é interrompida após 30 segundos: manutenção de atividade, tempo limite de sessão, NAT e desconexão de | Estado inicial, uma ação e estado resultante | Outra pessoa reproduz o resultado declarado |
| Por que os fluxos RTSP param após 30 segundos, 60 segundos ou alguns minutos e como depurar solicitações de manutenção d | Estado inicial, uma ação e estado resultante | Outra pessoa reproduz o resultado declarado |
| Por que o RTSP pode parar depois de iniciado | Estado inicial, uma ação e estado resultante | Outra pessoa reproduz o resultado declarado |
| Cabeçalho e tempo limite da sessão RTSP | Estado inicial, uma ação e estado resultante | Outra pessoa reproduz o resultado declarado |
| OPTIONS vs GETPARAMETER keepalive | Estado inicial, uma ação e estado resultante | Outra pessoa reproduz o resultado declarado |
| Aggregate control URL problems | 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 -->