US 12,108,098 B2
Digital transport adapter
Michael Sallas, Radnor, PA (US); David DeAndrade, San Anselmo, CA (US); and Christopher Stone, Newtown, PA (US)
Assigned to TiVo Corporation, San Jose, CA (US)
Filed by TIVO CORPORATION, San Jose, CA (US)
Filed on Jul. 11, 2023, as Appl. No. 18/220,618.
Application 18/220,618 is a continuation of application No. 17/137,764, filed on Dec. 30, 2020, granted, now 11,750,858.
Application 17/137,764 is a continuation of application No. 16/923,533, filed on Jul. 8, 2020, granted, now 11,297,361, issued on Apr. 5, 2022.
Application 16/923,533 is a continuation of application No. 16/146,498, filed on Sep. 28, 2018, granted, now 10,757,455, issued on Aug. 25, 2020.
Application 16/146,498 is a continuation of application No. 15/347,218, filed on Nov. 9, 2016, granted, now 10,148,985, issued on Dec. 4, 2018.
Application 15/347,218 is a continuation of application No. 14/284,978, filed on May 22, 2014, granted, now 9,521,442, issued on Dec. 13, 2016.
Prior Publication US 2023/0362419 A1, Nov. 9, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04N 21/2385 (2011.01); G06F 16/84 (2019.01); H04N 21/239 (2011.01); H04N 21/2668 (2011.01); H04N 21/426 (2011.01); H04N 21/434 (2011.01); H04N 21/438 (2011.01); H04N 21/4385 (2011.01); H04N 21/845 (2011.01); H04N 21/858 (2011.01); G06F 16/74 (2019.01); H04N 21/234 (2011.01)
CPC H04N 21/2385 (2013.01) [G06F 16/84 (2019.01); H04N 21/2393 (2013.01); H04N 21/2668 (2013.01); H04N 21/42615 (2013.01); H04N 21/4341 (2013.01); H04N 21/4345 (2013.01); H04N 21/4384 (2013.01); H04N 21/43853 (2013.01); H04N 21/8456 (2013.01); H04N 21/858 (2013.01); G06F 16/748 (2019.01); H04N 21/234 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
identifying a multi-program data stream comprising a plurality of programs including a program requested by a requesting device, wherein the multi-program data stream comprises a first data structure;
generating a second data structure by modifying a particular portion of the first data structure;
converting the multi-program data stream to a single-program data stream by replacing the first data structure with the second data structure, wherein the single-program data stream corresponds to the requested program;
transmitting the single-program data stream to the requesting device for a particular period of time; and
in response to determining that the particular period of time has elapsed, modifying the second data structure in the single-program data stream by causing the second data structure to include the particular portion of the first data structure of the multi-program data stream.