Synchronizing Redundant Video Streams via Edge Device Buffering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In video over IP deployments, synchronizing redundant video streams sent via different network paths is challenging due to packet loss, delay, and lack of sequencing information in UDP, which affects reliability and error detection.
Innovation Solution
A method and apparatus in a network edge device that buffers and synchronizes redundant media streams by learning program identifiers and comparing synchronization points defined by parameters such as PID, payload_unit_start_indicator, continuity_counter, packet_start_code_prefix, and PES_packet_length, to produce a single synchronized output stream, while detecting and mitigating failure conditions like packet loss and stream failure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple redundant video streams are sent via different network paths to increase reliability, then the reliability and error detection capability are improved, but the synchronization difficulty and device complexity increase due to packet loss, delay, and lack of sequencing information in UDP
Solution Approach 1:
The patent applies preliminary action by pre-defining synchronization points in the video stream using PES packet headers and TS packet fields. These synchronization points are marked in advance with specific field combinations (PES packet length, stream ID, continuity counter) that enable future alignment operations. By preparing these reference points beforehand, the system can quickly synchronize streams without complex real-time analysis, thus improving reliability while controlling device complexity.
Solution Approach 2:
The patent uses an intermediary approach by introducing a network edge device that acts as a mediator between the multiple redundant video streams and the output. This device performs synchronization by comparing synchronization points from different streams, detecting packet loss through continuity counter analysis, and reassembling packets in the correct order. The intermediary handles the complexity of synchronization internally, providing a simplified reliable output stream while managing the challenges of UDP packet delivery.
2Productivity
If UDP is used for media transport to reduce overhead, then the transmission efficiency is improved, but the packet sequencing and synchronization capability deteriorate due to lack of support for packet sequencing information
Solution Approach 1:
The patent applies the extraction principle by removing and analyzing specific synchronization-relevant fields from the UDP and TS packet structures. It extracts the PES packet length field, stream ID, and continuity counter from the packet headers to create a simplified synchronization model. By taking out only the essential fields needed for synchronization while ignoring other overhead, the system maintains UDP's efficiency while recovering sequencing information needed for reliable stream reconstruction.
Solution Approach 2:
The patent implements feedback by continuously monitoring the continuity counter fields in incoming UDP packets and using this information to detect packet loss and out-of-order delivery. The system provides feedback loops that compare expected versus actual packet sequences, identify synchronization drift, and adjust the reassembly process accordingly. This feedback mechanism enables the system to maintain synchronization accuracy despite UDP's lack of inherent sequencing, preserving transport efficiency while compensating for information loss.
Data Source
AI summary
An apparatus, e.g., in a network edge device, a method, and a software program product for synchronizing two or more redundant media streams, e.g., MPEG video streams. The method includes receiving network packets encapsulating redundant media streams representing the same media program, buffering the received streams, learning a program identifier for the media program, searching the packets of the redundant streams for synchronization points defined by a plurality of parameters of stream packets, synchronizing the redundant streams based on the comparison, and providing a single stream as an output stream.


