IP Library Granted Patent US 8,959,567
Granted Patent B1
US 8,959,567 · App. 10/919,803 · Granted Feb 17, 2015

Identification and recording of program sub-segments

Inventors: Kevin Shen (Sunnyvale, CA); David Daney (San Jose, CA); Johannes Schmidt (Los Altos Hills, CA); Stephen S. Francis (Saratoga, CA)
Assignee: Verizon Patent and Licensing Inc.
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 8,959,567
App. No.
10/919,803
Granted
Feb 17, 2015
Kind
B1
Abstract

Techniques are provided for identifying and recording program segments and sub-segments for later playback and use. In general, in one aspect, the invention features a method of recording a sub-segment of a broadcast program. The method includes receiving a user input of one or more user specified parameters, identifying a program sub-segment starting point within a program using data in a broadcast stream, and identifying a program sub-segment ending point within a program. The method also includes storing a program sub-segment and presenting the program sub-segment to a user.

Claims (63)

1. A method of digitally recording a sub-segment of a broadcast program segment, comprising:

receiving a user input of one or more user specified parameters to identify a portion of said program segment to be recorded;

monitoring at least one broadcast stream for said one or more parameters;

recording a program segment based on the one or more user specified parameters;

identifying a sub-segment starting point within the recorded program segment using data in a broadcast stream;

identifying a sub-segment ending point within the recorded program segment;

storing the program sub-segment from said starting point to said ending point;

monitoring for an update of the stored program sub-segment;

determining whether the stored program sub-segment has been retrieved prior to the broadcast of an updated program sub-segment;

automatically recording the updated program sub-segment and replacing the stored program sub-segment with the recorded updated program sub-segment, in response to determining that the stored program sub-segment has not been retrieved prior to the broadcast of the updated program sub-segment; and

providing the stored program sub-segment, if a user retrieves the stored program sub-segment prior to the broadcast of the updated program sub-segment.

2. The method of claim 1 , where identifying a program sub-segment starting point further comprises searching for one or more keywords in a closed-caption stream of the program.

3. The method of claim 1 , where identifying a sub-segment starting point further comprises searching for one or more keywords in an audio stream of the program.

4. The method of claim 1 , where identifying a sub-segment starting point further comprises searching for a particular video frame in the program.

5. The method of claim 1 , further comprising:

determining that a user specified parameter is present in a plurality of broadcast streams broadcast at a same time; and

recording each of the plurality of broadcast streams.

6. The method of claim 1 , further comprising:

determining that a user specified parameter is present in a plurality of broadcast streams broadcast at a same time; and

selecting only one of the broadcast streams to record based on a user specified rule.

7. The method of claim 1 , further comprising:

providing an alert to the user in response to identifying one or more of the user specified parameters in the broadcast program segment.

8. The method of claim 7 , wherein the providing an alert comprises one of turning on a television or sending a communication to the user.

9. The method of claim 8 , wherein the providing an alert further comprises:

turning on the television, and

presenting the sub-segment for viewing.

10. A computer program product, tangibly stored on a machine-readable storage device, for storing a sub-segment of a program segment, comprising instructions operable to cause a programmable processor to:

receive a user input of one or more user specified parameters to identify a portion of said program segment to be recorded;

monitor at least one broadcast stream for said one or more parameters;

record a program segment based on the one or more user specified parameters;

identify a sub-segment starting point within the recorded program segment using data in a broadcast stream;

identify a sub-segment ending point within the program segment;

store the program sub-segment from said starting point to said ending point;

monitor for an update of the stored program sub-segment;

determine whether the stored program sub-segment has been retrieved prior to the broadcast of the updated program sub-segment;

automatically record the updated program sub-segment and replace the stored program sub-segment with the recorded updated program sub-segment, in response to determining that the stored program sub-segment has not been retrieved prior to the broadcast of the updated program sub-segment; and

provide the stored program sub-segment, if a user retrieves the stored program sub-segment prior to the broadcast of the updated program sub-segment.

11. The computer program product of claim 10 , further including instructions to cause the processor to:

determine that a user specified parameter is present in a plurality of broadcast streams broadcast at a same time; and

select each of the plurality of broadcast streams to record.

12. The computer program product of claim 10 , further including instructions to cause the processor to:

determine that a user specified parameter is present in a plurality of broadcast streams broadcast at a same time; and

select only one of the broadcast streams to record based on a user specified rule.

13. An apparatus, comprising:

an input operable to receive a user input;

a memory operable to store one or more program segments or sub-segments;

a controller including one or more engines operable to monitor one or more broadcasts and identify particular program segments, said controller configured to:

receive a user input of one or more user specified parameters to identify a portion of said segment to be recorded;

monitor at least one broadcast stream for said one or more parameters;

record a program segment based on the one or more user specified parameters;

identify a sub-segment starting point within the recorded program segment using data in a broadcast stream;

identify a sub-segment ending point within the recorded program segment;

store the program sub-segment from said starting point to said ending point;

monitor for an update of the stored program sub-segment;

determine whether the stored program sub-segment has been retrieved prior to the broadcast of the updated program sub-segment;

automatically record the updated program sub-segment and replace the stored program sub-segment with the recorded updated program sub-segment in response to determining that the stored program segment has not been retrieved prior to the broadcast of the updated program sub-segment; and

provide the stored program sub-segment, if a user retrieves the stored program sub-segment prior to the broadcast of the updated program sub-segment.

14. The apparatus of claim 13 , wherein said controller is further configured to:

determine that a user specified parameter is present stream in a plurality of broadcast streams broadcast at a same time, and

select each of the plurality of broadcast streams to record.

15. The apparatus of claim 13 , wherein said controller is further configured to:

determine that a user specified parameter is present in a plurality of broadcast streams broadcast at a same time, and

select only one of said broadcast streams to record based on a user specified rule.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2014
From: MCI COMMUNICATIONS SERVICES, INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 032496/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2014
From: INTEL CORPORATION
To: MCI COMMUNICATIONS SERVICES, INC.
Reel/Frame 032471/0833 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2012
From: AVTREX, INC.
To: INTEL CORPORATION
Reel/Frame 028089/0092 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2004
From: SHEN, KEVIN; DANEY, DAVID; SCHMIDT, JOHANNES; FRANCIS, STEPHEN S.
To: AVTREX, INC.
Reel/Frame 015470/0297 →
Continuity (1)
Provisional Application 60495495 · Aug 15, 2003