Methods and apparatus for premises content distribution
Apparatus and methods for transfer and management of protected content in a network. In one embodiment, the apparatus comprises server and renderer devices including, for example, consumer premise equipment (CPE) having a content handler application adapted to run thereon. The content handler directs requests for content, directs searches of a device's storage, and directs transfers of content into the device as well as within the device. The content handler may, in another embodiment, be adapted to include a scheduler entity which maintains a schedule of upcoming content, and is adapted to maintain and manage requests for the upcoming content by reserving tuner resources. The content handler may be further adapted to implement authentication and authorization procedures.
Latest Time Warner Cable Enterprises LLC Patents:
- Apparatus and methods for dynamic open-access networks
- Methods and apparatus for provisioning services which require a device to be securely associated with an account
- Apparatus and methods for monitoring and optimizing delivery of content in a network
- Apparatus and methods for content delivery and message exchange across multiple content delivery networks
- High throughput network encryption using CCAP
A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION1. Field of Invention
The present invention relates generally to the field of content (e.g., multimedia, audiovisual, data, applications, etc.) delivery over a network. Specifically, in one aspect, the invention relates to the methods and apparatus for delivering content among a variety of devices of a network in communication with one another.
2. Description of Related Technology
Recent advances in digital information processing have made a wide range of services and functions available for delivery to consumers at their premises for very reasonable prices or subscription fees. These services and functions include digital programming (movies, etc.), digital video-on-demand (VOD), personal video recorder (PVR), Internet Protocol television (IPTV), digital media playback and recording, as well high-speed Internet access and IP-based telephony (e.g., VoIP). Other services available to network users include access to and recording of digital music (e.g., MP3 files), as well local area networking (including wire-line and wireless local area networks) for distributing these services throughout the user's premises, and beyond.
Increased deployment of wireless interfaces such as Wi-Fi, Wi-MAX and Bluetooth have also increased the prevalence and opportunity for ad hoc networking; i.e. substantially spontaneous or flexible network topologies between as few as two different entities.
Currently, many of these services are provided and delivered to the user via a wide variety of different equipment environments including, inter alia, cable modems, Wi-Fi hubs, Ethernet hubs, gateways, switches and routers, computers, servers, cable set-top boxes, PSTNs, cellular telephones/smartphones, PDAs, and portable digital music devices such as the Apple iPod™. Additionally, the services associated with such technology are typically provided by multiple vendors including e.g., a cable service provider (e.g., MSO), cellular service provider (CSP), wireless service provider (WSP), VoIP service provider, music download service, Internet service provider (ISP), PSTN telephone service, etc.
Some improvements in digital service integration have been made over time. For example, cable system subscribers (such as those of the Assignee hereof) can now access VOD, PVR, PPV and broadcast services simultaneously, as well a Internet access via cable modem, and even digital telephony (e.g., VoIP). However, these functions are still substantially disparate in terms of their hardware and software environments (i.e., the user must have a cable modem, set-top box, VoIP telephony unit, PC, etc.), and “cross-over” between the environments (e.g., moving content or data from one environment to the other) is often quite limited.
Furthermore, various mechanisms for the secure movement of content delivered by these services within the user's premises (or even outside) have been employed, including, inter alia, conditional access, encryption, the establishment of trusted domains, and digital rights management. However, methods for managing and transferring data inside and outside of a user's premises to date have required the assistance of one or more separate entities; i.e., entities separate from the premises devices themselves.
Thus, improved apparatus and methods for facilitating the distribution of digital content within a user premises are needed. These would advantageously manage and transfer data without requiring entities separate from the serving and the requesting devices (e.g., premises devices) themselves. Such improved apparatus and methods would ideally operate substantially so as to allow ready implementation on any number of different platforms and environments in a substantially agnostic fashion, and provide users the ability to browse and transfer content between equipment with different vendor's security package implementations.
Such improved apparatus and methods would also preferably be implemented in a manner that is both substantially automated and transparent to the user, and which can leverage the capabilities of existing or planned industry-standard interface technologies such as Universal Plug and Play (UPnP) if desired.
SUMMARY OF THE INVENTIONThe present invention addresses the foregoing needs by disclosing apparatus and methods useful for managing and distributing content within a premises (and beyond), including inter alia (i) storing content, (ii) detecting devices or entities in communication with a premises network, (iii) browsing content within such devices or entities; and (iv) transfer of content to and from authorized devices.
In a first aspect of the invention, a content server device is disclosed. In one embodiment, the content server device is used in a premises network, and comprises: a storage medium, the storage medium adapted to store content; and a digital processor comprising at least one computer program configured to receive and process requests for content. The computer program is adapted to: direct a search of the storage medium for the requested content; and direct a transfer of the requested content.
In one variant, the request for content comprises a request from a requesting customer premises equipment (CPE) and the direction a transfer of the requested content comprises directing a transfer of the content to the requesting CPE. In another variant, the request for content comprises a request from a user of the content server device.
In yet another variant, the content server device further comprises an authentication apparatus, the authentication apparatus adapted to facilitate authentication of the content-requesting entity and authorization of the requested content.
In still another variant, the content server device further comprises a receiving apparatus, the receiving apparatus adapted to receive content from one or more content servers on the network. The receiving apparatus may also comprise a display apparatus.
In a second aspect of the invention, a method of managing content is disclosed. In one embodiment, the method of managing content is used within a content server device, and comprises: directing browsing of the content by a user; processing a request for the content; and directing a transfer of the at least portion of the content.
In one variant, the act of directing browsing comprises browsing of content presently available to the content server device which is stored on the content server device, stored on a headend entity to which the content server device has access, or received to the content server device via an RF tuner disposed on the content server device. In another variant, the direction of browsing comprises browsing a schedule of content which will be available at some future time to the content server device, and the direction of a transfer of at least a portion of the content comprising waiting until the future content becomes available.
In still another variant, the direction of a transfer comprises directing a transfer of the content to a storage apparatus or to a display apparatus.
In yet another variant, the method further comprises verifying that the requesting device comprises adequate security provisions for protecting the requested content before the transferring is commenced.
In a third aspect of the invention, a content requesting device is disclosed. In one embodiment, the content requesting device is configured for data communication with a content server device over a premises network, and the device comprises: a receiving apparatus, the receiving apparatus adapted to receive content from the server device; and a digital processor comprising at least one computer program. The computer program is adapted to: direct a request for content from the server device; direct a search of a storage medium associated with the server device for the requested content; and direct a transfer of the requested content.
In one variant, the content requesting device further comprises a storage medium adapted to store the requested content, and the direction of a transfer of the requested content comprises directing a transfer to the storage medium.
In another variant, the content requesting device further comprises a display apparatus adapted to display the requested content, and the act of direction of a transfer of the requested content comprises directing a transfer to the display apparatus.
In still another variant the content requesting device further comprises a scanning apparatus, the scanning apparatus being configured to locate one or more content server devices on the network.
In yet another variant, the content requesting device further comprises a software security architecture adapted to protect at least portions of the content after it is transferred to the rendering apparatus.
In still yet another variant, the stored content comprises a plurality of media files each having a respective substantially unique title.
In a fourth aspect of the invention, a method of transferring content is disclosed. In one embodiment, the method is used for transferring content between two devices associated with a network, and comprises: storing the content at a first of the two devices; directing browsing of stored content by a requesting device; receiving a request for transmission of at least a portion of the content; and directing a transfer of the at least portion of the content to the requesting device while maintaining the content protection.
In one variant, the method further comprises authenticating the requesting device, the authentication being accomplished by the computer program running on at least one of the two devices.
In another variant, the stored content comprises a plurality of media files each having a respective substantially unique title, and the browsing comprises searching the titles.
In yet another variant, the requesting device comprises adequate security provisions for protecting the requested content before the transferring is commenced. For example, the first and second devices may comprise an authorized service domain (ASD) for maintaining protection of the content.
In still yet another variant, the first and second devices are in data communication with one another via a substantially standardized communications interface (e.g., a Universal Plug and Play (UPnP) interface), and the first device completes the authentication using a substantially standardized security architecture.
In a fifth aspect of the invention, a method of sharing content is disclosed. In one embodiment, the method is used for sharing protected content within an ad hoc network, and comprises: establishing ad hoc a communication channel between first and second entities, at least the first and second entities forming the network when the channel is established; selectively allowing at least one of the entities to browse content of the other of the entity, the browsing directed at least in part by a computer program adapted to run on at least one of the entities; receiving at one of the entities a request for at least portion of the content from the other the entity; and selectively transferring at least a portion of the content from at least one of the entities to the other of the entities, the transferring being directed at least in part by the computer program adapted to run on at least one of the entities.
In one variant, the browsed content comprises content stored on the browsed entity.
In another variant, the browsing comprises viewing a schedule of the future content, and wherein the browsed content comprises content which will be available to the browsed entity at some time in the future.
In yet another variant, the method further comprises the browsed entity notifying the other entity when the content available to the browsed entity at some time in the future becomes available.
In another variant, the act of transferring at least a portion of the content comprises transferring at least a portion of the content to a storage medium or a display apparatus.
In still another variant, the method further comprises authenticating at least one of: (i) the first entity to the second entity, or (ii) the second entity to the first entity. Authentication is accomplished by the computer program adapted to run on at least one of the entities, and the transfer of at least a portion of the content may be based, at least in part, on the authentication.
In yet another variant, the act of establishing comprises causing the first and second entities to be placed in data communication via at least a plug-and-play data interface.
In still yet another variant, the act of establishing comprises causing the first and second entities to be placed in data communication via a wireless interface wherein one of the first and second entities assumes a first role and the second entity assumes a second role with respect to the communication channel. The first role may comprise a master station, and the second role a slave station. For example, the first role may comprise an access point (AP), and the second role may comprise a station (STA), the AP providing data connectivity to at least one other entity other than the STA.
In a sixth aspect of the invention, a computer readable apparatus is disclosed. In one embodiment, the computer readable apparatus comprises media adapted to contain a computer program having a plurality of instructions, the plurality of instructions which, when executed: process requests for content; direct browsing of available content; and direct a transfer of the requested content.
In one variant, the computer program is run on a first device, the requests for content comprise requests from the first device, or a second device, and the available content comprises content stored on the first device.
In another variant, the computer program is further adapted to receive content over a network interface, and wherein the available content comprises content received from the interface. The network interface may comprise at least one RF tuner. The computer program may be run on a first device, and the requests for content may comprise requests from the first device, or a second device, for content received from the interface. The available content may comprise content available at some future time, the computer program further adapted to maintain the requests for the content available at some future time and implement the requests at some time after the future time when the content becomes available.
In yet another variant, the computer program is run on a first device, the requests for content comprise requests from the first device, and a transfer of the requested content to a storage apparatus or a display apparatus associated with the first device is performed.
In still another variant, the computer program is run on a first device, the requests for content comprise requests from a second device. A transfer is directed to a storage apparatus or a display apparatus associated with the second device.
These and other aspects of the invention shall become apparent when considered in light of the disclosure provided herein.
Reference is now made to the drawings wherein like numerals refer to like parts throughout.
As used herein, the term “application” refers generally to a unit of executable software that implements a certain functionality or theme. The themes of applications vary broadly across any number of disciplines and functions (such as on-demand content management, e-commerce transactions, brokerage transactions, home entertainment, calculator etc.), and one application may have more than one theme. The unit of executable software generally runs in a predetermined environment; for example, the unit could comprise a downloadable Java Xlet™ that runs within the JavaTV™ environment.
As used herein, the term “client device” includes, but is not limited to, set-top boxes (e.g., DSTBs), personal computers (PCs), and minicomputers, whether desktop, laptop, or otherwise, and mobile devices such as handheld computers, PDAs, personal media devices (PMDs), such as for example an iPod™, and smartphones.
As used herein, the term “codec” refers to an video, audio, or other data coding and/or decoding algorithm, process or apparatus including, without limitation, those of the MPEG (e.g., MPEG-1, MPEG-2, MPEG-4, etc.), Real (RealVideo, etc.), AC-3 (audio), DiVX, XViD/ViDX, Windows Media Video (e.g., WMV 7, 8, or 9), ATI Video codec, or VC-1 (SMPTE standard 421M) families.
As used herein, the term “computer program” or “software” is meant to include any sequence or human or machine cognizable steps which perform a function. Such program may be rendered in virtually any programming language or environment including, for example, C/C++, Fortran, COBOL, PASCAL, assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), and the like, as well as object-oriented environments such as the Common Object Request Broker Architecture (CORBA), Java™ (including J2ME, Java Beans, etc.), Binary Runtime Environment (BREW), and the like.
As used herein, the term “conditional access” refers to any access control scheme, whether implemented in hardware, software, or firmware (or combinations thereof), including without limitation members of the “Powerkey” family (Powerkey Book 2, Powerkey Book 3, etc.), NDS (including VideoGuard, mVideoGuard, etc.), ANSI/SCTE Standard 52 2003 (DVS-042), incorporated herein by reference in its entirety, and Motorola/General Instrument DigiCipher® family (DigiCipher II, etc.). These can be implemented using, for example, the so-called “CableCard” plug-in security module access technology, a downloadable CA system (DCAS), or otherwise.
The terms “Customer Premises Equipment (CPE)” and “host device” refer to any type of electronic equipment located within a customer's or user's premises and connected to a network. The term “host device” refers generally and without limitation to a terminal device that has access to digital television content via a satellite, cable, or terrestrial network. The host device functionality may be integrated into a digital television (DTV) set. The term “customer premises equipment” (CPE) includes without limitation electronic equipment such as set-top boxes (e.g., DSTBs), televisions, cable modems (CMs), embedded multimedia terminal adapters (eMTAs), whether stand-alone or integrated with other devices, Digital Video Recorders (DVR), gateways or gateway storage devices (Furnace), and ITV Personal Computers.
As used herein, the term “display” means any type of device adapted to display information, including without limitation CRTs, LCDs, TFTs, plasma displays, LEDs, incandescent and fluorescent devices. Display devices may also include less dynamic devices such as, for example, printers, e-ink devices, and the like.
As used herein, the term “DVR” (digital video recorder) refers generally to any type or recording mechanism and/or software environment whereby content sent over a network can be recorded and selectively recalled. Such DVR may be dedicated in nature, or part of a non-dedicated or multi-function system.
As used herein, the term “DOCSIS” refers to any of the existing or planned variants of the Data Over Cable Services Interface Specification, including for example DOCSIS versions 1.0, 1.1, 2.0 and 3.0. DOCSIS (version 1.0) is a standard and protocol for internet access using a “digital” cable network. DOCSIS 1.1 is interoperable with DOCSIS 1.0, and has data rate and latency guarantees (VoIP), as well as improved security compared to DOCSIS 1.0. DOCSIS 2.0 is interoperable with 1.0 and 1.1, yet provides a wider upstream band (6.4 MHz), as well as new modulation formats including TDMA and CDMA. It also provides symmetric services (30 Mbps upstream).
As used herein, the term “headend” refers generally to a networked system controlled by an operator (e.g., an MSO) that distributes programming to MSO clientele using client devices. Such programming may include literally any information source/receiver including, inter alia, free-to-air TV channels, pay TV channels, interactive TV, and the Internet. DSTBs may literally take on any configuration, and can be retail devices meaning that consumers may or may not obtain their DSTBs from the MSO exclusively. Accordingly, it is anticipated that MSO networks may have client devices from multiple vendors, and these client devices will have widely varying hardware capabilities. Multiple regional headends may be in the same or different cities.
As used herein, the term “integrated circuit (IC)” refers to any type of device having any level of integration (including without limitation ULSI, VLSI, and LSI) and irrespective of process or base materials (including, without limitation Si, SiGe, CMOS and GaAs). ICs may include, for example, memory devices (e.g., DRAM, SRAM, DDRAM, EEPROM/Flash, and ROM), digital processors, SoC devices, FPGAs, ASICs, ADCs, DACs, transceivers, memory controllers, and other devices, as well as any combinations thereof.
As used herein, the terms “Internet” and “internet” are used interchangeably to refer to inter-networks including, without limitation, the Internet.
As used herein, the term “memory” includes any type of integrated circuit or other storage device adapted for storing digital data including, without limitation, ROM. PROM, EEPROM, DRAM, SDRAM, DDR/2 SDRAM, EDO/FPMS, RLDRAM, SRAM, “flash” memory (e.g., NAND/NOR), and PSRAM.
As used herein, the term “digital processor” is meant generally to include all types of digital processing devices including, without limitation, digital signal processors (DSPs), reduced instruction set computers (RISC), general-purpose (CISC) processors, microprocessors, gate arrays (e.g., FPGAs), PLDs, reconfigurable compute fabrics (RCFs), array processors, and application-specific integrated circuits (ASICs). Such digital processors may be contained on a single unitary IC die, or distributed across multiple components.
As used herein, the terms “MSO” or “multiple systems operator” refer to a cable, satellite, or terrestrial network provider having infrastructure required to deliver services including programming and data over those mediums.
As used herein, the terms “network” and “bearer network” refer generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, satellite networks, telco networks, and data networks (including MANs, WANs, LANs, WLANs, internets, and intranets). Such networks or portions thereof may utilize any one or more different topologies (e.g., ring, bus, star, loop, etc.), transmission media (e.g., wired/RF cable, RF wireless, millimeter wave, optical, etc.) and/or communications or networking protocols (e.g., SONET, DOCSIS, IEEE Std. 802.3, ATM, X.25, Frame Relay, 3GPP, 3GPP2, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).
As used herein, the terms “network agent” and “network entity” refers to any network entity (whether software, firmware, and/or hardware based) adapted to perform one or more specific purposes. For example, a network agent or entity may comprise a computer program running in server belonging to a network operator, which is in communication with one or more processes on a CPE or other device.
As used herein, the term “network interface” refers to any signal, data, or software interface with a component, network or process including, without limitation, those of the Firewire (e.g., FW400, FW800, etc.), USB (e.g., USB2), Ethernet (e.g., 10/100, 10/100/1000 (Gigabit Ethernet), 10-Gig-E, etc.), MoCA, Serial ATA (e.g., SATA, e-SATA, SATAII), Ultra-ATA/DMA, Coaxsys (e.g., TVnet™), radio frequency tuner (e.g., in-band or OOB, cable modem, etc.), Wi-Fi (802.11a,b,g,n), Wi-MAX (802.16), PAN (802.15), or IrDA families.
As used herein, the term “QAM” refers to modulation schemes used for sending signals over cable networks. Such modulation scheme might use any constellation level (e.g. QPSK, QAM-16, QAM-64, QAM-256 etc.) depending on details of a cable network. A QAM may also refer to a physical channel modulated according to said schemes.
As used herein, the terms “render” and “renderer” refer to any device, process or entity which utilizes content for, without limitation, display, execution, or playback. For example, a renderer might comprise a DVR, television monitor, PC, mobile device with display capability, laptop computer, iPod or even an MP3 player.
As used herein, the terms “security framework” and “security package” refer generally to, without limitation, one of more of implementation guidelines, security policies, application programming interfaces (APIs), encryption or scrambling algorithms, and cryptographic element (e.g., symmetric or asymmetric key) generation and management algorithms.
As used herein, the term “server” refers to any computerized component, system or entity regardless of form which is adapted to provide data, files, applications, content, or other services to one or more other devices or entities on a computer network.
As used herein, the terms “PnP” and “Plug and Play” refer generally to a capability wherein devices can communicate when first placed in communication according to a substantially known or standardized capability. Such communication is generally without requiring reconfiguration or manual installation of device drivers. One exemplary embodiment of such PnP capability is the Universal PnP (UPnP) technology set forth in “UPnP™ Device Architecture” Version 1.0, dated Jun. 8, 2000, incorporated herein by reference in its entirety.
As used herein, the term “user interface” refers to, without limitation, any visual, graphical, tactile, audible, sensory, or other means of providing information to and/or receiving information from a user or other entity.
As used herein, the term “Wi-Fi” refers to, without limitation, any of the variants of IEEE-Std. 802.11 or related standards including 802.11 a/b/g/i/n.
As used herein, the term “wireless” means any wireless signal, data, communication, or other interface including without limitation Wi-Fi, Bluetooth, 3G, HSDPA/HSUPA, TDMA, CDMA (e.g., IS-95A, WCDMA, etc.), FHSS, DSSS, GSM, PAN/802.15, Wi-MAX (802.16), 802.20, narrowband/FDMA, OFDM, PCS/DCS, analog cellular, CDPD, satellite systems, millimeter wave or microwave systems, acoustic, and infrared (i.e., IrDA).
Overview
In one salient aspect, the present invention provides a apparatus and methods for the management of content within a single device and for several devices connected to a home network to transfer protected content (including for example audiovisual or multimedia content, applications or data) in a substantially “peer-to-peer” fashion and without resort to a central security server or other such entity. The management, transfer, and “browsing” of content on a single device or on a plurality of devices is accomplished via a content handler which, in one embodiment, is an application run on at least one of the devices and adapted to sit between the OCAP digital navigator and OCAP stack. The content handler utilizes various algorithms in conjunction with several “buckets” to make management, transfer, and browsing possible.
In one exemplary embodiment, the content handler is disposed on a server device and directs the browsing of stored and other available content as well as the transfer of selected content within the device itself and to other devices. It is noted that the server device may comprise a CPE, host device, or other entity, including, inter alia, a VOD server or PVR entity. The content handler of the present embodiment may also include authentication functionality to ensure transfer between authorized devices. Further, the content handler may also comprise a scheduler adapted to maintain a schedule of upcoming content (i.e. content that will be available at a future time), and manage tuner resources including scheduling the resources for receipt of future content.
In another exemplary embodiment, the content handler is disposed on a requesting device; the content handler of this embodiment is adapted to direct requests to server devices (including, e.g. CPE, VOD servers, PVR entities), directs searches of the server devices, and direct transfers from server devices to the various components of the CPE on which the content handler is present.
Methods for transfer of content within a device utilizing a content handler as well as methods for the transfer of content between two devices, where at least one device utilizes a content handler are also described.
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTSExemplary embodiments of the apparatus and methods of the present invention are now described in detail. While these exemplary embodiments are described in the context of the aforementioned hybrid fiber coax (HFC) cable system architecture having an multimedia specific operator (MSO), digital networking capability, and plurality of client devices/CPE, the general principles and advantages of the invention may be extended to other types of networks and architectures, whether broadband, narrowband, wired or wireless, or otherwise, the following therefore being merely exemplary in nature.
It will also be appreciated that while described generally in the context of a consumer (i.e., home) end user domain, the present invention may be readily adapted to other types of environments (e.g., commercial/enterprise, government/military, etc.) as well. Myriad other applications are possible.
Further, it is noted that, while the present discussion is given in terms of traditional CPE (i.e., devices which receive content from traditional RF tuner interfaces), other devices may be utilized in conjunction with the present invention as well. For example, in one embodiment, one or more of the server and/or renderer devices may comprise an IP video device (IVD); an IVD is a device which receives video stream from an IP connection (rather than RF connection). Exemplary IVD may include, inter alia, IP STB's, cellular telephones, laptops, general purpose PC's, gaming consoles, etc.
Further, it is appreciated that while described generally in the context of the OpenCable Application Platform (OCAP) operating system, other systems including, inter alia, MHP, ARIB, ACAP or proprietary may be utilized consistent with the present invention.
Lastly, it is recognized that while described primarily in the context of a consumer or enterprise premises having a prescribed geographic scope or boundaries, the invention is in no way limited to any such premises description. For example, a “premises” as used herein could refer to a psychologically proximate premises; e.g., a group of entities or locations that are not physically proximate, but rather logically proximate with respect to a user, such as that user's home, office, and car. Similarly, a “premises” could refer to psychologically proximate devices irrespective of their physical location (e.g., “my cellular phone”, “my DVR”, etc.), or even psychologically proximate users (“my girlfriend”, “my mother”, “my boss”, etc.) again irrespective of their location.
Content Delivery Network—
The various components of the exemplary content delivery network 100 include (i) one or more data and application origination points 102; (ii) one or more content sources 103, (iii) one or more application distribution servers 104; (iv) one or more VOD servers 105, and (v) consumer premises equipment (CPE) 106. The distribution server(s) 104, VOD servers 105 and CPE(s) 106 are connected via a bearer (e.g., HFC) network 101. A simple architecture comprising one of each of the aforementioned components 102, 104, 105, 106 is shown in
The data/application origination point 102 comprises any medium that allows data and/or applications (such as a VOD-based or “Watch TV” application, or other application) to be transferred to a distribution server 104. This can include for example a third party data source, application vendor website, CD-ROM, external network interface, mass storage device (e.g., RAID system), etc. Such transference may be automatic, initiated upon the occurrence of one or more specified events (such as the receipt of a request packet or ACK), performed manually, or accomplished in any number of other modes readily recognized by those of ordinary skill.
The application distribution server 104 comprises a computer system where such applications can enter the network system. Distribution servers are well known in the networking arts, and accordingly not described further herein.
The VOD server 105 comprises a computer system where on-demand content can be received from one or more of the aforementioned data sources 102 and enter the network system. These servers may generate the content locally, or alternatively act as a gateway or intermediary from a distant source.
The CPE 106 includes any equipment in the “customers' premises” (or other locations, whether local or remote to the distribution server 104) that can be accessed by a distribution server 104 or other network agent or entity. Exemplary embodiments of the CPE of the invention are described subsequently herein with respect to
Referring now to
The architecture 150 of
A digital rights management (DRM) server, not shown, may also reside at the headend 150, and used for serving DRM requests from downstream devices such as the CPE 106. The exemplary DRM server comprises a computer system where the security and encryption aspects of content transferred over the network 101 are managed. The content servers described above may implement encryption and CA technology in conjunction with the DRM server such that the content made available over the network can be received and decoded by specific CPE 106 only.
Content (e.g., audio, video, etc.) is provided in each downstream (in-band) channel associated with the relevant service group. To communicate with the headend or intermediary node (e.g., hub server), the CPE 106 may use the out-of-band (OOB) or DOCSIS channels and associated protocols. The OCAP 1.0, 2.0, 3.0 (and subsequent) specifications provide for exemplary networking protocols both downstream and upstream, although the invention is in no way limited to these approaches.
It will also be recognized that the multiple servers (broadcast, VOD, or otherwise) can be used, and disposed at two or more different locations if desired, such as being part of different server “farms”. These multiple servers can be used to feed one service group, or alternatively different service groups. In a simple architecture, a single server is used to feed one or more service groups. In another variant, multiple servers located at the same location are used to feed one or more service groups. In yet another variant, multiple servers disposed at different location are used to feed one or more service groups.
As shown in
“Switched” Networks—
Switching architectures allow improved efficiency of bandwidth use for ordinary digital broadcast programs. Ideally, the subscriber is unaware of any difference between programs delivered using a switched network and ordinary streaming broadcast delivery.
Co-owned and co-pending U.S. patent application Ser. No. 09/956,688 filed Sep. 20, 2001 and entitled “Technique for effectively providing program material in a cable television system”, incorporated herein by reference in its entirety, describes one exemplary broadcast switched digital architecture useful with the present invention, although it will be recognized by those of ordinary skill that other approaches and architectures may be substituted.
In addition to “broadcast” content (e.g., video programming), the systems of
Referring again to
The edge switch 194 forwards the packets receive from the CMTS 199 to the QAM modulator 189, which transmits the packets on one or more physical (QAM-modulated RF) channels to the CPEs. The IP packets are typically transmitted on RF channels that are different that the RF channels used for the broadcast video and audio programming, although this is not a requirement. The CPE 106 are each configured to monitor the particular assigned RF channel (such as via a port or socket ID/address, or other such mechanism) for IP packets intended for the subscriber premises/address that they serve.
Co-pending and co-owned U.S. patent application Ser. No. 11/013,665 filed Dec. 15, 2004 and entitled “Method and apparatus for high bandwidth data transmission in content-based networks”, incorporated herein by reference in its entirety, describes yet another delivery model for the aforementioned content, based on a high-speed VOD-based infrastructure.
It will be appreciated that the content delivery network used with the premises distribution functions of the present invention may also include a downloadable conditional access (CA), DRM, or trusted domain (TD) apparatus such as those described in co-pending and co-owned U.S. patent application Ser. No. 11/584,208 filed Oct. 20, 2006 and entitled “Downloadable security and protection methods and apparatus”, incorporated herein by reference in its entirety. Such download apparatus is useful at, inter alia, the headend or distribution hub of a cable network, for implementing a download paradigm for legacy or newly developed CA, TD, and DRM software and cryptographic protection schemes. This allows the network operator, and even the third party content provider by proxy, to exert additional control on viewing, reproduction, and migration of content distributed over the network. In one embodiment, these capabilities comprise downloadable personalized software modules (images), and an associated decryption key that facilitates decryption of the downloaded software images. In contrast to prior art approaches of merely encrypting the content itself (such as via a DES or AES algorithm via a symmetric or asymmetric key approach), the exemplary embodiments referenced above allow for the download of secure software images, which may be used to, inter alia, ensure security of the downloaded images and also migrate protected content to other platforms in the user or client domain so as to extend the trusted or authorized service domain. Advantageously, outside of the conditional access system (CAS), the personalized software image is never rendered in an unprotected form or otherwise made accessible.
Premises Content Distribution System—
Referring now to
As shown in
The premises gateway 206 includes a hardware platform that is generally installed either inside or outside of the premises. The premises gateway 206 platform is connected to the bearer network 204 (e.g., HFC 101, satellite network, Telco DSL network, etc.) via an appropriate interface such as a coaxial cable or DOCSIS connection, a digital subscriber line (DSL) telephony connection, an Internet Protocol Television (IPTV) connection over copper wire, a satellite receiver coupled to an antenna, etc. The premises gateway 206 is also connected on its back end to other equipment that is installed in the premises (not shown). In one embodiment, the premises gateway 206 is connected to the other premises equipment via a premises local area network, or PLAN, interface such as that described in co-owned, co-pending U.S. patent application Ser. No. 11/592,054 entitled “Methods and apparatus for premises content distribution”; which is hereby incorporated by reference in its entirety.
The connection of the premises gateway to the other premises equipment may take literally any form, whether wired or wireless, including, inter alia a 10/100/1000/10-Gig-E NIC, a Wi-Fi interface card, or a coaxial RF interface, or any other mechanism known in the art.
In some implementations, the premises gateway 206 might be connected to more than one bearer network, and/or may have multiple various connections to various PLAN (not shown) or CPE 106. For example, a premises gateway 206 may be connected to some devices over a wireless connection and other devices over a wired connection such as a telephone line, power line, or indigenous coaxial cable
The present invention accordingly contemplates various implementations of the premises gateway functionality. For example, one exemplary converged device useful with the present invention is described in co-owned and co-pending U.S. patent application Ser. No. 11/378,129 filed Mar. 16, 2006 and entitled “Methods and apparatus for centralized content and data delivery”, incorporated herein by reference in its entirety, although it will be recognized by those of ordinary skill that other devices and approaches may be substituted.
In the illustrated embodiment, the present invention utilizes at least two CPE 106a, 106b in communication with one another. One of the CPE 106a functions as a content server, while the other CPE 106b functions as a content renderer. The server CPE 106a therefore functions to store content. The content can be stored using one or more storage media such as a hard drive (HDD), flash memory card or USB key, optical disc, memory array, RAID, etc. The storage may be present “in the box”, or may comprise an attached external device 210 attached to the server CPE 106a via a dedicated or shared connection. It is appreciated that in one embodiment the content server CPE 106a and the premises gateway 206 may be implemented on the same physical platform. In such as case, the content server/premises gateway might take the form of, e.g., a DVR or a multi-room DVR device that interfaces to one or more distribution networks 101. It may also comprise one or more high-speed interfaces (e.g., USB 2.0, IEEE-Std. 1394 “Firewire”, etc.) over which plug-and-play functionality may be implemented. Further, as noted above, the functions of the content server CPE 106a may also be implemented by the renderer CPE 106b. It is also appreciated that in other embodiments, the content server CPE 106a may comprise a headend entity such as a VOD server 105, or network PVR; or BSA hub entity.
Both CPE 106a, 106b of the illustrated embodiment comprise a hardware/software platform including a content handler 208, which will be discussed in greater detail below. However, it is appreciated that in alternative embodiments, only one CPE 106 comprises a content handler 208. Generally, the content handler 208 permits the content server CPE 106a and the content renderer CPE 106b to be in communication with one another to send and receive content between them. The content handler 208 is also adapted to communicate with the resource manager (not shown), content manager (not shown), and other components of the CPE 106, as well as other components of other CPE 106 which do not have content handlers 208 of their own. According to this embodiment, the CPE 106 having a content handler 208 would still be adapted to send and receive content to and from a legacy device (a CPE 106 which does not have a content handler 208) as well as other network components.
Similarly, the content server CPE 106a may merely act as a proxy for an upstream device connected to multiple distribution networks. One such device is disclosed in a co-owned and co-pending U.S. patent application Ser. No. 11/440,490 filed May 24, 2006 and entitled “Personal content server apparatus and methods”, incorporated herein by reference in its entirety. In one embodiment, the device comprises a personal content server located, e.g., at the headend of the bearer (cable) network or at a BSA switching hub; this server distributes content to the remote requesting location(s), thereby eliminating repetitious traffic to and from subscriber's premises to fulfill the requests for remote content delivery.
It will be appreciated that the present invention can also be used in a complementary or layered fashion with other content acquisition, management and control technologies. For example, the methods and apparatus described in co-pending and co-owned U.S. patent application Ser. No. 11/080,693 filed Mar. 14, 2005 entitled “Method and apparatus for network content downloading and recording”, incorporated herein by reference in its entirety, may be used consistent with the present invention to provide network users with the ability to purchase and record content to a physical medium, while also obeying the security policies imposed by the relevant security architecture (e.g., TD or ASD).
CPE Architecture—
Referring now to
As shown in the simplified diagram of
Other components which may be utilized within the device (deleted from
Alternatively, the CPE 106 may comprise a “head-less” configuration, wherein the only user interaction with the device occurs over a network connection; e.g., in a PVR-like fashion.
The CPE 106 of
It will be recognized by those of ordinary skill that myriad different device and software architectures may be used consistent with the tuning and channel request functions of the present invention, the device of
Likewise, the content handler 208 of the CPE 106 may contain application layer programs which allow interactivity with other devices 106 on the network. Because the content handler 208 is OCAP compliant, the content handler 208 of the present invention may be adapted to communicate and interact with the content handler 208 of another CPE 106, or with the resource manager (not shown) or other entity present on another CPE 106 via the other entity's OCAP system. It is appreciated that a variety of protocols may be utilized to effectuate such communication. In one embodiment, the communication protocol is Internet Protocol based. Examples of such programs include UPnP application, a program guide, and so on. The content handler 208 may be implemented such that a user can control a renderer CPE 106b “directly” or “over the network.” The direct control to a user may be in the form of a remote control, control switches and buttons (e.g., volume control knob). When the renderer CPE 106b is controlled “over the network”, a user may be able to configure the device by accessing its controls via a network connection and content handler 208 present in one or both CPE 106. In one embodiment, one network may be used for accessing and controlling the device 106b; in another embodiment, a separate network may be used for accessing and controlling respectively. However, in a preferred embodiment, the same network is used to achieve both tasks, such as for example the PLAN network of previously incorporated U.S. application Ser. No. 11/592,054.
The exemplary content handler 208 of the present invention may also farther comprise a personal media application, which allows a user to manage his personal media tasks. Such management includes, but is not limited to, the ability to browse through programs stored locally or on a server to see which programs are available for viewing. Previewing and similar extended “browsing” functionality may also be provided. In the virtual PVR or network PVR scenarios described elsewhere herein, such programming or content may be stored on a server located at the headend, with the CPE 106 acting effectively as its proxy. The personal media application may also be made responsive to a network-side application that queries the CPE to check on the program titles stored on the CPE 106.
As previously noted, either of the CPE 106a, 106b of the invention may be embodied as a multi-function or converged premises device, such as that described in co-owned and co-pending U.S. patent application Ser. No. 11/378,129 filed Mar. 16, 2006 previously incorporated herein. This exemplary configuration (not shown) comprises a remotely manageable premises device that, inter alia, acts as a centralized client networking platform providing gateway services such as network management as well as traditional content and high-speed data delivery functions. The device also acts as the shared internet (e.g., Internet) connection for all devices in the premises via a cable modem or other such interface, sharing personal and DVR content such as video, music and photos (and any associated metadata) throughout the premises via a content handler 208 running thereon, and providing both a wired and wireless network in the home. Telephony services utilizing e.g., embedded multimedia terminal adapter (eMTA) and/or Wi-Fi architectures may also be provided via the device; these services can make use of the network operator's indigenous VoIP or comparable telephony capability if desired, thereby providing an even more unified service environment and a mechanism for the various devices 106 to communicate and interact with one another via at least one content handler 208.
In another embodiment, a wired home network utilizing existing coaxial cable in the premises is created, by using e.g., an Ethernet-to-coaxial bridge technology based on the MoCA specification. According to this embodiment, existing devices and DVRs (i.e. those not having content handlers 208) are permitted to connect and share content with a CPE 106 via a connection to its content handler 208.
In yet another embodiment, the CPE 106 is advantageously accessible via any remote device with internetworking (e.g., Internet) capability. The content handler 208 of the CPE 106 would be adapted accordingly and would thereby allow personal content to be accessed by the user from outside the premises.
Content Handler Architecture—
The content handler 208 comprises multiple algorithms in several buckets. The content handler 208 uses the various algorithms in conjunction with the buckets to perform various functions related to finding, selecting and transferring content. The buckets of the illustrated embodiment are associated with a resource manager 452, a QoS manager 456, an authorized service provider, ASP, 454, a scheduler 458, and a content manager 460. However, it is appreciated that buckets associated with other CPE 106 components may be incorporated consistent with the present invention. The buckets serve as intermediate locations where the various components may communicate with and transfer data with the content handler 208. The method by which the buckets are utilized will be discussed in greater detail below with regard to the functional aspects of the content handler 208.
The resource manager 452 described above as associated with the content handler 208 buckets may be similar to that described in co-owned, co-pending U.S. patent application Ser. No. 12/070,560, entitled “Multi-stream premises apparatus and methods for use in a content-based network”; which is hereby incorporated by reference in its entirety. The resource manager 452 functions in the present invention to, inter alia, process and maintain information from the RF front-end and utilize the information to monitor and to control the tune of the various tuner resources of the system (which may be controlled individually), as well as to route various individual content streams to various individual receiving devices simultaneously. The resource manager 452 with which the content handler 208 is in communication may be located on the CPE 106 having the content handler 208 or on a separate CPE 106.
The resource manager 452 arbitrates the hardware resources without requiring the OCAP application to have knowledge of those resources. It hides all the resource management from the OCAP application. The OCAP application only knows that it has content available from a single resource, but under this architecture, that single resource is representative of multiple resources.
The authorized service provider (ASP) 454 associated with the content handler 208 bucket comprises any entity which is adapted to send content to the CPE 106 having the content handler 208. The ASP 454 may comprise, inter alia, an HFC network entity 101, a distribution server 104, a VOD server 105, a digital rights management server, a broadcast switch server, or an edge switch device 194 associated with a hub.
The ASP 454 is an authorization engine that determines whether the client is able to access content. Again the content handler 208 assumes that responsibility so that all of these services are transparent to the application. The ASP 454 implements policies and enforces obligations with respect to the content.
The QoS manager 456 associated with the content handler 208 bucket described above may be similar to that described in co-owned, co-pending U.S. patent application Ser. No. 12/070,666, entitled “Apparatus and methods for utilizing statistical multiplexing to ensure quality of service in a network”; which is hereby incorporated by reference in its entirety. Accordingly, the QoS manager 456 associated with the content handler 208 bucket described above would comprise a computer application adapted to run on a CPE 106 (whether separate from the CPE 106 having the content handler 208, or not) and configure/implement a QoS policy for each content stream sent to a receiving device.
The QoS manager 456 in the stack relies on the QoS manager in the content handler 208 for the policy information and conflict resolution. The QoS manager 456 is a simple QoS organizer; all of the QoS definition, conflict resolution, etc. occurs at the content handler 208.
The content manager 460 described above as associated with the content handler buckets is a management entity, whether disposed at the headend or hub of the network, for management of media content received at the network.
The content manager 460 aggregates all of the content detected from the home network (and other sources) into a single interface (DVR EXT interface for OCAP) so that there are no additional requirements for the OCAP Digital Navigator.
The scheduler 458 described above is also a management entity, however, the scheduler 458 is disposed within the CPE 106 on which the content manager 208 is disposed. As will be discussed in greater detail below, the scheduler 458 manages the tuner resources 302 of the CPE 106 and reserves disk space on a storage device for programming that is pre-set to record. Thus, the scheduler 458 is charged with complex management functions; and, when more than one tuner 302 is present, the scheduler 458 streamlines their management. It is of note that in another embodiment, the abovementioned functionality of the scheduler 458 of the present invention may be incorporated into a resource manager or other management entity present on the CPE 106 having the content handler 208. Alternatively, the scheduler 458 of the present invention may further comprise the additional functionality generally attributed to a resource manager, as discussed above. Further, the scheduler 458 with which the content handler 208 is in contact may be the scheduler 458 disposed on the same CPE 106, or may be associated with the content handler 208 of a separate CPE 106.
Referring now to
Again the scheduler is abstracting the responsibility of scheduling recording events not only on local storage but also manages whether the recordings could be scheduled on a remote device over the home network.
Content Transfer Methodology—
The content handler 208 is adapted to communicate with the various other components within the CPE 106, as well as components within other CPEs and/or within other network entities, in order to facilitate the transfer of content between these entities. The various methods by which the content handler 208 promotes various content transfers are described in detail below.
Referring now to
At step 602 of the method 600, the content handler 208 of the renderer device 106b is allowed to discover the server device; or to discover the content handler 208 of the server device. The two devices thereby may form a client/server (e.g., renderer/server) relationship, although other relationships may be formed as well. This discovery 602 can occur via any number of approaches, including for example: (i) the renderer device 106b sending, through its content handler 208, a general or broadcast inquiry to all devices (and/or content handlers 208) in the network; or (ii) the server device advertising its capabilities unsolicited to the content handler 208 of the first device 106a. The server device may advertise its capabilities via its content handler 208 in one embodiment.
At step 604, the security capabilities and requirements of the renderer and server devices are checked in order to authenticate the devices. The authentication 604 may occur via a message exchange protocol, in a one-way or, alternatively, two-way authentication manner. Messages sent between the devices can be used to identify compatible security packages that each device possesses; e.g., AES or DES algorithms, public/private key pairs, support for certain security protocols, etc. Methods of authentication are well known in the communication arts and thus are not discussed further herein. In one embodiment, the method of authentication described in previously referenced U.S. patent application Ser. No. 11/592,054 is utilized consistent with the present invention.
At step 606, the renderer device 106b browses content associated with the sever device. It is noted that browsing of the server device may occur substantially through the device's content manager 208. Thus, the content handler 208 of the renderer CPE 106b comprises necessary hardware and software architecture to receive and process browsing requests by a user. The content handler 208 then communicates with the content handler 208 of the server CPE 106a, VOD server 105 or network PVR; or alternatively with another management entity disposed therein, via the aforementioned algorithms associated with the various buckets. In situations where the sever device has a content manager 208, that content manager 208 guides the browsing function in a manner similar to that of the content manager 208 of the renderer device 106b. This browsing may include review of titles, and optionally other information associated with the content (e.g., DRM or copyright requirements, file creation date, size, codec format, etc.). Such browsing functions may also allow for preview of the content by the requesting device, such as via a short pre-stored “trailer” or sample of the content or simply accessing the content file itself for a limited duration of time. Various preview technologies known to those of ordinary skill in the art may be used consistent with the invention.
The requesting (e.g., rendering) device 106b then indicates the choice of a particular content element (e.g., movie, MP3 file, etc.) title for viewing per step 608. In one embodiment, this is accomplished via the aforementioned functionality of the renderer device's 106b content manager 208. Once this selection 608 is communicated to the server device, it determines the requesting device's 106b authorization to receive the selected content (step 610), via the requesting device's content handler 208 and, in some instances, the server's content handler 208. The authorization may not necessarily coincide with the requesting device's 106b permissions to browse or preview content. For example, a content owner or MSO might restrict unlimited or full access to content to certain selected populations of prospective users (e.g., Time Warner Cable subscribers), whereas a larger subset of potential users can browse and preview, without having full access. This access differentiation can be used as the basis of a business model; i.e., enticing prospective subscribers or one-time purchasers by providing unlimited “teasers” or previews.
If access is allowed, then, at step 612, the selected content is formatted (if required) and then transferred over the designated communication channel from the serving device (the server CPE 106a, VOD server 105, or network PVR) to the requesting device's content handler 208. This is accomplished via placement of the content in the aforementioned buckets associated with the server device (the server CPE 106a, VOD server 105, or network PVR) on the renderer device's content handler 208. The buckets serve as reservoirs where content is placed during transfer. Thus, the management entity (content handler 208 or other) of the server CPE 106b, VOD server 105, or network PVR, accesses the requested content and transfer the content to an appropriate bucket in the content handler 208 of the renderer CPE 106b. In the instance where the CPE 106a utilizes a content handler 208 the requested content is accessed in a manner similar to that discussed below with regard to a self-search of storage.
At step 614, the content handler 208 transfers the content of the bucket associated with the sever device to the display and/or storage associated bucket of the rendering device 106b. Lastly, at step 616, the display and/or storage device is directed by the content handler 208 to display and/or store the content.
Referring now to
Referring now to
In the instance that the request is made of an entity separate from the CPE 106 itself, such as to a separate server CPE 106a, a VOD server 105, or a network PVR entity (collectively referred to as a “server device”), pathway (A1) dictates that, first, the content handler 208 of the requesting device 106 must discover, at step 642, the server device from which content is requested. It is appreciated that the server devices may comprise their own content handlers 208, and where this is true, discovery 642 comprises discovery of the content handler 208. The discovery function 642 of the content handler(s) 208 is accomplished in a manner similar to that described above. Also as described above, the two devices may form a client/server (e.g., renderer/server) relationship, although other relationships may be formed as well. This discovery 642 can occur via any number of approaches, including for example: (i) the content handler 208 directing the requesting device 106 to advertise its capabilities unsolicited to the server device; or (ii) the server device sending a general or broadcast inquiry to all devices 106 (and/or content handlers 208) in the network. The server device may send the inquiry via their content handler(s) 208 in one embodiment. The functioning of the content handler(s) 208 is accomplished in a manner similar to that described above.
Then, per step 644, the server device authenticates the requesting device by checking the security capabilities and requirements. The authentication may occur via several mechanisms, including, inter alia, those discussed above.
In the instance where the request is made of the CPE 106 itself, pathway (B1) is followed; it indicates that, at step 645, a user request to access the scheduler 458 is received. The scheduler 458, as discussed above, manages the tuner resources 302 of the CPE 106; and, as above, the content handler 208 comprises necessary hardware and software architecture to receive and process the user request.
Pathways (A1) and (B1) converge, at step 646 where browsing of the schedule of presently broadcast programs occurs. The schedule is accessible on the CPE 106 itself and/or on the sever device. It is noted that devices having a content manager 208, including inter alia, the CPE 106 advantageously utilize a scheduler 458 entity to facilitate browsing of the schedule. Thus, the content handler 208 must comprise necessary hardware and software architecture to receive and process browsing requests by a user.
The content handler 208 communicates with the content handler 208 of the server device; or alternatively with another management entity disposed therein, via the aforementioned algorithms associated with the various buckets. In situations where the server device has a content manager 208, that content manager 208 guides the browsing function in a manner similar to that described above, including review of titles, and optionally other associated information (e.g., DRM or copyright requirements, file creation date, size, codec format, etc.). Also as discussed above, the browsing functions may additionally allow for preview of the content by the requesting device, such as via a short pre-stored “trailer” or sample of the content, or simply accessing the content file itself for a limited duration of time.
Then, at step 648, the requesting device selects a particular content element (e.g., movie, MP3 file, etc.) for viewing. In one embodiment, this is accomplished via the aforementioned functionality of the device's content manager 208.
Where the content is requested of a server device, the selection must be communicated to the device, pathway (A2) indicates that, at step 650, the request must be authorized by the server device. Authorization 650 refers to the determination of the requesting device's 106b authorization to receive the selected content via the device's 106b content handler 208 and, in some instances, the server device's content handler 208. As discussed above, the authorization 650 may not necessarily coincide with the requesting device's 106 permissions to browse or preview content, thereby giving way to one or more business models; such as enticing prospective subscribers or one-time purchasers by providing unlimited “teasers” or previews.
If access is allowed, then, at step 652, the selected content is formatted (if required) and then transferred over the designated communication channel to the requesting device's 106b content handler 208. This is accomplished via placement of the content in the aforementioned buckets associated with the server device on the requesting device's 106b content handler 208. The buckets serve as reservoirs where content is placed during transfer. Thus, the management entity (content handler 208 or other) of the server device accesses the requested content and transfers the content to an appropriate bucket in the content handler 208 of the requesting CPE 106b (step 654).
At step 654 and per pathway (B2), where the request is made of the CPE 106 itself, the content handler 208 directs the transfer of the content to a display device associated bucket and/or a storage device associated bucket (depending on the user request). Next, at step 656, the content handler 208 directs the display device to display the content, and/or the storage device to store the content.
In the instance that the request is made of an entity separate from the CPE 106 itself, such as to a separate “server” CPE 106a, a VOD server 105, or a network PVR entity (collectively referred to as a “server device”), pathway (C1) dictates that, first, the content handler 208 of the requesting device 106 must discover, at step 662, the server device from which content is requested. It is appreciated that if the server devices comprises a content handler 208, discovery 662 comprises discovery of the content handler 208. The discovery function 662 of the content handler(s) 208 is accomplished in a manner similar to that described above. Discovery 662 can occur via any of the aforementioned approaches, including for example: (i) the content handler 208 directing the requesting device 106 to advertise its capabilities unsolicited to a server device; or (ii) the server device sending a general or broadcast inquiry to all devices 106 (and/or content handlers 208) in the network (such as via a content handler 208).
Next, per step 664, the server device authenticates the requesting device 106b by checking the security capabilities and requirements. The authentication may occur via several mechanisms, including, inter alia, those discussed above.
In the instance where the request is made of the CPE 106 itself, pathway (D1) is followed; it indicates that, at step 665, a user request to access the scheduler 458 is received.
Pathways (C1) and (D1) converge, at step 666 where browsing of the schedule of future broadcast programs occurs. The schedule is accessible on the CPE 106 itself and/or on the sever device. It is noted that devices having a content manager 208, including inter alia, the CPE 106 advantageously utilizes a scheduler 458 entity to facilitate browsing of the schedule. Thus, the content handler 208 must comprise necessary hardware and software architecture to receive and process browsing requests by a user.
The content handler 208 communicates with the content handler 208 of the server device; or alternatively with another management entity disposed therein, and where the server device has a content manager 208, that content manager 208 guides the browsing function as discussed above.
Then, per step 668, the requesting device 106b selects a particular content element (e.g., movie, MP3 file, etc.) for viewing. In one embodiment, this is accomplished via the aforementioned functionality of the device's 106b content manager 208.
Where the content is requested of a server device, the selection must be communicated to the device, pathway (C2) indicates that, at step 670, the request must be authorized by the server device as discussed above.
If access is allowed, or per pathway (D2) in the instance the request is of the CPE 106 itself, the selected future content request is maintained by the scheduler 458 until the appropriate time for the content to broadcast arrives (step 672). At that time, per step 674, the content handler 208 is informed that the request is waiting and the content is available. This will be determined based at least in part on a determination of the day and time in which the content was set to broadcast (as determined by the schedule).
In the instance the content is requested from a server device, pathway (C3) indicates that at step 676, the selected content, once available, will be formatted (if required) and then transferred over the designated communication channel to the requesting device's content handler 208. This is accomplished via placement of the content in the aforementioned buckets associated with the server device on the requesting device's content handler 208. The buckets serve as reservoirs where content is placed during transfer. Thus, the management entity (content handler 208 or other) of the server CPE 106a, VOD server 105, or network PVR, accesses the requested content and transfer the content to an appropriate bucket in the content handler 208 of the requesting CPE 106b.
Next, at step 678, and, in the instance where the request is made to the CPE 106 itself pathway (D3) indicates, the content handler 208 directs the transfer of the content to a display device associated bucket and/or a storage device associated bucket (depending on the user request). Lastly, at step 680, the content handler 208 directs the display device to display the content, and/or the storage device to store the content.
Communication and Authentication—
As discussed above, the exemplary content handler 208 is adapted to facilitate various CPE 106 communication with other network CPE 106 and devices as well as internal communication. The communication thus leads to performance of various functions including, inter alia, scanning, advertising, authentication, browsing, selection, authorization, transfer, receipt and viewing content. Accordingly, methods by which the content handler 208 facilitates the data exchange between the entities may include a message exchange mechanism such as that previously referenced herein. The aforementioned communication may occur via a UPnP service such as that disclosed in co-owned, co-pending U.S. patent application Ser. No. 11/592,054 entitled “Methods and apparatus for premises content distribution” incorporated herein by reference in its entirety.
Contention Issues—
Contention is a condition that arises when two or more data attempts occur at the same time. The present invention contemplates that when these conflicts arise, the content handler 208 notifies the user. The user resolves contention issues by choosing one of the data to be displayed and/or stored; and the user's selection is understood and carried out by the content handler 208.
When a contention issue arises, the scheduler 458 identifies the tuner 302 with a contention issue and retrieves identification data about the program streams. The scheduler then notifies the user via the user interface 708 by sending a message 704 including identifying information about the contending program streams. The identifying information may advantageously comprise, inter alia, the title, running time, summary, or other details about the program stream content which will give the user adequate information to enable him/her to select which of the contending streams he/she would like to display or store. The user's selection will then be transmitted to the scheduler 458 via message 706 also containing identifying information at least for the selected program stream. The response message 706 is recognized and processed by the scheduler 458. Accordingly, the scheduler 458 enables the content handler 208 to direct the transfer of the selected content to the appropriate receiving device 602.
In another embodiment (not shown) it is further appreciated that when a contention issue arises, the scheduler 458 may be adapted to resolve the issue itself, according to pre-set rules, and not notify the user. Alternatively, the scheduler 458 may default to pre-set rules only if there is no response from the user after a set period of time. The pre-set rules will utilize the identifying information about the content stream that was previously gathered, at least in part, to facilitate the computer's selection. For example, the identifying information may comprise priority information including the date/time the program stream was selected for delivery. In one embodiment, program streams that were selected earlier may, according to the pre-set rules, be selected over newly selected streams. Alternatively, the rules may indicate that newly selected program streams be favored. In another example, the identifying information may comprise historical information about the frequency with which that particular content stream is requested by the CPE 106. Accordingly, the scheduler 458 chooses program streams which the user often requests over those that are less familiar. It is appreciated that other identifying information may be utilized with various pre-set rules to implement various selection criteria for the CPE 106, the above being merely exemplary.
A method 720 of resolving contention issues is given by
Software Architecture—
In another aspect of the invention, software adapted to enable a CPE 106 to further comprise a content handler 208 is given. The software described is advantageously adapted to permit the CPE 106 on which it is run to process requests for content, direct browsing of available content and direct a transfer of the requested content to a receiving apparatus 702. The receiving apparatus 702 may include, inter alia, a display device, a storage device, etc.
As noted above, the content handler 208 may be run on and adapted to manage content within only one device 106. Further, the content handler 208 is also adapted to run on one device 106 yet manage content transfer between the device 106 it is run on and a second device 106 which may or may not also comprise a content handler 208.
In one instance, the content handler 208 is adapted to receive requests from the device 106 on which it is being run and direct the browsing of a storage device attached thereto. It is noted that the storage device may comprise an internal storage device and/or may comprise storage devices external to the CPE 106 having the content handler 208. Accordingly, a user is permitted, via a content handler 208, to request to view stored content, browse the content and select content for display. The content handler 208 is adapted direct the above functions. The content handler 208 may also direct the search and display of content presently available to the device 106 via a network connection, including inter alia, an RF tuner, a wideband tuner, more than one RF tuner. The content handler 208 software may be her adapted to include scheduler 458 functionality. Accordingly, the scheduler 458 of the content handler 208 enables a user to browse content which will be available at a future time and set the CPE 106 to record and/or display that future content.
In a second instance, the content handler 208 is run on a server device 106a and requests are received from a separate, requesting device 106b. Accordingly, the user of the requesting device 106b requests to search the storage of the server device 106a. As discussed above, the request may be generated by the requesting device's 106b content handler 208. The request is received by the server device 106a s content handler 208, and processed. The content handler 208 also directs the search or browsing and once a selection is made, directs the transfer of content to the requesting device 106b. Accordingly, a user is permitted, via a content handler 208 on the server device 106a, to request to view stored content, browse the content and select content for display and/or storage. The content handler 208 software of the server device 106a may be further adapted to include scheduler 458 functionality. As discussed above, the scheduler 458 of the content handler 208 enables the user of the requesting device 106b to browse content which will be available at a future time to the server device 106a and set the server device 106a to record and/or transfer that future content to the requesting device 106b for storage and/or display when the future content becomes available.
In another instance, the content handler 208 is run on a requesting device 106b and requests are made to a separate server device 106a. Accordingly, the user of the requesting device 106b requests to search the storage of the server device 106a. As discussed above, the request may be processed and managed by the server device's 106a content handler 208. Once the content is received, the content handler 208 directs the transfer of content to the receiving apparatus 702. The content handler 208 software of the requesting device 106b may be further adapted to include scheduler 458 functionality. As discussed above, the scheduler 458 of the content handler 208 enables the user of the requesting device 106b to browse content which will be available at a future time to the server device 106a and set the server device 106a to record and/or transfer that future content to the requesting device 106b for storage and/or display when the future content becomes available.
Network Server Architecture—
It will be appreciated that, in another embodiment, various CPE 106 in a network may communicate with one overarching network server (not shown) having a content handler 208 consistent with the present invention. According to this embodiment, the various CPE 106 both inside and outside of a particular user/subscriber's premises may be permitted to browse, request, and receive content stored on the network server. It is further appreciated that the network CPE 106 may, in another embodiment, be permitted to browse, request and receive content on other CPE 106 on the network via the network server entity as well.
Business Methods and Operational “Rules” Engine—
In another aspect of the invention, an operational or business “rules” engine can be implemented consistent with the invention as a higher layer or supervisory process that imposes particular rules on the previously described server and client processes in order to produce desired business or operations goals. The rules engine can be considered an overlay of sorts to the more fundamental processes used to accomplish required device advertising/discovery, security package negotiation, browsing, etc.
In one embodiment, this rules engine is implemented a computer programs or programs running on one or more of the CPE 106 that are party to a renderer-server transaction. As previously discussed, the server CPE 106a, renderer CPE 106b, VOD server 105 and/or PVR entity can implement logic to exchange messages and negotiate a common security framework that can be used for communication. This allows for mixing and matching of different vendor's equipment and overcomes the “single source” economic inefficiency introduced by proprietary conditional access and DRM solutions. The selection and utilization of the particular aspect of this common security framework, as well as other features such as the communication channels that may be used to effectuate scanning, authentication, browsing, and content transfer, may be governed by the higher layer “rules” processes as well.
The supervisory rules may comprise a separate entity or process which is substantially autonomous of the network operator, and may be fully integrated within other processing entities (such as the aforementioned content handler 208). Alternatively, the rules engine may be controlled via e.g., a remote MSO user interface 708 such as a GUI on a PC connected to the relevant device via a network interface, so as to allow the MSO to adjust or reprogram aspects of the rules engine, reload it with updates, etc.
Included within these rules are the implementation of security management policies that can increase or enhance: (i) content security or protection, (ii) network optimization and reliability, (iii) subscriber or user satisfaction, (iv) profit or revenue, and so forth.
For example, one rule implemented by the rules engine may comprise only providing certain types or program recording and/or distribution features to certain subscribers or classes of subscribers. The subscriber server CPE 106a, VOD server 105, and/or PVR entity may possess UPnP capability for interfacing with and transmitting content to a connected device for example, but the ability to transfer such protected content out of the server entity (CPE 106a, VOD server 105, and/or PVR entity) not be made available to such subscribers unless they met certain criteria (e.g., “premium” subscription, etc.).
Moreover, premium subscribers might be given a greater scope of options and choices; e.g., the ability to use a wider range of CPE (e.g., new DSTBs introduced in the retail market), while more basic subscribers are limited as to the type of device they may use as part of their subscription.
The present invention also contemplates the partial disclosure of content by a server CPE based on the level of authentication achieved by a renderer device. These levels of authentication may be controlled by the network operator, such as where higher levels of access or authentication are provided to subscribers or users with greater privileges. For example, when a renderer is not authenticated at all, the server entity (CPE 106a, VOD server 105, and/or PVR entity) may be configured to not give the requesting CPE any access to browsing protected material of any kind. At a higher tier of authentication or permission, the server may give access to the renderer to only a subset of titles, or alternatively all titles, but without access to the substantive content itself (other than perhaps a trailer or preview).
Similarly, a server entity may be configured by the rules engine to only provide access to content that originated from a cable WAN (e.g., HFC 101) for requesting devices that authenticate themselves as a “cable operator authorized renderer”, or provide some other indicia of trust for that particular type or origin of content.
Further, different rules or grades of access can be provided to different types of content; e.g., content that is more mature or has been in distribution for a longer period of time may be viewed as less risky from a theft or unauthorized copying standpoint, and hence the authentication level or permissions required to browse and even transfer that content may be relaxed somewhat as compared to new release content.
The server entity (CPE 106a, VOD server 105, and/or PVR entity) may also segregate content (based, e.g., on AssetContentID or a similar variable) and apply different access and transfer rules based on such segregation. For example, all content with an AssetContentID of a certain form might require extended permissions (e.g., parental control) and authentication before that content can be previewed or transferred.
The server may also be advantageously used as an advertisement platform to provide occasional browsing access to showcased content to attract a user to purchase additional titles, or a subscription or membership.
The business rules engine previously described, or another functional entity within the network, may also be used to implement and enforce so-called “copy once” rules or protection mechanisms of the type well known in the content reproduction and distribution arts. Similar rules such as e.g., “never copy” and “no more copying” can also be implemented as desired. For example, the Philips Video Content Protection System (VCPS), which enables content delivered over a cable network to be marked as “copy once”, meaning it can be burned onto VCPS-enabled DVD+R and DVD-RW disks, although many other types of systems and rules are envisaged for use within the current invention.
It will be recognized that while certain aspects of the invention are described in terms of a specific sequence of steps of a method, these descriptions are only illustrative of the broader methods of the invention, and may be modified as required by the particular application. Certain steps may be rendered unnecessary or optional under certain circumstances. Additionally, certain steps or functionality may be added to the disclosed embodiments, or the order of performance of two or more steps permuted. All such variations are considered to be encompassed within the invention disclosed and claimed herein.
While the above detailed description has shown, described, and pointed out novel features of the invention as applied to various embodiments, it will be understood that various omissions, substitutions, and changes in the form and details of the device or process illustrated may be made by those skilled in the art without departing from the invention. The foregoing description is of the best mode presently contemplated of carrying out the invention. This description is in no way meant to be limiting, but rather should be taken as illustrative of the general principles of the invention. The scope of the invention should be determined with reference to the claims.
Claims
1. A method of sharing protected content within an ad hoc network, comprising:
- establishing ad hoc a communication channel between a first entity and a second entity, said first entity and said second entity forming said ad hoc network when said communication channel is established;
- selectively allowing at least said first entity to browse a schedule of content of said second entity, said schedule of content provided by a scheduler in data communication with said first entity, said schedule of content comprising at least a listing of content and a future time at which said content is to be broadcasted at said second entity but not directly broadcasted at said future time to said first entity without said established communication channel between said first entity and said second entity, said browsing directed at least in part by a computer program running on said first or said second entity;
- receiving a request at said first entity for at least a portion of said content to be received from said second entity;
- in response to said request at said first entity, automatically reserving one or more resources available at least in part to said second entity for use at said future time listed in said schedule of content, said one or more resources available at least in part to said second entity facilitating reception of said requested content at said first entity; and
- after said future time, selectively transferring at least said portion of said requested content from at least said second entity to said first entity, said transferring directed at least in part by said computer program running on said first or said second entity.
2. The method of claim 1, wherein said act of transferring at least said portion of said requested content comprises transferring at least said portion of said requested content to a storage medium or a display apparatus.
3. The method of claim 1, further comprising authenticating at least one of: (i) said first entity to said second entity, and (ii) said second entity to said first entity, wherein said act of authenticating is accomplished by said computer program running on said first entity or said second entity.
4. The method of claim 3, wherein said act of transferring at least said portion of said requested content is based, at least in part, on said act of authenticating.
5. The method of claim 1, wherein said act of establishing comprises causing said first entity and said second entity to be placed in data communication via at least a plug-and-play data interface.
6. The method of claim 1, wherein said act of establishing comprises causing said first entity and said second entity to be placed in data communication via a wireless interface wherein one of said first and second entities performs a first role and said second entity performs a second role with respect to said communication channel.
7. The method of claim 6, wherein said first role comprises a server station, and said second role comprises a renderer station.
8. The method of claim 6, wherein said first role comprises an access point (AP), and said second role comprises a station (STA), said AP providing data connectivity to at least one other entity other than said STA.
9. The method of claim 1, wherein said act of reserving one or more resources available at least in part to said second entity in response to said request at said first entity comprises one or more of:
- using a tuner of said second entity for a period of time;
- reserving a storage device of said second entity; and
- reserving a data connection for said second entity to a content delivery network.
10. The method of claim 1, further comprising maintaining said request until arrival of said future time for broadcast of said content.
11. The method of claim 10, further comprising, after arrival of said future time for broadcast of said content, informing said second entity that said request is waiting and said content is available.
12. The method of claim 11, further comprising, after informing said second entity that said request is waiting and said content is available, formatting said content prior to transferring to said first entity over said communication channel.
13. A method of sharing protected content within an ad hoc network, comprising:
- establishing ad hoc a communication channel between a renderer device and a content source device, said renderer device and said content source device being disposed at an edge of a content distribution network and utilizing said communication channel for communications over said ad hoc network;
- authenticating said renderer device to said content source device using a computer program running on said renderer device or said content source device in order to verify authorization for transfer of content from said content source device to said renderer device;
- based at least in part on said authentication, selectively allowing at least said renderer device to browse a schedule of content of said content source device provided by a scheduler in data communication with said content source device, said schedule of content comprising at least a listing of content and a future time at which said content is to be broadcasted, said browsing directed at least in part by said computer program running on said renderer device or said content source device;
- receiving at said renderer device a request for at least a portion of said content from said content source device;
- based at least in part on said request at said renderer device and said authentication, reserving one or more resources available at least in part to said content source device for use at said future time listed in said schedule of content, said one or more resources available at least in part to said content source device facilitating reception of said requested content at said renderer device; and
- at or after said future time, selectively transferring at least said portion of said requested content from said content source device to said renderer device, said transferring directed at least in part by said computer program.
14. The method of claim 13, wherein said renderer device comprises one or more of: (i) a storage apparatus, and (ii) a display apparatus.
15. The method of claim 13, wherein said act of establishing comprises causing said renderer device and said content source device to be placed in data communication via at least a plug-and-play data interface.
16. The method of claim 13, wherein said computer program comprises an OpenCable Application Platform (OCAP) compliant JAVA-based middleware application.
RE35651 | November 4, 1997 | Bradley et al. |
5734380 | March 31, 1998 | Adams et al. |
5793410 | August 11, 1998 | Rao |
5815662 | September 29, 1998 | Ong |
6105134 | August 15, 2000 | Pinder et al. |
6124878 | September 26, 2000 | Adams et al. |
6167432 | December 26, 2000 | Jiang |
6175856 | January 16, 2001 | Riddle |
6216152 | April 10, 2001 | Wong et al. |
6219710 | April 17, 2001 | Gray et al. |
6252964 | June 26, 2001 | Wasilewski et al. |
6256393 | July 3, 2001 | Safadi et al. |
6337715 | January 8, 2002 | Inagaki et al. |
6463508 | October 8, 2002 | Wolf et al. |
6516412 | February 4, 2003 | Wasilewski et al. |
6594699 | July 15, 2003 | Sahai |
6651103 | November 18, 2003 | Markowitz et al. |
6725459 | April 20, 2004 | Bacon |
6728269 | April 27, 2004 | Godwin et al. |
6728840 | April 27, 2004 | Shatil et al. |
6745245 | June 1, 2004 | Carpenter |
6772435 | August 3, 2004 | Thexton |
6799196 | September 28, 2004 | Smith |
6839757 | January 4, 2005 | Romano |
6868439 | March 15, 2005 | Basu et al. |
6948183 | September 20, 2005 | Peterka |
6961430 | November 1, 2005 | Gaske et al. |
6981045 | December 27, 2005 | Brooks |
6985934 | January 10, 2006 | Armstrong et al. |
7010801 | March 7, 2006 | Jerding et al. |
7024461 | April 4, 2006 | Janning et al. |
7027460 | April 11, 2006 | Iyer et al. |
7039116 | May 2, 2006 | Zhang et al. |
7039169 | May 2, 2006 | Jones |
7039614 | May 2, 2006 | Candelore |
7039938 | May 2, 2006 | Candelore |
7058387 | June 6, 2006 | Kumar et al. |
7085839 | August 1, 2006 | Baugher et al. |
7088910 | August 8, 2006 | Potrebic |
7089577 | August 8, 2006 | Rakib et al. |
7093272 | August 15, 2006 | Shah-Nazaroff et al. |
7103906 | September 5, 2006 | Katz et al. |
7107462 | September 12, 2006 | Fransdonk |
7127619 | October 24, 2006 | Unger et al. |
7133837 | November 7, 2006 | Barnes, Jr. |
7174385 | February 6, 2007 | Li |
7178161 | February 13, 2007 | Fristoe et al. |
7181010 | February 20, 2007 | Russ et al. |
7194756 | March 20, 2007 | Addington et al. |
7200788 | April 3, 2007 | Hiraki et al. |
7203940 | April 10, 2007 | Barmettler et al. |
7216265 | May 8, 2007 | Hughes et al. |
7225164 | May 29, 2007 | Candelore et al. |
7225458 | May 29, 2007 | Klauss et al. |
7254608 | August 7, 2007 | Yeager et al. |
7257650 | August 14, 2007 | Maciesowicz |
7266198 | September 4, 2007 | Medvinsky |
7266611 | September 4, 2007 | Jabri et al. |
7266726 | September 4, 2007 | Ladd et al. |
7299290 | November 20, 2007 | Karpoff |
7305691 | December 4, 2007 | Cristofalo |
7325073 | January 29, 2008 | Shao et al. |
7346917 | March 18, 2008 | Gatto |
7370120 | May 6, 2008 | Kirsch et al. |
7376386 | May 20, 2008 | Phillips et al. |
7403618 | July 22, 2008 | Van Rijnsoever et al. |
7434245 | October 7, 2008 | Shiga et al. |
7602820 | October 13, 2009 | Helms et al. |
7617516 | November 10, 2009 | Huslak et al. |
7689995 | March 30, 2010 | Francis |
7690020 | March 30, 2010 | Lebar |
7720986 | May 18, 2010 | Savoor et al. |
7721313 | May 18, 2010 | Barrett |
7757251 | July 13, 2010 | Gonder et al. |
7779097 | August 17, 2010 | Lamkin et al. |
7805741 | September 28, 2010 | Yeh |
7917008 | March 29, 2011 | Lee |
8170065 | May 1, 2012 | Hasek et al. |
8291453 | October 16, 2012 | Boortz |
8359351 | January 22, 2013 | Istvan |
8516533 | August 20, 2013 | Davis |
8634703 | January 21, 2014 | Barton |
8843973 | September 23, 2014 | Morrison |
20020019984 | February 14, 2002 | Rakib |
20020032754 | March 14, 2002 | Logston et al. |
20020049980 | April 25, 2002 | Hoang |
20020053082 | May 2, 2002 | Weaver et al. |
20020059619 | May 16, 2002 | Lebar |
20020100059 | July 25, 2002 | Buehl et al. |
20020147771 | October 10, 2002 | Traversat et al. |
20020152299 | October 17, 2002 | Traversat et al. |
20020162109 | October 31, 2002 | Shteyn |
20020174430 | November 21, 2002 | Ellis |
20020196939 | December 26, 2002 | Unger et al. |
20030021412 | January 30, 2003 | Candelore et al. |
20030025832 | February 6, 2003 | Swart et al. |
20030056217 | March 20, 2003 | Brooks |
20030074565 | April 17, 2003 | Wasilewski et al. |
20030088876 | May 8, 2003 | Mao et al. |
20030095791 | May 22, 2003 | Barton et al. |
20030118014 | June 26, 2003 | Iyer et al. |
20030135860 | July 17, 2003 | Dureau |
20030161473 | August 28, 2003 | Fransdonk |
20030217365 | November 20, 2003 | Caputo |
20030235393 | December 25, 2003 | Boston |
20030237090 | December 25, 2003 | Boston |
20040045030 | March 4, 2004 | Reynolds et al. |
20040101271 | May 27, 2004 | Boston |
20040103437 | May 27, 2004 | Allegrezza et al. |
20040123313 | June 24, 2004 | Koo et al. |
20040181800 | September 16, 2004 | Rakib et al. |
20040187150 | September 23, 2004 | Gonder et al. |
20040193648 | September 30, 2004 | Lai et al. |
20040193704 | September 30, 2004 | Smith |
20040261114 | December 23, 2004 | Addington et al. |
20040261116 | December 23, 2004 | McKeown et al. |
20040267880 | December 30, 2004 | Patiejunas |
20040267965 | December 30, 2004 | Vasudevan et al. |
20050039206 | February 17, 2005 | Opdycke |
20050050160 | March 3, 2005 | Upendran et al. |
20050060758 | March 17, 2005 | Park |
20050071669 | March 31, 2005 | Medvinsky |
20050071882 | March 31, 2005 | Rodriguez et al. |
20050076092 | April 7, 2005 | Chang |
20050097598 | May 5, 2005 | Pedlow et al. |
20050108529 | May 19, 2005 | Juneau |
20050108769 | May 19, 2005 | Arnold et al. |
20050114900 | May 26, 2005 | Ladd |
20050125528 | June 9, 2005 | Burke et al. |
20050135476 | June 23, 2005 | Gentric et al. |
20050210510 | September 22, 2005 | Danker |
20050289618 | December 29, 2005 | Hardin |
20060010075 | January 12, 2006 | Wolf |
20060020984 | January 26, 2006 | Ban et al. |
20060036750 | February 16, 2006 | Ladd et al. |
20060047957 | March 2, 2006 | Helms et al. |
20060050784 | March 9, 2006 | Lappalainen et al. |
20060059098 | March 16, 2006 | Major et al. |
20060059342 | March 16, 2006 | Medvinsky et al. |
20060062059 | March 23, 2006 | Smith et al. |
20060064728 | March 23, 2006 | Son et al. |
20060073843 | April 6, 2006 | Aerrabotu et al. |
20060080408 | April 13, 2006 | Istvan |
20060084417 | April 20, 2006 | Melpignano et al. |
20060085824 | April 20, 2006 | Bruck et al. |
20060088063 | April 27, 2006 | Hartung et al. |
20060117374 | June 1, 2006 | Kortum |
20060127039 | June 15, 2006 | Van Stam |
20060130107 | June 15, 2006 | Gonder |
20060130113 | June 15, 2006 | Carlucci et al. |
20060133398 | June 22, 2006 | Choi et al. |
20060133644 | June 22, 2006 | Wells et al. |
20060140584 | June 29, 2006 | Ellis |
20060171390 | August 3, 2006 | La Joie |
20060173783 | August 3, 2006 | Marples et al. |
20060212906 | September 21, 2006 | Cantalini |
20060218601 | September 28, 2006 | Michel |
20060218604 | September 28, 2006 | Riedl |
20060248553 | November 2, 2006 | Mikkelson et al. |
20060256376 | November 16, 2006 | Hirooka |
20060271946 | November 30, 2006 | Woundy et al. |
20060291506 | December 28, 2006 | Cain |
20070022459 | January 25, 2007 | Gaebel et al. |
20070047449 | March 1, 2007 | Berger et al. |
20070053293 | March 8, 2007 | McDonald et al. |
20070061818 | March 15, 2007 | Williams et al. |
20070076728 | April 5, 2007 | Rieger et al. |
20070078910 | April 5, 2007 | Bopardikar |
20070094691 | April 26, 2007 | Gazdzinski |
20070101157 | May 3, 2007 | Faria |
20070104456 | May 10, 2007 | Craner |
20070106805 | May 10, 2007 | Marples |
20070121678 | May 31, 2007 | Brooks et al. |
20070124781 | May 31, 2007 | Casey et al. |
20070130581 | June 7, 2007 | Del Sesto et al. |
20070153820 | July 5, 2007 | Gould |
20070156539 | July 5, 2007 | Yates |
20070157234 | July 5, 2007 | Walker |
20070162927 | July 12, 2007 | Ramaswamy et al. |
20070204300 | August 30, 2007 | Markley et al. |
20070204311 | August 30, 2007 | Hasek et al. |
20070204314 | August 30, 2007 | Hasek et al. |
20070217436 | September 20, 2007 | Markley |
20070241176 | October 18, 2007 | Epstein et al. |
20070250872 | October 25, 2007 | Dua |
20070250880 | October 25, 2007 | Hainline |
20070271386 | November 22, 2007 | Kurihara et al. |
20070276925 | November 29, 2007 | LaJoie |
20080022012 | January 24, 2008 | Wang |
20080040403 | February 14, 2008 | Hayashi |
20080066112 | March 13, 2008 | Bailey et al. |
20080098212 | April 24, 2008 | Helms |
20080098446 | April 24, 2008 | Seckin et al. |
20080112405 | May 15, 2008 | Cholas et al. |
20080134156 | June 5, 2008 | Osminer et al. |
20080134165 | June 5, 2008 | Anderson |
20080134615 | June 12, 2008 | Risi et al. |
20080152316 | June 26, 2008 | Sylvain |
20080155059 | June 26, 2008 | Hardin |
20080159714 | July 3, 2008 | Harrar |
20080184297 | July 31, 2008 | Ellis |
20080201748 | August 21, 2008 | Hasek et al. |
20080212947 | September 4, 2008 | Nesvadba |
20080235746 | September 25, 2008 | Peters et al. |
20080244682 | October 2, 2008 | Sparrell |
20080273591 | November 6, 2008 | Brooks et al. |
20090010610 | January 8, 2009 | Scholl et al. |
20090019485 | January 15, 2009 | Ellis |
20090028182 | January 29, 2009 | Brooks et al. |
20090052863 | February 26, 2009 | Parmar |
20090052870 | February 26, 2009 | Marsh |
20090077614 | March 19, 2009 | White |
20090100182 | April 16, 2009 | Chaudhry |
20090165053 | June 25, 2009 | Thyagarajan |
20090207866 | August 20, 2009 | Cholas |
20090210912 | August 20, 2009 | Cholas |
20090217332 | August 27, 2009 | Hindle |
20090220216 | September 3, 2009 | Marsh |
20090254600 | October 8, 2009 | Lee |
20090260042 | October 15, 2009 | Chiang |
20090317065 | December 24, 2009 | Fyock |
20100061708 | March 11, 2010 | Barton |
20100223491 | September 2, 2010 | Ladd et al. |
20100247067 | September 30, 2010 | Gratton |
20120014255 | January 19, 2012 | Svedberg |
20120278841 | November 1, 2012 | Hasek et al. |
20130325870 | December 5, 2013 | Rouse et al. |
2643806 | June 2013 | CA |
WO-0110125 | February 2001 | WO |
WO-2004008693 | January 2004 | WO |
- Wikipedia, Digital Video Recorder, pp. 1-17.
Type: Grant
Filed: Jun 8, 2009
Date of Patent: Jan 9, 2018
Patent Publication Number: 20100312826
Assignee: Time Warner Cable Enterprises LLC (New York, NY)
Inventors: George W. Sarosi (Niwot, CO), Chris Cholas (Frederick, CO)
Primary Examiner: Backhean Tiv
Application Number: 12/480,591
International Classification: H04L 29/06 (20060101);