Lip sync error detection and correction
First Claim
1. A multimedia synchronization method, comprising:
- identifying, by a server, a packet pair comprising a video stream packet including a video packet in a video stream associated with a multimedia program and an audio stream packet comprising an audio packet in an audio stream associated with the multimedia program;
detecting a first offset between the video stream packet and the audio stream packet at a first monitoring point in a multimedia network;
detecting a second offset between the video stream packet and the audio stream packet at a second monitoring point of the multimedia network, wherein the video stream packet and the audio stream packet traverse different network paths between the first monitoring point and the second monitoring point;
determining, by the server, a synchronization delta offset wherein the synchronization delta offset indicates a variation in inter-stream synchronization offset associated with the packet pair between two points in the multimedia network; and
responsive to determining that the synchronization delta offset exceeds a predetermined threshold, initiating, at a monitoring point, a corrective action procedure, wherein the corrective active procedure includes injecting empty or null packets into the component of content that is leading or lagging as appropriate;
wherein the audio stream packet and the video stream packet occur contemporaneously in the multimedia program and further wherein determining the synchronization delta offset includes decoding a presentation timestamp associated with the video stream packet; and
wherein identifying the audio stream packet includes identifying the audio stream packet based on pulse code modulation data included in the audio stream packet.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of managing lip synchronization error in a multimedia content delivery network includes identifying a video packet and an audio packet associated with the video packet and determining a synchronization offset between the audio and video packets at a first monitoring point in the network. The audio and video packets are then detected at a second monitoring point in the network and a second synchronization offset is determined. When a delta between the first synchronization offset and the second synchronization offset exceeds a threshold, lip synchronization error information may be automatically recorded and/or reported to a service provider and corrective action may be taken if potential sources of the lip synchronization error are within the domain of the service provider. The video packet may be identified by a timestamp within the packet and the audio packet may be identified by audio data within the audio packet.
83 Citations
16 Claims
-
1. A multimedia synchronization method, comprising:
-
identifying, by a server, a packet pair comprising a video stream packet including a video packet in a video stream associated with a multimedia program and an audio stream packet comprising an audio packet in an audio stream associated with the multimedia program; detecting a first offset between the video stream packet and the audio stream packet at a first monitoring point in a multimedia network; detecting a second offset between the video stream packet and the audio stream packet at a second monitoring point of the multimedia network, wherein the video stream packet and the audio stream packet traverse different network paths between the first monitoring point and the second monitoring point; determining, by the server, a synchronization delta offset wherein the synchronization delta offset indicates a variation in inter-stream synchronization offset associated with the packet pair between two points in the multimedia network; and responsive to determining that the synchronization delta offset exceeds a predetermined threshold, initiating, at a monitoring point, a corrective action procedure, wherein the corrective active procedure includes injecting empty or null packets into the component of content that is leading or lagging as appropriate; wherein the audio stream packet and the video stream packet occur contemporaneously in the multimedia program and further wherein determining the synchronization delta offset includes decoding a presentation timestamp associated with the video stream packet; and wherein identifying the audio stream packet includes identifying the audio stream packet based on pulse code modulation data included in the audio stream packet. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a processor; and a non-transitory computer readable storage medium including processor-executable instructions that, when executed by a processor, cause the processor to perform operations comprising; identifying, by a server, a packet pair comprising a video stream packet including a video packet in a video stream associated with a multimedia program and an audio stream packet comprising an audio packet in an audio stream associated with the multimedia program; detecting a first offset between the video stream packet and the audio stream packet at a first monitoring point in a multimedia network; detecting a second offset between the video stream packet and the audio stream packet at a second monitoring point of the multimedia network, wherein the video stream packet and the audio stream packet traverse different network paths between the first monitoring point and the second monitoring point; determining, by the server, a synchronization delta offset wherein the synchronization delta offset indicates a variation in inter-stream synchronization offset associated with the packet pair between two points in the multimedia network; and responsive to determining that the synchronization delta offset exceeds a predetermined threshold, initiating, at a monitoring point, a corrective action procedure, wherein the corrective active procedure includes injecting empty or null packets into the component of content that is leading or lagging as appropriate; wherein the audio stream packet and the video stream packet occur contemporaneously in the multimedia program and further wherein determining the synchronization delta offset includes decoding a presentation timestamp associated with the video stream packet; and wherein identifying the audio stream packet includes identifying the audio stream packet based on pulse code modulation data included in the audio stream packet. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable medium including processor-executable instructions that, when executed by the processor, cause the processor to perform operations, comprising:
-
identifying, by a server, a packet pair comprising a video stream packet including a video packet in a video stream associated with a multimedia program and an audio stream packet comprising an audio packet in an audio stream associated with the multimedia program; detecting a first offset between the video stream packet and the audio stream packet at a first monitoring point in a multimedia network; detecting a second offset between the video stream packet and the audio stream packet at a second monitoring point of the multimedia network, wherein the video stream packet and the audio stream packet traverse different network paths between the first monitoring point and the second monitoring point; determining, by the server, a synchronization delta offset wherein the synchronization delta offset indicates a variation in inter-stream synchronization offset associated with the packet pair between two points in the multimedia network; and responsive to determining that the synchronization delta offset exceeds a predetermined threshold, initiating, at a monitoring point, a corrective action procedure, wherein the corrective active procedure includes injecting empty or null packets into the component of content that is leading or lagging as appropriate; wherein the audio stream packet and the video stream packet occur contemporaneously in the multimedia program and further wherein determining the synchronization delta offset includes decoding a presentation timestamp associated with the video stream packet; and wherein identifying the audio stream packet includes identifying the audio stream packet based on pulse code modulation data included in the audio stream packet. - View Dependent Claims (16)
-
Specification