IP Library › Granted Patent US 12,513,204
Granted Patent B2
US 12,513,204 · App. 18/318,142 · Granted Dec 30, 2025

Video streaming

Inventors: Maarten Tielemans (Langdorp, BE); Pieter-Jan Speelmans (Diest, BE); Steven Tielemans (Leuven, BE); Egon Okerman (Sint-Genesius-Rode, BE)
H04L65/61
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,513,204
App. No.
18/318,142
Granted
Dec 30, 2025
Kind
B2
Abstract

A server for streaming a video to a client involves making the video available from the server to the client upon request in at least a temporal independent version and a temporal dependent version. The server is configured for: i) receiving a request from the client to receive a stream of the video from an arbitrary starting point in time; and ii) retrieving at least the first frame from the temporal independent version; and iii) retrieving frames subsequent to the at least first frame from the temporal dependent version; and iv) sending the at least first frame to the client and send the frames subsequent to the at least first frame to the client.

Claims (59)

1 . A server for streaming a video to a client over a communication network,

wherein the server is configured to make the video available to the client upon request in at least one temporal independent version and at least one temporal dependent version, the temporal independent version including only key frames decodable independently of other frames, and the temporal dependent version including dependent frames that are decodable based on information of other frames; and

wherein the server includes:

one or more processors; and

memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving a request from the client to receive a stream of the video from an arbitrary starting point in time onwards; and

retrieving at least a first frame of the stream from the temporal independent version of the video; and

wherein the first frame corresponds with the starting point in time; and

retrieving frames subsequent to the at least first frame from the temporal dependent version; and

sending the at least first frame to the client and sending the frames subsequent to the at least first frame to the client such that the video is streamed to the client and starts with at least one temporal independent frame associated with the starting point in time.

2 . The server according to claim 1 wherein the retrieving the first frame further comprises selecting the first frame as:

the frame of the temporal independent version closest to the arbitrary starting point in time;

the frame of the temporal independent version subsequent to the arbitrary starting point in time; or

the frame of the temporal independent version prior to the arbitrary starting point in time.

3 . The server according to claim 1 wherein the temporal independent version has a lower frame rate than the temporal dependent version.

4 . The server according to claim 1 wherein the receiving a request further comprises:

receiving a first request for the at least the first frame of the stream; and

receiving a second request for the frames subsequent to the at least first frame.

5 . The server according to claim 4 wherein the second request is a byte range request comprising a byte range indicative for a portion of the video starting with the frames subsequent to the at least first frame.

6 . The server according to claim 1 wherein the sending the frames comprises sending the frames as chunks of a chunked transfer encoding session with the client.

7 . The server according to claim 1 further configured to perform the following steps:

during the sending the frames subsequent to the at least first frame, receiving from the client a further request for a temporal independent version of one of the frames subsequent to the at least first frame;

thereupon, retrieving the requested temporal independent version of one of the frames from the temporal independent version of the video; and

sending the retrieved temporal independent version of one of the frames to the client.

8 . The server according to claim 1 further configured to generate a frame of the temporal independent version of the video from a source video upon receiving a request for the frame from the client.

9 . The server according to claim 1 wherein the server is a caching server for cached serving of requests from the client to an origin server.

10 . The server according to claim 1 wherein the server is an origin server.

11 . The server according to claim 1 further configured to:

during the sending the frames subsequent to the at least first frame, receiving from the client a further request for a temporal dependent or independent version of one or more frames with a different quality; and

providing the one or more frames with the different quality.

12 . A client for streaming a video from a server over a communication network,

wherein the video is available from the server to the client upon request in at least one temporal independent version and at least one temporal dependent version, the temporal independent version including only key frames decodable independently of other frames, and the temporal dependent version including dependent frames that are decodable based on information of other frames; and

wherein the client includes:

one or more processors; and

memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:

sending a request to the server to receive a stream of the video from an arbitrary starting point in time onwards; and

receiving from the server at least a first frame of the stream from the temporal independent version of the video; and

wherein the first frame corresponds with the starting point in time; and

receiving from the server, frames subsequent to the at least first frame from the temporal dependent version; and

playing the video from the starting point in time onwards by the at least first frame followed by the frames.

13 . A computer-implemented method for streaming a video to a client over a communication network,

wherein the video is available to the client upon request in at least one temporal independent version and at least one temporal dependent version, the temporal independent version including only key frames decodable independently of other frames, and the temporal dependent version including dependent frames that are decodable based on information of other frames, and

wherein the method comprises the following steps:

receiving a request from the client to receive a stream of the video from an arbitrary starting point in time onwards;

retrieving at least a first frame of the stream from the temporal independent version of the video, wherein the first frame corresponds with the starting point in time;

retrieving frames subsequent to the at least first frame from the temporal dependent version; and

sending the at least first frame to the client and sending the frames subsequent to the at least first frame to the client such that the video is streamed to the client and starts with at least one temporal independent frame associated with the starting point in time.

14 . A non-transitory computer-readable storage medium comprising a computer program including instructions for streaming a video to a client over a communication network,

wherein the video is available to the client upon request in at least one temporal independent version and at least one temporal dependent version, the temporal independent version including only key frames decodable independently of other frames, and the temporal dependent version including dependent frames that are decodable based on information of other frames, and

wherein operations for streaming the video comprises:

receiving a request from the client to receive a stream of the video from an arbitrary starting point in time onwards;

retrieving at least a first frame of the stream from the temporal independent version of the video, wherein the first frame corresponds with the starting point in time;

retrieving frames subsequent to the at least first frame from the temporal dependent version; and

sending the at least first frame to the client and sending the frames subsequent to the at least first frame to the client such that the video is streamed to the client and starts with at least one temporal independent frame associated with the starting point in time.

15 . The server of claim 1 , wherein the at least one temporal independent version of the video includes two temporal independent versions each with a different bit rate.

16 . The server of claim 15 , wherein the two temporal independent versions have different resolutions.

17 . The server of claim 1 , wherein the at least one temporal dependent version of the video includes two temporal dependent versions each with a different bit rate.

18 . The server of claim 17 , wherein the two temporal dependent versions have the same resolution.

19 . The server of claim 17 , wherein the each of the two temporal dependent versions corresponds to a respective temporal independent version having a corresponding resolution.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2026
From: THEO TECHNOLOGIES
To: DOLBY INTERNATIONAL AB
Reel/Frame 073499/0508 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2025
From: THEO TECHNOLOGIES
To: DOLBY INTERNATIONAL AB
Reel/Frame 069995/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2023
From: TIELEMANS, MAARTEN; SPEELMANS, PIETER-JAN; THIELEMANS, STEVEN; OKERMAN, EGON
To: THEO TECHNOLOGIES
Reel/Frame 063657/0279 →
Priority Claims (1)
EP 18152938 · Jan 23, 2018 · regional
Continuity (2)
Continuation 16964299
Related Publication 20230291777A1 · Sep 14, 2023
References Cited (33)
US 11695816B2 · Tielemans et al. · 2023 [cited by applicant]
US 20120047542A1 · Lewis et al. · 2012 [cited by applicant]
US 20120117263A1 · Xu et al. · 2012 [cited by applicant]
US 20140150019A1 · Ma et al. · 2014 [cited by applicant]
US 20140282766A1 · Good · 2014 [cited by examiner]
US 20140365675A1 · Bhardwaj et al. · 2014 [cited by applicant]
US 20150019629A1 · Giladi et al. · 2015 [cited by applicant]
US 20150026289A1 · Nordness et al. · 2015 [cited by applicant]
US 20150067722A1 · Bjordammen et al. · 2015 [cited by applicant]
US 20160029076A1 · Huber et al. · 2016 [cited by applicant]
US 20160234504A1 · Good · 2016 [cited by examiner]
US 20160277466A1 · Lohmar et al. · 2016 [cited by applicant]
US 20170272485A1 · Gordon et al. · 2017 [cited by applicant]
US 20170310752A1 · Knothe · 2017 [cited by applicant]
US 20190222879A1 · Jones et al. · 2019 [cited by applicant]
US 20200037008A1 · Hassler · 2020 [cited by applicant]
US 20230164398A1 · Okerman et al. · 2023 [cited by applicant]
EP 3515075A1 · 2019 [cited by applicant]
KR 1020140004262A · 2014 [cited by applicant]
WO WO2016093752A1 · 2016 [cited by applicant]
WO WO2018231527A1 · 2018 [cited by applicant]
WO WO2019145217A1 · 2019 [cited by applicant]
International Search Report and Written Opinion from PCT Application No. PCT/EP2019/051155, Feb. 15, 2019. [cited by applicant]
Search Report from corresponding EP Application No. EP18152938, Jun. 15, 2018. [cited by applicant]
[No Author Listed], “Comparing Adaptive HTTP Streaming Technologies: A Comparison of Apple's HTTP Live Streaming (HLS), Microsoft's Silverlight Smooth Streaming (MSS) and Adobe's HTTP Dynamic Streaming (HDS),” RGB Netwo… [cited by applicant]
[No Author Listed], “Information technology—Dynamic adaptive streaming over http (DASH)—Part 1: Media presentation description and segment formats,” ISO/IEC 1/SC 29, 23009-1:2013(E), Aug. 2, 2013, server date Nov. 4, 20… [cited by applicant]
Extended European Search Report in European Appln. No. 20170744.5, Jul. 30, 2020, 8 pages. [cited by applicant]
Fielding et al., “Hypertext Transfer Protocol (HTTP/1.1): Range Requests,” Internet Engineering Task Force (IETF), Request for Comments: 7233, Jun. 2014, 25 pages. [cited by applicant]
International Preliminary Report on Patentability in International Appln. No. PCT/EP2019/051155, mailed on Aug. 6, 2020, 7 pages. [cited by applicant]
International Preliminary Report on Patentability in International Appln. No. PCT/EP2021/059467, mailed on Oct. 25, 2022, 7 pages. [cited by applicant]
International Search Report and Written Opinion in International Appln. No. PCT/EP2021/059467, mailed on May 4, 2021, 11 pages. [cited by applicant]
Van Der Hooft et al., “Performance Characterization of Low-Latency Adaptive Streaming From Video Portals,” IEEE Access, Aug. 3, 2018, 6:43039-43055. [cited by applicant]
U.S. Appl. No. 17/919,950, filed Oct. 19, 2022, Okerman et al. [cited by applicant]