IP Library Granted Patent US 9,240,217
Granted Patent B2
US 9,240,217 · App. 13/931,071 · Granted Jan 19, 2016

Storing same channel overlapping recordings

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 9,240,217
App. No.
13/931,071
Granted
Jan 19, 2016
Kind
B2
Abstract

First media segments for a first media program are recorded. The first media program is scheduled to start at a first start time and end at a first end time, whereas a second media program is scheduled to start at a second start time and end at a second end time, the first end time being after the second start time. It is determined whether the first media program and the second media program are on a same channel. If so, one or more shared media segments, one of which is before all other shared media segments in the shared media segments and begins no later than the first time, are recorded. A first media program object is generated to represent a first recording of the first media program, and includes references to the first media segments and the shared media segments.

Claims (109)

1. A method comprising:

recording one or more first media segments for a first media program, the first media program scheduled to start at a first start time and end at a first end time, a second media program scheduled to start at a second start time and end at a second end time, the first end time being after the second start time;

determining whether the first media program and the second media program are provided on a same channel;

in response to determining that the first media program and the second media program are provided on the same channel, recording one or more shared media segments, one of which precedes all other shared media segments in the shared media segments and begins no later than the second start time; and

generating a first media program object that represents a first recording of the first media program, the first media program object including references to the first media segments and the shared media segments, the shared segments being shared between the first media program object and a second media program object, the second media program object representing a second recording of the second media program, the second media program object excluding references to the first media segments.

2. The method of claim 1 , wherein the first media program and the second media program are received with a same tuner.

3. The method of claim 1 , further comprising:

receiving a request to delete the first recording of the first media program;

in response to receiving the request to delete the first recording of the first media program, performing:

deleting the first media segments;

determining whether an existing recording other than the first recording of the first media program refers to the shared media segments; and

deleting the first media program object.

4. The method of claim 1 , further comprising:

causing the first recording to be presented for a user to select for play back;

receiving a request from the user to play back the first recording;

in response to receiving the request to play back the first recording, performing:

causing the first media segments to be played back along a time order as represented in the first media program object; and

after the first media segments have been played back, causing the shared media segments to be played back.

5. The method of claim 1 , wherein the first end time is before the second end time;

and further comprising:

in response to determining that the first media program and the second media program are provided on the same channel, performing:

ending recording the shared media segments no earlier than the first end time; and

in response to ending recording the shared media segments, recording one or more second media segments after the first end time; and

generating a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments and the second media segments but not to the first media segments.

6. The method of claim 5 , further comprising:

causing the second recording to be presented for a user to select for play back;

receiving a request from the user to play back the second recording;

in response to receiving the request to play back the second recording, performing:

causing the shared media segments to be played back along a time order as represented in the second media program object; and

after the shared media segments have been played back, causing the second media segments to be played back.

7. The method of claim 1 , wherein the first end time is after the second end time;

and further comprising:

in response to determining that the first media program and the second media program are provided on the same channel, performing:

ending recording the shared media segments no earlier than the second end time; and

in response to recording ending recording the shared media segments, continuing recording additional first media segments after the second end time; and

generating a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments but not to the first media segments and the additional first media segments.

8. The method of claim 1 , wherein the first media program overlaps with a previous media program preceding the first media program; and wherein the first media program object that represents the first recording of the first media program further includes references to one or more previous shared media segments between the previous media program and the first media program.

9. A non-transitory computer readable medium storing instructions, which when executed by one or more processors cause performance of:

recording one or more first media segments for a first media program, the first media program scheduled to start at a first start time and end at a first end time, a second media program scheduled to start at a second start time and end at a second end time, the first end time being after the second start time;

determining whether the first media program and the second media program are provided on a same channel;

in response to determining that the first media program and the second media program are provided on the same channel, recording one or more shared media segments, one of which precedes all other shared media segments in the shared media segments and begins no later than the second start time; and

generating a first media program object that represents a first recording of the first media program, the first media program object including references to the first media segments and the shared media segments, the shared segments being shared between the first media program object and a second media program object, the second media program object representing a second recording of the second media program, the second media program object excluding references to the first media segments.

10. The medium of claim 9 , wherein the first media program and the second media program are received with a same tuner.

11. The medium of claim 9 , wherein the instructions comprise further instructions, which when executed by one or more processors cause performance of:

receiving a request to delete the first recording of the first media program;

in response to receiving the request to delete the first recording of the first media program, performing:

deleting the first media segments;

determining whether an existing recording other than the first recording of the first media program refers to the shared media segments; and

deleting the first media program object.

12. The medium of claim 9 , wherein the instructions comprise further instructions, which when executed by one or more processors cause performance of:

causing the first recording to be presented for a user to select for play back;

receiving a request from the user to play back the first recording;

in response to receiving the request to play back the first recording, performing:

causing the first media segments to be played back along a time order as represented in the first media program object; and

after the first media segments have been played back, causing the shared media segments to be played back.

13. The medium of claim 9 , wherein the first end time is before the second end time; and wherein the instructions comprise further instructions, which when executed by one or more processors cause performance of:

in response to determining that the first media program and the second media program are provided on the same channel, performing:

ending recording the shared media segments no earlier than the first end time; and

in response to ending recording the shared media segments, recording one or more second media segments after the first end time; and

generating a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments and the second media segments but not to the first media segments.

14. The medium of claim 13 , wherein the instructions comprise further instructions, which when executed by one or more processors cause performance of:

causing the second recording to be presented for a user to select for play back;

receiving a request from the user to play back the second recording;

in response to receiving the request to play back the second recording, performing:

causing the shared media segments to be played back along a time order as represented in the second media program object; and

after the shared media segments have been played back, causing the second media segments to be played back.

15. The medium of claim 9 , wherein the first end time is after the second end time;

and wherein the instructions comprise further instructions, which when executed by one or more processors cause performance of:

in response to determining that the first media program and the second media program are provided on the same channel, performing:

ending recording the shared media segments no earlier than the second end time; and

in response to recording ending recording the shared media segments, continuing recording additional first media segments after the second end time; and

generating a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments but not to the first media segments and the additional first media segments.

16. The medium of claim 9 , wherein the first media program overlaps with a previous media program preceding the first media program; and wherein the first media program object that represents the first recording of the first media program further includes references to one or more previous shared media segments between the previous media program and the first media program.

17. An apparatus comprising:

a subsystem, implemented at least partially in hardware, that records one or more first media segments for a first media program, the first media program scheduled to start at a first start time and end at a first end time, a second media program scheduled to start at a second start time and end at a second end time, the first end time being after the second start time;

a subsystem, implemented at least partially in hardware, that determines whether the first media program and the second media program are provided on a same channel;

the recording subsystem, in response to determining that the first media program and the second media program are provided on the same channel, records one or more shared media segments, one of which precedes all other shared media segments in the shared media segments and begins no later than the second start time; and

a subsystem, implemented at least partially in hardware, that generates a first media program object to represent a first recording of the first media program, the first media program object including references to the first media segments and the shared media segments, the shared segments being shared between the first media program object and a second media program object, the second media program object representing a second recording of the second media program, the second media program object excluding references to the first media segments.

18. The apparatus of claim 17 , wherein the first media program and the second media program are received with a same tuner.

19. The apparatus of claim 17 , wherein the apparatus further comprises:

a subsystem, implemented at least partially in hardware, that receives a request to delete the first recording of the first media program;

a subsystem, implemented at least partially in hardware, that in response to receiving the request to delete the first recording of the first media program:

deletes the first media segments;

determines whether an existing recording other than the first recording of the first media program refers to the shared media segments; and

deletes the first media program object.

20. The apparatus of claim 17 , wherein the apparatus further comprises:

a subsystem, implemented at least partially in hardware, that causes the first recording to be presented for a user to select for play back;

a subsystem, implemented at least partially in hardware, that receives a request from the user to play back the first recording;

a subsystem, implemented at least partially in hardware, that in response to receiving the request to play back the first recording, performs:

causing the first media segments to be played back along a time order as represented in the first media program object; and

after the first media segments have been played back, causing the shared media segments to be played back.

21. The apparatus of claim 17 , wherein the first end time is before the second end time; and wherein the apparatus further comprises:

a subsystem, implemented at least partially in hardware, that in response to determining that the first media program and the second media program are provided on the same channel, performs:

ending recording the shared media segments no earlier than the first end time; and

in response to ending recording the shared media segments, recording one or more second media segments after the first end time; and

a subsystem, implemented at least partially in hardware, that generates a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments and the second media segments but not to the first media segments.

22. The apparatus of claim 21 , wherein the apparatus further comprises:

a subsystem, implemented at least partially in hardware, that causes the second recording to be presented for a user to select for play back;

a subsystem, implemented at least partially in hardware, that receives a request from the user to play back the second recording;

a subsystem, implemented at least partially in hardware, that in response to receiving the request to play back the second recording, performs:

causing the shared media segments to be played back along a time order as represented in the second media program object; and

after the shared media segments have been played back, causing the second media segments to be played back.

23. The apparatus of claim 17 , wherein the first end time is after the second end time;

and wherein the apparatus further comprises:

a subsystem, implemented at least partially in hardware, that in response to determining that the first media program and the second media program are provided on the same channel, performs:

ending recording the shared media segments no earlier than the second end time; and

in response to recording ending recording the shared media segments, continuing recording additional first media segments after the second end time; and

a subsystem, implemented at least partially in hardware, that generates a second media program object to represent a second recording of the second media program, the second media program object including references to the shared media segments but not to the first media segments and the additional first media segments.

24. The apparatus of claim 17 , wherein the first media program overlaps with a previous media program preceding the first media program; and wherein the first media program object that represents the first recording of the first media program further includes references to one or more previous shared media segments between the previous media program and the first media program.

Assignments (10)
CHANGE OF NAME Recorded Sep 27, 2024
From: TIVO SOLUTIONS INC.
To: ADEIA MEDIA SOLUTIONS INC.
Reel/Frame 069067/0489 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 25, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: TIVO SOLUTIONS INC.
Reel/Frame 051109/0969 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
CHANGE OF NAME Recorded Feb 14, 2017
From: TIVO INC.
To: TIVO SOLUTIONS INC.
Reel/Frame 041714/0500 →
SECURITY INTEREST Recorded Dec 7, 2016
From: TIVO SOLUTIONS INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 041076/0051 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2013
From: LOVELL, NICHOLAS
To: TIVO INC.
Reel/Frame 030713/0283 →