Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador
Cómo diagnosticar cambios RTP SSRC en transmisiones de cámara RTSP, restablecimientos de números de secuencia, discontinuidad de marca de tiempo, reinicios del codificador de cámara, transmisiones de conmutación por error y fallas en el decodificador.
RTP SSRC identifica la fuente de sincronización de una secuencia RTP. Cuando cambia en medio de una sesión RTSP, los usuarios pueden ver congelaciones, cuadros negros, desincronización de audio/video, video corrupto, alarmas de pérdida de paquetes o reinicio repentino del decodificador. Las frases de búsqueda incluyen "RTP SSRC cambiado", "La transmisión RTSP se congela después de reiniciar la cámara", "restablecimiento del número de secuencia RTP", "discontinuidad de la marca de tiempo RTP" y "la fuente de la transmisión de la cámara cambió a mitad de la transmisión".
RTSP Inspector es útil porque esta no es una pregunta normal de un jugador. La evidencia clave se encuentra en los encabezados de los paquetes RTP, los informes del remitente RTCP, los metadatos de seguimiento SDP, los números de secuencia y las marcas de tiempo.
Qué significa SSRC
En RTP, cada fuente de medios tiene un valor SSRC. Una pista de vídeo y una pista de audio suelen tener valores SSRC diferentes. El receptor utiliza SSRC junto con el tipo de carga útil, el número de secuencia, la marca de tiempo y los informes RTCP para mantener la continuidad de la transmisión.
Si el SSRC cambia, un receptor debe decidir si esto es:
- Una nueva fuente de sincronización legítima.
- Se reinicia el codificador de la cámara.
- Una conmutación por error a otro codificador.
- Un error de firmware.
- Un problema de reescritura de NAT/proxy.
- Una nueva transmisión se mezcló incorrectamente en la misma sesión.
Tratar todos los cambios de SSRC como pérdida de paquetes es engañoso.
Síntomas comunes
Un cambio de SSRC puede producir varios síntomas visibles:
- El vídeo se congela durante unos segundos.
- El decodificador muestra "unidad NAL no válida" o "falta un marco de referencia".
- La reproducción continúa pero la latencia aumenta.
- El audio y el vídeo se separan.
- El cliente registra una pérdida repentina de paquetes.
- Picos de fluctuación RTCP.
- Los números de secuencia se reinician desde un valor pequeño.
- La marca de tiempo RTP salta hacia atrás o hacia adelante.
La pregunta importante es si la identidad de los medios cambió al mismo tiempo que la secuencia y la continuidad de la marca de tiempo.
Reinicio de la cámara o reinicio del codificador
Muchas cámaras IP reinician la canalización de su codificador sin cerrar la conexión TCP RTSP. Es posible que la sesión de control aún parezca viva, pero el RTP cambia debajo de ella.
Evidencia:
- Continúa el mismo ID de sesión RTSP.
- Cambios en RTP SSRC.
- Se reinicia el número de secuencia RTP.
- La marca de tiempo RTP se reinicia o salta.
- El informe del remitente RTCP cambia la asignación.
- El fotograma clave aparece poco después del reinicio o el decodificador espera hasta el siguiente fotograma IDR.
Si la transmisión se recupera después del siguiente fotograma clave, el problema puede ser el reinicio del codificador en lugar de la pérdida de paquetes de red.
Fuentes de medios con carga equilibrada y conmutación por error
Algunos sistemas transmiten transmisiones RTSP a través de una puerta de enlace. Si la puerta de enlace cambia cámaras ascendentes, tuberías de grabación o trabajadores transcodificadores, el receptor puede ver un nuevo SSRC.
Esto puede suceder con:
- Retransmisión de NVR.
- Puentes de cámara en la nube.
- Conmutación por error del proxy RTSP.
- Firmware de cámara multicodificador.
- Servidores de flujo redundantes.
- Equilibradores de carga que no conservan la afinidad de los medios.
Si los cambios de SSRC se correlacionan con la conmutación por error del backend, la solución puede pertenecer a la capa de retransmisión.
Restablecer el número de secuencia
Los números de secuencia RTP son de 16 bits y normalmente aumentan en uno por cada paquete en el mismo flujo. Se puede esperar un reinicio al mismo tiempo que el cambio de SSRC. Un reinicio sin cambio de SSRC es más sospechoso.
Comparaciones útiles:
- Antiguo rango de secuencia SSRC.
- Nuevo primer número de secuencia del SSRC.
- Tipo de carga útil antes y después.
- Marca de tiempo antes y después.
- Comportamiento del bit marcador cerca del límite.
- Si aparece un fotograma clave después del reinicio.
Esta distinción es importante para el SEO porque muchas personas buscan "restablecer el número de secuencia RTP" y asumen la pérdida de paquetes, mientras que la verdadera causa es el reemplazo de la fuente.
Discontinuidad de la marca de tiempo
Las marcas de tiempo RTP siguen el reloj de los medios. Para vídeo, esto suele ser 90 kHz. Si la marca de tiempo retrocede, un receptor puede eliminar fotogramas o reordenarlos incorrectamente. Si salta mucho hacia adelante, el comportamiento del búfer de fluctuación puede cambiar.
Cuando cambia SSRC, la discontinuidad de la marca de tiempo puede ser aceptable si el receptor la trata como una nueva fuente. Cuando SSRC no cambia, la discontinuidad de la marca de tiempo a menudo indica que el reloj del remitente está roto.
RTSP Inspector debe mostrar claramente el límite de la marca de tiempo:
old SSRC: sequence 43120, timestamp 88210000
new SSRC: sequence 210, timestamp 3000
That kind of evidence is more useful than a player screenshot.
RTCP sender report changes
RTCP sender reports map RTP timestamps to wall-clock time. If SSRC changes, the receiver should watch for new RTCP sender reports.
Questions to answer:
- Does the new SSRC send RTCP SR?
- Does the old SSRC send RTCP BYE?
- Does the camera announce source shutdown?
- Is jitter calculated per SSRC or across the boundary?
- Does packet loss accounting reset correctly?
If a tool merges statistics across SSRC changes, it may show false loss, false jitter, or false bitrate dips.
Decoder behavior
Even when RTP is valid, decoders need a clean frame boundary. For H.264 and H.265, recovery may require SPS/PPS/VPS and an IDR frame.
After an SSRC change, check:
- Does the next access unit include a keyframe?
- Are SPS and PPS repeated?
- Does the SDP still match the actual stream?
- Does payload type stay the same?
- Does fragmentation restart in the middle of a frame?
If the new source starts with P-frames only, the receiver may show black video until the next keyframe.
Debug checklist
Use this workflow:
- Identify all SSRC values per RTP track.
- Locate the exact packet where SSRC changes.
- Compare sequence numbers before and after.
- Compare RTP timestamps before and after.
- Check RTCP BYE and sender reports.
- Check whether RTSP session ID changed.
- Check whether payload type changed.
- Look for keyframe or codec config after the boundary.
- Separate source restart from network loss.
- Export the boundary packets for firmware or gateway debugging.
Final diagnosis
An RTP SSRC change is not automatically a network problem. It can reveal camera encoder restart, RTSP relay failover, timestamp reset, media source replacement, or decoder recovery delay.
RTSP Inspector helps by showing the media evidence that players hide: SSRC, sequence number, timestamp, RTCP behavior, keyframe recovery, and the exact packet where the stream identity changed.
<!-- rtsp-localized-evidence-foundation-v1:start -->Evidencia reproducible para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador»
La respuesta directa es que una avería de vídeo no se demuestra con una ventana negra ni con un solo código de estado. Un diagnóstico fiable conecta la petición y la respuesta RTSP, el transporte negociado, una sesión válida y después los números de secuencia RTP, las marcas de tiempo y las señales RTCP. Para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador», empieza por la capa más cercana al síntoma visible, pero conserva una cronología común para no mezclar un fallo de control con uno de red o decodificación.
Antes de cambiar la cámara, el firewall o el VMS, crea una prueba base pequeña. Anota la URL RTSP sin contraseña, la hora, la ruta, el transporte solicitado, la respuesta del servidor y el instante del primer paquete multimedia. Prueba UDP y TCP interleaved por separado cuando el equipo ofrezca ambos. No cambies ruta, credenciales y transporte a la vez; si el segundo intento funciona, necesitas saber qué variable produjo la diferencia.
| Capa | Evidencia que se debe guardar | Pregunta de decisión |
|---|---|---|
| RTSP | método, estado, cabeceras, CSeq y Session | ¿El servidor aceptó exactamente la operación? |
| SDP | control, payload type, clock rate y codec | ¿El servidor describió la pista esperada? |
| Transport | client_port, server_port o interleaved | ¿Ambos extremos usan el mismo canal? |
| RTP | SSRC, secuencia, timestamp y marker | ¿Las unidades llegan en un orden explicable? |
| RTCP | sender report, CNAME y BYE | ¿Se pueden relacionar reloj, identidad y final? |
| Decoder | SPS/PPS/VPS y packetization mode | ¿El payload recibido permite iniciar el decoder? |
Separa «no llega multimedia» de «llega multimedia que no se puede decodificar». Si no aparece RTP después de SETUP y PLAY correctos, revisa UDP, NAT, firewall y una respuesta Transport distinta de la oferta. RTP con huecos de secuencia prueba pérdida o reordenación. Una secuencia continua sin imagen desplaza la investigación hacia payload type, clock rate, límites de cuadro y parámetros H.264 o H.265. Esta frontera es más útil que el mensaje general del reproductor.
¿Cómo se redacta una respuesta que pueda citarse?
Usa tres frases: última operación correcta, primera evidencia que falla y siguiente prueba que separa dos causas. Ejemplo: «DESCRIBE, SETUP y PLAY terminan correctamente; no llega RTP a los puertos anunciados por el cliente; repetir por TCP interleaved separará el bloqueo UDP de una ruta multimedia incorrecta». No atribuyas el fallo a la cámara o a la red sin una respuesta o un paquete que marque ese límite.
¿Qué hace reproducible el caso?
Guarda OPTIONS, DESCRIBE, SETUP y PLAY, el SDP, la respuesta Transport y el identificador Session saneado. Para RTP registra SSRC, primer y último número de secuencia, clock rate, huecos y duración. Indica si VLC u otro VMS funciona, pero úsalo como comparación controlada, no como prueba de que el cliente exitoso interpreta todas las reglas de forma correcta.
¿Cuándo se investiga el servidor y cuándo el cliente?
Mira el servidor si rechaza un método, entrega un control URL inexistente, responde con un transporte incompatible o cambia SSRC o reloj sin transición. Mira el cliente si reutiliza un nonce caducado, pierde Session, solicita UDP sin abrir los puertos o interpreta cada final NAL como final de access unit. Si el límite está entre ambos, conserva paquete y hora en cada afirmación.
¿Cómo se revisa el informe?
Repite desde una conexión nueva y compara las dos cronologías solo hasta la primera diferencia. Elimina contraseñas y valores Authorization completos. Relaciona cada conclusión con CSeq, secuencia o timestamp. Continúa con la guía RTSP relacionada y usa RTSP Inspector para probar un stream RTSP y recoger evidencia de forma local, sin subir el vídeo de la cámara a un servicio público.
<!-- rtsp-localized-evidence-foundation-v1:end --><!-- multilingual-blog-closeout:start -->Respuesta directa y límite de aceptación
La respuesta breve a «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador» es: Cómo diagnosticar cambios RTP SSRC en transmisiones de cámara RTSP, restablecimientos de números de secuencia, discontinuidad de marca de tiempo, reinicios del codificador de cámara, transmisiones de conmutación por error y fallas en el decodificador. Trate esa frase como un resultado que debe comprobarse, no como una promesa para cualquier entrada, dispositivo, proyecto o entorno. Un resultado completo registra estado inicial, acción exacta, salida visible y condición que demuestra que la tarea terminó en RTSP Inspector.
Procedimiento basado en evidencia
Empiece con un caso pequeño y repetible antes de cambiar un proyecto completo. Anote versión de la aplicación, sistema operativo, identidad de entrada o dispositivo, ajustes relevantes y resultado esperado. Ejecute una acción deliberada, conserve la primera transición inesperada y compárela con un caso conocido cuando exista. Cambiar varios controles a la vez oculta qué condición creó o corrigió el problema.
Punto de control 1: Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambio
Trate «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y» como una puerta de aceptación independiente para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador». Registre el estado inicial, el primer cambio visible y el estado final. Si el resultado no coincide con el objetivo descrito, vuelva al último punto confirmado en lugar de continuar sobre suposiciones.
Punto de control 2: Cómo diagnosticar cambios RTP SSRC en transmisiones de cámara RTSP, restablecimientos de n
Convierta «Cómo diagnosticar cambios RTP SSRC en transmisiones de cámara RTSP, restablecimientos de números de secuencia, discontinuidad de marca de tiempo, rein» en una afirmación de aprobado o fallo que otra persona pueda repetir. Incluya qué debe aparecer, qué debe estar ausente y qué recuperación es segura. Mantenga intacto el proyecto o captura original hasta que la copia corregida pase la misma prueba.
Punto de control 3: Qué significa SSRC
Trate «Qué significa SSRC» como una puerta de aceptación independiente para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador». Registre el estado inicial, el primer cambio visible y el estado final. Si el resultado no coincide con el objetivo descrito, vuelva al último punto confirmado en lugar de continuar sobre suposiciones.
Punto de control 4: Síntomas comunes
Convierta «Síntomas comunes» en una afirmación de aprobado o fallo que otra persona pueda repetir. Incluya qué debe aparecer, qué debe estar ausente y qué recuperación es segura. Mantenga intacto el proyecto o captura original hasta que la copia corregida pase la misma prueba.
Punto de control 5: Reinicio de la cámara o reinicio del codificador
Trate «Reinicio de la cámara o reinicio del codificador» como una puerta de aceptación independiente para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador». Registre el estado inicial, el primer cambio visible y el estado final. Si el resultado no coincide con el objetivo descrito, vuelva al último punto confirmado en lugar de continuar sobre suposiciones.
Punto de control 6: Fuentes de medios con carga equilibrada y conmutación por error
Convierta «Fuentes de medios con carga equilibrada y conmutación por error» en una afirmación de aprobado o fallo que otra persona pueda repetir. Incluya qué debe aparecer, qué debe estar ausente y qué recuperación es segura. Mantenga intacto el proyecto o captura original hasta que la copia corregida pase la misma prueba.
Punto de control 7: Restablecer el número de secuencia
Trate «Restablecer el número de secuencia» como una puerta de aceptación independiente para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador». Registre el estado inicial, el primer cambio visible y el estado final. Si el resultado no coincide con el objetivo descrito, vuelva al último punto confirmado en lugar de continuar sobre suposiciones.
Punto de control 8: Discontinuidad de la marca de tiempo
Convierta «Discontinuidad de la marca de tiempo» en una afirmación de aprobado o fallo que otra persona pueda repetir. Incluya qué debe aparecer, qué debe estar ausente y qué recuperación es segura. Mantenga intacto el proyecto o captura original hasta que la copia corregida pase la misma prueba.
Punto de control 9: RTCP sender report changes
Trate «RTCP sender report changes» como una puerta de aceptación independiente para «Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, restablecimientos de secuencia y fallas del decodificador». Registre el estado inicial, el primer cambio visible y el estado final. Si el resultado no coincide con el objetivo descrito, vuelva al último punto confirmado en lugar de continuar sobre suposiciones.
Punto de control 10: Decoder behavior
Convierta «Decoder behavior» en una afirmación de aprobado o fallo que otra persona pueda repetir. Incluya qué debe aparecer, qué debe estar ausente y qué recuperación es segura. Mantenga intacto el proyecto o captura original hasta que la copia corregida pase la misma prueba.
Matriz de aceptación
| Punto | Evidencia que conservar | Condición de aprobado |
|---|---|---|
| Cambio de RTP SSRC a mitad de la transmisión: depuración de reinicios de la cámara, cambios de fuente de transmisión, re | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
| Cómo diagnosticar cambios RTP SSRC en transmisiones de cámara RTSP, restablecimientos de números de secuencia, discontin | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
| Qué significa SSRC | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
| Síntomas comunes | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
| Reinicio de la cámara o reinicio del codificador | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
| Fuentes de medios con carga equilibrada y conmutación por error | Estado inicial, una acción y estado resultante | Otra persona reproduce el resultado declarado |
Aislamiento, recuperación y entrega
Deténgase en el primer límite que falla. Conserve fuente, proyecto, sesión o captura, duplíquelo antes de una edición destructiva y cambie una variable por experimento. Repetir un flujo amplio después de varios cambios puede dar otro resultado sin explicar la causa.
Separe ausencia de evidencia de evidencia de ausencia. Una vista vacía puede indicar entrada, alcance, filtro, permiso, dispositivo, intervalo o estado equivocado. Verifique adquisición o importación antes de interpretar el decoder, editor, informe o exportación.
Antes de entregar, reabra el artefacto y revise inicio, punto de decisión y final. Registre versión, plataforma, configuración, expectativa, observación y reproducción mínima. Elimine o redacte datos sensibles y confirme que el destinatario está autorizado.
Preguntas y respuestas
¿Cuál es la forma fiable más rápida de empezar?
Use el caso representativo más pequeño, escriba el resultado esperado y cambie una variable. Confirme el recorrido básico antes de añadir filtros, efectos, ediciones, automatización o una fuente mayor.
¿Qué evidencia debe guardarse?
Conserve identidad de entrada, versión, plataforma, ajustes, acción exacta, primera transición inesperada y salida final. Cierre y reabra cualquier proyecto, sesión, informe o exportación antes de considerarlo duradero.
¿Cuándo debe repetirse el procedimiento?
Repítalo después de cambios relevantes en aplicación, sistema, driver, firmware, modelo, fuente o flujo. Preserve el caso aceptado anterior como referencia sin modificar.
¿Cuándo está listo para entregar?
Cuando otra persona autorizada identifica la entrada, repite la acción, obtiene el mismo resultado, entiende los límites restantes y abre el artefacto sin depender de estado local no documentado.
Guías relacionadas
Estas páginas en el mismo idioma cubren etapas contiguas sin cambiar el propietario canónico del tema:
- Solución de desviación de la marca de tiempo RTSP: discrepancia en la frecuencia del reloj RTP, sincronización de audio/vídeo y errores de s
- Transmisiones de cámara RTSP multidifusión y UDP: por qué Discovery funciona pero los medios no llegan
- Error de RTP en la solución de transmisión principal: diagnosticar pérdida de paquetes, congelaciones de cámara y macrobloques en RTSP