# US 2019/0246180 A1 · Systems and methods for enabling a user to start a scheduled program over by retrieving the same program from a non-linear source

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0246180 A1
- Document ID: US20190246180A1
- Status: Published application
- Kind: A1
- Application number: 16/385,139
- Filed: 2019-04-16
- Published: 2019-08-08
- Earliest claimed: 2017-01-03
- Assignees: Rovi Guides, Inc.
- Applicants: Rovi Guides, Inc.
- Inventors: Alexander W. Liston; Kenichiro Tanaka; Margret B. Schmidt; Elizabeth V. Riley
- Web page: https://patentgrep.com/patent/US20190246180A1

## CPC

- H04N 21/4826: {using recommendation lists, e.g. of programmes or channels sorted out according to their score}
- H04N 21/232: Content retrieval operation {locally} within server, e.g. reading video streams from disk arrays {(storage management G06F3/0604; details of querying and searching of video data from a database G06F16/739)}
- H04N 21/237: Communication with additional data server
- H04N 21/2387: Stream processing in response to a playback request from an end-user, e.g. for trick-play
- H04N 21/25866: {Management of end-user data (customer care in data networks H04L41/5077)}
- H04N 21/26241: {involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children programme}
- H04N 21/431: Generation of visual interfaces {for content selection or interaction}; Content or additional data rendering
- H04N 21/4532: {involving end-user characteristics, e.g. viewer profile, preferences (monitoring of user activities for profile generation for accessing a video database G06F16/739; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/4667: {Processing of monitored end-user data, e.g. trend analysis based on the log file of viewer selections}
- H04N 21/4821: {using a grid, e.g. sorted out by channel and broadcast time}
- H04N 21/4828: {for searching programme descriptors (retrieval of video data G06F16/739)}
- H04N 21/84: Generation or processing of descriptive data, e.g. content descriptors {(systems specially adapted for using meta-information in broadcast systems H04H60/73)}
- H04N 21/25891: {being end-user preferences (retrieval of video data in a video database based on user preferences G06F16/739; arrangements for recognizing users' preferences H04H60/46; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/437: Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server {(flow control in data networks H04L47/10; streaming protocols, e.g. RTP or RTCP, H04L65/65; scheduling or organising the servicing of application requests in data packet switching networks H04L67/60)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Systems and methods are provided herein for receiving a request from a user to access a video that is scheduled for transmission, simultaneously to a plurality of users, beginning from a scheduled start time. The request is received after the scheduled start time the transmission is performed by a linear service to which the user subscribes. In response to receiving the request, the systems and methods may generate for display the video to the user, and may receive, during display of the video, a command from the user to start playback of the video over from the beginning. In response to receiving the command, the systems and methods may identify a non-linear service to which the user subscribes that offers a non-linear copy of the video, and may play back the non-linear copy of the video from the beginning.

## Claims

### Claim at position 1

1-51. (canceled)

### Claim 52

A method for playing back a video from a position prior to access, the method comprising:
accessing the video from a linear service at a first position corresponding to a first time after a scheduled start time of the video;
receiving a command to play back the video from a second position corresponding to a time prior to the first time; and
in response to receiving the command:
retrieving a user profile;
determining from the user profile a plurality of subscribed non-linear services that provide non-linear content over an Internet link;
determining whether a non-linear service of the plurality of non-linear services offers the video for streaming; and
in response to determining that the non-linear service of the plurality of non-linear services offers the video for streaming, generating for display a playback of the video from the second position, streamed from the non-linear service.

### Claim 53 (depends on 52)

The method of claim 52, wherein playing back the video from the second position comprises:
launching a platform corresponding to the non-linear service, wherein the platform corresponding to the non-linear service is different from a platform corresponding to the linear service that is used to generate for display the video using the linear service; and
playing back the video from the second position using the platform corresponding to the non-linear service.

### Claim 54 (depends on 53)

The method of claim 53, further comprising:
determining whether playback of the video from the non-linear service has terminated; and
in response to determining that playback of the video from the non-linear service has terminated, exiting the platform corresponding to the non-linear service and resuming generating for display video using the platform corresponding to the linear service.

### Claim 55 (depends on 54)

The method of claim 54, wherein determining whether playback of the video from the non-linear service has terminated comprises:
monitoring for an end of playback of the video from the non-linear service, or a command from the user to terminate playback of the video from the non-linear service; and
in response to detecting the end of playback of the video from the non-linear service, or the command from the user to terminate playback of the video from the non-linear service, determining that playback of the video from the non-linear service has terminated.

### Claim 56 (depends on 52)

The method of claim 52, further comprising:
automatically determining, while the video is being generated for display using the transmission of the linear service, and without receiving the command, that the non-linear service offers the video for streaming;
in response to the automatic determining, automatically pre-caching the video from the non-linear service at a cache local to the user; and
in response to receiving the command, accessing the pre-cached video.

### Claim 57 (depends on 52)

The method of claim 52, further comprising:
determining, in response to the querying, that no non-linear service of the plurality of non-linear services offers the video for streaming;
in response to determining that no non-linear service of the plurality of non-linear services offers the video for streaming, querying a second plurality of non-subscribed non-linear services to determine whether a second non-linear service of the second plurality of non-linear services offers the video for streaming; and
in response to determining that the second non-linear service offers the video for streaming, generating for display to the user a selectable option to subscribe to the second non-linear service.

### Claim 58 (depends on 57)

The method of claim 57, wherein the method further comprises, further in response to determining that the second non-linear service offers the video for streaming:
pre-caching the video from the second non-linear service at a cache local to the user; and
in response to receiving a selection of the selectable option to subscribe to the second non-linear service, accessing the pre-cached video.

### Claim 59 (depends on 52)

The method of claim 52, further comprising:
generating for display, in response to the querying, a menu indicating each subscribed non-linear service offers the video for streaming; and
receiving a user selection from the menu of an indication corresponding to the non-linear service, wherein the playing back the video from the second position comprises playing back the video from the second position in response to receiving the user selection.

### Claim 60 (depends on 59)

The method of claim 59, wherein the menu additionally indicates non-subscribed non-linear services that offer the video for streaming.

### Claim 61 (depends on 52)

The method of claim 52, further comprising:
determining whether the non-linear service provider offers a premium version of the video for streaming; and
in response to determining that the non-linear service provider offers the premium version, generating for display, during playback of the video from the non-linear service, a selectable option for accessing the premium version.

### Claim 62

A system for playing back a video from a position prior to access, the system comprising:
communications circuitry; and
control circuitry configured to:
access the video from a linear service at a first position corresponding to a first time after a scheduled start time of the video;
receive, using the communications circuitry, a command to play back the video from a second position corresponding to a time prior to the first time; and
in response to receiving the command:
retrieve, using the communications circuitry, a user profile;
determine from the user profile a plurality of subscribed non-linear services that provide non-linear content over an Internet link;
determine whether a non-linear service of the plurality of non-linear services offers the video for streaming; and
in response to determining that the non-linear service of the plurality of non-linear services offers the video for streaming, generate for display a playback of the video from the second position, streamed from the non-linear service.

### Claim 63 (depends on 62)

The system of claim 62, wherein the control circuitry is further configured, when playing back the video from the second position, to:
launch a platform corresponding to the non-linear service, wherein the platform corresponding to the non-linear service is different from a platform corresponding to the linear service that is used to generate for display the video using the linear service; and
play back the video using the platform corresponding to the non-linear service.

### Claim 64 (depends on 63)

The system of claim 63, wherein the control circuitry is further configured to:
determine whether playback of the video from the non-linear service has terminated; and
in response to determining that playback of the video from the non-linear service has terminated, exit the platform corresponding to the non-linear service and resuming generating for display video using the platform corresponding to the linear service.

### Claim 65 (depends on 64)

The system of claim 64, wherein the control circuitry is further configured, when determining whether playback of the video from the non-linear service has terminated, to:
monitor for an end of playback of the video from the non-linear service, or a command from the user to terminate playback of the video from the non-linear service; and
in response to detecting the end of playback of the video from the non-linear service, or the command from the user to terminate playback of the video from the non-linear service, determine that playback of the video from the non-linear service has terminated.

### Claim 66 (depends on 62)

The system of claim 62, wherein the control circuitry is further configured to:
automatically determine, while the video is being generated for display using the transmission of the linear service, and without receiving the command, that the non-linear service offers the video for streaming;
in response to the automatic determining, automatically pre-cache the video from the non-linear service at a cache local to the user; and
in response to receiving the command, access the pre-cached video.

### Claim 67 (depends on 62)

The system of claim 62, wherein the control circuitry is further configured to:
determine, in response to the querying, that no non-linear service of the plurality of non-linear services offers the video for streaming;
in response to determining that no non-linear service of the plurality of non-linear services offers the video for streaming, query a second plurality of non-subscribed non-linear services to determine whether a second non-linear service of the second plurality of non-linear services offers the video for streaming; and
in response to determining that the second non-linear service offers the video for streaming, generate for display to the user a selectable option to subscribe to the second non-linear service.

### Claim 68 (depends on 67)

The system of claim 67, wherein the control circuitry is further configured to, further in response to determining that the second non-linear service offers the second video for streaming:
pre-cache the video from the second non-linear service at a cache local to the user; and
in response to receiving a selection of the selectable option to subscribe to the second non-linear service, access the pre-cached video.

### Claim 69 (depends on 62)

The system of claim 62, wherein the control circuitry is further configured to:
generate for display, in response to the querying, a menu indicating each subscribed non-linear service that offers the video for streaming; and
receive a user selection from the menu of an indication corresponding to the non-linear service, wherein the control circuitry is further configured, while playing back the video from the second position, to play back the video from the second position in response to receiving the user selection.

### Claim 70 (depends on 69)

The system of claim 69, wherein the menu additionally indicates non-subscribed non-linear services that offer the video for streaming.

### Claim 71 (depends on 62)

The system of claim 62, wherein the control circuitry is further configured to:
determine whether the non-linear service provider offers a premium version of the video for streaming; and
in response to determining that the non-linear service provider offers the premium version, generate for display, during playback of the video, a selectable option for accessing the premium version.
