Media content recording and healing statuses

An exemplary system includes a content processing subsystem configured to record at least a subset of a media content program and detect a defective portion of the recorded media content program that failed to be properly recorded. The content processing subsystem is further configured to provide a recording status indicator to an output device for presentation to a user, the recording status indicator identifying the defective portion of the recorded media content program. In certain implementations, the content processing subsystem is further configured to heal at least a subset of the defective portion of the recorded media content program and provide a healing status indicator to the output device for presentation to the user, the healing status indicator identifying the healed portion of the recorded media content program.

Skip to: Description  ·  Claims  ·  References Cited  · Patent History  ·  Patent History
Description
BACKGROUND INFORMATION

The set-top box (“STB”) has become an important computing device for accessing media content services and the media content within those services. An STB or a separate device connected to the STB may be able to record broadcast media content, thereby allowing a user to experience recorded media content after the broadcast. Unfortunately, a conventional STB generally is not equipped to provide users with certain information or tools related to special media content recording events such as a failure to record a portion of a media program (e.g., due to a power interruption) and/or operations for repairing a defective recording of media content.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various implementations and are a part of the specification. The illustrated implementations are merely examples and do not limit the scope of the disclosure. Throughout the drawings, identical reference numbers designate identical or similar elements.

FIG. 1 illustrates an example of a media content access system.

FIG. 2 illustrates an exemplary media content processing subsystem.

FIG. 3 illustrates an exemplary remote control user input device.

FIG. 4 illustrates another exemplary media content access system.

FIG. 5 illustrates an exemplary representation of a media content program.

FIG. 6 illustrates an exemplary graphical user interface that may be presented by an output device, the graphical user interface including at least one recording status indicator.

FIG. 7 illustrates another version of the exemplary graphical user interface of FIG. 6, the graphical user interface including a healing status indicator identifying a healed portion of media content.

FIG. 8 illustrates an exemplary method of recording and healing media content.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

1. Introduction

Exemplary media content recording and healing systems and methods and associated statuses, indicators, and tools are disclosed herein. In certain implementations, a media content processing subsystem (e.g., a set-top box) may be configured to record at least a subset of a media content program. In certain situations, the recorded media content program may be defective because it failed to be properly recorded (e.g., a portion was not recorded, a portion was recorded but is now damaged, a portion was mis-recorded due to interference and/or equipment error, etc.). The media content processing subsystem may be configured to detect defective recorded media content programs and provide a recording status indicator to an output device for presentation to a user, the recording status indicator identifying the portion(s) of the recorded media content program that are causing it to be defective (hereinafter, the “defective portion(s)” of the recorded media content program). The media content processing subsystem may be further configured to “heal” at least a subset of the defective portion(s) of the recorded media content program and to provide a healing indicator to the output device for presentation to the user, the healing indicator identifying a healed portion of the recorded media content program.

Accordingly, a user of the content processing subsystem can be informed of defective recorded media content programs, which portion(s), if any, of a recorded media content program are causing it to be defective, as well as the status of operations configured to heal the defective portion(s). The status indicators may help the user better understand the status of a recording process, including any special circumstances (e.g., recording failures) associated with the process, and the capabilities of the media content processing subsystem for healing a defective recording.

Components and functions of exemplary implementations of media content recording and healing systems and methods and associated statuses, indicators, and tools will now be described in more detail.

II. Exemplary System View

FIG. 1 illustrates an example of a media content access system 100 (or simply the “system 100”). As shown in FIG. 1, the system 100 may include a media content processing subsystem 110-1 configured to communicate with and receive a signal or data stream containing data representative of media content and/or other content (e.g., media content metadata and/or program guide data) from a content delivery subsystem 111. The media content processing subsystem 110-1 may be configured to process a media content stream provided by the content delivery subsystem 111, including recording and/or providing a media content program, or one or more components (e.g., video and/or audio components) of a media content program, to an output device 112 (e.g., a television, computer monitor, etc.) for presentation (e.g., display and/or audio broadcast) to a user. The media content processing subsystem 110-1 may be controlled by a user input device 113 (e.g., a remote control device).

While an exemplary media content access system 100 is shown in FIG. 1, the exemplary components illustrated in FIG. 1 are not intended to be limiting. Indeed, additional or alternative components and/or implementations may be used, as is well known. Each of the components of system 100 will now be described in additional detail.

A. Content Delivery Subsystem

The content delivery subsystem 111 may include any device or devices (e.g., a content server) configured for receiving, storing, processing, or providing media content. The content delivery subsystem 111 may be configured to communicate with the media content processing subsystem 110-1 via one or more types of communications networks (and communications links thereto), including, but not limited to, the Internet, an intranet or other private packet-switched network, a wireless network (e.g., a wireless phone network or a Wi-Fi network), a cable television network (e.g., a hybrid fiber-coax network), a wireless broadcast network (e.g., a satellite media broadcasting network or terrestrial broadcasting network), a subscriber television network, a telephone network, a provider-specific network (e.g., a Verizon® FIOS® network and/or a TiVo® network), an optical fiber network, a local area network, any other suitable network, and any combination of these networks. In some alternative examples, the media content processing subsystem 110-1 may be connected directly to the content delivery subsystem 111.

The media content processing subsystem 110-1 and content delivery subsystem 111 may communicate using any known communication technologies, devices, media, and protocols supportive of remote data communications, including, but not limited to, data transmission media, communications devices, Transmission Control Protocol (“TCP”), Internet Protocol (“IP”), File Transfer Protocol (“FTP”), Telnet, Hypertext Transfer Protocol (“HTTP”), Hypertext Transfer Protocol Secure (“HTTPS”), User Datagram Protocol (“UDP”), socket connections, Ethernet, and other suitable communications technologies. Devices included in the content delivery subsystem 111 may communicate with one another using any of the communication technologies and/or networks listed herein.

Content delivery subsystem 111 may be configured to provide (e.g., transmit) various types of media content, media content metadata, program guide data, and/or other content or data to the media content processing subsystem 110-1 using any suitable communication technologies including any of those described herein. The media content may include one or more media content programs, or one or more segments of the media content program(s). The term “media content program” as used herein refers generally to any television program, on demand program, pay-per-view program, broadcast media program, narrowcast media program, IPTV content, video, movie, song, audio, or any segment, component, or combination of these or other forms of media content that may be viewed or otherwise experienced by a user.

B. Output Device

As mentioned, the media content processing subsystem 110-1 may be coupled to an output device 112 configured to present content, including media content and/or program guide data, to a user. The output device 112 may display, play, or otherwise present the content for experiencing by the user. The output device 112 may include, but is not limited to, a television, computer monitor, mobile phone, handheld device, display screen, or any other device configured to present content to a user.

The output device 112 may be configured to display graphical user interfaces. Accordingly, media content, program guide data, and any other content, information, tools, or indicators (e.g., a recording status indicator, a recording failure status indicator, and a content healing indicator) may be displayed in a graphical user interface.

C. Media Content Processing Subsystem

FIG. 2 is a block diagram of an exemplary media content processing subsystem 110-1 (or simply “content processing subsystem 110-1” or “processing subsystem 110-1”). The processing subsystem 110-1 may include any combination of hardware, software, and firmware configured to process media content and/or other content or data for presentation to a user. As used herein and in the appended claims, unless otherwise specifically denoted, the terms “media content processing subsystem,” content processing subsystem,” and “processing subsystem” will be used to refer expansively to all possible receivers that receive and process (e.g., record) digital and/or analog media content. An exemplary processing subsystem 110-1 may include, but is not limited to, a set-top box (“STB”), home communication terminal (“HCT”), digital home communication terminal (“DHCT”), personal video recorder (“PVR”) (e.g., a digital video recorder (“DVR”)), DVD player, handheld entertainment device, video-enabled phone (e.g., a mobile phone), and personal computer.

In certain implementations, the processing subsystem 110-1 may include any computer hardware and/or instructions (e.g., software programs), or combinations of software and hardware, configured to perform the processes described herein. In particular, it should be understood that processing subsystem 110-1 may be implemented on one physical computing device or may be implemented on more than one physical computing device. Accordingly, processing subsystem 110-1 may include any one of a number of well known computing devices, and may employ any of a number of well known computer operating systems, including, but by no means limited to, known versions and/or varieties of the Microsoft Windows® operating system, the UNIX operating system, Macintosh® operating system, and the Linux® operating system.

Accordingly, the processes described herein may be implemented at least in part as instructions executable by one or more computing devices. In general, a processor (e.g., a microprocessor) receives instructions, e.g., from a memory, a computer-readable medium, etc., and executes those instructions, thereby performing one or more processes, including one or more of the processes described herein. Such instructions may be stored and transmitted using a variety of known computer-readable media.

A computer-readable medium (also referred to as a processor-readable medium) includes any medium that participates in providing data (e.g., instructions) that may be read by a computer (e.g., by a processor of a computer). Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media may include, for example, optical or magnetic disks and other persistent memory. Volatile media may include, for example, dynamic random access memory (“DRAM”), which typically constitutes a main memory. Transmission media may include, for example, coaxial cables, copper wire and fiber optics, including the wires that comprise a system bus coupled to a processor of a computer. Transmission media may include or convey acoustic waves, light waves, and electromagnetic emissions, such as those generated during radio frequency (“RF”) and infrared (“IR”) data communications, Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.

While an exemplary processing subsystem 110-1 is shown in FIG. 2, the exemplary components illustrated in FIG. 2 are not intended to be limiting. Indeed, additional or alternative components and/or implementations may be used. Various components of the processing subsystem 110-1 will now be described in additional detail.

1. Communication Interfaces

As shown in FIG. 2, the processing subsystem 110-1 may include a communication interface 231 configured to receive content (e.g., media content) and/or data (e.g., media content metadata and/or program guide information) in any acceptable format from the content delivery subsystem 111 or from any other suitable media content source(s). For example, the media content may be received as a real-time broadcast transmission or as any other suitable transmission. The communication interface 231 may include any device, logic, and/or other technologies suitable for receiving signals and/or data representative of media content and/or other types of content or data. The communication interface 231 may be configured to interface with any suitable communication media, protocols, and formats, including any of those mentioned above.

In certain implementations, the communication interface 231 may include a single port configured to receive content and/or data from the content delivery subsystem 111 and/or from any other source. For example, the communication interface 231 may include or be connected to a broadband connection, which can enable the processing subsystem 110-1 to receive content from one or more sources on a single port. In other implementations, multiple ports may be used.

As shown in FIG. 2, the communication interface 231 may be configured for communications with other content processing subsystems 110-2 through 110-N, including requesting and receiving shared media content from any of the other content processing subsystems 110-2 through 110-N. This capability will be described further below in reference to FIG. 4.

The processing subsystem 110-1 may also include a receiver 232 configured to receive user input signals (e.g., content recording and/or playback commands) from a user input device 113. The user input device 113 may include, for example, a remote control device or any other suitable input device and may be configured to communicate with the receiver 232 via a wireless link, electrical connection, or any other suitable communication link.

An exemplary remote control user input device 113 is illustrated in FIG. 3. In some examples, the input device 113 may be configured to enable a user to control viewing options for experiencing media content, recording media content, and/or considering program guide data provided by the processing subsystem 110-1. A program guide button 344 may be configured to evoke the display of a program guide GUI on the output device 112. A left button 345, right button 346, up button 347, down button 348, and select button 349 may be included and configured to enable the user to evoke and/or navigate through various views, options, and graphical user interfaces displayed by the output device 112.

The input device 113 may include a record button 351 for starting and stopping the recording of media content, a playback button 352 for initiating playback of media content, and fast-forward 353 and rewind 354 buttons for controlling trick play modes, including skipping forward or backward through a media content program. It will be recognized that the input device 113 shown in FIG. 3 is merely illustrative of the many different types of user input devices that may be used in connection with the present systems and methods.

Returning to FIG. 2, the processing subsystem 110-1 may also include an output driver 233 configured to interface with or drive the output device 112. As instructed by one or more processors of the processing subsystem 110-1, the output driver 233 may provide output signals to the output device 112, the output signals including content (e.g., media content and/or graphical user interface content) to be presented by the output device 112 for experiencing by a user. For example, the output driver 233 may provide a program guide GUI to the output device 112 for presentation to the user. The output driver 233 may include any combination of hardware, software, and firmware as may serve a particular application.

2. Storage Devices

Storage device 234 may include one or more data storage media, devices, or configurations and may employ any type, form, and combination of storage media. For example, the storage device 234 may include, but is not limited to, a hard drive, network drive, flash drive, magnetic disc, optical disc, or other non-volatile storage unit. Media content, media content metadata, program guide data, and other content or data may be temporarily and/or permanently stored in the storage device 234. For example, recorded media content may be stored in the storage device 234.

The storage device 234 of FIG. 2 is shown to be a part of the processing subsystem 110-1 for illustrative purposes only. It will be understood that the storage device 234 may additionally or alternatively be located external to the processing subsystem 110-1.

The processing subsystem may also include memory 235. Memory 235 may include, but is not limited to, FLASH memory, random access memory (“RAM”), dynamic RAM (“DRAM”), or a combination thereof. In some examples, as will be described in more detail below, various applications used by the processing subsystem 110-1 may reside in memory 235.

As shown in FIG. 2, the storage device 234 may include one or more live cache buffers 236. The live cache buffer 236 may additionally or alternatively reside in memory 235 or in a storage device external to the processing subsystem 110-1. In some examples, media content may be temporarily stored in the live cache buffer 236 to facilitate viewing, playback, or recording of the content.

3. Tuner

Tuner 237 may be configured to selectively receive content (e.g., media content) carried on a particular content channel. For example, tuner 237 may be tuned to a particular content channel such that the content carried on the content channel is received and can be processed by the processing subsystem 110-1.

In some examples, the processing subsystem 110-1 may include multiple tuners 237 such that content carried on different content channels may be concurrently received by the processing subsystem 110-1. For example, the processing subsystem 110-1 may include a first tuner configured to receive content carried on an analog video signal and a second tuner configured to simultaneously receive content carried on a digital compressed signal.

In some examples, media content received at the tuner 237 is temporarily buffered, or stored, in the live cache buffer 236. If there are multiple tuners 237, there may be a live cache buffer 236 corresponding to each of the tuners 237.

While tuner 237 may be used to receive various types of content-carrying signals transmitted (e.g., broadcast) by content delivery subsystem 111, processing subsystem 110-1 may be configured to receive other types of content signals (including media content signals, metadata, and/or program guide data signals) from the content delivery subsystem 111 without using a tuner. For example, content delivery subsystem 111 may transmit digital streams of data packets (e.g., Internet Protocol (“IP”) based data packets) that can be received without using a tuner. For such types of content signals, the communication interface 231 may receive and forward the signals directly to other components of the processing subsystem 110-1 (e.g., the processor 238 or signal processing unit 239) without going through the tuner 237. For an IP-based signal, for example, the signal processing unit 239 may function as an IP receiver.

4. Processors

As shown in FIG. 2, the processing subsystem 110-1 may include one or more processors, such as processor 238 configured to control the operations of the processing subsystem 110-1. The processing subsystem 110-1 may also include a signal processing unit 239 configured to process incoming media content. The signal processing unit 239 may be configured, for example, to demodulate and parse encoded digital media content. In some examples, the processing subsystem 110-1 may include one or more signal processing units 239 corresponding to each of the tuners 237. Media content and other content or data received from the content delivery subsystem 111, or from any of the other content processing subsystems 110-2 through 110-N, may be processed by the signal processing unit 239, the processor 238, and/or any other suitable component(s) of the processing subsystem 110-1. For example, media content received by way of the communication interface 231 may be recorded such as by one or more of the processors processing and storing data representative of the media content to the storage device 234.

The processing subsystem 110-1 may also include a graphics engine 240 configured to generate graphics that can be displayed by the output device 112. The graphics may include graphical user interfaces such as, but not limited to, one or more media presentation interfaces, one or more program guide graphical user interfaces including views of at least portions of program guides (e.g., views of different portions of the program guides), and any other suitable user interface. A graphical user interface may include tools for controlling the recording of content, content recording information (recording status indicators such as progress indicators), failed recording status indicators, healing status indicators, tools for controlling the playback of media content, and other graphics. Examples of indicators that may be included in a graphical user interface will be described further below.

5. Application Clients

One or more applications residing within the processing subsystem 110-1 may be executed upon initiation by a user of the processing subsystem 110-1, or upon the occurrence of another predetermined event. The applications, or application clients, may reside in memory 235 or in any other area of the processing subsystem 110-1 and be executed by the processor 238.

As shown in FIG. 2, the processing subsystem 110-1 may include a user interface application 242, a content recording application 243, and a content share application 244 residing in memory 235. The content recording application 243 may be configured to control recording of content, including recording of media content that may be received from the content delivery subsystem 111 as described above.

In certain implementations, for example, content delivery subsystem 111 may provide a real-time transmission of a media content program. The content processing subsystem 110-1 may receive the transmitted program, which may be provided in real time (or at least near real time) to the output device 112 for presentation to a user. Additionally or alternatively, the content processing subsystem 110-1 may record at least a subset of the received media content program for storage and/or subsequent playback. The content recording application 243 may control the recording process, including directing other components of the content processing subsystem 110-1 to perform recording operations such as storing media content to the storage device 234.

On occasion, a recording failure may occur during a media content recording process. For example, a recording interruption may interfere with the recording process and thereby create a recording failure, which may introduce defects into a recording of media content. For instance, at least a sub-portion of a recorded media content program may be defective because it was not properly recorded due at least in part to a recording interruption. A recording interruption may include any event or condition that causes, directly or indirectly, at least a sub-portion of a media content program not to be properly recorded. Examples of recording interruptions may include, but are not limited to, power bumps, power outages, network interruptions, communications interruptions or interferences, scheduling changes, issues associated with the content delivery subsystem 111, issues associated with media content and/or its transmission, and any other event or condition that may cause a defective (e.g., an incomplete) recording to be produced.

The content recording application 243 may be configured to detect a defective recording and/or its cause(s), including any of the recording interruptions listed above. A defective portion of a recording may be detected in any suitable manner. In certain implementations, for example, a recording interruption (e.g., an unsatisfactory communication connection between the content processing subsystem 110-1 and the content delivery subsystem 111 ) may be detected and the corresponding start time and end time for the detected unsatisfactory connection may be logged. The logged times may be associated with the transmission of a media content program that was being recorded by the content processing subsystem 110-1, thereby allowing the logged times to be used to identify a portion of the media content program that was not, or may not have been, recorded properly. In this or other suitable manner, the content processing subsystem 110-1 is able to identify a defective or potentially defective portion of a recorded media content program.

The content processing subsystem 110-1 may be further configured to determine a length of time for which a recording interruption exists. This may be done in any suitable manner, including using start and end times for the recording interruption to determine its duration. The content processing subsystem 110-1 may utilize the determined duration for further processing. For example, the content processing subsystem 110-1 may initiate one or more predefined operations in response to at least one recording interruption existing for a predetermined length of time. For instance, the content processing subsystem 110-1 may be configured to automatically initiate one or more content healing operations (described below) in response to a recording interruption existing for the predetermined length of time.

An exemplary way of detecting a recording interruption and determining its length may include using timestamp information. The content processing subsystem 110 may be configured to log timestamp data periodically during operation or in response to any predetermined event. For example, when break in power occurs and power is then restored, the content processing subsystem 110 may determine timestamps associated with the power break, including a timestamp associated with loss of power (e.g., the last time stamp recorded before the power break), a timestamp associated with restoration of power (e.g., the first timestamp after power is restored), or a timestamp associated with the resuming of a recording operation, for example. Recorded timestamps associated with recording interruptions may be compared with schedule data to identify a particular portion of a recorded media content program that was not properly recorded (i.e., a defective portion). A similar timestamping operation may be used in the case of a break in communications that interrupts receipt of media content programs.

Alternatively, the content processing subsystem 110 may be configured to detect a defective or potentially defective portion of a recording in other ways, including analyzing media content program data that was received by the content processing subsystem 110 and using the analysis to identify any omissions or errors in the received media content data. In certain examples, this may include analyzing ordering or checksum information (e.g., timestamps, sequence numbering, data packet ordering, checksum information included in data packets) associated with media content. Such analyses may be supported by various well-known MPEG protocols.

Additionally or alternatively, recorded media content may be compared to a “master” maintained by the content delivery subsystem 111, a content provider, or another processing subsystem 110 (i.e., a peer processing subsystem 110-2 such as is shown in FIG. 4). Such a comparison may be performed in whole or on a segment-by-segment basis.

For example, a master checksum for a media content program may be maintained by the content delivery subsystem 111, and the content processing subsystem 110 may be configured to generate and maintain a local checksum for a recorded media content program. The local and master checksums may be compared at any suitable point during a recording process or after the recording process has ended. Differences in the checksums may be used to identify defective portions of a recorded media content program, including identifying portions of the recording that may be incorrect due a programming schedule change. For example, a sports-related media content program may last longer than was originally scheduled, which may affect subsequent programming and recording operations, such as a scheduled recording of a subsequent media content program. The content processing subsystem 110 may be configured to compare the local checksum for the recording of the subsequent media content program to determine that a first portion of the subsequent media content program was not recorded, or that a beginning portion of the recording includes data for a different media content program (e.g., the sports program). The latter case may be detected by maintaining unique checksums, or other unique identifiers, for different media content programs. In similar fashion, the master checksum can be used to detect other defective portions of a recording, including defective portions within or at the end of the recording.

Any of the defective content detection procedures described herein may be used in combination. For example, a first detection process (e.g., detection of a recording interruption) may be used to detect a potentially defective portion of a media content recording, and a second detection process (e.g., a comparison of the potentially defective portion to a corresponding segment in a “master” copy) may be used to confirm whether the potentially defective portion is actually defective.

A defective media content recording may be healed. For example, a system may include other content processing subsystems 110-2 through 110-N storing media content that may be used to heal a defective portion of a media content recording maintained by content processing subsystem 110-1. FIG. 4 illustrates an exemplary media content recording and healing system 400, which is essentially the same as or similar to system 100 except that multiple media content processing subsystems 110-1 through 110-N (collectively “media content processing subsystems 110-1”) and the content delivery subsystem 111 are illustrated as being able to communicate with one another over a network 420. Network 420 may include and/or support any of the communication networks and/or technologies described above.

In certain implementations, a defective recording produced by media content processing subsystem 110-1 may be healed using media content stored (e.g., recorded) by any of the other media content processing subsystems 110-2 through 110-N in the system 400. The healing may be performed in any of the ways described in co-pending U.S. patent application Ser. No. 11/516,291, entitled “Systems and Methods for Accessing Media Content,” filed Sep. 6, 2006 and hereby fully incorporated herein by reference in its entirety. For example, the elements of system 400 (e.g., the content share application 244 of the media content processing subsystem 110-1) may function in any of the ways described in the Ser. No. 11/516,291 application to heal a defective portion of media content. Accordingly, media content processing subsystem 110-1 may record media content, fail to record at least a sub-portion of the media content, and heal the defective portion using shared media content stored on one or more of the media content processing subsystems 110-2 through 110-N.

In an exemplary content healing process, content processing subsystem 110-1, or a user of the processing subsystem 110-1, may identify and request a specific portion of media content that can be used to heal a defective portion of a defective recorded media content program. The request may be sent to the content delivery subsystem 111, which may coordinate with one or more other content processing subsystems 110-2 through 110-N to have the requested media content transmitted to the content processing subsystem 110-1, as described in the Ser. No. 11/516,291 application.

The content processing subsystem 110-1 may receive at least a portion of the requested media content from one or more of the other media content processing subsystems 110-2 through 110-N. Once received, the shared media content may be joined with the defective media content recording in any suitable manner to repair a defective portion of the recorded media content program, thereby healing a defective portion of the recording. For example, a “snippet” of recorded media content as described in co-pending U.S. patent application Ser. No. 11/474,991, entitled “Snippet Access Systems and Methods,” filed Jun. 27, 2006 and hereby fully incorporated herein by reference in its entirety, may be requested and received from one or more other media content processing subsystems 110-2 through 110-N and attached at an appropriate position in a media content recording. At least a portion of a shared “snippet” of media content received by the content processing subsystem 110-1 may be attached in any of the ways described in co-pending U.S. patent application Ser. No. 11/614,667, entitled “Content Hosting and Advertising Systems and Methods,” filed Dec. 21, 2006 and hereby fully incorporated herein by reference in its entirety, including “stitching” the media content snippet at an appropriate position in the media content recording.

A process of joining a snippet of media content to a recorded media content program in order to heal a defective portion of the recorded media content program may be performed in one step by attaching the entire snippet or in multiple steps that attach different portions of the snippet. For example, portions of a media content snippet may be attached as they are received. For instance, a media content snippet may received and attached over time as a data stream carrying data representative of the media content snippet is received. Additionally or alternatively, portions of a snippet may be received at various times from different sources (e.g., different content processing subsystems 110-2 through 110-N).

To facilitate an understanding of recording and healing media content, FIG. 5 illustrates an exemplary representation of a media content program 510 in reference to a time bar 520. The exemplary media content program 510 has a total duration time of sixty (“60”) minutes as indicated by the time bar 520.

As mentioned above, the content processing subsystem 110-1 may record the media content program 510 in real time (or near real time) as it is received from the content delivery subsystem 111. A recording interruption may cause at least a sub-portion of the media content program 510 to fail to be properly recorded, and the defective portion of the recorded media content program may be healed, as described above.

FIG. 5 represents a snapshot of the media content program 510 at a particular and exemplary point during recording and healing processes. In FIG. 5, reference numbers 530-1 and 530-2 represent recorded portions of the media content program 510. A recording progress indicator 540 illustrates the current progress of the recording process. An unrecorded portion of the media content program 510 that has not yet been recorded is identified by reference number 550. A failed recording portion (i.e., a portion that was not properly recorded) of the media content program 510 is represented by reference number 560, and a healed portion of the media content program 510 is represented by reference number 570.

In the snapshot represented in FIG. 5, the media content to the right of the recording progress indicator 540 (i.e., unrecorded portion 550) has not yet been subjected to the recording process, while the media content to the left of the recording progress indicator 540 has had a chance to be recorded. Recorded portions 530-1 and 530-2 were properly recorded. However, at least one recording interruption caused segment 560 of the media content program 510 to not be recorded properly. At the point illustrated in FIG. 5, a sub-portion of the failed recording portion 560 has been healed, as indicated by healed portion 570. Accordingly, the healed portion 570 is no longer defective. However, the unhealed portion of segment 560, which is identified by reference number 580 in FIG. 5, remains defective.

Both the recording and the healing processes may continue until a complete and non-defective recording of the media content program 510 has been generated. As the recording process progresses forward from the point shown in FIG. 5, the recording progress indicator 540 will move and one or more portions will adjust in reference to the representation of media content program 510. As the healing process progresses forward from the point shown in FIG, 5, the healed portion 570 and the defective portion 580 will be adjusted accordingly. In other words, recording statuses and associated indicators may be dynamically updated as recording and/or healing processes progress.

FIG. 5 also illustrates one or more recording statuses that may be associated with media content during or after recording and healing processes are performed. In the example of FIG. 5, media content program 510 includes content having recording statuses indicating successfully recorded content, unrecorded content, defectively recorded content, and healed content.

One or more status indicators may be generated and provided for presentation to a user. The status indicators may be configured to inform the user as to the status of recording and/or healing operations. In particular, the user may be informed as to which specific portion(s) of a media content program have been successfully recorded, failed to be recorded, are defective, and/or have been healed. Such information may be valuable to a user for various reasons, including helping the user better understand a recording process and associated operations. In addition, the status indicators may help the user appreciate and value the content healing capabilities of the content processing subsystem 110-1.

The status indicators may include any suitable indicator, including, but not limited to, a visual indicator (e.g., a color, shade, textual message, pop-up message), audio indicator (e.g., playback of an audio message), haptic indicator, or any combination thereof. A status indicator identifying a recording failure (i.e., an improper recording of content) may be referred to as a “failed recording status indicator,” a status indicator identifying a defective portion of recorded media content may be referred to as a “defective status indicator,” and a status indicator identifying healed content may be referred to as a “healing status indicator.”

In certain implementations, the content processing subsystem 110-1 may be configured to provide one or more status indicators in a graphical user interface, which may be provided to the output device 112 for presentation to a user. The status indicators may be included in any type of graphical user interface, including graphical user interfaces presenting media content, program guide content, and/or recording progress information, for example.

FIGS. 6 and 7 illustrate an exemplary graphical user interface 600 in which one or more status indicators may be presented. Graphical user interface 600 is depicted as a program guide, although in other embodiments graphical user interface 600 may take other forms (e.g., recorded program list, program recording interface, etc.). As shown in FIG. 6, the graphical user interface 600 may include a recording status indicator 610 having one or more indicators of statuses of a recording and/or healing process. The recording status indicator 610 may include a recording progress indicator 540 indicating the current position of the recording process in relation to the media content program being recorded. In the recording status indicator 610, sections 530-1 and 530-2 represent successfully recorded content and section 550 represents “not-yet-recorded” content included in the media content program. Section 580 represents a defective status indicator representative of portion of the media content program that was not properly recorded. In FIG. 6, the defective section 580 also coincides with a failed recording portion of the recorded media content program 510 because healing of the defective portion 580 has not yet been performed.

As shown in FIG. 6, the different sections of the recording status indicator 610 may include or be associated with attributes (e.g., visual attributes such as shades, colors, patterns, etc.) configured to distinguish them from one another. For example, sections 530-1 and 530-2 may include a particular color or shade indicative of recorded content, section 550 may include another color or shade indicative of content that has not yet been recorded, and section 580 may include yet another color or shade indicative of content that is defective. The attributes may function as status indicators. For example, an attribute associated with section 580 may be referred to as a defective content status indicator.

The above-described status indicators are illustrative only. Other types of status indicators may be used in other examples. For example, the graphical user interface 600 may provide information representative of (e.g., numerical indications of) the start and end times of various sections included in the recording status indicator 610, including the start and end times of defective section 580. This may enable a user of content processing subsystem 110-1 to identify with particularity the specific portion(s) of a recording that are defective and initiate a request for one or more specific snippets of media content that may be stored by other content processing subsystems 110-2 through 110-N. For instance, the user may initiate a request including information identifying a particular media content program as well as a specific portion of the media content program being requested. In other implementations, the content processing subsystem 110-1 may be configured to detect a defective portion of a recorded media content program and automatically generate one or more healing operations, including transmitting a request for relevant media content that can be used to heal the defective portion of the recording.

In certain implementations, the content processing subsystem 110-1 may be configured to provide the user with a tool (e.g., a selectable icon) enabling the user to control whether future content healing operations will be initiated automatically by the content processing subsystem 110-1 or manually by the user. Accordingly, the content processing subsystem 110-1 may be configured to provide the user with a tool (e.g., another selectable icon and/or a request interface) enabling the user to manually initiate healing operations.

Other failed recording indicators may be used in other implementations. For example, a pop-up window may be displayed in the graphical user interface 600, the window including an explanation of the meaning and/or cause of a failed recording. As another example, an icon may be displayed, the meaning of which indicates to a user that a portion of a media content program being recorded was not or may not have been properly recorded. A combination of two or more of the above-described status indicators may be used. By providing one or more of the status indicators for presentation to a user, the content processing subsystem 110-1 allows the user to identify recording failures, including, for example, a specific portion of a recorded media content program that is or may be defective.

A defective portion of a recording may be healed as describe above, and at least one healing status indicator may be provided to the output device 112 for presentation to a user. The healing status indicator may identify a healed portion of a recorded media content program and/or provide other information concerning the status of healing operations. FIG. 7 illustrates an exemplary healing status indicator. In the recording status indicator 610 of FIG. 7, section 570 represents a healed portion of recorded media content and may be referred to as a healing status indicator. As shown in FIG. 7, section 570 may include or be associated with one or more attributes (e.g., visual attributes such as shades, colors, patterns, etc.) configured to distinguish section 570 from the other sections (e.g., from defective section 580) in the recording status indicator 610. For example, section 570 may include yet another color or shade indicative of content that has been healed and that distinguishes section 570 from other sections of the media content program 510. For example, sections 570 and 580 may include contrasting shades or colors that distinguish healed content from defective content. An attribute associated with section 570 may be referred to as a healing status indicator, which may identify the progress of operations for healing defective media content.

Another healing status indicator may be provided when healing of defective content in a recorded media content program has been completed. For example, the color or shading of section 570 may be changed once the content in section 580 has been completely healed.

Other healing status indicators may be used in other implementations. For example, a pop-up window may be displayed in the graphical user interface 600, the window including an explanation of the meaning and/or status of a healing process. As another example, an icon may be displayed, the icon indicating to a user that a portion of a media content program being recorded was healed, or recommending to a user that a portion of a media content program should be healed. As yet another example, a healing status indicator may indicate one or more sources of shared media content that are being used to heal a defective recording. Another example may include a numeric indication of the start and/or end times of the healed portion 570. A combination of two or more of the above-described status indicators may be used. By providing one or more healing status indicators for presentation to a user, the content processing subsystem 110-1 allows the user to identify specific healing events, including a specific portion of a recorded media content program that has been healed or should be healed. A healing status indicator may also help a user to appreciate the content healing capabilities of the content processing subsystem 110-1.

III. Exemplary Process View

FIG. 8 illustrates an exemplary method of recording and healing media content. While FIG. 8 illustrates exemplary steps according to one implementation, other implementations may omit, add to, reorder, and/or modify any of the steps shown in FIG. 8.

In step 810, media content is recorded. Step 810 may be performed in any of the ways described above, including the content recording application 243 instructing one or more elements of the content processing subsystem 110-1 to record at least a subset of a media content program received from the content delivery subsystem 111.

In step 815, a defective portion of the recorded media content program that failed to be properly recorded is identified. Step 815 may be performed in any of the ways described above, including the content processing subsystem 110-1 detecting at least one recording interruption and using the approximate start and end times of the interruption to determine the defective portion.

In step 820, at least one recording status indicator identifying a defective media content recording and/or the defective portion of the media content recording is provided for presentation to a user. Step 820 may be performed in any of the ways described above, including providing data representative of a failed recording status indicator to the output device 112 for presentation to the user.

In step 830, defective media content included in the recording is healed. Step 830 may be performed in any of the ways described above.

In step 840, at least one healing status indicator identifying a healed portion of the media content recording is provided for presentation to a user. Step 840 may be performed in any of the ways described above, including providing data representative of a healing status indicator to the output device 112 for presentation to the user.

IV. Alternative Implementations

The preceding description has been presented only to illustrate and describe exemplary implementations with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional implementations may be implemented, without departing from the scope of the invention as set forth in the claims that follow. The above description and accompanying drawings are accordingly to be regarded in an illustrative rather than a restrictive sense.

Claims

1. A method comprising:

recording, by a content processing device, at least a subset of a media content program, wherein the recorded at least a subset of the media content program comprises one or more recorded portions and a defective portion; and
healing, by the content processing device, at least a subset of the defective portion;
providing, by the content processing device, a recording status indicator for presentation to a user, the recording status indicator identifying the one or more recorded portions and the defective portion; and
providing, by the content processing device, a healing status indicator for presentation to the user, the healing status indicator identifying the at least a subset of the defective portion that has been healed.

2. The method of claim 1, wherein said step of providing the healing status indicator includes providing a numeric indication of a start time and an end time of the at least a subset of the defective portion that has been healed.

3. The method of claim 1, wherein said step of providing the healing status indicator includes providing a graphical user interface including a visual attribute identifying the at least a subset of the defective portion that has been healed.

4. The method of claim 3, wherein said step of providing the recording status indicator includes providing another visual attribute identifying the defective portion.

5. The method of claim 1, wherein said step of providing the recording status indicator includes providing a numeric indication of a start time and an end time of the defective portion.

6. The method of claim 5, wherein said step of providing the recording status indicator further includes providing a numeric indication of a start time and an end time of the one or more recorded portions.

7. The method of claim 1, further comprising dynamically updating, by the content processing device, the healing status indicator as the defective portion is healed.

8. The method of claim 1, wherein said healing step includes:

requesting a snippet of media content associated with the defective portion;
receiving at least a portion of the requested snippet; and
joining the received at least a portion of the snippet to the one or more recorded portions.

9. The method of claim 8, wherein said receiving step comprises receiving the at least a portion of the requested snippet from another content processing device communicatively coupled to the content processing device by way of a network.

10. The method of claim 1, further comprising providing, by the content processing device, a tool enabling the user to initiate said healing step.

11. The method of claim 10, further comprising receiving, by the content processing device from the user using the tool, a request to initiate said healing step.

12. The method of claim 1, further comprising providing, by the content processing device, a tool enabling the user to control whether said healing step will be initiated automatically or manually.

13. The method of claim 1, further comprising:

detecting, by the content processing device, at least one recording interruption; and
automatically initiating, by the content processing device, said healing step when the at least one recording interruption is detected to exist for a predetermined length of time.

14. The method of claim 1, wherein each of the one or more recorded portions, the defective portion, and the at least a subset of the defective portion that has been healed are associated with a unique visual attribute configured to distinguish the one or more recorded portions, the defective portion, and the at least a subset of the defective portion that has been healed from each other.

15. A system comprising:

a content processing device configured to
record at least a subset of a media content program, the recorded at least a subset of the media content program comprising one or more recorded portions and a defective portion that failed to be properly recorded,
heal at least a subset of the defective portion,
provide a recording status indicator to an output device for presentation to a user, the recording status indicator identifying the one or more recorded portions and the defective portion, and
provide a healing status indicator to the output device for presentation to the user, the healing status indicator identifying the at least a subset of the defective portion that has been healed.

16. The system of claim 15, wherein the healing status indicator includes a numeric indication of a start time and an end time of the at least a subset of the defective portion that has been healed.

17. The system of claim 15, wherein the healing status indicator includes a visual attribute identifying the at least a subset of the defective portion that has been healed.

18. The system of claim 17, wherein the visual attribute includes a color or shade distinguishing the at least a subset of the defective portion that has been healed from representations of the one or more recorded portions and the defective portion.

19. The system of claim 18, wherein the recording status indicator includes another visual attribute identifying the defective portion and distinguishing the defective portion from a representation of the one or more recorded portions.

20. The system of claim 15, wherein the recording status indicator includes a numeric indication of a start time and an end time of the defective portion.

21. The system of claim 15, wherein said content processing device is configured to receive the at least a subset of the media content program from a content delivery subsystem over a network, said content processing device being configured to heal the at least a subset of the defective portion by requesting and receiving a snippet of media content associated with the defective portion from another content processing device communicatively coupled to the network.

22. An apparatus comprising:

a communication interface configured to receive a media content program from a content delivery subsystem; and
at least one processor configured to
record at least a subset of the media content program, the recorded at least a subset of the media content program comprising one or more recorded portions and a defective portion that failed to be properly recorded,
detect the defective portion,
heal at least a subset of the defective portion,
provide a recording status indicator to an output device for presentation to a user, the recording status indicator identifying the one or more recorded portions and the defective portion, and
provide a healing status indicator to the output device for presentation to the user, the healing status indicator identifying the at least a subset of the defective portion that has been healed.

23. The apparatus of claim 22, wherein the healing status indicator and the recording status indicator include contrasting shades or colors distinguishing the one or more recorded portions, the defective portion, and the at least a subset of the defective portion that has been healed from each other.

Referenced Cited
U.S. Patent Documents
4977455 December 11, 1990 Young
5151789 September 29, 1992 Young
5158155 October 27, 1992 Domain et al.
5253066 October 12, 1993 Vogel
5307173 April 26, 1994 Yuen et al.
5335079 August 2, 1994 Yuen et al.
5353121 October 4, 1994 Young et al.
5382983 January 17, 1995 Kwoh et al.
5442390 August 15, 1995 Hooper et al.
5473362 December 5, 1995 Fitzgerald et al.
5479266 December 26, 1995 Young et al.
5479268 December 26, 1995 Young et al.
5499103 March 12, 1996 Mankovitz
5510811 April 23, 1996 Tobey et al.
5512963 April 30, 1996 Mankovitz
5515173 May 7, 1996 Mankovitz et al.
5517257 May 14, 1996 Dunn et al.
5532732 July 2, 1996 Yuen et al.
5532754 July 2, 1996 Young et al.
5541738 July 30, 1996 Mankovitz
5550576 August 27, 1996 Klosterman
5553123 September 3, 1996 Chan et al.
5559550 September 24, 1996 Mankovitz
5585838 December 17, 1996 Lawler et al.
5600368 February 4, 1997 Matthews
5600711 February 4, 1997 Yuen
5616876 April 1, 1997 Cluts
5619274 April 8, 1997 Roop et al.
5623613 April 22, 1997 Rowe et al.
5630119 May 13, 1997 Aristides et al.
5640484 June 17, 1997 Mankovitz
5648824 July 15, 1997 Dunn et al.
5654748 August 5, 1997 Matthews
5657072 August 12, 1997 Aristides et al.
5673401 September 30, 1997 Volk et al.
5677708 October 14, 1997 Matthews et al.
5678012 October 14, 1997 Kimmich et al.
5682511 October 28, 1997 Sposato et al.
5684525 November 4, 1997 Klosterman
5687331 November 11, 1997 Volk et al.
5689663 November 18, 1997 Williams
5699107 December 16, 1997 Lawler et al.
5701383 December 23, 1997 Russo et al.
5706145 January 6, 1998 Hindman et al.
5721829 February 24, 1998 Dunn et al.
5724492 March 3, 1998 Matthews et al.
5727060 March 10, 1998 Young
5731844 March 24, 1998 Rauch et al.
5734786 March 31, 1998 Mankovitz
5734823 March 31, 1998 Saigh et al.
5734891 March 31, 1998 Saigh
5745095 April 28, 1998 Parchem et al.
5745713 April 28, 1998 Ferguson et al.
5751282 May 12, 1998 Girard et al.
5752160 May 12, 1998 Dunn
5757417 May 26, 1998 Aras et al.
5758258 May 26, 1998 Shoff et al.
5758259 May 26, 1998 Lawler
5774172 June 30, 1998 Kapell et al.
5781228 July 14, 1998 Sposato
5790115 August 4, 1998 Pleyer et al.
5790198 August 4, 1998 Roop et al.
5793973 August 11, 1998 Birdwell et al.
5801787 September 1, 1998 Schein et al.
5805165 September 8, 1998 Thorne et al.
5805763 September 8, 1998 Lawler et al.
5808608 September 15, 1998 Young et al.
5809204 September 15, 1998 Young et al.
5812123 September 22, 1998 Rowe et al.
5812205 September 22, 1998 Milnes et al.
5815145 September 29, 1998 Matthews
5815195 September 29, 1998 Tam
5828945 October 27, 1998 Klosterman
5857190 January 5, 1999 Brown
5861906 January 19, 1999 Dunn et al.
5870150 February 9, 1999 Yuen
5872588 February 16, 1999 Aras et al.
5874985 February 23, 1999 Matthews
5878141 March 2, 1999 Daly et al.
5883627 March 16, 1999 Pleyer
5886746 March 23, 1999 Yuen et al.
5900905 May 4, 1999 Shoff et al.
5905522 May 18, 1999 Lawler
5907323 May 25, 1999 Lawler et al.
5914746 June 22, 1999 Matthews et al.
5915026 June 22, 1999 Mankovitz
5923362 July 13, 1999 Klosterman
5940073 August 17, 1999 Klosterman et al.
5940074 August 17, 1999 Britt et al.
5945987 August 31, 1999 Dunn
5945991 August 31, 1999 Britt et al.
5949954 September 7, 1999 Young et al.
5959688 September 28, 1999 Schein et al.
5969748 October 19, 1999 Casement et al.
5970206 October 19, 1999 Yuen et al.
5974222 October 26, 1999 Yuen et al.
5987213 November 16, 1999 Mankovitz et al.
5987509 November 16, 1999 Portuesi
5988078 November 23, 1999 Levine
5990883 November 23, 1999 Byrne et al.
5991498 November 23, 1999 Young
6002394 December 14, 1999 Schein et al.
6002852 December 14, 1999 Birdwell et al.
6005563 December 21, 1999 White et al.
6008803 December 28, 1999 Rowe et al.
6008836 December 28, 1999 Bruck et al.
6014706 January 11, 2000 Cannon et al.
6016141 January 18, 2000 Knudson et al.
6025837 February 15, 2000 Matthews et al.
6028599 February 22, 2000 Yuen et al.
6028604 February 22, 2000 Matthews et al.
6034689 March 7, 2000 White et al.
6049652 April 11, 2000 Yuen et al.
6052145 April 18, 2000 Macrae et al.
6055314 April 25, 2000 Spies et al.
D424061 May 2, 2000 Backs et al.
D424577 May 9, 2000 Backs et al.
6072485 June 6, 2000 Barnes et al.
6072983 June 6, 2000 Klosterman
6075551 June 13, 2000 Berezowski et al.
6075575 June 13, 2000 Schein et al.
6078348 June 20, 2000 Klosterman et al.
6091882 July 18, 2000 Yuen et al.
6098086 August 1, 2000 Krueger et al.
6118492 September 12, 2000 Milnes et al.
D431552 October 3, 2000 Backs et al.
6133909 October 17, 2000 Schein et al.
6133913 October 17, 2000 White et al.
6137950 October 24, 2000 Yuen
6141003 October 31, 2000 Chor et al.
6141678 October 31, 2000 Britt
D433403 November 7, 2000 Backs et al.
D434043 November 21, 2000 Holland et al.
6144378 November 7, 2000 Lee
6144401 November 7, 2000 Casement et al.
6144964 November 7, 2000 Breese et al.
6151059 November 21, 2000 Schein et al.
6154205 November 28, 2000 Carroll et al.
D435561 December 26, 2000 Pettigrew et al.
6167188 December 26, 2000 Young et al.
6169541 January 2, 2001 Smith
6173317 January 9, 2001 Chaddha et al.
6177931 January 23, 2001 Alexander et al.
6177945 January 23, 2001 Pleyer
6182072 January 30, 2001 Leak et al.
6184877 February 6, 2001 Dodson et al.
6188401 February 13, 2001 Peyer
6215483 April 10, 2001 Zigmond
6215526 April 10, 2001 Barton et al.
6216265 April 10, 2001 Roop et al.
6230319 May 8, 2001 Britt et al.
6233389 May 15, 2001 Barton et al.
6237022 May 22, 2001 Bruck et al.
6239794 May 29, 2001 Yuen et al.
6240555 May 29, 2001 Shoff et al.
6247176 June 12, 2001 Schein et al.
D445801 July 31, 2001 Ma
6259442 July 10, 2001 Britt et al.
6262722 July 17, 2001 Allison et al.
6263501 July 17, 2001 Schein et al.
6266059 July 24, 2001 Matthews et al.
6268856 July 31, 2001 Bruck et al.
6292834 September 18, 2001 Ravi et al.
6304969 October 16, 2001 Wasserman et al.
6308202 October 23, 2001 Cohn et al.
6310886 October 30, 2001 Barton
6311197 October 30, 2001 Mighdoll et al.
6311207 October 30, 2001 Mighdoll et al.
D450058 November 6, 2001 Istvan et al.
D450324 November 13, 2001 Istvan et al.
D450711 November 20, 2001 Istvan et al.
6313851 November 6, 2001 Matthews et al.
6317780 November 13, 2001 Cohn et al.
6317791 November 13, 2001 Cohn et al.
6317885 November 13, 2001 Fries
6323911 November 27, 2001 Schein et al.
6327418 December 4, 2001 Barton
6330719 December 11, 2001 Zigmond et al.
6340997 January 22, 2002 Borseth
6341195 January 22, 2002 Mankovitz et al.
6341374 January 22, 2002 Schein et al.
D453767 February 19, 2002 Istvan et al.
D453768 February 19, 2002 Wilkins
D453936 February 26, 2002 Istvan et al.
6344865 February 5, 2002 Matthews et al.
6345264 February 5, 2002 Breese et al.
6347398 February 12, 2002 Parthasarathy et al.
6353813 March 5, 2002 Breese et al.
6378035 April 23, 2002 Parry et al.
6385739 May 7, 2002 Barton et al.
6388714 May 14, 2002 Schein et al.
6392664 May 21, 2002 White et al.
6396473 May 28, 2002 Callahan et al.
6396546 May 28, 2002 Alten et al.
6397388 May 28, 2002 Allen
6400407 June 4, 2002 Zigmond et al.
6412110 June 25, 2002 Schein et al.
6412112 June 25, 2002 Barrett et al.
6424342 July 23, 2002 Perlman et al.
6425125 July 23, 2002 Fries et al.
6430358 August 6, 2002 Yuen et al.
6430359 August 6, 2002 Yuen et al.
D462333 September 3, 2002 Novak
D462339 September 3, 2002 Allen et al.
D463444 September 24, 2002 Istvan et al.
6449766 September 10, 2002 Fleming
6453471 September 17, 2002 Klosterman
D463788 October 1, 2002 Smith et al.
6460180 October 1, 2002 Park et al.
6460181 October 1, 2002 Donnelly
6463486 October 8, 2002 Parry et al.
6466734 October 15, 2002 Yuen et al.
6469721 October 22, 2002 Matthews et al.
6469753 October 22, 2002 Klosterman et al.
6473858 October 29, 2002 Shimomura et al.
D465227 November 5, 2002 Ro et al.
6477705 November 5, 2002 Yuen et al.
6487646 November 26, 2002 Adams et al.
6489986 December 3, 2002 Allen
6490722 December 3, 2002 Barton et al.
6496205 December 17, 2002 White et al.
6498754 December 24, 2002 Peting et al.
6498895 December 24, 2002 Young et al.
6499057 December 24, 2002 Portuesi
D468274 January 7, 2003 Novak
D469104 January 21, 2003 Istvan et al.
D469443 January 28, 2003 Wilkins et al.
6505232 January 7, 2003 Mighdoll et al.
6505348 January 7, 2003 Knowles et al.
D470152 February 11, 2003 Witus
D470153 February 11, 2003 Billmaier et al.
6519771 February 11, 2003 Zenith
6526471 February 25, 2003 Shimomura et al.
6526580 February 25, 2003 Shimomura et al.
6529233 March 4, 2003 Allen
6535253 March 18, 2003 Barton et al.
6535920 March 18, 2003 Parry et al.
6538701 March 25, 2003 Yuen
6539375 March 25, 2003 Kawasaki
6549719 April 15, 2003 Mankovitz
D474197 May 6, 2003 Nguyen
6559866 May 6, 2003 Kolde et al.
6559894 May 6, 2003 Omura et al.
6560678 May 6, 2003 Weissman et al.
6560777 May 6, 2003 Blackketter et al.
6564379 May 13, 2003 Knudson et al.
6567606 May 20, 2003 Milnes et al.
6570581 May 27, 2003 Smith
6571390 May 27, 2003 Dunn et al.
6571392 May 27, 2003 Zigmond et al.
D475718 June 10, 2003 Witus et al.
6577346 June 10, 2003 Perlman
D476994 July 8, 2003 Simmons et al.
6588013 July 1, 2003 Lumley et al.
D478090 August 5, 2003 Nguyen et al.
D478595 August 19, 2003 Istvan et al.
D478912 August 26, 2003 Johnson
6606652 August 12, 2003 Cohn et al.
6628301 September 30, 2003 Acton et al.
6628302 September 30, 2003 White et al.
D480733 October 14, 2003 Hammerquist et al.
6630963 October 7, 2003 Billmaier
6631523 October 7, 2003 Matthews et al.
6633877 October 14, 2003 Saigh et al.
6637031 October 21, 2003 Chou
6637032 October 21, 2003 Feinleib
6642939 November 4, 2003 Vallone et al.
6643798 November 4, 2003 Barton et al.
6651251 November 18, 2003 Shoff et al.
RE38376 December 30, 2003 Matthews, III
6662218 December 9, 2003 Mighdoll et al.
6668133 December 23, 2003 Yuen et al.
6668377 December 23, 2003 Dunn
6678737 January 13, 2004 Bucher
6681396 January 20, 2004 Bates et al.
6683630 January 27, 2004 Shoff et al.
6684025 January 27, 2004 Perlman
D486834 February 17, 2004 Allen et al.
6687906 February 3, 2004 Yuen et al.
6694352 February 17, 2004 Omoigui
6698020 February 24, 2004 Zigmond et al.
6704058 March 9, 2004 Ranta
6704773 March 9, 2004 Cohn et al.
6704776 March 9, 2004 Fortune
6704813 March 9, 2004 Smirnov et al.
6704929 March 9, 2004 Ozer et al.
6708335 March 16, 2004 Ozer et al.
6710815 March 23, 2004 Billmaier et al.
6721953 April 13, 2004 Bates et al.
6724405 April 20, 2004 Matthews et al.
6727935 April 27, 2004 Allen et al.
6728713 April 27, 2004 Beach et al.
D490086 May 18, 2004 Wilkins et al.
6732325 May 4, 2004 Tash et al.
6732369 May 4, 2004 Schein et al.
6742043 May 25, 2004 Moussa et al.
6742183 May 25, 2004 Reynolds et al.
6745391 June 1, 2004 Macrae et al.
6748375 June 8, 2004 Wong et al.
6748481 June 8, 2004 Parry et al.
6754715 June 22, 2004 Cannon et al.
6756997 June 29, 2004 Ward et al.
6757837 June 29, 2004 Platt et al.
6757906 June 29, 2004 Look et al.
6760537 July 6, 2004 Mankovitz
6762773 July 13, 2004 Kolde et al.
6766523 July 20, 2004 Herley
6766524 July 20, 2004 Matheny et al.
D494186 August 10, 2004 Johnson
6772438 August 3, 2004 Blackketter et al.
6785901 August 31, 2004 Horiwitz et al.
6785902 August 31, 2004 Zigmond et al.
D496665 September 28, 2004 Billmaier et al.
6792195 September 14, 2004 Barton
6798457 September 28, 2004 Boyden et al.
6798971 September 28, 2004 Potrebic
6799326 September 28, 2004 Boylan et al.
6799327 September 28, 2004 Reynolds et al.
6804824 October 12, 2004 Potrebic et al.
6804825 October 12, 2004 White et al.
6813643 November 2, 2004 Perlman
6819344 November 16, 2004 Robbins
6820144 November 16, 2004 Smirnov et al.
6829779 December 7, 2004 Perlman
6842837 January 11, 2005 Peting et al.
6847778 January 25, 2005 Vallone et al.
6847779 January 25, 2005 Pietraszak
6850691 February 1, 2005 Stam et al.
6850693 February 1, 2005 Young et al.
6859799 February 22, 2005 Yuen
6859937 February 22, 2005 Narayan et al.
6861952 March 1, 2005 Billmaier
6865555 March 8, 2005 Novak
6868225 March 15, 2005 Brown et al.
6868551 March 15, 2005 Lawler et al.
6886179 April 26, 2005 Perlman
6891553 May 10, 2005 White et al.
6892390 May 10, 2005 Lieberman et al.
6897904 May 24, 2005 Potrebic et al.
6898765 May 24, 2005 Matthews et al.
6901453 May 31, 2005 Pritchett et al.
6903753 June 7, 2005 Gray et al.
6904609 June 7, 2005 Pietraszak et al.
6906755 June 14, 2005 Lundblad et al.
6907576 June 14, 2005 Barbanson et al.
6915528 July 5, 2005 McKenna
6928652 August 9, 2005 Goldman
6928655 August 9, 2005 Omoigui
6931657 August 16, 2005 Marsh
6938077 August 30, 2005 Sanders
6938270 August 30, 2005 Blackketter et al.
6941575 September 6, 2005 Allen
6943843 September 13, 2005 Boyden et al.
6944880 September 13, 2005 Allen
6947935 September 20, 2005 Horvitz et al.
6957260 October 18, 2005 Mighdoll et al.
6963903 November 8, 2005 Krueger et al.
6963906 November 8, 2005 Portuesi
6965415 November 15, 2005 Lundblad et al.
6965730 November 15, 2005 Chamberlin et al.
6966066 November 15, 2005 Zigmond et al.
6968364 November 22, 2005 Wong et al.
6970640 November 29, 2005 Green et al.
6972787 December 6, 2005 Allen et al.
6973050 December 6, 2005 Birdwell et al.
6973664 December 6, 2005 Fries
6973669 December 6, 2005 Daniels
6975713 December 13, 2005 Smith et al.
6975717 December 13, 2005 Smith et al.
6980638 December 27, 2005 Smith et al.
6980993 December 27, 2005 Horvitz et al.
6981227 December 27, 2005 Taylor
6986062 January 10, 2006 Carpenter
6990462 January 24, 2006 Wilcox et al.
6990497 January 24, 2006 O'Rourke et al.
6990671 January 24, 2006 Evans et al.
6990677 January 24, 2006 Pietraszak et al.
6990678 January 24, 2006 Zigmond
6993532 January 31, 2006 Platt et al.
6996390 February 7, 2006 Herley et al.
7003795 February 21, 2006 Allen
7006613 February 28, 2006 Novak et al.
7007244 February 28, 2006 Pankovcin
D516573 March 7, 2006 Gibson
D517059 March 14, 2006 Newby et al.
D517087 March 14, 2006 Sands
7010265 March 7, 2006 Coffin
7013238 March 14, 2006 Weare
7015925 March 21, 2006 Ford et al.
7017174 March 21, 2006 Sheedy
D518487 April 4, 2006 MacKenzie et al.
D519122 April 18, 2006 MacKenzie et al.
D519519 April 25, 2006 Vong
D519521 April 25, 2006 Fong
7023492 April 4, 2006 Sullivan
7024424 April 4, 2006 Platt et al.
7026964 April 11, 2006 Baldwin et al.
7027101 April 11, 2006 Sloo et al.
7028325 April 11, 2006 Rui et al.
7030886 April 18, 2006 Ford et al.
7032177 April 18, 2006 Novak et al.
7034776 April 25, 2006 Love
7034927 April 25, 2006 Allen et al.
7035355 April 25, 2006 Lais et al.
7035526 April 25, 2006 Green
7036083 April 25, 2006 Zenith
7036090 April 25, 2006 Nguyen
7036091 April 25, 2006 Nguyen
7036092 April 25, 2006 Sloo et al.
7036138 April 25, 2006 Tash
7038690 May 2, 2006 Wilt et al.
7039935 May 2, 2006 Knudson et al.
7042526 May 9, 2006 Borseth
7043477 May 9, 2006 Mercer et al.
7046805 May 16, 2006 Fitzhardinge et al.
7050097 May 23, 2006 Schick et al.
7050867 May 23, 2006 Maymudes
7051111 May 23, 2006 Scullin
7051282 May 23, 2006 Marcjan
7051351 May 23, 2006 Goldman et al.
7055031 May 30, 2006 Platt
7055104 May 30, 2006 Billmaier et al.
7058720 June 6, 2006 Majidimehr
7058816 June 6, 2006 Valeria
7058936 June 6, 2006 Chilimbi et al.
7065553 June 20, 2006 Chesley et al.
7069284 June 27, 2006 Peting
7069576 June 27, 2006 Knudson et al.
7071968 July 4, 2006 Novak
7073118 July 4, 2006 Greenberg et al.
7073193 July 4, 2006 Marsh
7076202 July 11, 2006 Billmaier
7076734 July 11, 2006 Wolff et al.
7076792 July 11, 2006 Zigmond et al.
7076794 July 11, 2006 Lieberman et al.
7080394 July 18, 2006 Istvan et al.
7088910 August 8, 2006 Potrebic et al.
7093273 August 15, 2006 Marsh
7098868 August 29, 2006 Love et al.
7099952 August 29, 2006 Wong et al.
7103904 September 5, 2006 Blackketter et al.
7103905 September 5, 2006 Novak
7103908 September 5, 2006 Tomsen
7107532 September 12, 2006 Billmaier et al.
7107608 September 12, 2006 Wagner et al.
7111320 September 19, 2006 Novak
7116894 October 3, 2006 Chatterton
7117439 October 3, 2006 Barrett et al.
7127127 October 24, 2006 Jojic et al.
7130846 October 31, 2006 Danker et al.
7131054 October 31, 2006 Greenberg et al.
7142230 November 28, 2006 Novak et al.
7146632 December 5, 2006 Miller
7155675 December 26, 2006 Billmaier et al.
7155734 December 26, 2006 Shimomura et al.
7158531 January 2, 2007 Barton
7159176 January 2, 2007 Billmaier et al.
7159177 January 2, 2007 Billmaier et al.
7161877 January 9, 2007 Lai et al.
7161994 January 9, 2007 Shah et al.
7162728 January 9, 2007 Bahn
7165264 January 16, 2007 Westrick
7167531 January 23, 2007 Greenberg et al.
7194511 March 20, 2007 Stettner
7194754 March 20, 2007 Tomsen et al.
7197234 March 27, 2007 Chatterton
7197715 March 27, 2007 Valeria
7200321 April 3, 2007 Otala et al.
7200859 April 3, 2007 Perlman et al.
7203952 April 10, 2007 Broadus
7216235 May 8, 2007 Platt
7228556 June 5, 2007 Beach et al.
7236204 June 26, 2007 Perlman
7237252 June 26, 2007 Billmaier
7243123 July 10, 2007 Allen et al.
7245817 July 17, 2007 Nichols et al.
7251255 July 31, 2007 Young
7251294 July 31, 2007 Peting
7263362 August 28, 2007 Young et al.
D551668 September 25, 2007 Newby et al.
7266832 September 4, 2007 Miller
7266835 September 4, 2007 Halbert
7272298 September 18, 2007 Lang et al.
7272657 September 18, 2007 Allen et al.
D552610 October 9, 2007 Newby et al.
7302696 November 27, 2007 Yamamoto
7310355 December 18, 2007 Krein et al.
7313802 December 25, 2007 Tomsen
7320134 January 15, 2008 Tomsen et al.
7320137 January 15, 2008 Novak et al.
7321716 January 22, 2008 Vallone et al.
7340761 March 4, 2008 Billmaier
7350157 March 25, 2008 Billmaier et al.
7360232 April 15, 2008 Mitchell
7380260 May 27, 2008 Billmaier et al.
7382838 June 3, 2008 Peting
7386129 June 10, 2008 Perlman
7391808 June 24, 2008 Farrand
7409546 August 5, 2008 Platt
7428023 September 23, 2008 Allen et al.
7434246 October 7, 2008 Florence
7440523 October 21, 2008 Lais et al.
7463737 December 9, 2008 Gillon et al.
7466640 December 16, 2008 Snow et al.
7484234 January 27, 2009 Heaton et al.
7487459 February 3, 2009 Billmaier et al.
7487529 February 3, 2009 Orlick
7493015 February 17, 2009 Van Stam et al.
7518629 April 14, 2009 Novak et al.
7529465 May 5, 2009 Barton et al.
7533403 May 12, 2009 Krein et al.
7543325 June 2, 2009 Westbrook et al.
7546622 June 9, 2009 Tash
7558472 July 7, 2009 Locket et al.
7573529 August 11, 2009 Perlman
7574656 August 11, 2009 Billmaier et al.
7590240 September 15, 2009 Platt et al.
7594246 September 22, 2009 Billmaier et al.
7650569 January 19, 2010 Allen et al.
7661121 February 9, 2010 Smith et al.
7665111 February 16, 2010 Barton et al.
7668435 February 23, 2010 Lockett et al.
7671758 March 2, 2010 Seidel et al.
20010029610 October 11, 2001 Corvin et al.
20010047298 November 29, 2001 Moore et al.
20010049820 December 6, 2001 Barton
20010054181 December 20, 2001 Corvin
20020073424 June 13, 2002 Ward et al.
20020124255 September 5, 2002 Reichardt et al.
20030005445 January 2, 2003 Schein et al.
20030056219 March 20, 2003 Reichardt et al.
20030110495 June 12, 2003 Bennington et al.
20030110499 June 12, 2003 Knudson et al.
20030115599 June 19, 2003 Bennington et al.
20030115602 June 19, 2003 Knee et al.
20030163813 August 28, 2003 Klosterman et al.
20030164858 September 4, 2003 Klosterman et al.
20030188310 October 2, 2003 Klosterman et al.
20030188311 October 2, 2003 Yuen et al.
20030196201 October 16, 2003 Schein et al.
20030204847 October 30, 2003 Ellis et al.
20030208756 November 6, 2003 Macrae et al.
20030219228 November 27, 2003 Thiagarajan et al.
20030221192 November 27, 2003 Rappaport et al.
20040006634 January 8, 2004 Ferris
20040010806 January 15, 2004 Yuen et al.
20040045025 March 4, 2004 Ward et al.
20040107437 June 3, 2004 Reichardt et al.
20040168189 August 26, 2004 Reynolds et al.
20040194138 September 30, 2004 Boylan et al.
20040261098 December 23, 2004 Macrae et al.
20050010949 January 13, 2005 Ward et al.
20050028201 February 3, 2005 Klosterman et al.
20050125823 June 9, 2005 McCoy et al.
20050149964 July 7, 2005 Thomas et al.
20050155056 July 14, 2005 Knee et al.
20050216936 September 29, 2005 Knudson et al.
20050251824 November 10, 2005 Thomas et al.
20060045470 March 2, 2006 Poslinski et al.
20060156336 July 13, 2006 Knudson et al.
20060212894 September 21, 2006 Knudson et al.
20060277574 December 7, 2006 Schein et al.
20060288366 December 21, 2006 Boylan et al.
20070016926 January 18, 2007 Ward et al.
20070033613 February 8, 2007 Ward et al.
20070107010 May 10, 2007 Jolna et al.
20090125843 May 14, 2009 Billmaier et al.
Patent History
Patent number: 8103965
Type: Grant
Filed: Jun 28, 2007
Date of Patent: Jan 24, 2012
Patent Publication Number: 20090006999
Assignee: Verizon Patent and Licensing Inc. (Basking Ridge, NJ)
Inventors: Brian Roberts (Frisco, TX), Heath Stallings (Grapevine, TX), Don Relyea (Dallas, TX)
Primary Examiner: Tadeese Hailu
Assistant Examiner: Darrin Hope
Application Number: 11/769,863