IP Library Granted Patent US 12,665,940
Granted Patent B2
US 12,665,940 · App. 18/744,170 · Granted Jun 23, 2026

Methods and apparatus for synchronous HTTP media playback

Inventors: Reza Pezeshki (Chevy Chase, MD); Richard Tatem (Middletown, MD); Horia-Mihai Popa (Iasi, RO); Bogdan Livadariu (Valea Lupului, RO); Wassim Daccache (Ellicott City, MD)
Assignee: DIRECTV, LLC
H04L65/65H04L65/611H04L67/02H04N21/8547
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,665,940
App. No.
18/744,170
Filed
Jun 14, 2024
Granted
Jun 23, 2026
Kind
B2
Art Unit
2454
USPC
709/231
Abstract

Systems, apparatus, articles of manufacture, and methods are disclosed to synchronize media playback at devices in a multicast environment. Disclosed is a system to synchronize media playback, the system comprising programmable circuitry, and a memory that stores executable instructions that, when executed or instantiated by the programmable circuitry, facilitate performance of operations, comprising transmitting, using a hypertext transfer protocol (HTTP), a first request in a first HTTP message to a first client device and to a second client device, receiving, from the first client device in response to the first request. a first time stamp associated with a first presentation, the first time stamp representing a first playback time within the first presentation, receiving, from the second client device in response to the first request, a second time stamp associated with a second presentation, the second time stamp representing a second playback time within the second presentation, calculating a time difference between the first time stamp and the second time stamp, determining whether the time difference satisfies a threshold, transmitting a second HTTP message to the first client device and the second client device in response to a determination that the time difference fails to satisfy the threshold, the second HTTP message to cause the first client device to pause the first presentation and the second client device to pause the second presentation, transmitting seek instructions in a third HTTP message to the second client device, the seek instructions to cause the second client device to synchronize the second presentation to the first presentation by setting the first and second playback times equal, and transmitting a fourth HTTP message to cause the first client device to resume the first presentation and the second client device to resume the second presentation.

Claims (43)

1 . A system to synchronize media playback, the system comprising:

programmable circuitry; and

a memory that stores executable instructions that, when executed or instantiated by the programmable circuitry, facilitate performance of operations, comprising:

obtaining stream data from a content delivery network;

decapsulating the stream data to a first data and a second data;

multicasting the first data to a first device and the second data to a second device;

storing a pre-determined amount of time of the first data and the second data to the first device and the second device, a playback of the stream data based on the pre-determined amount of time; and

in response to a determination that a difference between a first time stamp of the first device and a second time stamp of the second device is less than the stored pre-determined amount of time, synchronizing the first device and the second device.

2 . The system of claim 1 , wherein the operations include obtaining the stream data from the content delivery network further includes obtaining the stream data using a hypertext transfer protocol (HTTP).

3 . The system of claim 2 , wherein decapsulating the stream data to the first data and the second data further includes:

decapsulating the stream data from the HTTP protocol to a user datagram protocol (UDP); and

determining a first data packet and a second data packet from the UDP.

4 . The system of claim 1 , wherein the operations include determining the playback of the stream data based on a difference between a first time stamp of the first device and a second time stamp of the second device.

5 . The system of claim 1 , wherein the operations include establishing an HTTP protocol connection between the system, the first device, and the second device.

6 . The system of claim 5 , wherein the operations include utilizing the HTTP protocol connection to communicate seek instructions to the first device and the second device.

7 . The system of claim 1 , wherein the operations include establishing a multicast environment to include the first device and the second device.

8 . A non-transitory machine-readable storage medium comprising instructions to cause programmable circuitry to at least:

obtain stream data from a content delivery network;

decapsulate the stream data to a first data and a second data;

multicast the first data to a first device and the second data to a second device;

store a pre-determined amount of time of the first data and the second data to the first device and the second device, a playback of the stream data based on the pre-determined amount of time; and

in response to a determination that a difference between a first time stamp of the first device and a second time stamp of the second device is less than the stored pre-determined amount of time, synchronize the first device and the second device.

9 . The non-transitory machine-readable storage medium of claim 8 , wherein to obtain the stream data from the content delivery network the instructions cause the programmable circuitry to obtain the stream data using a hypertext transfer protocol (HTTP).

10 . The non-transitory machine-readable storage medium of claim 9 , wherein to decapsulate the stream data to the first data and the second data the instructions cause the programmable circuitry to:

decapsulate the stream data from the HTTP protocol to a user datagram protocol (UDP); and

determine a first data packet and a second data packet from the UDP.

11 . The non-transitory machine-readable storage medium of claim 8 , wherein the instructions cause the programmable circuitry to determine the playback of the stream data based on a difference between a first time stamp of the first device and a second time stamp of the second device.

12 . The non-transitory machine-readable storage medium of claim 8 , wherein the instructions cause the programmable circuitry to establish an HTTP protocol connection between the programmable circuitry, the first device, and the second device.

13 . The non-transitory machine-readable storage medium of claim 12 , wherein the instructions cause the programmable circuitry to utilize the HTTP protocol connection to communicate seek instructions to the first device and the second device.

14 . The non-transitory machine-readable storage medium of claim 8 , wherein the instructions cause the programmable circuitry to establish a multicast environment to include the first device and the second device.

15 . A method to synchronize media playback, the method comprising:

obtaining stream data from a content delivery network;

decapsulating the stream data to a first data and a second data;

multicasting the first data to a first device and the second data to a second device; and

storing a pre-determined amount of time of the first data and the second data to the first device and the second device, a playback of the stream data based on the pre-determined amount of time; and

in response to a determination that a difference between a first time stamp of the first device and a second time stamp of the second device is less than the stored pre-determined amount of time, synchronizing the first device and the second device.

16 . The method of claim 15 , wherein obtaining the stream data from the content delivery network includes obtaining the stream data using a hypertext transfer protocol (HTTP).

17 . The method of claim 15 , including determining the play back of the stream data based on a difference between a first time stamp of the first device and a second time stamp of the second device.

18 . The method of claim 16 , wherein decapsulating the stream data to the first data and the second data includes:

decapsulating the stream data from the HTTP protocol to a user datagram protocol (UDP); and

determining a first data packet and a second data packet from the UDP.

19 . The method of claim 15 , including establishing an HTTP protocol connection between the first device and the second device.

20 . The method of claim 19 , including utilizing the HTTP protocol connection to communicate seek instructions to the first device and the second device.

Assignments (5)
SUCCESSION OF AGENCY IN PATENT SECURITY INTERESTS Recorded Oct 3, 2025
From: UBS AG, STAMFORD BRANCH (AS SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH)
To: UBS AG, STAMFORD BRANCH
Reel/Frame 072994/0001 →
SECURITY AGREEMENT (NOTES) Recorded Feb 13, 2025
From: DIRECTV, LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 070203/0696 →
SECURITY AGREEMENT (SUPPLEMENT TO 2027 NOTES) Recorded Feb 12, 2025
From: DIRECTV, LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 070188/0732 →
SECURITY AGREEMENT (TERM LOAN) Recorded Feb 11, 2025
From: DIRECTV, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 070175/0408 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2024
From: PEZESHKI, REZA; TATEM, RICHARD; POPA, HORIA-MIHAI; LIVADARIU, BOGDAN; DACCACHE, WASSIM
To: DIRECTV, LLC
Reel/Frame 068406/0217 →