US 12,231,713 B2
System and method to synchronize rendering of multi-channel audio to video presentation
Christopher S. Del Sordo, Souderton, PA (US); Christopher R. Boyd, Chalfont, PA (US); and Albert F. Elcock, West Chester, PA (US)
Assigned to ARRIS ENTERPRISES LLC, Horsham, PA (US)
Filed by ARRIS Enterprises LLC, Suwanee, GA (US)
Filed on Apr. 22, 2022, as Appl. No. 17/726,743.
Claims priority of provisional application 63/220,041, filed on Jul. 9, 2021.
Prior Publication US 2023/0016118 A1, Jan. 19, 2023
Int. Cl. H04N 21/242 (2011.01); H04N 21/43 (2011.01); H04N 21/4363 (2011.01)
CPC H04N 21/4305 (2013.01) [H04N 21/242 (2013.01); H04N 21/4307 (2013.01); H04N 21/43635 (2013.01); H04N 21/43637 (2013.01)] 15 Claims
OG exemplary drawing
 
1. An audio/video (AV) device for use with a video player, a speaker, and encoded AV data including multiplexed encoded video data and encoded audio data, said AV device comprising:
a memory having instructions stored therein; and
a processor configured to execute the instructions stored on said memory to cause said AV device to:
determine a buffer level of the speaker based on a prefetch buffer size of the speaker, wherein the speaker is wirelessly connected to the AV device over a wireless channel that has a media parameter;
demultiplex the encoded AV data to obtain the encoded video data and the encoded audio data;
determine a channel delay associated with the wireless channel;
modify the buffer level of the speaker based on the channel delay;
set the buffer level of the speaker to the modified buffer level;
set a video player program clock of the video player and a speaker program clock of the speaker to the same speed;
provide, to the speaker, a prefetched portion of the encoded audio data based on the modified buffer level, wherein the speaker is configured to play sound based on the speaker program clock;
send, to the video player, decoded video data based on decompressing the encoded video data, wherein the video player is configured to play video data based on the video player program clock;
monitor the channel delay;
determine a deviation from a specification based on the monitoring the channel delay;
terminate providing to the speaker the prefetched portion based on the deviation; and
reestablish one or more audio and video sessions.