HLS global synchronization and multi-viewer watch parties
AssigneeNapster, Inc.
InventorPaul Kolesa
Life of this patent
Estimating the term…
Abstract
Synchronizing is performed of multiple live Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) streams in hypertext markup language (HTML) MediaElements. Time differentials are computed between video encoder date/time tags and current date/time retrieved from a universal time (UTC) time server. A playhead position of an HTML MediaElement is controlled to maintain a calculated time offset value defined as the current date/time minus a predefined time offset. MediaElement source content and the playhead position are dynamically controlled while maintaining video synchronization to the predefined time offset.
Claims35
A method for synchronizing multiple live Hypertext Transfer Protocol (HTTP) Live Streaming (HLS) streams in hypertext markup language (HTML) MediaElements, the method comprising:
- calculating time differentials between video encoder date/time tags and current date/time retrieved from a universal time (UTC) time server;
- controlling a playhead position of an HTML MediaElement to maintain a calculated time offset value defined as the current date/time minus a predefined time offset;
- and
- dynamically controlling MediaElement source content and the playhead position while maintaining video synchronization to the predefined time offset.
A system for synchronizing multiple live HLS streams in HTML MediaElements, the multiple live HLS streams being segmented and stamped with UTC date/time stamps in a manifest, the system comprising:
- a client hardware device executing a web browser application to perform operations including to:
- calculate time differentials between the UTC date/time stamps and current date/time retrieved from a UTC time server;
- control a playhead position of an HTML MediaElement to maintain a calculated time offset value defined as the current date/time minus a predefined time offset;
- and
- dynamically control MediaElement source content and the playhead position while maintaining video synchronization across the multiple live HLS streams to the predefined time offset.
A non-transitory computer-readable media comprising instruction for synchronizing multiple live HLS streams in HTML MediaElements, the multiple live HLS streams being segmented and stamped with UTC date/time stamps in a manifest that, when executed by a client hardware device executing a web browser application cause the client hardware device to perform operations including to:
- calculate time differentials between the UTC date/time stamps and current date/time retrieved from a UTC time server;
- control a playhead position of an HTML MediaElement to maintain a calculated time offset value defined as the current date/time minus a predefined time offset;
- and
- dynamically control MediaElement source content and the playhead position while maintaining video synchronization across the multiple live HLS streams to the predefined time offset.
Dependencies are inferred from the claim text.