US20160142743A1 - Apparatus and methods for efficient delivery of electronic program guide data - Google Patents
Apparatus and methods for efficient delivery of electronic program guide data Download PDFInfo
- Publication number
- US20160142743A1 US20160142743A1 US14/541,035 US201414541035A US2016142743A1 US 20160142743 A1 US20160142743 A1 US 20160142743A1 US 201414541035 A US201414541035 A US 201414541035A US 2016142743 A1 US2016142743 A1 US 2016142743A1
- Authority
- US
- United States
- Prior art keywords
- cpe
- gateway
- data
- epg
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2355—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
- H04N21/2358—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2355—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
- H04N21/2356—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages by altering the spatial resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25825—Management of client data involving client display capabilities, e.g. screen resolution of a mobile phone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4355—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen
- H04N21/4356—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen by altering the spatial resolution, e.g. to reformat additional data on a handheld device, attached to the STB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4355—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen
- H04N21/4358—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen for generating different versions, e.g. for different peripheral devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4821—End-user interface for program selection using a grid, e.g. sorted out by channel and broadcast time
Definitions
- the disclosure relates generally to the field of data and content delivery.
- the disclosure relates to apparatus and methods for efficient delivery of electronic program data.
- EPGs Modern electronic program guides and interactive program guides
- EPG provide menus that present broadcast programming or scheduling information for current and upcoming programming.
- EPG commonly are used in television systems to enable a user to view information relating to broadcast content.
- An interactive EPG enables a user to interact with the presented guide data.
- User interactions may include navigation of the menus, selection of content, and scheduling a recording or viewing using a remote control apparatus, keyboard, or other means of input.
- data necessary to create an EPG is delivered to each device by content distributors and/or vendors.
- the data may be delivered via in-band or out-of-band signaling.
- the client devices then use the information to build the entire EPG.
- the EPG may be generated at a network or cloud entity and delivered to the devices (including delivery of updates relating thereto).
- the present disclosure addresses the forgoing needs by providing, inter alfa, apparatus and methods for efficient delivery of electronic program guide data.
- FIG. 1 is a functional block diagram illustrating an exemplary hybrid fiber/coax (HFC) cable network configuration useful with the present disclosure.
- HFC hybrid fiber/coax
- FIG. 1 a is a functional block diagram illustrating one exemplary HFC cable network headend configuration useful with the present disclosure.
- FIG. 1 b is a functional block diagram illustrating one exemplary local service node configuration useful with the present disclosure.
- FIG. 1 c is a functional block diagram illustrating one exemplary packetized content delivery network architecture useful with the present disclosure.
- FIG. 2 is a functional block diagram illustrating one exemplary embodiment of a network configuration for providing guide data according to the present disclosure.
- FIG. 3 is a logical flow diagram illustrating an exemplary method for providing guide data according to the present disclosure.
- FIG. 3 a is a logical flow diagram illustrating an exemplary method for providing a video-based simple view of guide data according to the present disclosure.
- FIG. 3 b is a logical flow diagram illustrating an exemplary method of providing a picture-based simple view of guide data according to the present disclosure.
- FIG. 3 c is a logical flow diagram illustrating an exemplary method of providing a pointers-based simple view of guide data according to the present disclosure.
- FIG. 4 is a functional block diagram illustrating an exemplary client device for use with the present disclosure.
- FIG. 5 is a functional block diagram illustrating an exemplary gateway device for use with the present disclosure.
- 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 XletTM that runs within the JavaTVTM environment.
- client device includes, but is not limited to, set-top boxes (e.g., DSTBs), gateways, modems, personal computers (PCs), and minicomputers, whether desktop, laptop, or otherwise, and mobile devices such as handheld computers, tablets, PDAs, personal media devices (PMDs), tablets, and smartphones.
- set-top boxes e.g., DSTBs
- gateways e.g., modems
- PCs personal computers
- minicomputers whether desktop, laptop, or otherwise
- mobile devices such as handheld computers, tablets, PDAs, personal media devices (PMDs), tablets, and smartphones.
- PMDs personal media devices
- cloud and “cloud device” refer to computing resources residing in a network outside of the subscriber network. These resources include software and information are generally accessible over the Internet or other means of communication with other computers, data storage, or other devices.
- codec refers to a 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/H.264, etc.), Real (RealVideo, etc.), AC-3 (audio), DiVX, XViD/ViDX, Windows Media Video (e.g., WMV 7, 8, 9, 10, or 11), ATI Video codec, or VC-1 (SMPTE standard 421 M) families.
- MPEG e.g., MPEG-1, MPEG-2, MPEG-4/H.264, etc.
- Real Real
- Real Real
- AC-3 audio
- DiVX XViD/ViDX
- Windows Media Video e.g., WMV 7, 8, 9, 10, or 11
- ATI Video codec e.g., WMV 7, 8, 9, 10, or 11
- VC-1 SMPTE standard 421 M
- ⁇ As used herein, the terms “computer program,” “software,” or “software application” are 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 and without limitation, 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), JavaTM (including J2ME, Java Beans, etc.), Binary Runtime Environment (e.g., BREW), and the like.
- CORBA Common Object Request Broker Architecture
- JavaTM including J2ME, Java Beans, etc.
- BREW Binary Runtime Environment
- CPE consumer premises equipment
- consumer device includes terminal devices that have access to digital television content via a satellite, cable, or terrestrial network.
- CPE includes such electronic equipment such as set-top boxes (e.g., DSTBs or IPTV devices), televisions, cable modems (CMs), embedded multimedia terminal adapters (eMTAs), whether stand-alone or integrated with other devices, digital video recorders (DVR), gateway storage devices, and ITV personal computers.
- set-top boxes e.g., DSTBs or IPTV devices
- CMs cable modems
- eMTAs embedded multimedia terminal adapters
- 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.
- EPG electronic program guide
- interactive program guide (collectively “EPG”) are used interchangeably to refer to lists, menus, buttons, graphics, navigation icons, and other elements displayed to the user that present information regarding content including broadcast programming and/or scheduling information relating to the content such as current and upcoming broadcasts over television and other media. These elements may be static, animated, and/or interactive.
- headend refers generally to a networked system controlled by an operator (e.g., an MSO or multiple systems operator) 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.
- Internet and “internet” are used interchangeably to refer to inter-networks including, without limitation, the Internet.
- 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.
- microprocessor and “digital processor” are 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 computer fabrics (RCFs), array processors, secure microprocessors, and application-specific integrated circuits (ASICs).
- DSPs digital signal processors
- RISC reduced instruction set computers
- CISC general-purpose processors
- microprocessors e.g., FPGAs), PLDs, reconfigurable computer fabrics (RCFs), array processors, secure microprocessors, and application-specific integrated circuits (ASICs).
- DSPs digital signal processors
- RISC reduced instruction set computers
- CISC general-purpose processors
- microprocessors gate arrays (e.g., FPGAs), PLDs, reconfigurable computer fabrics (RCFs), array processors, secure microprocess
- MSO multiple systems operator
- FTTH fiber to the home
- FTTC fiber to the curb
- HFCu Hybrid Fiber Copper
- network refers generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, HFCu networks, satellite networks, telco networks, and data networks (including MANs, WANs, LANs, WLANs, internets, and intranets).
- HFC hybrid fiber coax
- HFCu high frequency coax
- satellite networks including MANs, WANs, LANs, WLANs, internets, and intranets.
- telco networks including MANs, WANs, LANs, WLANs, internets, and intranets.
- 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., SO
- 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, USB 3.0), Ethernet (e.g., 10/100, 10/100/1000 (Gigabit Ethernet), 10-Gig-E, etc.), MoCA, Coaxsys (e.g., TVnetTM), radio frequency tuner (e.g., in-band or OOB, cable modem, etc.), Wi-Fi (802.11), WiMAX (802.16), PAN (e.g., 802.15), cellular (e.g., LTE/LTE-A, 3GPP, 3GPP2, UMTS), or IrDA families.
- FireWire e.g., FW400, FW800, etc.
- USB e.g., USB2, USB 3.0
- Ethernet e.g., 10/100, 10/100/1000 (
- node refers to any functional entity associated with a network, such as for example an OLT or ONU, whether physically discrete or distributed across multiple locations.
- 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, 16-QAM, 64-QAM, 256-QAM, etc.) depending on details of a cable network.
- a QAM may also refer to a physical channel modulated according to the schemes.
- server refers without limitation 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.
- service As used herein, the term “service”, “content”, “program” and “stream” are sometimes used synonymously to refer to a sequence of packetized data that is provided in what a subscriber may perceive as a service.
- a “service” (or “content”, or “stream”) in the former, specialized sense may correspond to different types of services in the latter, non-technical sense.
- a “service” in the specialized sense may correspond to, among others, video broadcast, audio-only broadcast, pay-per-view, or video-on-demand.
- the perceivable content provided on such a “service” may be live, pre-recorded, delimited in time, undelimited in time, or of other descriptions.
- a “service” in the specialized sense may correspond to what a subscriber would perceive as a “channel” in traditional broadcast television.
- service group refers to either a group of service users (e.g. subscribers), or the resources shared by them in the form of for example entire cable RF only the RF channels used to receive the service or otherwise treated as a single logical unit by the network for resource assignment.
- wireless means any wireless signal, data, communication, or other interface including without limitation Wi-Fi, Bluetooth, 3G (3GPP/3GPP2), HSDPA/HSUPA, TDMA, CDMA (e.g., IS-95A, WCDMA, etc.), FHSS, DSSS, GSM, PAN/802.15, WiMAX (802.16), 802.20, narrowband/FDMA, OFDM, PCS/DCS, LTE/LTE-A, analog cellular, CDPD, satellite systems, millimeter wave or microwave systems, acoustic, and infrared (i.e., IrDA).
- the present disclosure provides methods and apparatus for efficiently delivering electronic program guide (EPG) data to consumer devices.
- EPG electronic program guide
- the provided methods and apparatus address the prior art deficiencies associated with certain types of client devices having limited processing power, as well as limited network bandwidth available for delivering EPG data and updates.
- the disclosed methods and implementations thereof thus reduce resource usage while providing a rich user experience.
- the EPG data is pre-rendered prior to delivery to a client device.
- a gateway apparatus within a user's premises and in communication with the client device (such as via a home network) may receive EPG data and pre-render the guide on behalf of the client device.
- the gateway apparatus serves as a proxy between the client device and the network, and renders the received guide data before delivering it in a format that requires little or no processing at the client-side.
- the foregoing mechanisms further decrease an amount of network bandwidth required for rendering the EPG in that only one device within a premises (the gateway) will receive the guide data, rather than all of the clients individually requesting and receiving the EPG data.
- the pre-rendering which occurs at the gateway may, in one exemplary embodiment comprise generation of a simple view representing various ones of the EPG screens.
- the so-called simple view may comprise one of: a video segment (e.g., MP4, MPEG), a still image (e.g., PNG, PG, TIFF), and/or a pointer (e.g., simple HTML, and other immediately renderable formats).
- a complete set of all available guide data is received by the gateway from a network server, reducing or removing the need to continually request views from the network either by the gateway or each of the individual client devices which will ultimately have access to the EPG.
- the gateway may request additional data or updates if the guide data is insufficient (due to, e.g., a new user input or passage of time). Delivery of simple views to the CPE may be performed all at once, so that the CPE receives every possible simple view it may require. In another exemplary embodiment, delivery may be done predictively. For example, the gateway may provide only the simple view that is in an appropriate format for a given device to that device and/or based on user inputs and interaction with the previous screen.
- the gateway may prioritize which next screens to generate based on a user's actions (e.g., moving a cursor to a dialog option) or an EPG screen (previously generated by the gateway) having multiple possible selections.
- a user's actions e.g., moving a cursor to a dialog option
- an EPG screen previously generated by the gateway
- HFC hybrid fiber/coax
- MSO multiple systems operator
- IP delivery capability IP delivery capability
- CPE plurality of client devices or CPEs
- the general principles and advantages of the disclosure 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.
- FIG. 1 illustrates an exemplary distribution network configuration with which the apparatus and methods of the present disclosure may be used.
- the various components of the 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) customer 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 FIG.
- FIG. 1 for simplicity, although it will be recognized that comparable architectures with multiple origination points, distribution servers, VOD servers, and/or CPE devices (as well as different network topologies) may be utilized consistent with the disclosure.
- the headend architecture of FIG. 1 a (described in greater detail below) may be used.
- the data/application origination point 102 comprises any medium that allows data and/or applications (such as a VOD-based or “Watch TV” application) to be transferred to a distribution server 104 .
- This may 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 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 is 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 may be accessed by a distribution server 104 .
- the headend architecture 150 comprises typical headend components and services including billing module 152 , subscriber management system (SMS) and CPE configuration management module 154 , cable-modem termination system (CMTS) and OOB system 156 , as well as LAN(s) 158 , 160 placing the various components in data communication with one another.
- SMS subscriber management system
- CPE configuration management module
- CMTS cable-modem termination system
- OOB system 156 OOB system
- LAN(s) 158 , 160 placing the various components in data communication with one another.
- LAN(s) 158 , 160 placing the various components in data communication with one another.
- the exemplary architecture 150 of FIG. 1 a further includes a multiplexer-encrypter-modulator (MEM) 162 coupled to the HFC network 101 adapted to process or condition content for transmission over the network.
- the distribution servers 164 are coupled to the LAN 160 , which provides access to the MEM 162 and network 101 via one or more file servers 170 .
- the VoD servers 105 are coupled to the LAN 160 as well, although other architectures may be employed (such as for example where the VoD servers are associated with a core switching device such as an 802.3z Gigabit Ethernet device).
- information is carried across multiple channels.
- the headend must be adapted to acquire the information for the carried channels from various sources.
- the channels being delivered from the headend 150 to the CPE 106 (“downstream”) are multiplexed together in the headend as previously described, and sent to neighborhood hubs ( FIG. 1 b ) via a variety of interposed network components.
- the multiplexing operation(s) need not necessarily occur at the headend 150 (e.g., in the aforementioned MEM 162 ).
- the multiplexing is conducted at a BSA switching node or hub.
- a multi-location or multi-stage approach may be used, such as that described in co-owned U.S. Pat. No.
- OOB out-of-band
- DOCSIS DOCSIS channels and associated protocols.
- OCAP 1.0, 2.0, 3.0 (and subsequent) specification provides for exemplary networking protocols both downstream and upstream, although the disclosure is in no way limited to these approaches.
- the multiple servers may be used, and disposed at two or more different locations if desired, such as being part of different server “farms”. These multiple servers may 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.
- the network 101 of FIG. 1 and 1 a comprises a fiber/coax arrangement wherein the output of the MEM 162 of FIG. 1 a is transferred to the optical domain (such as via an optical transceiver 177 at the headend or further downstream).
- the optical domain signals are then distributed to a fiber node 178 , which further distributes the signals over a distribution network 180 to a plurality of local servicing nodes 182 . This provides an effective 1:N expansion of the network at the local service end.
- FIGS. 1 a and 1 b In addition to on-demand and broadcast content (e.g., video programming), the system of FIGS. 1 a and 1 b (and 1 c discussed below) also deliver Internet data services using the Internet protocol (IP), although other protocols and transport mechanisms of the type well known in the digital communication art may be substituted.
- IP Internet protocol
- One exemplary delivery paradigm comprises delivering MPEG-based video content, with the video transported to user PCs (or IP-based STBs) over the aforementioned DOCSIS channels comprising MPEG (or other video codec such as H.264 or AVC) over IP over MPEG.
- the higher layer MPEG- or other encoded content is encapsulated using an IP protocol, which then utilizes an MPEG packetization of the type well known in the art for delivery over the RF channels, such as via a multiplexed transport stream (MPTS).
- MPTS multiplexed transport stream
- a parallel delivery mode to the normal broadcast delivery exists; i.e., delivery of video content both over traditional downstream QAMs to the tuner of the user's STB or other receiver device for viewing on the television, and also as packetized IP data over the DOCSIS QAMs to the user's PC or other IP-enabled device via the user's cable modem. Delivery in such packetized modes may be unicast, multicast, or broadcast. Delivery of the IP-encapsulated data may also occur over the non-DOCSIS QAMs, such as described below with respect to FIG. 1 c.
- 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.
- FIG. 1 c illustrates one exemplary implementation of such a network, in the context of a 3GPP IMS (IP Multimedia Subsystem) network with common control plane and service delivery platform (SDP), as described in co-owned, co-pending U.S. patent application Ser. No. 12/764,746, filed on Apr.
- 3GPP IMS IP Multimedia Subsystem
- SDP common control plane and service delivery platform
- the partial “cloud” rendering of HTML pages does not rely on a home gateway, so the rendering cannot be done in the home.
- FIG. 2 an exemplary embodiment of a network architecture 200 for efficiently providing guide data to a plurality of subscriber devices is illustrated. While described herein in the context of a hybridized (i.e., fiber and wireline conductor such as coaxial cable) extant network topology such as that of FIGS. 1-1 c discussed above), the present disclosure is in no way so limited, and in fact may be utilized within various network or topology types.
- a hybridized i.e., fiber and wireline conductor such as coaxial cable
- the network 200 generally comprises a gateway apparatus 202 in communication with a plurality of consumer devices (or CPE) 106 .
- the gateway apparatus 202 in the illustrated embodiment, communicates with a plurality of entities at a managed network 101 to provide content and/or data to the consumer devices 106 .
- the present disclosure enables the gateway 202 to act as a proxy for the CPE 106 with respect to only the guide data.
- the CPE 106 are, in this embodiment, configured to request and receive content directly from the network 101 without utilizing the gateway 202 .
- the gateway 202 may additionally act as a proxy for the CPE 106 with respect to delivery of other content and/or data.
- the gateway apparatus 202 may be similar to that discussed in co-owned, co-pending U.S. patent application Ser. No. 13/888,210 filed on May 6, 2013, published as U.S. Patent Application Publication No. 2013/0318560 on Nov.
- a gateway apparatus (such as the gateway apparatus 202 ) is provided for unifying at least portions of the functionality of a set-top box (STB) or similar customer premises device, or a digital video recorder (DVR), with those of another device such as a cable modem.
- STB set-top box
- DVR digital video recorder
- the out-of-band signaling and communication functions typically necessary on STBs and DVRs are obviated in favor of the premises services gateway (PSG) device, which acts as a unified proxy for all inbound (downstream) and outbound (upstream) communications with the network.
- PSG premises services gateway
- This approach is particularly useful to help reduce a cable provider's capital expenditures in manufacturing customer premises equipment (CPE), since the “proxied” DVR and STB no longer require an OOB tuner, and hence their cost is reduced and simplicity, space efficiency, and even reliability increased.
- CPE customer premises equipment
- the exemplary gateway 202 may also be advantageously utilized to consolidate in-band tuner resources as well, thereby further reducing capital costs associated with subscriber premises installations.
- communication between the various entities e.g., DVR and STB and PSG OOB proxy
- IP-based communications e.g., IP-based communications
- client devices that support a cable RF tuner and an IP channel distributed over coaxial cable to the gateway are disclosed. These clients may only implement the IP channel, and therefore receive all video or data information over the IP network only. This reduces the cost of the client devices by removing the tuners and the cable modems from each device.
- one or both of the foregoing DVR and STB are further physically integrated within the premises gateway 202 , thereby allowing for a fully unified platform.
- This unified platform may use a common form factor (i.e., one box), a common coaxial interface to the parent network, common AC power supply, end even common operating system, storage devices, and middleware.
- Common control and user interface environments may also be utilized, such as where a single “universal” remote is provided to afford control of all STB, tuning and DVR functions.
- the gateway 202 is also configured to interface with any number of other devices which may be present in the customer's premises, such as e.g., MoCA-based LANs, Ethernet LANs, WiFi LANs, PANs, or even personal media devices (PMDs).
- the gateway 202 may also act as a router, provide network address translation (NAT) functions, and even act as a DHCP server if so configured.
- NAT network address translation
- the exemplary gateway 202 embodiments disclosed herein further facilitate the aim of easier movement of content within a “trusted domain” or authorized service domain (ASD) by inter alia unifying multiple devices and functions within a single device.
- the gateway 202 further communicates with a non-managed network and thereby enables content and/or data to be obtained from networks other than the managed network (for example content and/or data may be obtained via communication with 3 rd party entities via the Internet).
- the gateway apparatus 202 may be similar to that discussed in co-owned, co-pending U.S. patent application Ser. No. 12/582,619 filed on Oct. 20, 2009, entitled “GATEWAY APPARATUS AND METHODS FOR DITGITAL CONTENT DELIVERY IN A NETWORK”, and published as U.S. Patent Application Publication No. 2011/0093900 on Apr. 21, 2011, which is incorporated herein by reference in its entirety.
- a gateway device (such as the gateway apparatus 202 ) is disposed at the headend of the network and is configured to request and receive internet content from one or more host servers via the Internet. The internet content is then processed and delivered to one or more client devices (such as the CPE 106 ).
- Processing of internet content at the gateway 202 may include de-encapsulating the received internet content from a first media file container format and subsequently re-encapsulating the internet content to a second media file container format which is compatible with one or more receiving devices.
- content which is delivered from a host server may be encapsulated in e.g., MP4, if the receiving client device(s) are not capable of reading the MP4 files, the gateway device may re-encapsulate to e.g., MPEG-2 or other format that the receiving device is capable of reading.
- the gateway device may process received content automatically into various alternative encapsulation formats or, may encapsulate as needed to the format of the specific requesting device.
- the processed content may be stored for future use for transmission to other client devices requesting the same content in the particular new format.
- internet content is delivered according to traditional broadcast mechanisms (e.g., linear delivery via downstream in-band QAM).
- the gateway device first establishes a set of rules for requesting certain internet content.
- the content is then pre-processed, and a broadcast schedule is created. Users may then view the internet content by tuning to the appropriate program channel (associated with one or more particular QAMs) at the time designated in the broadcast schedule.
- internet content is delivered using VOD delivery mechanisms.
- a VOD session is established between the user's CPE 106 and an internet content portal associated with the gateway device.
- the user browses and selects internet content for viewing.
- the gateway device is then able to request selected internet content from a host server associated with the content, process the content as needed, and stream the (processed) content, via the pre-established session, to the user's CPE.
- the same session is utilized for subsequent internet content requests.
- a single gateway 202 may be configured to receive guide data from the network, render the guide data into one or more of the various simple views discussed herein, and transmit the simple view to each CPE 106 in the premises.
- one or more of these tasks may be performed at a separate gateway device 202 .
- the gateway 202 may be located at a cloud or network 101 location. In this manner a single gateway apparatus 202 is able to render guide data for a plurality of CPE 106 such as an entire service group.
- the gateway device 202 of FIG. 2 is in communication with a network authentication entity 204 , a content server 206 and a data server 208 via the managed network 101 .
- the authentication entity 204 is configured to authenticate the gateway 202 and/or subscriber registered thereto.
- the authentication entity 204 is further configured to authenticate each of the devices (and/or a user thereof) which request access to the content and/or data provided from the network 101 . This may occur via a direct communication between the CPE 106 and the authentication entity 204 ; alternatively, the gateway 202 may act as a proxy for the authentication of the CPE 106 and/or a user thereof.
- apparatus and methods for authorization and/or authentication may be of the type discussed in co-owned U.S. patent application Ser. No. 12/536,724 filed Aug. 6, 2009 and entitled “SYSTEM AND METHOD FOR MANAGING ENTITLEMENTS TO DATA OVER A NETWORK”, now issued as U.S. Pat. No. 8,341,242 on Dec. 25, 2012, which is incorporated herein by reference in its entirety. If the requesting device/user is not authorized and/or authenticated, content/data cannot be provided thereto.
- Authentication refers generally and without limitation to a determination that a device or user associated with the device (e.g., the CPE 106 and/or gateway 202 ) is among the devices which may receive content/data, and/or that a user of the requesting device is a subscriber to the network 101 or other entitled user. This may be accomplished by requiring the user to log into the network (such as by password and/or user identification, challenge question, etc.) or by comparing some other unique identifier (such as MAC ID, digital signature, SIM ID) to a list of authenticated device identifiers at a headend entity (such as the aforementioned transfer manager 206 ). Other mechanisms may be used as well, and multiple such mechanisms may be used in parallel or sequence as desired.
- “Authorization” as used herein refers generally and without limitation to the determination that the requested content/data is within the set or plurality of content/data the user (e.g., subscriber) or device may receive, and/or the proposed use of the content/data is within the allowed use set for that subscriber. For example, authorization may be used to refer to whether the requested content/data is within the subscription plan (e.g., level or tier) for the requesting user. Other security or rights-related checks may be performed as well.
- the subscription plan e.g., level or tier
- the content server 206 in one variant is similar to that discussed above with respect to the content sources 103 of FIG. 1 .
- the content server 206 stores and distributes content (such as content programming, or media content) via the network 101 for display at a consumer device (e.g., CPE 106 ).
- the content server 206 additionally provides metadata regarding the content that is to be delivered to the data server 208 .
- the data server 208 is configured to store and distribute information regarding the content that is to be delivered via the network 101 .
- the data server 208 for example provides metadata from all content set to be delivered or broadcast which is needed to derive or generate an electronic program guide (EPG).
- EPG electronic program guide
- the data server 208 provides data which is specific to a particular gateway 202 . In other words, what is sent is only that which is needed by the particular gateway 202 to render the guide having e.g., a channel lineup which is specific for a user of a particular CPE 106 , targeted to a geographic area associated with the gateway 202 and/or devices 106 , specific to a subscriber type, etc.
- a full or complete data set is provided from the data server 208 to the gateway apparatus 202 .
- the full data set may be provided periodically, with minor updates being additionally provided at a smaller interval.
- the data may be pushed from the data server 208 to the gateway 202 ; or alternatively, the gateway 202 may actively pull the information therefrom.
- the full or complete data set comprises all of the information that is required by the gateway 202 to render the EPG. For example, metadata regarding the content, scheduling information, and graphic user interface (GUI) information needed from the headend are provided to the gateway 202 .
- GUI graphic user interface
- Guide data may include any information contained in the end-user presentation. Typical examples include programming information such as dates, times, channels, program names, descriptions, user ratings, actor listings, thumbnails, pricing of restricted content. Advertisements such as additional promotions or service plans being offered by vendor, relevant third-party ads, TV show or movie preview images and videos may be included with the guide data. Certificates and other authentication data as mentioned previously may also be transmitted. Applications and scripts (e.g., Java applets, JavaScript code, HTML5 code) necessary to organize or display the above information may also be included.
- the gateway 202 of FIG. 2 utilizes the complete data set to render an EPG on behalf of the CPE 106 .
- the present disclosure utilizes the gateway 202 (including e.g., the content and data server(s), headend, and other network devices) to deliver rendered guide data in a simple view to CPE 106 .
- This feature is intended to replace prior art systems wherein, for example, logic implemented in JavaScript software is executed at least partially on the CPE to calculate and render guide information that the end user sees.
- the CPE is executing JavaScript to process and cause display of the appropriate information and graphics.
- the present disclosure rather than this occurring at the CPE 106 rendering and processing occur at the gateway 202 .
- the frequency with which guide data is received at the gateway 202 , transmitted to the CPE 106 , and updated at the gateway 202 (from the network) may vary depending on availability of processing and bandwidth resources within the network.
- guide data may be updated on a regular schedule, e.g., hourly, daily, weekly, or based on an event, e.g., user request (limited or unlimited), gateway 202 or CPE 106 power-on, vendor decision, conditional events.
- the simple view which is provided to the CPE 106 may include a picture, a simple pointer, or a video of the guide data.
- the simple view which is provided to the CPE 106 may include a picture, a simple pointer, or a video of the guide data.
- Each of the foregoing having been processed at the gateway so that they may be merely presented in a fixed format at the CPE 106 (and/or display device associated therewith).
- the gateway 202 renders the appropriate EPG changes and provides updated simple views to the CPE 106 .
- the simple view utilizing a video stream refers to the delivery of a fixed video (e.g., MPEG, MP4) that does not require further rendering of JavaScript or HTML5 at the CPE 106 .
- a plurality of video streams are generated at the gateway 202 and delivered to the CPE 106 .
- the user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, the CPE 106 (and/or display device associated therewith) is merely displaying a video representative of the interaction.
- Using video allows animated elements on screen, providing the user with a rich experience that most have seen before.
- the simple view utilizing a still picture refers to the delivery of one or more pictures representative of the EPG and interaction therewith.
- a plurality of still pictures are generated at the gateway 202 and delivered to the CPE 106 for display thereat (or at a display device in communication therewith).
- the user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, in this embodiment the CPE 106 (and/or display device associated therewith) is merely displaying one or more pictures representative of the interaction.
- Each input command by the user triggers the gateway 202 to provide an updated picture (view of the screen).
- This approach is ideal for low-end CPEs that cannot handle smoothly processing pre-rendered video streams or executing code (discussed below).
- the simple view utilizing a simple pointer refers to the delivery of a set of text that renders a webpage representative of the EPG and interaction therewith.
- Examples of the other renderable formats include but are not limited to ⁇ canvas> tag commands, SVG commands, DirectFB commands, or WebGL commands. Some of these formats may require more complex rendering, but their availability makes this approach more flexible than the other two.
- HTML5 supplemented by JavaScript or other languages such as CSS3 is used to create dynamic content at the CPE 106 (or display device).
- a plurality of pointers are generated at the gateway 202 and delivered to the CPE 106 for display thereat (or at a display device in communication therewith).
- the user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, in this embodiment the CPE 106 (and/or display device associated therewith) is merely displaying one or more webpages representative of the interaction.
- Each input command by the user triggers the gateway 202 to provide an updated pointer.
- the gateway 202 determines which of the foregoing approaches to utilize for providing the simple view to the CPE 106 based on e.g., CPE capabilities (processing power, memory, accepted bandwidth load), gateway capabilities (processing power, memory, accepted bandwidth load), cloud resources, user preference, data collected from vendor or user experience, and bandwidth availability (time of day, user demand, etc.).
- CPE capabilities processing power, memory, accepted bandwidth load
- gateway capabilities processing power, memory, accepted bandwidth load
- cloud resources e.g., user preference, data collected from vendor or user experience, and bandwidth availability (time of day, user demand, etc.).
- a user at the gateway 202 and/or CPE 106 may manually select a simple view technique (e.g., still picture, video, pointers, or other).
- the gateway 202 may elect one or the other based on what is known about the receiving device (e.g., CPE 106 and/or display apparatus). For example, to reduce client-side hardware costs, an end user may opt to use a low-end CPE 106 that lacks modern processing and memory power. In this case, a complex code combined with a video stream would be unfavorable, therefore the still picture variant is selected.
- the receiving device e.g., CPE 106 and/or display apparatus.
- FIG. 2 The aforementioned exemplary architecture of FIG. 2 is used to increase the efficiency of delivering guide data to client devices 106 .
- This configuration works on any technology deployment that involves a gateway apparatus and one or more client devices that rely on that gateway for content or connectivity. However, it would be recognized by those of ordinary skill given this disclosure that other approaches and architectures may be substituted with equal success.
- FIGS. 3-3 c illustrate exemplary methods for use with the apparatus and systems disclosed in the network 200 of FIG. 2 .
- FIG. 3 illustrates a generalized method for, efficiently providing guide data in accordance with the present disclosure.
- authentication is performed.
- the authentication may comprise an authentication of the gateway 202 (and/or a user thereof) to a network authentication entity 204 , and/or authentication of the CPE 106 (and/or a user there) to the network authentication entity 204 .
- the CPE 106 or user thereof may authenticate itself to the network 101 via the gateway 202 in one embodiment.
- the CPE 106 and/or a user thereof may authenticate itself to the gateway 202 to establish a so-called “trusted network”.
- Authentication and/or authorization may occur in a myriad of ways. Examples include but are not limited to peer-to-peer authentication between devices (e.g., between CPE and tablet or other user-end device, CPE and gateway, gateway and server, server and other cloud devices), user authentication (e.g., form-based username and password entry, other forms of requiring credentials), authorization authentication (e.g., billing account maintained by content vendor, address, time of day, restricted content based on geographic area and/or service plan), entity authentication (e.g., digital certificate, MAC address, session cookies), infrastructure authentication (e.g., by IP address), chained authentication, and HTTP. Multi-factor authentication using more than one authentication procedure may also be used.
- devices e.g., between CPE and tablet or other user-end device, CPE and gateway, gateway and server, server and other cloud devices
- user authentication e.g., form-based username and password entry, other forms of requiring credentials
- authorization authentication e.g., billing account maintained by content vendor, address,
- SSL Secured Sockets Layer
- SSH Secure Shell
- OpenSSH OpenSSH
- Transport Layer Security TLS
- OAuth 2.0 or otherwise
- the apparatus and methods for authorization and/or authentication may be of the type discussed in previously referenced co-owned U.S. patent application Ser. No. 12/536,724 filed Aug. 6, 2009 and entitled “SYSTEM AND METHOD FOR MANAGING ENTITLEMENTS TO DATA OVER A NETWORK”, now issued as U.S. Pat. No. 8,341,242 on Dec. 25, 2012, which is incorporated herein by reference in its entirety.
- a complete guide data set is received and stored at the gateway 202 .
- the complete data set comprises all the data which is needed by the gateway 202 to render an electronic program guide (EPG).
- EPG electronic program guide
- metadata including actors, broadcast times, channel identifiers, program identifiers, etc. are provided.
- a complete data set may be provided to the gateway 202 from a data server 208 periodically upon a push/pull from the gateway 202 or data server 208 as noted above.
- Communication between the guide data server 208 and the gateway 202 may utilize in-band and/or out-of-band frequency of the existing content/data delivery network; such as via, inter cilia, QAM carousel, DSG carousel, multicast, or unicast.
- the gateway is fed with a completed set of information, thereby reducing or removing a need for the gateway 202 to subsequently request individualized or narrow views of guide content from the network.
- the gateway 202 may request and retrieve additional guide data and/or updates to the guide data.
- the gateway 202 Per step 306 , the gateway 202 generates one or more simple views of the EPG.
- the simple view may comprise static pictures, video clips, or pointers.
- the gateway 202 generates these views using information obtained from the complete guide data set. In the instance a still picture simple view is being generated, the gateway 202 uses the data to generate one or more pictures representative of e.g., a first screen of the EPG. Similarly, when the video or pointers simple view is being generated, the gateway 202 uses the data to generate one or more videos or pointers representative of e.g., a first screen of the EPG.
- the gateway 202 is made aware of the capabilities of all of the CPE 106 in communication therewith (such as during a registration process) and based on this information the gateway 202 runs a computer program configured to determine which simple view(s) to create. For example, the gateway 202 may select a single simple view which all the devices are capable of displaying, or may generate a different type of simple view for each of the registered devices. Alternatively, the gateway 202 may generate all of the simple view alternatives and distribute them as needed. In another embodiment, the user of the CPE 106 and/or gateway 202 may determine the one or more simple views to be generated and distributed.
- the generated simple views are provided to the CPE 106 for display.
- the gateway 202 may be configured to provide only the view which is in an appropriate format for a given device to that device. Alternatively, all of the views may be provided to each of the devices in communication with the gateway 202 . Actual display of the data provided as a simple view occurs at a display apparatus in communication with the CPE 106 .
- a user at the CPE 106 interacts with the program guide and enters a command.
- the command is received at the gateway 202 at step 310 via e.g., any number of communication mechanisms (such as e.g., Bluetooth, wireless, MoCA, wired connections, etc.).
- the user input commands may be entered via a separate controller device (e.g., remote control) or physical button inputs, e.g., navigation arrows.
- the user commands comprise very basic or low-level commands; examples include navigation buttons, browsing menus, and selecting program entries.
- the gateway 202 In response to the commands, per step 312 , the gateway 202 provides the necessary updated simple views to the CPE 106 .
- gateway 202 it is gateway 202 , and not the CPE 106 , that bears the computation load of interpreting JavaScript (or similar supplement for HTML5) and executing resource intensive operations to produce a simple view of the guide data. This shifts the processing, bandwidth, and memory resources away from the client devices and to the gateway 202 , reducing the costs of the client devices 106 .
- the gateway 202 may generate and provide only that information which is necessary for the CPE 106 to display the first EPG screen (i.e., a menu screen), then await additional user commands.
- the gateway 202 may generate and pre-position all of the information necessary to display any next logical command which might be entered by the CPE for the various simple views.
- the gateway 202 may run at least one computer program configured to determine all of the possible commands which may be received at a given EPG screen. The gateway 202 then uses this information to derive all of the next screens the user would see based on those determined commands in the appropriate simple views.
- the gatway 202 may run the program again to generate all possible next screens given the current view, and so forth.
- the gateway 202 may either store the simple views for all possible user commands for delivery per step 312 , or may send them to the CPE 106 at the same time as the original simple view of the first screen is transmitted to the CPE 106 .
- the user commands are not transmitted to the gateway 202 but rather processed at the CPE 106 for a determination of which simple view updated screen to display.
- the updated simple views may be predicted and provided to the CPE 106 in advance of the user's actual input of a command. For example, moving a selection cursor or box to an “OK” or “Cancel” selection increases the likelihood that the user will select that particular choice. In that case, a pre-rendered simple view containing what would show in the following screen is identified and/or generated and delivered to the CPE 106 . This improves the user experience by reducing wait times, increasing smoothness, reducing choppiness of animation due to any particularly complex gateway-side calculations, etc. Predictions require additional processing and bandwidth capabilities at the gateway 202 .
- the gateway 202 is further configured to remember where the user left off the last time the guide was displayed. Upon returning to the guide, the CPE 106 displays the same screen as before. This introduces a further level of seamlessness and the appearance that the user is controlling directly what is displayed in front of the user rather than being shown a pre-rendered graphic.
- FIGS. 3 a -3 c discloses various methods for providing simple views to the client.
- Each of the illustrated methods replace what would normally be JavaScript-supported HTML5 guides rendered and displayed by the CPE 106 , with pre-rendered (i.e., rendered at the gateway 202 ) replacement video, simple HTML, or picture.
- pre-rendered i.e., rendered at the gateway 202
- These methods thereby reduce the redundant bandwidth used as well as client device costs since less processing power and memory are needed.
- a powerful client device 106 containing a transcoder processes and causes display of a video stream that contains the program guide.
- an “animated” guide may be provided; the animated guide is more aesthetically pleasing for the user than the other simple views discussed herein.
- a plurality of video streams are generated at the gateway 202 and provided to the CPE 106 for display (step 322 ).
- the video streams which are generated at step 320 may comprise only those necessary for the display device associated to the client device 106 to display an initial menu screen.
- the gateway 202 may additionally derive the all video streams which might be necessary based on all possible user commands. These are then stored at the gateway 202 or provided to the CPE 106 in anticipation of a command.
- a command is received from a user interacting with the guide.
- the gateway In response to the command, per step 326 , the gateway generates a new stream which corresponds to the updated view and provides the new stream to the device 106 (step 328 ).
- the gateway 202 may pre-generate all update streams which may be needed by a user when interacting with the guide (e.g., all those which are expected to be needed based on a current view). These may be pre-positioned at the CPE 106 ; in which case, the request (step 326 ) is not sent to the gateway 202 .
- the gateway 202 may simply store the pre-generated streams and provide them in response to the command at step 328 .
- FIG. 3 b illustrates a method 329 for providing guide data as still pictures for devices 106 which have less processing power and/or memory than those discussed above with respect to FIG. 3 a . This would result in slightly higher in-home bandwidth usage than the simple HTML, but has the advantage of being capable of being used with much lower-end boxes.
- a plurality of images are generated at the gateway 202 and provided to the CPE 106 for display (step 332 ).
- the still images which are generated at step 330 may comprise only those necessary for the display device associated to the client device 106 to display an initial menu screen.
- the gateway 202 may additionally derive the all images which might be necessary based on all possible user commands. These are then stored at the gateway 202 or provided to the CPE 106 in anticipation of a command.
- a command is received from a user interacting with the guide.
- the gateway In response to the command, per step 336 , the gateway generates a new image which corresponds to the updated view and provides the new image to the device 106 (step 338 ).
- the gateway 202 may pre-generate all update images which may be needed by a user when interacting with the guide (e.g., all of the images which might be necessary given the current view). These may be pre-positioned at the CPE 106 ; in which case, the request (step 336 ) is not sent to the gateway 202 .
- the gateway 202 may simply store the pre-generated images and provide them in response to the command at step 328 .
- the guide data is rendered into pointers for simple HTML.
- the simple HTML is calculated after JavaScript operations are complete.
- This resultant pointer e.g., HTML
- Examples of other potentially formats that are immediately renderable by the CPE 106 include ⁇ canvas> tag commands, SVG commands, DirectFB commands, or WebGL commands, which may be more complex than simple HTML.
- a plurality of pointers are generated at the gateway 202 and provided to the CPE 106 for display (step 342 ).
- the gateway 202 may generate only those pointers which are necessary for the display device associated to the client device 106 to display an initial menu screen. Alternatively, the gateway 202 may derive the all pointers which might be necessary based on all possible user commands. These are then stored at the gateway 202 or provided to the CPE 106 in anticipation of a command.
- a command is received from a user interacting with the guide.
- the gateway 202 generates a new pointer which corresponds to the updated view (and/or identifies a pre-generated pointer) and provides the new pointer to the device 106 (step 348 ).
- FIGS. 3-3 c utilize a gateway 202 apparatus and a client device 106 , each of which will be discussed in detail below.
- the CPE 106 generally comprises a network interface 402 , processor 404 , a storage device 408 , and a number of backend interfaces 406 for communication between the CPE 106 and one or more external devices (such as other devices in the home network, a display apparatus, and/or a controller).
- the CPE 106 comprises an IP-enabled device.
- a single user premise may comprise more than one CPE 106 each in communication with the same gateway 202 .
- the individual client devices may both (i) be heterogeneous or homogeneous in nature/capability; and (ii) be integrated into or make use of extant devices/form factors such as smartphones, tablets, phablets, laptops, handhelds, gaming devices, wireless routers, etc.
- the network interface 402 enables the CPE 106 to communicate to the network 101 .
- the network interface 402 may comprise an RF tuner capable of receiving programming content from e.g., the content server 206 .
- data may be transmitted to the CPE 106 via the network interface 402 .
- the gateway 202 functions as a content delivery proxy for the CPE 106
- the CPE 106 may not comprise a network interface 402 but rather content is received via a backend interface 406 with the gateway 202 .
- the processor 404 is configured to execute at least a display processing application 410 and a command request application 412 .
- the display processing application 410 comprises computer instructions which enable the CPE 106 to display the received simple view of the guide data (e.g., as still images, video segments, or pointers).
- the processing application 410 is an optional application which may be omitted from the CPE 106 in the event display processing occurs at a display device other than the CPE 106 but in communication therewith.
- the command request application 412 enables the CPE 106 to, in response to receiving commands from a user, issue a request to the gateway 202 for an updated view.
- the updated view may comprise updated still images, updated video streams, or updated pointers.
- the gateway 202 in response to the request, generates the updated views.
- the gateway 202 may pre-generate all of the updated views which may be anticipated to be needed based on the current view. In this instance, upon receiving the CPE 106 command request, the gateway 202 simply identifies the necessary updated (based on the issued request/command).
- the CPE 106 rather than the gateway may store the pre-generated views. According to this model, once these are generated at the gateway 202 they are simply passed to the CPE 106 for storage thereat. Upon user request, the CPE 106 identifies the appropriate updated view. According to this embodiment, the command request application 412 is optional.
- the CPE 106 is connected to the gateway 202 , as well as any number of other external devices and/or home networked devices (e.g., other CPE 106 , a remote controller, a display apparatus, etc.).
- Exemplary interfaces useful with the CPE 106 include but are not limited to coaxial cable (including Multimedia over Coax (MoCA)), Wi-Fi, infrared, USB, Ethernet, Bluetooth, etc.
- the storage device 408 comprises a data storage entity configured to store e.g., the guide data and any updates thereto.
- the storage device 408 data and may comprise any one of a number of types of memory (e.g., RAM, SRAM, DRAM, magnetic hard-disk drives (HDD), solid-state drives (SSD), hybrid SSD drives having components associated with HDD and SSD, etc.).
- the gateway 202 generally includes a network interface 502 , a processor 504 , a storage apparatus 506 , and a number of backend interfaces 508 for communication to e.g., the CPE 106 .
- a single user premise may comprise more than one gateway 202 in communication with one or more CPE 106 .
- the present disclosure enables the gateway 202 to act as a proxy for the CPE 106 with respect to only the guide data.
- the CPE 106 are, in this embodiment, configured to request and receive content directly from the network 101 without utilizing the gateway 202 .
- the gateway 202 may additionally act as a proxy for the CPE 106 with respect to delivery of other content and/or data as discussed in previously referenced co-owned, co-pending U.S. patent application Ser. No. 13/888,210 (published as U.S. Patent Application Publication No. 2013/0318560).
- the gateway 202 further communicates with a non-managed network and thereby enables content and/or data to be obtained from networks other than the managed network (for example content and/or data may be obtained via communication with 3 rd party entities via the Internet), as discussed in previously referenced co-owned, co-pending U.S. patent application Ser. No. 12/582,619 (published as U.S. Patent Application Publication No. 2011/0093900).
- the network interface 502 enables the gateway 202 to communicate to the network 101 .
- the network interface 502 may comprise an RF tuner capable of receiving programming content from e.g., the content server 206 .
- data may be transmitted to the gateway 202 via the network interface 402 including data from the data server 208 .
- the gateway 202 functions as a content delivery proxy for the CPE 106 , content and/or data received from the content server 204 is then delivered to the CPE 106 .
- the processor 504 is configured to execute at least a simple view generation application 510 , a command response application 512 , and an update processing application 514 .
- the simple view generation application 510 comprises a plurality of instructions which when executed enable the guide to be rendered (on behalf of the CPE 106 ). As discussed in detail elsewhere herein, the gateway 202 may render the guide in any one of a number of simple formats, for example, still pictures, video streams, or pointers. In one embodiment, the simple view generation application 510 uses data received from the data server 208 to generate one or more simple views of the initial guide screens. In addition, the simple view generation application 510 may be utilized to pre-generate all of the simple view screens that may be necessary given the current view.
- the simple view generation application 510 may be configured to generate all of the simple view types discussed herein. Alternatively, it may determine which one or ones of the views are necessary based on the configuration of the CPE 106 in communication therewith. Given the three exemplary approaches of rendering simple views discussed herein, the least complex approach is to send still pictures to be rendered by the CPE 106 . A more capable CPE 106 , on the other hand, may be able to display simple views rendered as video streams and/or pointers.
- the command response application 512 comprises a computer application configured to enable the gateway 202 to in response to receiving various user commands (via communication with the CPE 106 ) generate updated simple views. Specifically, information contained in the request (and generated from the initial user command) is used to effect the current view, thereby necessitating an updated view. In another variant, information from the request is used to identify one of a plurality of previously generated updated views.
- the update processing application 514 comprises a computer application configured to enable the gateway 202 to generate a plurality of simple view updates to an electronic program guide. That is, the update processing application 514 utilizes information received in a request (as processed from an initial user command) to determine changes that are needed to the current screen. The update processing application 514 in conjunction with the simple view generation application 510 then generates updated views. The update processing 514 may occur a priori (e.g., before a CPE 106 request is received) or on the fly (e.g., generated only as needed).
- the gateway 202 may be configured to establish and authenticate devices within a trusted domain.
- an authentication application (not shown) authenticates CPE 106 such as via the authentication server 204 or other headend entity.
- the gateway 202 communicates to the CPE 106 , as well as any number of other external devices and/or home networked devices (e.g., other gateway 202 , etc.).
- Exemplary interfaces useful with the gateway 202 include but are not limited to coaxial cable (including Multimedia over Coax (MoCA)), Wi-Fi, infrared, USB, Ethernet, Bluetooth, etc.
- the storage device 508 comprises a data storage entity configured to store e.g., the guide data and any updates thereto.
- the storage device 508 data and may comprise any one of a number of types of memory (e.g., RAM, SRAM, DRAM, magnetic hard-disk drives (HDD), solid-state drives (SSD), hybrid SSD drives having components associated with HDD and SSD, etc.).
Abstract
Description
- The present disclosure is related to co-owned U.S. Pat. No. 6,772,433 issued on Aug. 3, 2004 and entitled “INTERACTIVE PROGRAM GUIDE FOR DESIGNATING INFORMATION ON AN INTERACTIVE PROGRAM GUIDE DISPLAY” and to co-owned U.S. Pat. No. 7,073,189 issued on Jul. 4, 2006 and entitled “PROGRAM GUIDE AND RESERVATION SYSTEM FOR NETWORK BASED DIGITAL INFORMATION AND ENTERTAINMENT STORAGE AND DELIVERY SYSTEM”, each of the foregoing are incorporated herein by reference in their entirety.
- 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.
- 1. Field of Invention
- The disclosure relates generally to the field of data and content delivery. In one exemplary aspect, the disclosure relates to apparatus and methods for efficient delivery of electronic program data.
- 2. Description of Related Technology
- Recent advances in digital information processing and technology have made a whole 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 content or programming (movies, etc.), digital video-on-demand (VOD), personal video recorder (PVR) and networked PVR (nPVR), 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 as local area networking (including wire-line and wireless local area networks) for distributing these services throughout the user's premises, and beyond. Network-delivered or network-based gaming and applications (“apps”) have also each recently come to the forefront as popular content areas for subscribers.
- In order to assist a subscriber in navigating this myriad of deliverable content, electronic guides are available. Modern electronic program guides and interactive program guides (collectively “EPGs”) provide menus that present broadcast programming or scheduling information for current and upcoming programming. EPG commonly are used in television systems to enable a user to view information relating to broadcast content.
- An interactive EPG enables a user to interact with the presented guide data. User interactions may include navigation of the menus, selection of content, and scheduling a recording or viewing using a remote control apparatus, keyboard, or other means of input.
- In many current systems, data necessary to create an EPG is delivered to each device by content distributors and/or vendors. The data may be delivered via in-band or out-of-band signaling. The client devices then use the information to build the entire EPG. Alternatively, the EPG may be generated at a network or cloud entity and delivered to the devices (including delivery of updates relating thereto).
- Each of the above-described scenarios suffers from inefficiency. For example, in the instance the entire EPG is built at the client device, significant bandwidth and other resources must be dedicated to the data delivery and delivery of updates. In addition, the client devices themselves must comprise sufficient internal processing resources in order to piece together the EPG, and additionally update the EPG with each data update. Network resources and bandwidth are also used to provide the compiled EPG to the devices as discussed above. Moreover, the foregoing methods both require a significant amount of wasted resources attributable to the steady influx of data requests from the devices (such as for EPG data and/or for the completed EPG, and updates to each).
- Therefore, what are needed are methods and apparatus for a more efficient delivery of electronic program guide data. Ideally, the improved methods and apparatus would alleviate the significant burden on resources which the current systems create and increase overall efficiency of the EPG system.
- The present disclosure addresses the forgoing needs by providing, inter alfa, apparatus and methods for efficient delivery of electronic program guide data.
- These and other aspects of the disclosure shall become apparent when considered in light of the disclosure provided herein.
-
FIG. 1 is a functional block diagram illustrating an exemplary hybrid fiber/coax (HFC) cable network configuration useful with the present disclosure. -
FIG. 1a is a functional block diagram illustrating one exemplary HFC cable network headend configuration useful with the present disclosure. -
FIG. 1b is a functional block diagram illustrating one exemplary local service node configuration useful with the present disclosure. -
FIG. 1c is a functional block diagram illustrating one exemplary packetized content delivery network architecture useful with the present disclosure. -
FIG. 2 is a functional block diagram illustrating one exemplary embodiment of a network configuration for providing guide data according to the present disclosure. -
FIG. 3 is a logical flow diagram illustrating an exemplary method for providing guide data according to the present disclosure. -
FIG. 3a is a logical flow diagram illustrating an exemplary method for providing a video-based simple view of guide data according to the present disclosure. -
FIG. 3b is a logical flow diagram illustrating an exemplary method of providing a picture-based simple view of guide data according to the present disclosure. -
FIG. 3c is a logical flow diagram illustrating an exemplary method of providing a pointers-based simple view of guide data according to the present disclosure. -
FIG. 4 is a functional block diagram illustrating an exemplary client device for use with the present disclosure. -
FIG. 5 is a functional block diagram illustrating an exemplary gateway device for use with the present disclosure. - All Figures © Copyright 2014 Time Warner Cable Enterprises LLC. All rights reserved.
- 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), gateways, modems, personal computers (PCs), and minicomputers, whether desktop, laptop, or otherwise, and mobile devices such as handheld computers, tablets, PDAs, personal media devices (PMDs), tablets, and smartphones.
- As used herein, the terms “cloud” and “cloud device” refer to computing resources residing in a network outside of the subscriber network. These resources include software and information are generally accessible over the Internet or other means of communication with other computers, data storage, or other devices.
- As used herein, the term “codec” refers to a 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/H.264, etc.), Real (RealVideo, etc.), AC-3 (audio), DiVX, XViD/ViDX, Windows Media Video (e.g., WMV 7, 8, 9, 10, or 11), ATI Video codec, or VC-1 (SMPTE standard 421 M) families.
- As used herein, the terms “computer program,” “software,” or “software application” are 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 and without limitation, 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 (e.g., BREW), and the like.
- The terms “consumer premises equipment” (CPE) and “consumer device” refer without limitation to any type of electronic equipment for use within a consumer's or user's premises and connected to a content distribution network. The term “consumer device” includes terminal devices that have access to digital television content via a satellite, cable, or terrestrial network. The term “consumer premises equipment” (CPE) includes such electronic equipment such as set-top boxes (e.g., DSTBs or IPTV devices), televisions, cable modems (CMs), embedded multimedia terminal adapters (eMTAs), whether stand-alone or integrated with other devices, digital video recorders (DVR), gateway storage devices, and ITV personal computers.
- 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.
- As used herein, the terms “electronic program guide” and “interactive program guide” (collectively “EPG”) are used interchangeably to refer to lists, menus, buttons, graphics, navigation icons, and other elements displayed to the user that present information regarding content including broadcast programming and/or scheduling information relating to the content such as current and upcoming broadcasts over television and other media. These elements may be static, animated, and/or interactive.
- As used herein, the term “headend” refers generally to a networked system controlled by an operator (e.g., an MSO or multiple systems operator) 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.
- 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 terms “microprocessor” and “digital processor” are 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 computer fabrics (RCFs), array processors, secure microprocessors, 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 without limitation to a cable, fiber to the home (FTTH), fiber to the curb (FTTC), satellite, Hybrid Fiber Copper (HFCu), or terrestrial network provider having infrastructure required to deliver services including programming and data over those mediums.
- As used herein, the term “network” refers generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, HFCu 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, LTE/LTE-A, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).
- 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, USB 3.0), Ethernet (e.g., 10/100, 10/100/1000 (Gigabit Ethernet), 10-Gig-E, etc.), MoCA, Coaxsys (e.g., TVnet™), radio frequency tuner (e.g., in-band or OOB, cable modem, etc.), Wi-Fi (802.11), WiMAX (802.16), PAN (e.g., 802.15), cellular (e.g., LTE/LTE-A, 3GPP, 3GPP2, UMTS), or IrDA families.
- As used herein, the term “node” refers to any functional entity associated with a network, such as for example an OLT or ONU, whether physically discrete or distributed across multiple locations.
- 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, 16-QAM, 64-QAM, 256-QAM, etc.) depending on details of a cable network. A QAM may also refer to a physical channel modulated according to the schemes.
- As used herein, the term “server” refers without limitation 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 term “service”, “content”, “program” and “stream” are sometimes used synonymously to refer to a sequence of packetized data that is provided in what a subscriber may perceive as a service. A “service” (or “content”, or “stream”) in the former, specialized sense may correspond to different types of services in the latter, non-technical sense. For example, a “service” in the specialized sense may correspond to, among others, video broadcast, audio-only broadcast, pay-per-view, or video-on-demand. The perceivable content provided on such a “service” may be live, pre-recorded, delimited in time, undelimited in time, or of other descriptions. In some cases, a “service” in the specialized sense may correspond to what a subscriber would perceive as a “channel” in traditional broadcast television.
- As used herein, the term “service group” refers to either a group of service users (e.g. subscribers), or the resources shared by them in the form of for example entire cable RF only the RF channels used to receive the service or otherwise treated as a single logical unit by the network for resource assignment.
- As used herein, the term “wireless” means any wireless signal, data, communication, or other interface including without limitation Wi-Fi, Bluetooth, 3G (3GPP/3GPP2), HSDPA/HSUPA, TDMA, CDMA (e.g., IS-95A, WCDMA, etc.), FHSS, DSSS, GSM, PAN/802.15, WiMAX (802.16), 802.20, narrowband/FDMA, OFDM, PCS/DCS, LTE/LTE-A, analog cellular, CDPD, satellite systems, millimeter wave or microwave systems, acoustic, and infrared (i.e., IrDA).
- The present disclosure provides methods and apparatus for efficiently delivering electronic program guide (EPG) data to consumer devices. The provided methods and apparatus address the prior art deficiencies associated with certain types of client devices having limited processing power, as well as limited network bandwidth available for delivering EPG data and updates. The disclosed methods and implementations thereof thus reduce resource usage while providing a rich user experience.
- In one aspect of the present disclosure, the EPG data is pre-rendered prior to delivery to a client device. For example, a gateway apparatus within a user's premises and in communication with the client device (such as via a home network) may receive EPG data and pre-render the guide on behalf of the client device. The gateway apparatus serves as a proxy between the client device and the network, and renders the received guide data before delivering it in a format that requires little or no processing at the client-side. The foregoing mechanisms further decrease an amount of network bandwidth required for rendering the EPG in that only one device within a premises (the gateway) will receive the guide data, rather than all of the clients individually requesting and receiving the EPG data.
- The pre-rendering which occurs at the gateway may, in one exemplary embodiment comprise generation of a simple view representing various ones of the EPG screens. The so-called simple view may comprise one of: a video segment (e.g., MP4, MPEG), a still image (e.g., PNG, PG, TIFF), and/or a pointer (e.g., simple HTML, and other immediately renderable formats).
- To achieve the efficiency sought by the present disclosure, a complete set of all available guide data is received by the gateway from a network server, reducing or removing the need to continually request views from the network either by the gateway or each of the individual client devices which will ultimately have access to the EPG. In an exemplary embodiment, the gateway may request additional data or updates if the guide data is insufficient (due to, e.g., a new user input or passage of time). Delivery of simple views to the CPE may be performed all at once, so that the CPE receives every possible simple view it may require. In another exemplary embodiment, delivery may be done predictively. For example, the gateway may provide only the simple view that is in an appropriate format for a given device to that device and/or based on user inputs and interaction with the previous screen. In addition, the gateway may prioritize which next screens to generate based on a user's actions (e.g., moving a cursor to a dialog option) or an EPG screen (previously generated by the gateway) having multiple possible selections. Such predictions allow a fast, smooth, and rich user experience. Certain predictive implementations may further minimize bandwidth usage.
- Exemplary embodiments of the apparatus and methods of the present disclosure 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 multiple systems operator (MSO), digital networking capability, IP delivery capability, and plurality of client devices or CPEs, the general principles and advantages of the disclosure 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.
- Also, while certain aspects are described primarily in the context of the well-known IP or Internet Protocol (described in, inter alia, RFC 791 and 2460) and associated transport control protocol (TCP), it will be appreciated that the present disclosure may utilize other types of packetization and transport protocols to implement the described functionality
- It will also be appreciated that while described generally in the context of a consumer (i.e., home) end user domain, the present disclosure may be readily adapted to other types of environments (e.g., commercial/enterprise, government/military, etc.) as well. A myriad of other applications is possible.
- Other features and advantages of the present disclosure will immediately be recognized by persons of ordinary skill in the art with reference to the attached drawings and detailed description of exemplary embodiments as given below.
-
FIG. 1 illustrates an exemplary distribution network configuration with which the apparatus and methods of the present disclosure may be used. The various components of thenetwork 100 include (i) one or more data and application origination points 102; (ii) one ormore content sources 103, (iii) one or moreapplication distribution servers 104; (iv) one ormore VOD servers 105, and (v) customer 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 theaforementioned components FIG. 1 for simplicity, although it will be recognized that comparable architectures with multiple origination points, distribution servers, VOD servers, and/or CPE devices (as well as different network topologies) may be utilized consistent with the disclosure. For example, the headend architecture ofFIG. 1a (described in greater detail below) may be used. - The data/
application origination point 102 comprises any medium that allows data and/or applications (such as a VOD-based or “Watch TV” application) to be transferred to adistribution server 104. This may 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 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 is received from one or more of theaforementioned 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 may be accessed by adistribution server 104. - Referring now to
FIG. 1a , one exemplary embodiment of a headend architecture useful with the present disclosure is described. As shown inFIG. 1a , theheadend architecture 150 comprises typical headend components and services includingbilling module 152, subscriber management system (SMS) and CPEconfiguration management module 154, cable-modem termination system (CMTS) andOOB system 156, as well as LAN(s) 158, 160 placing the various components in data communication with one another. It will be appreciated that while a bar or bus LAN topology is illustrated, any number of other arrangements as previously referenced (e.g., ring, star, etc.) may be used consistent with the disclosure. It will also be appreciated that the headend configuration depicted inFIG. 1a is high-level, conceptual architecture and that each MSO may have multiple headends deployed using custom architectures. - The
exemplary architecture 150 ofFIG. 1a further includes a multiplexer-encrypter-modulator (MEM) 162 coupled to theHFC network 101 adapted to process or condition content for transmission over the network. Thedistribution servers 164 are coupled to theLAN 160, which provides access to theMEM 162 andnetwork 101 via one ormore file servers 170. TheVoD servers 105 are coupled to theLAN 160 as well, although other architectures may be employed (such as for example where the VoD servers are associated with a core switching device such as an 802.3z Gigabit Ethernet device). As previously described, information is carried across multiple channels. Thus, the headend must be adapted to acquire the information for the carried channels from various sources. Typically, the channels being delivered from theheadend 150 to the CPE 106 (“downstream”) are multiplexed together in the headend as previously described, and sent to neighborhood hubs (FIG. 1b ) via a variety of interposed network components. - It will also be recognized, however, that the multiplexing operation(s) need not necessarily occur at the headend 150 (e.g., in the aforementioned MEM 162). For example, in one variant, at least a portion of the multiplexing is conducted at a BSA switching node or hub. As yet another alternative, a multi-location or multi-stage approach may be used, such as that described in co-owned U.S. Pat. No. 7,602,820, entitled “APPARATUS AND METHODS FOR MULTI-STAGE MULTIPLEXING IN A NETWORK” incorporated herein by reference in its entirety, which discloses, inter alia, improved multiplexing apparatus and methods that allow such systems to dynamically compensate for content (e.g., advertisements, promotions, or other programs) that is inserted at a downstream network node such as a local hub, as well as “feed back” and “feed forward” mechanisms for transferring information between multiplexing stages.
- Content (e.g., audio, video, data, files, 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) specification provides for exemplary networking protocols both downstream and upstream, although the disclosure is in no way limited to these approaches. - It will also be recognized that the multiple servers (broadcast, VoD, or otherwise) may be used, and disposed at two or more different locations if desired, such as being part of different server “farms”. These multiple servers may 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
FIG. 1b , thenetwork 101 ofFIG. 1 and 1 a comprises a fiber/coax arrangement wherein the output of theMEM 162 ofFIG. 1a is transferred to the optical domain (such as via anoptical transceiver 177 at the headend or further downstream). The optical domain signals are then distributed to afiber node 178, which further distributes the signals over adistribution network 180 to a plurality oflocal servicing nodes 182. This provides an effective 1:N expansion of the network at the local service end. - In addition to on-demand and broadcast content (e.g., video programming), the system of
FIGS. 1a and 1b (and 1 c discussed below) also deliver Internet data services using the Internet protocol (IP), although other protocols and transport mechanisms of the type well known in the digital communication art may be substituted. One exemplary delivery paradigm comprises delivering MPEG-based video content, with the video transported to user PCs (or IP-based STBs) over the aforementioned DOCSIS channels comprising MPEG (or other video codec such as H.264 or AVC) over IP over MPEG. That is, the higher layer MPEG- or other encoded content is encapsulated using an IP protocol, which then utilizes an MPEG packetization of the type well known in the art for delivery over the RF channels, such as via a multiplexed transport stream (MPTS). In this fashion, a parallel delivery mode to the normal broadcast delivery exists; i.e., delivery of video content both over traditional downstream QAMs to the tuner of the user's STB or other receiver device for viewing on the television, and also as packetized IP data over the DOCSIS QAMs to the user's PC or other IP-enabled device via the user's cable modem. Delivery in such packetized modes may be unicast, multicast, or broadcast. Delivery of the IP-encapsulated data may also occur over the non-DOCSIS QAMs, such as described below with respect toFIG. 1 c. - 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. - While the foregoing network architectures described herein may (and in fact do) carry packetized content (e.g., IP over MPEG for high-speed data or Internet TV, MPEG2 packet content over QAM for MPTS, etc.), they are often not optimized for such delivery. Hence, in accordance with another embodiment of the present disclosure, a “packet optimized” delivery network is used for carriage of the packet content (e.g., IPTV content).
FIG. 1c illustrates one exemplary implementation of such a network, in the context of a 3GPP IMS (IP Multimedia Subsystem) network with common control plane and service delivery platform (SDP), as described in co-owned, co-pending U.S. patent application Ser. No. 12/764,746, filed on Apr. 21, 2010 and entitled “METHODS AND APPARATUS FOR PACKETIZED CONTENT DELIVERY OVER A CONTENT DELIVERY NETWORK, published as U.S. Patent Application Publication No. 2011-0103374 on May 5, 2011 and incorporated herein by reference in its entirety. Such a network provides significant enhancements in terms of, inter alia, common control of different services, implementation and management of content delivery sessions according to unicast or multicast models, etc.; however, it is appreciated that the various features of the present disclosure are in no way limited to any of the foregoing architectures. - In the field of data and content delivery, there are ways to interpret and render EPG applications by implementing technologies such as HTML5 and JavaScript. Currently, content vendors implement partial rendering of HTML pages in the cloud, i.e., shared computing resources from outside the client device. Other providers use cloud-based rendering for only their guide application at a basic level. However, cloud rendering of an EPG application is inefficient.
- It would be desirable to implement the foregoing technology at the consumer device. However, the challenge of doing so is the high unit cost of the “consumer premises equipment” (CPE) due to bandwidth usage, processing power, and memory footprint. Typically, when a scripted application like an HTML5 navigator is used in a home with multiple set-top boxes (STBs) or other “consumer premises equipment,” a significant amount of inefficient data, such as uncompressed text, is delivered redundantly to each CPE. In addition, each CPE device must have the processing power and memory to fully interpret and render the scripted application in its entirety. The cost of redundant scripted applications running in a home are high with respect to bandwidth and other resources used, and with respect to the cost of the CPEs (processing power and memory footprint).
- For example, the partial “cloud” rendering of HTML pages does not rely on a home gateway, so the rendering cannot be done in the home. This requires a remarkable consumption of access network bandwidth because all graphics are rendered in the cloud to a basic level, and all key presses and line-draws are individualized and delivered to each CPE. This is a particular challenge and not an optimal solution for homes with many CPEs or client devices using the same scripted application.
- Nonetheless, these partial solutions still require significant burden on CPEs, including processing power and a remarkable consumption of bandwidth. It would be desirable to maintain the quality and rich user-end experience while making the rendering of scripted technologies more efficient and specialized.
- As described, a significant competitive challenge presently faced by operators of content delivery networks relates to managing and conserving bandwidth. Therefore, there is a need for new techniques that facilitate reducing the cost of redundant scripted applications running in a home or other locations receiving data to multiple CPEs. These new techniques should reduce the amount of bandwidth used as well as hardware requirements such as processing and memory power and memory while integrating with existing network infrastructures. Various embodiments of the methods and apparatus for providing efficient delivery of guide data are discussed herein.
- Referring now to
FIG. 2 , an exemplary embodiment of a network architecture 200 for efficiently providing guide data to a plurality of subscriber devices is illustrated. While described herein in the context of a hybridized (i.e., fiber and wireline conductor such as coaxial cable) extant network topology such as that ofFIGS. 1-1 c discussed above), the present disclosure is in no way so limited, and in fact may be utilized within various network or topology types. - As shown, the network 200 generally comprises a
gateway apparatus 202 in communication with a plurality of consumer devices (or CPE) 106. Thegateway apparatus 202 in the illustrated embodiment, communicates with a plurality of entities at a managednetwork 101 to provide content and/or data to theconsumer devices 106. - In one variant, the present disclosure enables the
gateway 202 to act as a proxy for theCPE 106 with respect to only the guide data. TheCPE 106 are, in this embodiment, configured to request and receive content directly from thenetwork 101 without utilizing thegateway 202. However, it is appreciated that in another variant thegateway 202 may additionally act as a proxy for theCPE 106 with respect to delivery of other content and/or data. For example, thegateway apparatus 202 may be similar to that discussed in co-owned, co-pending U.S. patent application Ser. No. 13/888,210 filed on May 6, 2013, published as U.S. Patent Application Publication No. 2013/0318560 on Nov. 28, 2013 and entitled “PREMISES GATEWAY APPARATUS AND METHODS FOR USE IN A CONTENT-BASED NETWORK”, which is incorporated herein by reference in its entirety. As discussed therein, a gateway apparatus (such as the gateway apparatus 202) is provided for unifying at least portions of the functionality of a set-top box (STB) or similar customer premises device, or a digital video recorder (DVR), with those of another device such as a cable modem. In one exemplary variant, the out-of-band signaling and communication functions typically necessary on STBs and DVRs are obviated in favor of the premises services gateway (PSG) device, which acts as a unified proxy for all inbound (downstream) and outbound (upstream) communications with the network. This approach is particularly useful to help reduce a cable provider's capital expenditures in manufacturing customer premises equipment (CPE), since the “proxied” DVR and STB no longer require an OOB tuner, and hence their cost is reduced and simplicity, space efficiency, and even reliability increased. - The
exemplary gateway 202 may also be advantageously utilized to consolidate in-band tuner resources as well, thereby further reducing capital costs associated with subscriber premises installations. In one variant, communication between the various entities (e.g., DVR and STB and PSG OOB proxy) is accomplished using IP-based communications. In another variant, client devices that support a cable RF tuner and an IP channel distributed over coaxial cable to the gateway are disclosed. These clients may only implement the IP channel, and therefore receive all video or data information over the IP network only. This reduces the cost of the client devices by removing the tuners and the cable modems from each device. - In other embodiments, one or both of the foregoing DVR and STB are further physically integrated within the
premises gateway 202, thereby allowing for a fully unified platform. This unified platform may use a common form factor (i.e., one box), a common coaxial interface to the parent network, common AC power supply, end even common operating system, storage devices, and middleware. Common control and user interface environments may also be utilized, such as where a single “universal” remote is provided to afford control of all STB, tuning and DVR functions. Thegateway 202 is also configured to interface with any number of other devices which may be present in the customer's premises, such as e.g., MoCA-based LANs, Ethernet LANs, WiFi LANs, PANs, or even personal media devices (PMDs). Thegateway 202 may also act as a router, provide network address translation (NAT) functions, and even act as a DHCP server if so configured. In another aspect, theexemplary gateway 202 embodiments disclosed herein further facilitate the aim of easier movement of content within a “trusted domain” or authorized service domain (ASD) by inter alia unifying multiple devices and functions within a single device. - In yet another embodiment, the
gateway 202 further communicates with a non-managed network and thereby enables content and/or data to be obtained from networks other than the managed network (for example content and/or data may be obtained via communication with 3rd party entities via the Internet). For example, thegateway apparatus 202 may be similar to that discussed in co-owned, co-pending U.S. patent application Ser. No. 12/582,619 filed on Oct. 20, 2009, entitled “GATEWAY APPARATUS AND METHODS FOR DITGITAL CONTENT DELIVERY IN A NETWORK”, and published as U.S. Patent Application Publication No. 2011/0093900 on Apr. 21, 2011, which is incorporated herein by reference in its entirety. As discussed therein, a gateway device (such as the gateway apparatus 202) is disposed at the headend of the network and is configured to request and receive internet content from one or more host servers via the Internet. The internet content is then processed and delivered to one or more client devices (such as the CPE 106). - Processing of internet content at the
gateway 202 may include de-encapsulating the received internet content from a first media file container format and subsequently re-encapsulating the internet content to a second media file container format which is compatible with one or more receiving devices. For example, content which is delivered from a host server may be encapsulated in e.g., MP4, if the receiving client device(s) are not capable of reading the MP4 files, the gateway device may re-encapsulate to e.g., MPEG-2 or other format that the receiving device is capable of reading. The gateway device may process received content automatically into various alternative encapsulation formats or, may encapsulate as needed to the format of the specific requesting device. The processed content may be stored for future use for transmission to other client devices requesting the same content in the particular new format. - Multiple alternative delivery paradigms are given for the delivery of internet content from the gateway device to the client devices. In one embodiment, internet content is delivered according to traditional broadcast mechanisms (e.g., linear delivery via downstream in-band QAM). According to this mechanism, the gateway device first establishes a set of rules for requesting certain internet content. The content is then pre-processed, and a broadcast schedule is created. Users may then view the internet content by tuning to the appropriate program channel (associated with one or more particular QAMs) at the time designated in the broadcast schedule.
- In another embodiment, internet content is delivered using VOD delivery mechanisms. According to this mechanism, a VOD session is established between the user's
CPE 106 and an internet content portal associated with the gateway device. At the portal, the user browses and selects internet content for viewing. The gateway device is then able to request selected internet content from a host server associated with the content, process the content as needed, and stream the (processed) content, via the pre-established session, to the user's CPE. In one variant, the same session is utilized for subsequent internet content requests. - Referring again to
FIG. 2 , although illustrated as asingle gateway 202 for each user premises, it is appreciated that more than onegateway 202 may be provided. For example, asingle gateway 202 may be configured to receive guide data from the network, render the guide data into one or more of the various simple views discussed herein, and transmit the simple view to eachCPE 106 in the premises. Alternatively, one or more of these tasks may be performed at aseparate gateway device 202. In a further variant, thegateway 202 may be located at a cloud ornetwork 101 location. In this manner asingle gateway apparatus 202 is able to render guide data for a plurality ofCPE 106 such as an entire service group. - The
gateway device 202 ofFIG. 2 is in communication with anetwork authentication entity 204, acontent server 206 and adata server 208 via the managednetwork 101. Theauthentication entity 204 is configured to authenticate thegateway 202 and/or subscriber registered thereto. In a further embodiment, theauthentication entity 204 is further configured to authenticate each of the devices (and/or a user thereof) which request access to the content and/or data provided from thenetwork 101. This may occur via a direct communication between theCPE 106 and theauthentication entity 204; alternatively, thegateway 202 may act as a proxy for the authentication of theCPE 106 and/or a user thereof. - In one embodiment, apparatus and methods for authorization and/or authentication may be of the type discussed in co-owned U.S. patent application Ser. No. 12/536,724 filed Aug. 6, 2009 and entitled “SYSTEM AND METHOD FOR MANAGING ENTITLEMENTS TO DATA OVER A NETWORK”, now issued as U.S. Pat. No. 8,341,242 on Dec. 25, 2012, which is incorporated herein by reference in its entirety. If the requesting device/user is not authorized and/or authenticated, content/data cannot be provided thereto.
- “Authentication” as used herein refers generally and without limitation to a determination that a device or user associated with the device (e.g., the
CPE 106 and/or gateway 202) is among the devices which may receive content/data, and/or that a user of the requesting device is a subscriber to thenetwork 101 or other entitled user. This may be accomplished by requiring the user to log into the network (such as by password and/or user identification, challenge question, etc.) or by comparing some other unique identifier (such as MAC ID, digital signature, SIM ID) to a list of authenticated device identifiers at a headend entity (such as the aforementioned transfer manager 206). Other mechanisms may be used as well, and multiple such mechanisms may be used in parallel or sequence as desired. - “Authorization” as used herein refers generally and without limitation to the determination that the requested content/data is within the set or plurality of content/data the user (e.g., subscriber) or device may receive, and/or the proposed use of the content/data is within the allowed use set for that subscriber. For example, authorization may be used to refer to whether the requested content/data is within the subscription plan (e.g., level or tier) for the requesting user. Other security or rights-related checks may be performed as well.
- The
content server 206 in one variant is similar to that discussed above with respect to thecontent sources 103 ofFIG. 1 . Thecontent server 206 stores and distributes content (such as content programming, or media content) via thenetwork 101 for display at a consumer device (e.g., CPE 106). Thecontent server 206 additionally provides metadata regarding the content that is to be delivered to thedata server 208. - The
data server 208 is configured to store and distribute information regarding the content that is to be delivered via thenetwork 101. Thedata server 208 for example provides metadata from all content set to be delivered or broadcast which is needed to derive or generate an electronic program guide (EPG). In one further variant, thedata server 208 provides data which is specific to aparticular gateway 202. In other words, what is sent is only that which is needed by theparticular gateway 202 to render the guide having e.g., a channel lineup which is specific for a user of aparticular CPE 106, targeted to a geographic area associated with thegateway 202 and/ordevices 106, specific to a subscriber type, etc. - As indicated in
FIG. 2 , a full or complete data set is provided from thedata server 208 to thegateway apparatus 202. The full data set may be provided periodically, with minor updates being additionally provided at a smaller interval. The data may be pushed from thedata server 208 to thegateway 202; or alternatively, thegateway 202 may actively pull the information therefrom. The full or complete data set comprises all of the information that is required by thegateway 202 to render the EPG. For example, metadata regarding the content, scheduling information, and graphic user interface (GUI) information needed from the headend are provided to thegateway 202. - Guide data may include any information contained in the end-user presentation. Typical examples include programming information such as dates, times, channels, program names, descriptions, user ratings, actor listings, thumbnails, pricing of restricted content. Advertisements such as additional promotions or service plans being offered by vendor, relevant third-party ads, TV show or movie preview images and videos may be included with the guide data. Certificates and other authentication data as mentioned previously may also be transmitted. Applications and scripts (e.g., Java applets, JavaScript code, HTML5 code) necessary to organize or display the above information may also be included.
- The
gateway 202 ofFIG. 2 utilizes the complete data set to render an EPG on behalf of theCPE 106. As noted above, the present disclosure utilizes the gateway 202 (including e.g., the content and data server(s), headend, and other network devices) to deliver rendered guide data in a simple view toCPE 106. This feature is intended to replace prior art systems wherein, for example, logic implemented in JavaScript software is executed at least partially on the CPE to calculate and render guide information that the end user sees. In other words, when a guide is showing on a CPE (prior to the utilization of thegateway 202 as discussed herein), the CPE is executing JavaScript to process and cause display of the appropriate information and graphics. However, according to the present disclosure, rather than this occurring at theCPE 106 rendering and processing occur at thegateway 202. - Aligning with the aim of reducing processing and bandwidth, the frequency with which guide data is received at the
gateway 202, transmitted to theCPE 106, and updated at the gateway 202 (from the network) may vary depending on availability of processing and bandwidth resources within the network. In addition or as an alternative, guide data may be updated on a regular schedule, e.g., hourly, daily, weekly, or based on an event, e.g., user request (limited or unlimited),gateway 202 orCPE 106 power-on, vendor decision, conditional events. - As discussed elsewhere herein, various mechanisms may be utilized to provide the simple views distributed to the
CPE 106 from thegateway 202. Each of the mechanisms for providing simple views utilizes fewer network andCPE 106 resources thereby addressing the salient deficiencies of prior art methods. The simple view which is provided to theCPE 106 may include a picture, a simple pointer, or a video of the guide data. Each of the foregoing having been processed at the gateway so that they may be merely presented in a fixed format at the CPE 106 (and/or display device associated therewith). When a user at theCPE 106 enters commands to navigate the guide, thegateway 202 renders the appropriate EPG changes and provides updated simple views to theCPE 106. - As used herein, the simple view utilizing a video stream refers to the delivery of a fixed video (e.g., MPEG, MP4) that does not require further rendering of JavaScript or HTML5 at the
CPE 106. Under this approach, a plurality of video streams are generated at thegateway 202 and delivered to theCPE 106. The user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, the CPE 106 (and/or display device associated therewith) is merely displaying a video representative of the interaction. Using video allows animated elements on screen, providing the user with a rich experience that most have seen before. Having animated elements also gives the appearance that the commands inputted by the user are making local changes, e.g., moving a selection from one box to another, rather than changes to the entire screen. In the above example, a new navigation command triggers a request to thegateway 202 to produce or deliver a new video stream with an updated box selection. Hence, using this approach, rendering of dynamic elements is no longer necessary by theCPE 106. - As used herein, the simple view utilizing a still picture (e.g., PNG, JPG, TIFF) refers to the delivery of one or more pictures representative of the EPG and interaction therewith. In much the same manner as the video stream simple view, a plurality of still pictures are generated at the
gateway 202 and delivered to theCPE 106 for display thereat (or at a display device in communication therewith). The user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, in this embodiment the CPE 106 (and/or display device associated therewith) is merely displaying one or more pictures representative of the interaction. Each input command by the user triggers thegateway 202 to provide an updated picture (view of the screen). This approach is ideal for low-end CPEs that cannot handle smoothly processing pre-rendered video streams or executing code (discussed below). - As used herein, the simple view utilizing a simple pointer (such as HTML or other immediately renderable formats) refers to the delivery of a set of text that renders a webpage representative of the EPG and interaction therewith. Examples of the other renderable formats include but are not limited to <canvas> tag commands, SVG commands, DirectFB commands, or WebGL commands. Some of these formats may require more complex rendering, but their availability makes this approach more flexible than the other two. In one specific embodiment, HTML5 supplemented by JavaScript or other languages such as CSS3 is used to create dynamic content at the CPE 106 (or display device). In much the same manner as the video stream simple view, a plurality of pointers are generated at the
gateway 202 and delivered to theCPE 106 for display thereat (or at a display device in communication therewith). The user of the CPE 106 (or display device associated therewith) views and interacts with the guide as if the user were controlling the dynamic changes happening on the screen; however, in this embodiment the CPE 106 (and/or display device associated therewith) is merely displaying one or more webpages representative of the interaction. Each input command by the user triggers thegateway 202 to provide an updated pointer. - The
gateway 202 determines which of the foregoing approaches to utilize for providing the simple view to theCPE 106 based on e.g., CPE capabilities (processing power, memory, accepted bandwidth load), gateway capabilities (processing power, memory, accepted bandwidth load), cloud resources, user preference, data collected from vendor or user experience, and bandwidth availability (time of day, user demand, etc.). Alternatively, a user at thegateway 202 and/orCPE 106 may manually select a simple view technique (e.g., still picture, video, pointers, or other). - As noted above, a video stream simple view presentation is more resource-intensive than a still picture simple view presentation. Hence, the
gateway 202 may elect one or the other based on what is known about the receiving device (e.g.,CPE 106 and/or display apparatus). For example, to reduce client-side hardware costs, an end user may opt to use a low-end CPE 106 that lacks modern processing and memory power. In this case, a complex code combined with a video stream would be unfavorable, therefore the still picture variant is selected. - The aforementioned exemplary architecture of
FIG. 2 is used to increase the efficiency of delivering guide data toclient devices 106. This configuration works on any technology deployment that involves a gateway apparatus and one or more client devices that rely on that gateway for content or connectivity. However, it would be recognized by those of ordinary skill given this disclosure that other approaches and architectures may be substituted with equal success. -
FIGS. 3-3 c illustrate exemplary methods for use with the apparatus and systems disclosed in the network 200 ofFIG. 2 . -
FIG. 3 illustrates a generalized method for, efficiently providing guide data in accordance with the present disclosure. - As shown, per
step 302, authentication is performed. As discussed above, the authentication may comprise an authentication of the gateway 202 (and/or a user thereof) to anetwork authentication entity 204, and/or authentication of the CPE 106 (and/or a user there) to thenetwork authentication entity 204. TheCPE 106 or user thereof may authenticate itself to thenetwork 101 via thegateway 202 in one embodiment. In a further variant, theCPE 106 and/or a user thereof may authenticate itself to thegateway 202 to establish a so-called “trusted network”. - Authentication and/or authorization may occur in a myriad of ways. Examples include but are not limited to peer-to-peer authentication between devices (e.g., between CPE and tablet or other user-end device, CPE and gateway, gateway and server, server and other cloud devices), user authentication (e.g., form-based username and password entry, other forms of requiring credentials), authorization authentication (e.g., billing account maintained by content vendor, address, time of day, restricted content based on geographic area and/or service plan), entity authentication (e.g., digital certificate, MAC address, session cookies), infrastructure authentication (e.g., by IP address), chained authentication, and HTTP. Multi-factor authentication using more than one authentication procedure may also be used. Examples of secure authentication technologies used include but are not limited to Secured Sockets Layer (SSL), Secure Shell (SSH, OpenSSH), Transport Layer Security (TLS), and OAuth (2.0 or otherwise). Any third-party server outside of the household would use a standardized API.
- Additionally, the apparatus and methods for authorization and/or authentication may be of the type discussed in previously referenced co-owned U.S. patent application Ser. No. 12/536,724 filed Aug. 6, 2009 and entitled “SYSTEM AND METHOD FOR MANAGING ENTITLEMENTS TO DATA OVER A NETWORK”, now issued as U.S. Pat. No. 8,341,242 on Dec. 25, 2012, which is incorporated herein by reference in its entirety.
- Once the devices are authenticated/authorized, per step 304 a complete guide data set is received and stored at the
gateway 202. As discussed above, the complete data set comprises all the data which is needed by thegateway 202 to render an electronic program guide (EPG). For example, metadata including actors, broadcast times, channel identifiers, program identifiers, etc. are provided. A complete data set may be provided to thegateway 202 from adata server 208 periodically upon a push/pull from thegateway 202 ordata server 208 as noted above. Communication between theguide data server 208 and thegateway 202 may utilize in-band and/or out-of-band frequency of the existing content/data delivery network; such as via, inter cilia, QAM carousel, DSG carousel, multicast, or unicast. - As noted, the gateway is fed with a completed set of information, thereby reducing or removing a need for the
gateway 202 to subsequently request individualized or narrow views of guide content from the network. However, if it is later determined that the received guide data is insufficient, thegateway 202 may request and retrieve additional guide data and/or updates to the guide data. - Per
step 306, thegateway 202 generates one or more simple views of the EPG. As noted above, there are various simple views which may be utilized by theCPE 106. For example, the simple view may comprise static pictures, video clips, or pointers. Thegateway 202 generates these views using information obtained from the complete guide data set. In the instance a still picture simple view is being generated, thegateway 202 uses the data to generate one or more pictures representative of e.g., a first screen of the EPG. Similarly, when the video or pointers simple view is being generated, thegateway 202 uses the data to generate one or more videos or pointers representative of e.g., a first screen of the EPG. - In one embodiment, the
gateway 202 is made aware of the capabilities of all of theCPE 106 in communication therewith (such as during a registration process) and based on this information thegateway 202 runs a computer program configured to determine which simple view(s) to create. For example, thegateway 202 may select a single simple view which all the devices are capable of displaying, or may generate a different type of simple view for each of the registered devices. Alternatively, thegateway 202 may generate all of the simple view alternatives and distribute them as needed. In another embodiment, the user of theCPE 106 and/orgateway 202 may determine the one or more simple views to be generated and distributed. - Next, per
step 308, the generated simple views are provided to theCPE 106 for display. Thegateway 202 may be configured to provide only the view which is in an appropriate format for a given device to that device. Alternatively, all of the views may be provided to each of the devices in communication with thegateway 202. Actual display of the data provided as a simple view occurs at a display apparatus in communication with theCPE 106. - After a period of time, a user at the
CPE 106 interacts with the program guide and enters a command. The command is received at thegateway 202 atstep 310 via e.g., any number of communication mechanisms (such as e.g., Bluetooth, wireless, MoCA, wired connections, etc.). The user input commands may be entered via a separate controller device (e.g., remote control) or physical button inputs, e.g., navigation arrows. In one variant, the user commands comprise very basic or low-level commands; examples include navigation buttons, browsing menus, and selecting program entries. - In response to the commands, per step 312, the
gateway 202 provides the necessary updated simple views to theCPE 106. - It is important to note that according to the embodiment of
FIG. 3 , it isgateway 202, and not theCPE 106, that bears the computation load of interpreting JavaScript (or similar supplement for HTML5) and executing resource intensive operations to produce a simple view of the guide data. This shifts the processing, bandwidth, and memory resources away from the client devices and to thegateway 202, reducing the costs of theclient devices 106. - As discussed above, at
steps gateway 202 may generate and provide only that information which is necessary for theCPE 106 to display the first EPG screen (i.e., a menu screen), then await additional user commands. However, in another variant, thegateway 202 may generate and pre-position all of the information necessary to display any next logical command which might be entered by the CPE for the various simple views. In other words, thegateway 202 may run at least one computer program configured to determine all of the possible commands which may be received at a given EPG screen. Thegateway 202 then uses this information to derive all of the next screens the user would see based on those determined commands in the appropriate simple views. When the updated screen is delivered, thegatway 202 may run the program again to generate all possible next screens given the current view, and so forth. Thegateway 202 may either store the simple views for all possible user commands for delivery per step 312, or may send them to theCPE 106 at the same time as the original simple view of the first screen is transmitted to theCPE 106. According to this second model, the user commands are not transmitted to thegateway 202 but rather processed at theCPE 106 for a determination of which simple view updated screen to display. - The updated simple views may be predicted and provided to the
CPE 106 in advance of the user's actual input of a command. For example, moving a selection cursor or box to an “OK” or “Cancel” selection increases the likelihood that the user will select that particular choice. In that case, a pre-rendered simple view containing what would show in the following screen is identified and/or generated and delivered to theCPE 106. This improves the user experience by reducing wait times, increasing smoothness, reducing choppiness of animation due to any particularly complex gateway-side calculations, etc. Predictions require additional processing and bandwidth capabilities at thegateway 202. - In some embodiments, the
gateway 202 is further configured to remember where the user left off the last time the guide was displayed. Upon returning to the guide, theCPE 106 displays the same screen as before. This introduces a further level of seamlessness and the appearance that the user is controlling directly what is displayed in front of the user rather than being shown a pre-rendered graphic. -
FIGS. 3a-3c discloses various methods for providing simple views to the client. Each of the illustrated methods replace what would normally be JavaScript-supported HTML5 guides rendered and displayed by theCPE 106, with pre-rendered (i.e., rendered at the gateway 202) replacement video, simple HTML, or picture. These methods thereby reduce the redundant bandwidth used as well as client device costs since less processing power and memory are needed. - According to the
method 319 ofFIG. 3a , apowerful client device 106 containing a transcoder processes and causes display of a video stream that contains the program guide. In this manner, an “animated” guide may be provided; the animated guide is more aesthetically pleasing for the user than the other simple views discussed herein. To accomplish this method, as shown, perstep 320, a plurality of video streams are generated at thegateway 202 and provided to theCPE 106 for display (step 322). - As noted above, the video streams which are generated at
step 320 may comprise only those necessary for the display device associated to theclient device 106 to display an initial menu screen. Alternatively, thegateway 202 may additionally derive the all video streams which might be necessary based on all possible user commands. These are then stored at thegateway 202 or provided to theCPE 106 in anticipation of a command. - Referring again to the method of
FIG. 3a , per step 324 a command is received from a user interacting with the guide. In response to the command, perstep 326, the gateway generates a new stream which corresponds to the updated view and provides the new stream to the device 106 (step 328). Alternatively, as noted above, thegateway 202 may pre-generate all update streams which may be needed by a user when interacting with the guide (e.g., all those which are expected to be needed based on a current view). These may be pre-positioned at theCPE 106; in which case, the request (step 326) is not sent to thegateway 202. Alternatively, thegateway 202 may simply store the pre-generated streams and provide them in response to the command atstep 328. -
FIG. 3b illustrates amethod 329 for providing guide data as still pictures fordevices 106 which have less processing power and/or memory than those discussed above with respect toFIG. 3a . This would result in slightly higher in-home bandwidth usage than the simple HTML, but has the advantage of being capable of being used with much lower-end boxes. - As shown, per
step 330, a plurality of images are generated at thegateway 202 and provided to theCPE 106 for display (step 332). As noted above, the still images which are generated atstep 330 may comprise only those necessary for the display device associated to theclient device 106 to display an initial menu screen. Alternatively, thegateway 202 may additionally derive the all images which might be necessary based on all possible user commands. These are then stored at thegateway 202 or provided to theCPE 106 in anticipation of a command. - Next, at step 334 a command is received from a user interacting with the guide. In response to the command, per
step 336, the gateway generates a new image which corresponds to the updated view and provides the new image to the device 106 (step 338). Alternatively, as noted above, thegateway 202 may pre-generate all update images which may be needed by a user when interacting with the guide (e.g., all of the images which might be necessary given the current view). These may be pre-positioned at theCPE 106; in which case, the request (step 336) is not sent to thegateway 202. Alternatively, thegateway 202 may simply store the pre-generated images and provide them in response to the command atstep 328. - Under a
third method 339, the guide data is rendered into pointers for simple HTML. In the instance thegateways 202 and/or servers cannot generate a video stream, and/or theCPE 106 cannot transcode a video stream, the simple HTML is calculated after JavaScript operations are complete. This resultant pointer (e.g., HTML) is sent to a CPE and rendered without the overhead of the JavaScript interpretation. Examples of other potentially formats that are immediately renderable by theCPE 106 include <canvas> tag commands, SVG commands, DirectFB commands, or WebGL commands, which may be more complex than simple HTML. - Per
step 340, a plurality of pointers are generated at thegateway 202 and provided to theCPE 106 for display (step 342). Thegateway 202 may generate only those pointers which are necessary for the display device associated to theclient device 106 to display an initial menu screen. Alternatively, thegateway 202 may derive the all pointers which might be necessary based on all possible user commands. These are then stored at thegateway 202 or provided to theCPE 106 in anticipation of a command. Next, per step 344 a command is received from a user interacting with the guide. In response to the command, perstep 346, thegateway 202 generates a new pointer which corresponds to the updated view (and/or identifies a pre-generated pointer) and provides the new pointer to the device 106 (step 348). - The foregoing methods of
FIGS. 3-3 c utilize agateway 202 apparatus and aclient device 106, each of which will be discussed in detail below. - Referring now to
FIG. 4 , an exemplary client device orCPE 106 is illustrated. As shown, theCPE 106 generally comprises anetwork interface 402,processor 404, astorage device 408, and a number ofbackend interfaces 406 for communication between theCPE 106 and one or more external devices (such as other devices in the home network, a display apparatus, and/or a controller). In one variant, theCPE 106 comprises an IP-enabled device. Additionally, as noted above in one embodiment a single user premise may comprise more than oneCPE 106 each in communication with thesame gateway 202. It will be appreciated that while described somewhat generically herein, the individual client devices may both (i) be heterogeneous or homogeneous in nature/capability; and (ii) be integrated into or make use of extant devices/form factors such as smartphones, tablets, phablets, laptops, handhelds, gaming devices, wireless routers, etc. - The
network interface 402 enables theCPE 106 to communicate to thenetwork 101. For example, thenetwork interface 402 may comprise an RF tuner capable of receiving programming content from e.g., thecontent server 206. Additionally, data may be transmitted to theCPE 106 via thenetwork interface 402. In the event thegateway 202 functions as a content delivery proxy for theCPE 106, however, theCPE 106 may not comprise anetwork interface 402 but rather content is received via abackend interface 406 with thegateway 202. - In the illustrated embodiment, the
processor 404 is configured to execute at least adisplay processing application 410 and acommand request application 412. - The
display processing application 410 comprises computer instructions which enable theCPE 106 to display the received simple view of the guide data (e.g., as still images, video segments, or pointers). Theprocessing application 410 is an optional application which may be omitted from theCPE 106 in the event display processing occurs at a display device other than theCPE 106 but in communication therewith. - The
command request application 412 enables theCPE 106 to, in response to receiving commands from a user, issue a request to thegateway 202 for an updated view. The updated view may comprise updated still images, updated video streams, or updated pointers. As noted above, thegateway 202 in response to the request, generates the updated views. Alternatively, as also described in greater detail above, thegateway 202 may pre-generate all of the updated views which may be anticipated to be needed based on the current view. In this instance, upon receiving theCPE 106 command request, thegateway 202 simply identifies the necessary updated (based on the issued request/command). - In a further embodiment, the
CPE 106 rather than the gateway may store the pre-generated views. According to this model, once these are generated at thegateway 202 they are simply passed to theCPE 106 for storage thereat. Upon user request, theCPE 106 identifies the appropriate updated view. According to this embodiment, thecommand request application 412 is optional. - Via the backend interfaces 406, the
CPE 106 is connected to thegateway 202, as well as any number of other external devices and/or home networked devices (e.g.,other CPE 106, a remote controller, a display apparatus, etc.). Exemplary interfaces useful with theCPE 106 include but are not limited to coaxial cable (including Multimedia over Coax (MoCA)), Wi-Fi, infrared, USB, Ethernet, Bluetooth, etc. - The
storage device 408 comprises a data storage entity configured to store e.g., the guide data and any updates thereto. Thestorage device 408 data and may comprise any one of a number of types of memory (e.g., RAM, SRAM, DRAM, magnetic hard-disk drives (HDD), solid-state drives (SSD), hybrid SSD drives having components associated with HDD and SSD, etc.). - Referring now to
FIG. 5 , anexemplary gateway apparatus 202 is shown. Thegateway 202 generally includes anetwork interface 502, aprocessor 504, astorage apparatus 506, and a number ofbackend interfaces 508 for communication to e.g., theCPE 106. In one variant, as noted above, a single user premise may comprise more than onegateway 202 in communication with one ormore CPE 106. As noted above, the present disclosure enables thegateway 202 to act as a proxy for theCPE 106 with respect to only the guide data. TheCPE 106 are, in this embodiment, configured to request and receive content directly from thenetwork 101 without utilizing thegateway 202. - It is appreciated that in another variant the
gateway 202 may additionally act as a proxy for theCPE 106 with respect to delivery of other content and/or data as discussed in previously referenced co-owned, co-pending U.S. patent application Ser. No. 13/888,210 (published as U.S. Patent Application Publication No. 2013/0318560). - In yet another embodiment, the
gateway 202 further communicates with a non-managed network and thereby enables content and/or data to be obtained from networks other than the managed network (for example content and/or data may be obtained via communication with 3rd party entities via the Internet), as discussed in previously referenced co-owned, co-pending U.S. patent application Ser. No. 12/582,619 (published as U.S. Patent Application Publication No. 2011/0093900). - Referring again to
FIG. 5 , thenetwork interface 502 enables thegateway 202 to communicate to thenetwork 101. For example, thenetwork interface 502 may comprise an RF tuner capable of receiving programming content from e.g., thecontent server 206. Additionally, data may be transmitted to thegateway 202 via thenetwork interface 402 including data from thedata server 208. In the event thegateway 202 functions as a content delivery proxy for theCPE 106, content and/or data received from thecontent server 204 is then delivered to theCPE 106. - In the illustrated embodiment, the
processor 504 is configured to execute at least a simpleview generation application 510, acommand response application 512, and anupdate processing application 514. - The simple
view generation application 510 comprises a plurality of instructions which when executed enable the guide to be rendered (on behalf of the CPE 106). As discussed in detail elsewhere herein, thegateway 202 may render the guide in any one of a number of simple formats, for example, still pictures, video streams, or pointers. In one embodiment, the simpleview generation application 510 uses data received from thedata server 208 to generate one or more simple views of the initial guide screens. In addition, the simpleview generation application 510 may be utilized to pre-generate all of the simple view screens that may be necessary given the current view. - Additionally, the simple
view generation application 510 may be configured to generate all of the simple view types discussed herein. Alternatively, it may determine which one or ones of the views are necessary based on the configuration of theCPE 106 in communication therewith. Given the three exemplary approaches of rendering simple views discussed herein, the least complex approach is to send still pictures to be rendered by theCPE 106. A morecapable CPE 106, on the other hand, may be able to display simple views rendered as video streams and/or pointers. - The
command response application 512 comprises a computer application configured to enable thegateway 202 to in response to receiving various user commands (via communication with the CPE 106) generate updated simple views. Specifically, information contained in the request (and generated from the initial user command) is used to effect the current view, thereby necessitating an updated view. In another variant, information from the request is used to identify one of a plurality of previously generated updated views. - The
update processing application 514 comprises a computer application configured to enable thegateway 202 to generate a plurality of simple view updates to an electronic program guide. That is, theupdate processing application 514 utilizes information received in a request (as processed from an initial user command) to determine changes that are needed to the current screen. Theupdate processing application 514 in conjunction with the simpleview generation application 510 then generates updated views. Theupdate processing 514 may occur a priori (e.g., before aCPE 106 request is received) or on the fly (e.g., generated only as needed). - In a further embodiment, the
gateway 202 may be configured to establish and authenticate devices within a trusted domain. To this end, an authentication application (not shown) authenticatesCPE 106 such as via theauthentication server 204 or other headend entity. - Via the backend interfaces 506, the
gateway 202 communicates to theCPE 106, as well as any number of other external devices and/or home networked devices (e.g.,other gateway 202, etc.). Exemplary interfaces useful with thegateway 202 include but are not limited to coaxial cable (including Multimedia over Coax (MoCA)), Wi-Fi, infrared, USB, Ethernet, Bluetooth, etc. - The
storage device 508 comprises a data storage entity configured to store e.g., the guide data and any updates thereto. Thestorage device 508 data and may comprise any one of a number of types of memory (e.g., RAM, SRAM, DRAM, magnetic hard-disk drives (HDD), solid-state drives (SSD), hybrid SSD drives having components associated with HDD and SSD, etc.). - It will be recognized that while certain aspects of the disclosure are described in terms of a specific sequence of steps of a method, these descriptions are only illustrative of the broader methods of the disclosure, 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 disclosure and claims herein.
- It will be further appreciated that while certain steps and aspects of the various methods and apparatus described herein may be performed by a human being, the disclosed aspects and individual methods and apparatus are generally computerized/computer-implemented. Computerized apparatus and methods are necessary to fully implement these aspects for any number of reasons including, without limitation, commercial viability, practicality, and even feasibility (i.e., certain steps/processes simply cannot be performed by a human being in any viable fashion).
- While the above detailed description has shown, described, and pointed out novel features of the disclosure 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 disclosure. The foregoing description is of the best mode presently contemplated of carrying out the disclosure. This description is in no way meant to be limiting, but rather should be taken as illustrative of the general principles of the disclosure. The scope of the disclosure should be determined with reference to the claims.
Claims (20)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/541,035 US9948962B2 (en) | 2014-11-13 | 2014-11-13 | Apparatus and methods for efficient delivery of electronic program guide data |
US15/954,478 US10567814B2 (en) | 2014-11-13 | 2018-04-16 | Apparatus and methods for efficient delivery of electronic program guide data |
US16/792,089 US11212561B2 (en) | 2014-11-13 | 2020-02-14 | Apparatus and methods for efficient delivery of electronic program guide data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/541,035 US9948962B2 (en) | 2014-11-13 | 2014-11-13 | Apparatus and methods for efficient delivery of electronic program guide data |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/954,478 Continuation US10567814B2 (en) | 2014-11-13 | 2018-04-16 | Apparatus and methods for efficient delivery of electronic program guide data |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160142743A1 true US20160142743A1 (en) | 2016-05-19 |
US9948962B2 US9948962B2 (en) | 2018-04-17 |
Family
ID=55962904
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/541,035 Active 2035-05-21 US9948962B2 (en) | 2014-11-13 | 2014-11-13 | Apparatus and methods for efficient delivery of electronic program guide data |
US15/954,478 Active US10567814B2 (en) | 2014-11-13 | 2018-04-16 | Apparatus and methods for efficient delivery of electronic program guide data |
US16/792,089 Active 2035-03-02 US11212561B2 (en) | 2014-11-13 | 2020-02-14 | Apparatus and methods for efficient delivery of electronic program guide data |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/954,478 Active US10567814B2 (en) | 2014-11-13 | 2018-04-16 | Apparatus and methods for efficient delivery of electronic program guide data |
US16/792,089 Active 2035-03-02 US11212561B2 (en) | 2014-11-13 | 2020-02-14 | Apparatus and methods for efficient delivery of electronic program guide data |
Country Status (1)
Country | Link |
---|---|
US (3) | US9948962B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160337455A1 (en) * | 2015-05-13 | 2016-11-17 | Arris Enterprises, Inc. | Content streaming apparatus for transferring a streaming session to another apparatus |
US20170075516A1 (en) * | 2015-09-11 | 2017-03-16 | Lg Electronics Inc. | Mobile terminal and controlling method thereof |
US10397655B2 (en) * | 2017-07-12 | 2019-08-27 | Verizon Patent And Licensing Inc. | Content onboarding and custom channel lineup provisioning |
US11431698B2 (en) * | 2018-10-31 | 2022-08-30 | NBA Properties, Inc. | Partner integration network |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9948962B2 (en) | 2014-11-13 | 2018-04-17 | Time Warner Cable Enterprises Llc | Apparatus and methods for efficient delivery of electronic program guide data |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100257561A1 (en) * | 2005-09-22 | 2010-10-07 | Nds Limited | Surfer's Paradise |
US8230343B2 (en) * | 1999-03-29 | 2012-07-24 | Digitalsmiths, Inc. | Audio and video program recording, editing and playback systems using metadata |
Family Cites Families (301)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US769431A (en) * | 1898-03-29 | 1904-09-06 | Arthur R Wilfley | Ore-concentrator. |
US4203130A (en) | 1977-01-11 | 1980-05-13 | Dial-A-Channel, Inc. | Information displaying system |
US4264925A (en) | 1979-08-13 | 1981-04-28 | Michael J. Freeman | Interactive cable television system |
US4862268A (en) | 1980-03-31 | 1989-08-29 | General Instrument Corporation | Addressable cable television control system with video format data transmission |
US4381522A (en) | 1980-12-01 | 1983-04-26 | Adams-Russell Co., Inc. | Selective viewing |
US4965825A (en) | 1981-11-03 | 1990-10-23 | The Personalized Mass Media Corporation | Signal processing apparatus and methods |
US5508815A (en) | 1981-12-14 | 1996-04-16 | Smart Vcr Limited Partnership | Schedule display system for video recorder programming |
US4963994A (en) | 1981-12-14 | 1990-10-16 | Levine Michael R | VCR programmer |
US4461205A (en) | 1982-07-30 | 1984-07-24 | Allis-Chalmers Corp. | Combination lighting and filtering unit for a clean room |
US4641205A (en) | 1984-03-05 | 1987-02-03 | Rca Corporation | Television system scheduler with on-screen menu type programming prompting apparatus |
US4602279A (en) | 1984-03-21 | 1986-07-22 | Actv, Inc. | Method for providing targeted profile interactive CATV displays |
DE3576267D1 (en) | 1984-11-29 | 1990-04-05 | Sony Corp | TELEVISION SIGNAL RECEIVER. |
US4677501A (en) | 1985-01-14 | 1987-06-30 | Dictaphone Corporation | Method and apparatus for displaying indications of instructions in previously recorded messages |
US4751578A (en) | 1985-05-28 | 1988-06-14 | David P. Gordon | System for electronically controllably viewing on a television updateable television programming information |
US4706121B1 (en) | 1985-07-12 | 1993-12-14 | Insight Telecast, Inc. | Tv schedule system and process |
EP0243312B1 (en) | 1986-04-18 | 1995-07-19 | Nagra Plus S.A. | Decoder for a pay television system |
US5550579A (en) | 1986-05-14 | 1996-08-27 | Radio Telecom & Technology, Inc. | Two-way cable tv conversion system |
US4890321A (en) | 1986-07-08 | 1989-12-26 | Scientific Atlanta, Inc. | Communications format for a subscription television system permitting transmission of individual text messages to subscribers |
JPH0710091B2 (en) | 1986-10-24 | 1995-02-01 | ソニー株式会社 | Electronics |
US4930158A (en) | 1987-09-02 | 1990-05-29 | Vogel Peter S | Selective video playing system |
FR2620889B1 (en) | 1987-09-23 | 1994-08-05 | Auber Olivier | INTERACTIVE VIDEO COMMUNICATION SYSTEM |
JPH01246978A (en) | 1988-03-28 | 1989-10-02 | Toshiba Corp | Picture information receiving and displaying device |
US5003384A (en) | 1988-04-01 | 1991-03-26 | Scientific Atlanta, Inc. | Set-top interface transactions in an impulse pay per view television system |
US5371795A (en) | 1988-05-04 | 1994-12-06 | Right Hemisphere Pty., Ltd. | Automatic censorship of video programs |
US4977455B1 (en) | 1988-07-15 | 1993-04-13 | System and process for vcr scheduling | |
JP3002471B2 (en) | 1988-08-19 | 2000-01-24 | 株式会社日立製作所 | Program distribution device |
WO1990003706A1 (en) | 1988-09-30 | 1990-04-05 | Right Hemisphere Pty. Limited | Television programme distribution system |
US5307173A (en) | 1988-12-23 | 1994-04-26 | Gemstar Development Corporation | Apparatus and method using compressed codes for television program record scheduling |
US4991011A (en) | 1988-12-23 | 1991-02-05 | Scientific-Atlanta, Inc. | Interactive television terminal with programmable background audio or video |
US5532732A (en) | 1988-12-23 | 1996-07-02 | Gemstar Development Corporation | Apparatus and methods for using compressed codes for monitoring television program viewing |
CA2005070C (en) | 1988-12-23 | 1999-04-27 | Henry C. Yuen | Apparatus and method for using encoded video recorder/player timer preprogramming information |
JP2840755B2 (en) | 1989-04-27 | 1998-12-24 | ソニー株式会社 | Program sending device |
JPH02288571A (en) | 1989-04-28 | 1990-11-28 | Pioneer Electron Corp | Catv system and its reception terminal equipment |
US5151782A (en) | 1989-05-17 | 1992-09-29 | Reiss Media Enterprises | Control system for satellite delivered pay-per-view television system |
WO1990015507A1 (en) | 1989-06-01 | 1990-12-13 | Right Hemisphere Pty. Limited | Television program selection |
US5253066C1 (en) | 1989-06-01 | 2001-05-22 | United Video Properties Inc | Tv recording and viewing control system |
US5047867A (en) | 1989-06-08 | 1991-09-10 | North American Philips Corporation | Interface for a TV-VCR system |
US5038211A (en) | 1989-07-05 | 1991-08-06 | The Superguide Corporation | Method and apparatus for transmitting and receiving television program information |
EP1335594A3 (en) | 1989-10-30 | 2003-09-10 | Starsight Telecast, Inc. | A system for unattended recording of television programs |
US5353121A (en) | 1989-10-30 | 1994-10-04 | Starsight Telecast, Inc. | Television schedule system |
US5361173A (en) | 1990-01-21 | 1994-11-01 | Sony Corporation | Devices for controlling recording and/or reproducing apparatus utilizing recorded management data and interactive information input apparatus for an electronic device |
US5808608A (en) | 1990-09-10 | 1998-09-15 | Starsight Telecast, Inc. | Background television schedule system |
US5293357A (en) | 1990-09-10 | 1994-03-08 | The Superguide Corporation | Method and apparatus for controlling a television program recording device |
CA2499757C (en) | 1990-09-10 | 2006-05-02 | Starsight Telecast, Inc. | User interface for television schedule system |
US5619274A (en) | 1990-09-10 | 1997-04-08 | Starsight Telecast, Inc. | Television schedule information transmission and utilization system and process |
US5412720A (en) | 1990-09-28 | 1995-05-02 | Ictv, Inc. | Interactive home information system |
US5220420A (en) | 1990-09-28 | 1993-06-15 | Inteletext Systems, Inc. | Interactive home information system for distributing compressed television programming |
US5093718A (en) | 1990-09-28 | 1992-03-03 | Inteletext Systems, Inc. | Interactive home information system |
US5245420A (en) | 1990-11-27 | 1993-09-14 | Scientific-Atlanta, Inc. | CATV pay per view interdiction system |
US5172413A (en) | 1990-12-20 | 1992-12-15 | Sasktel | Secure hierarchial video delivery system and method |
US5168353A (en) | 1990-12-21 | 1992-12-01 | Gte Laboratories Incorporated | Video distribution system allowing viewer access to time staggered indentical prerecorded programs |
US5285272A (en) | 1991-02-26 | 1994-02-08 | Sasktel | Video store and forward on demand apparatus and method |
JP2909239B2 (en) | 1991-03-27 | 1999-06-23 | 株式会社東芝 | High-efficiency coded recording / reproducing device |
US5200823A (en) | 1991-03-29 | 1993-04-06 | Scientific-Atlanta, Inc. | Virtual channels for a multiplexed analog component (mac) television system |
US5621579A (en) | 1991-08-19 | 1997-04-15 | Index Systems, Inc. | Method for selectively playing back programs recorded on a video tape |
US20030194200A1 (en) | 1991-08-19 | 2003-10-16 | Index Systems, Inc. | Enhancing operations of video tape cassette players |
US5581614A (en) | 1991-08-19 | 1996-12-03 | Index Systems, Inc. | Method for encrypting and embedding information in a video program |
KR930007256A (en) | 1991-09-10 | 1993-04-22 | 오오가 노리오 | A video display device and an television set showing an operation menu |
US5247347A (en) | 1991-09-27 | 1993-09-21 | Bell Atlantic Network Services, Inc. | Pstn architecture for video-on-demand services |
US5404393A (en) | 1991-10-03 | 1995-04-04 | Viscorp | Method and apparatus for interactive television through use of menu windows |
US5416508A (en) | 1991-10-22 | 1995-05-16 | Pioneer Electronic Corporation | CATV system with transmission of program schedules, linked program broadcasts, and permissive ordering periods |
JPH05122692A (en) | 1991-10-28 | 1993-05-18 | Pioneer Electron Corp | Catv terminal equipment and catv system |
US5861881A (en) | 1991-11-25 | 1999-01-19 | Actv, Inc. | Interactive computer system for providing an interactive presentation with personalized video, audio and graphics responses for multiple viewers |
US5247364A (en) | 1991-11-29 | 1993-09-21 | Scientific-Atlanta, Inc. | Method and apparatus for tuning data channels in a subscription television system having in-band data transmissions |
US5497187A (en) | 1991-11-29 | 1996-03-05 | Scientific-Atlanta, Inc. | In-band/out-of-band data transmission method and apparatus for a television system |
US5477262A (en) | 1991-11-29 | 1995-12-19 | Scientific-Altanta, Inc. | Method and apparatus for providing an on-screen user interface for a subscription television terminal |
US5317391A (en) | 1991-11-29 | 1994-05-31 | Scientific-Atlanta, Inc. | Method and apparatus for providing message information to subscribers in a cable television system |
US5301028A (en) | 1991-11-29 | 1994-04-05 | Scientific-Atlanta, Inc. | Method and apparatus for displaying channel identification information |
GB2264409B (en) | 1992-02-03 | 1995-11-29 | Amstrad Plc | Television channel display |
JP3328951B2 (en) | 1992-02-07 | 2002-09-30 | ソニー株式会社 | TV receiver and tuning method |
JP3428033B2 (en) | 1992-02-19 | 2003-07-22 | 株式会社日立製作所 | Digital VTR |
EP0571096B1 (en) | 1992-05-18 | 1999-06-23 | Canon Kabushiki Kaisha | Data processing apparatus |
US5469206A (en) | 1992-05-27 | 1995-11-21 | Philips Electronics North America Corporation | System and method for automatically correlating user preferences with electronic shopping information |
US5223924A (en) | 1992-05-27 | 1993-06-29 | North American Philips Corporation | System and method for automatically correlating user preferences with a T.V. program information database |
US5412416A (en) | 1992-08-07 | 1995-05-02 | Nbl Communications, Inc. | Video media distribution network apparatus and method |
US5623344A (en) | 1992-09-01 | 1997-04-22 | Hitachi America, Ltd. | Digital video recording device with trick play capability |
US5371551A (en) | 1992-10-29 | 1994-12-06 | Logan; James | Time delayed digital video system using concurrent recording and playback |
US5418782A (en) | 1992-10-30 | 1995-05-23 | Scientific-Atlanta, Inc. | Methods and apparatus for providing virtual service selection in a multi-service communications system |
US5400401A (en) | 1992-10-30 | 1995-03-21 | Scientific Atlanta, Inc. | System and method for transmitting a plurality of digital services |
US5359601A (en) | 1992-10-30 | 1994-10-25 | Scientific-Atlanta, Inc. | Apparatus providing dynamic virtual service selection in a multi-service communications system |
US5592551A (en) | 1992-12-01 | 1997-01-07 | Scientific-Atlanta, Inc. | Method and apparatus for providing interactive electronic programming guide |
US5657414A (en) | 1992-12-01 | 1997-08-12 | Scientific-Atlanta, Inc. | Auxiliary device control for a subscriber terminal |
US5357276A (en) | 1992-12-01 | 1994-10-18 | Scientific-Atlanta, Inc. | Method of providing video on demand with VCR like functions |
ATE219615T1 (en) | 1992-12-09 | 2002-07-15 | Discovery Communicat Inc | NETWORK CONTROL FOR CABLE TELEVISION DISTRIBUTION SYSTEMS |
US5543929A (en) | 1993-01-05 | 1996-08-06 | E. Guide, Inc. | Television for controlling a video cassette recorder to access programs on a video cassette tape |
JP3297914B2 (en) | 1993-01-08 | 2002-07-02 | ソニー株式会社 | Television receiver |
US5805762A (en) | 1993-01-13 | 1998-09-08 | Hitachi America, Ltd. | Video recording device compatible transmitter |
US5493339A (en) | 1993-01-21 | 1996-02-20 | Scientific-Atlanta, Inc. | System and method for transmitting a plurality of digital services including compressed imaging services and associated ancillary data services |
US5440334A (en) | 1993-02-01 | 1995-08-08 | Explore Technology, Inc. | Broadcast video burst transmission cyclic distribution apparatus and method |
US5515173A (en) | 1993-03-05 | 1996-05-07 | Gemstar Developement Corporation | System and method for automatically recording television programs in television systems with tuners external to video recorders |
EP0688488A1 (en) | 1993-03-05 | 1995-12-27 | MANKOVITZ, Roy J. | Apparatus and method using compressed codes for television program record scheduling |
US5543927A (en) | 1993-04-29 | 1996-08-06 | Sony Corporation | Variable speed playback of digital video stored in a non-tape media |
DE69319327T2 (en) | 1993-05-19 | 1998-10-29 | Alsthom Cge Alcatel | Video server |
US5579055A (en) | 1993-06-07 | 1996-11-26 | Scientific-Atlanta, Inc. | Electronic program guide and text channel data controller |
WO1994030008A1 (en) | 1993-06-07 | 1994-12-22 | Scientific-Atlanta, Inc. | Display system for a subscriber terminal |
US5485221A (en) | 1993-06-07 | 1996-01-16 | Scientific-Atlanta, Inc. | Subscription television system and terminal for enabling simultaneous display of multiple services |
EP0844615B1 (en) | 1993-06-18 | 2000-10-04 | Matsushita Electric Industrial Co., Ltd. | Recording and reproducing apparatus |
US5594509A (en) | 1993-06-22 | 1997-01-14 | Apple Computer, Inc. | Method and apparatus for audio-visual interface for the display of multiple levels of information on a display |
US5621456A (en) | 1993-06-22 | 1997-04-15 | Apple Computer, Inc. | Methods and apparatus for audio-visual interface for the display of multiple program categories |
US5583560A (en) | 1993-06-22 | 1996-12-10 | Apple Computer, Inc. | Method and apparatus for audio-visual interface for the selective display of listing information on a display |
US5469431A (en) | 1993-07-12 | 1995-11-21 | Philips Electronics North America Corp. | Method of and apparatus for channel mapping with relative service identification |
US5440336A (en) | 1993-07-23 | 1995-08-08 | Electronic Data Systems Corporation | System and method for storing and forwarding audio and/or visual information on demand |
US5382983A (en) | 1993-07-29 | 1995-01-17 | Kwoh; Daniel S. | Apparatus and method for total parental control of television use |
US5541738A (en) | 1994-04-12 | 1996-07-30 | E. Guide, Inc. | Electronic program guide |
US5418713A (en) | 1993-08-05 | 1995-05-23 | Allen; Richard | Apparatus and method for an on demand data delivery system for the preview, selection, retrieval and reproduction at a remote location of previously recorded or programmed materials |
US5589892A (en) | 1993-09-09 | 1996-12-31 | Knee; Robert A. | Electronic television program guide schedule system and method with data feed access |
US5585866A (en) | 1993-09-09 | 1996-12-17 | Miller; Larry | Electronic television program guide schedule system and method including virtual channels |
US5410344A (en) | 1993-09-22 | 1995-04-25 | Arrowsmith Technologies, Inc. | Apparatus and method of selecting video programs based on viewers' preferences |
US5671386A (en) | 1993-09-23 | 1997-09-23 | Philips Electronics North America Corporation | System for storing data and for providing simultaneous plural access to data by connecting each access channel to each and every one of storage arrays |
US5499103A (en) | 1993-10-20 | 1996-03-12 | E Guide, Inc. | Apparatus for an electronic guide with video clips |
US5734786A (en) | 1993-10-20 | 1998-03-31 | E Guide, Inc. | Apparatus and methods for deriving a television guide from audio signals |
US5481542A (en) | 1993-11-10 | 1996-01-02 | Scientific-Atlanta, Inc. | Interactive information services control system |
US5425101A (en) | 1993-12-03 | 1995-06-13 | Scientific-Atlanta, Inc. | System and method for simultaneously authorizing multiple virtual channels |
US5465113A (en) | 1993-12-13 | 1995-11-07 | At&T Corp. | Programmable channel regulating cable television controller |
US5459506A (en) | 1993-12-28 | 1995-10-17 | At&T Corp. | Enhanced pay per view system |
GB9400101D0 (en) | 1994-01-05 | 1994-03-02 | Thomson Consumer Electronics | Consumer interface for a satellite television system |
US5491748A (en) | 1994-03-01 | 1996-02-13 | Zenith Electronics Corporation | Enhanced security for a cable system |
JP3500741B2 (en) | 1994-03-01 | 2004-02-23 | ソニー株式会社 | Channel selection method and channel selection device for television broadcasting |
JP3428123B2 (en) | 1994-03-11 | 2003-07-22 | 住友電気工業株式会社 | Method for producing surface-modified fluororesin |
US5579183A (en) | 1994-04-08 | 1996-11-26 | U.S. Philips Corporation | Recording and reproducing an MPEG information signal on/from a record carrier |
JPH10501932A (en) | 1994-04-08 | 1998-02-17 | プレビュー インターナショナル, インコーポレイテッド | Interactive scrolling program guide |
EP1211897B1 (en) | 1994-04-13 | 2003-08-20 | Rca Thomson Licensing Corporation | Digital VCR with non-standard speed playback |
DE69532656T2 (en) | 1994-04-15 | 2005-02-10 | Koninklijke Philips Electronics N.V. | Method and device for receiving digital video signals |
US5539822A (en) | 1994-04-19 | 1996-07-23 | Scientific-Atlanta, Inc. | System and method for subscriber interactivity in a television system |
US5459789A (en) | 1994-04-22 | 1995-10-17 | Thomson Consumer Electronics | Packet TV program component detector |
DE69517647T2 (en) | 1994-04-25 | 2001-02-22 | Sony Corp | VIDEO SIGNAL PLAYER |
US5448568A (en) | 1994-04-28 | 1995-09-05 | Thomson Consumer Electronics, Inc. | System of transmitting an interactive TV signal |
US5502504A (en) | 1994-04-28 | 1996-03-26 | Prevue Networks, Inc. | Video mix program guide |
US5539920A (en) | 1994-04-28 | 1996-07-23 | Thomson Consumer Electronics, Inc. | Method and apparatus for processing an audio video interactive signal |
US5563648A (en) | 1994-04-28 | 1996-10-08 | Thomson Consumer Electronics, Inc. | Method for controlling execution of an audio video interactive program |
US5548532A (en) | 1994-04-28 | 1996-08-20 | Thomson Consumer Electronics, Inc. | Apparatus and method for formulating an interactive TV signal |
US5812205A (en) | 1994-05-04 | 1998-09-22 | Starsight Telecast Incorporated | Automatic time set in a television system |
WO1995031069A1 (en) | 1994-05-04 | 1995-11-16 | Starsight Telecast, Inc. | Television schedule information transmission and utilization system and process |
EP2282534B1 (en) | 1994-05-20 | 2013-06-26 | United Video Properties, Inc. | Improved electronic televison program schedule guide system and method |
US5523796A (en) | 1994-05-20 | 1996-06-04 | Prevue Networks, Inc. | Video clip program guide |
US5701383A (en) | 1994-05-20 | 1997-12-23 | Gemstar Development Corporation | Video time-shifting apparatus |
US5635978A (en) | 1994-05-20 | 1997-06-03 | News America Publications, Inc. | Electronic television program guide channel system and method |
US5559548A (en) | 1994-05-20 | 1996-09-24 | Davis; Bruce | System and method for generating an information display schedule for an electronic program guide |
US5499046A (en) | 1994-05-23 | 1996-03-12 | Cable Services Technologies, Inc. | CATV distribution system with each channel having its own remote scheduler |
US5477263A (en) | 1994-05-26 | 1995-12-19 | Bell Atlantic Network Services, Inc. | Method and apparatus for video on demand with fast forward, reverse and channel pause |
US5473609A (en) | 1994-05-26 | 1995-12-05 | Thomson Consumer Electronics, Inc. | Method and apparatus for processing a conditional access program guide as for a satellite TV service |
US5734589A (en) | 1995-01-31 | 1998-03-31 | Bell Atlantic Network Services, Inc. | Digital entertainment terminal with channel mapping |
US5768539A (en) | 1994-05-27 | 1998-06-16 | Bell Atlantic Network Services, Inc. | Downloading applications software through a broadcast channel |
US5495295A (en) | 1994-06-01 | 1996-02-27 | Zenith Electronics Corporation | Use of transmitter assigned phantom channel numbers for data services |
US5543852A (en) | 1994-06-02 | 1996-08-06 | Index Systems, Inc. | Apparatus and methods for avoiding loss of closed caption data when using extended data services |
US5436676A (en) | 1994-06-10 | 1995-07-25 | Zenith Electronics Corporation | Remote control unit code translation |
US5459522A (en) | 1994-06-10 | 1995-10-17 | Zenith Electronics Corporation | Method for acquisition and display of an on-screen program guide |
US5544354A (en) | 1994-07-18 | 1996-08-06 | Ikonic Interactive, Inc. | Multimedia matrix architecture user interface |
US5671377A (en) | 1994-07-19 | 1997-09-23 | David Sarnoff Research Center, Inc. | System for supplying streams of data to multiple users by distributing a data stream to multiple processors and enabling each user to manipulate supplied data stream |
US5528304A (en) | 1994-07-22 | 1996-06-18 | Zenith Electronics Corp. | Picture-in-picture feedback for channel related features |
US5555441A (en) | 1994-08-02 | 1996-09-10 | Interim Design Inc. | Interactive audiovisual distribution system |
ATE211596T1 (en) | 1994-08-09 | 2002-01-15 | Koninkl Philips Electronics Nv | DEVICE FOR RECORDING AND/OR PLAYBACKING VIDEO SIGNALS AND AUDIO SIGNALS TO/FROM SLIDE TRACKS ON MAGNETIC TAPE AND MAGNETIC TAPE FOR SUCH DEVICE |
JPH0879685A (en) | 1994-08-31 | 1996-03-22 | Sony Corp | Program reproducing device for near-video-on-demand system |
CA2156871C (en) | 1994-09-09 | 2005-04-05 | Thomas Patrick Newberry | Unified program guide interface |
US5793412A (en) | 1994-09-16 | 1998-08-11 | Sony Corporation | Data transmission apparatus of video-on-demand or near video-on-demand system |
US5539391A (en) | 1994-09-22 | 1996-07-23 | Gemstar Development Corporation | Remote controller for controlling turning appliances on and off |
WO1996012371A1 (en) | 1994-10-12 | 1996-04-25 | Gemstar Development Corporation | Apparatus for scanning television program scheduling information |
US5614940A (en) | 1994-10-21 | 1997-03-25 | Intel Corporation | Method and apparatus for providing broadcast information with indexing |
ES2196087T3 (en) | 1994-10-27 | 2003-12-16 | Index Systems Inc | SYSTEM AND METHOD FOR DOWNLOADING PROGRAMMING DATA FROM A RECORDER ON A VIDEO SIGNAL. |
US5576755A (en) | 1994-10-28 | 1996-11-19 | Davis; Bruce | System and method for verification of electronic television program guide data |
US5534911A (en) | 1994-11-02 | 1996-07-09 | Levitan; Gutman | Virtual personal channel in a television system |
US5671411A (en) | 1994-11-10 | 1997-09-23 | Intel Corporation | Method of searching an audio/visual programming database using selected criterion having implicit logical operation |
US5822493A (en) | 1994-11-17 | 1998-10-13 | Matsushita Electric Industrial Co., Ltd. | Real-time image recording/producing method and apparatus and video library system |
US5623613A (en) | 1994-11-29 | 1997-04-22 | Microsoft Corporation | System for displaying programming information |
US6008803A (en) | 1994-11-29 | 1999-12-28 | Microsoft Corporation | System for displaying programming information |
US5629733A (en) | 1994-11-29 | 1997-05-13 | News America Publications, Inc. | Electronic television program guide schedule system and method with display and search of program listings by title |
EP0801865B1 (en) | 1994-12-13 | 2002-08-07 | Gemstar Development Corporation | Method for channel scanning by theme |
US5625406A (en) | 1994-12-21 | 1997-04-29 | Thomson Consumer Electronics, Inc. | Unified program guide interface |
US5659367A (en) | 1994-12-30 | 1997-08-19 | Index Systems, Inc. | Television on/off detector for use in a video cassette recorder |
US5548345A (en) | 1995-01-05 | 1996-08-20 | Protelcon, Inc. | Video viewing censoring supervision system |
JP4001942B2 (en) | 1995-02-06 | 2007-10-31 | ソニー株式会社 | Receiving apparatus and receiving method, and broadcasting system and broadcasting method |
JP3855282B2 (en) | 1995-02-06 | 2006-12-06 | ソニー株式会社 | Receiving apparatus and receiving method |
JPH08223548A (en) | 1995-02-17 | 1996-08-30 | Hitachi Ltd | Digital audio image data distribution method and its distribution system |
US5619247A (en) | 1995-02-24 | 1997-04-08 | Smart Vcr Limited Partnership | Stored program pay-per-play |
US5559550A (en) | 1995-03-01 | 1996-09-24 | Gemstar Development Corporation | Apparatus and methods for synchronizing a clock to a network clock |
US5552837A (en) | 1995-03-01 | 1996-09-03 | Gemstar Development Corporation | Remote controller for scanning data and controlling a video system |
WO1996027982A1 (en) | 1995-03-08 | 1996-09-12 | Gemstar Development Corporation | Method and apparatus for controlling a television tuner |
US6118922A (en) | 1995-03-10 | 2000-09-12 | U.S. Philips Corporation | Recording and reproduction of a trick mode video signal |
US5517257A (en) | 1995-03-28 | 1996-05-14 | Microsoft Corporation | Video control user interface for interactive television systems and method for controlling display of a video movie |
CA2170429C (en) | 1995-03-28 | 2000-04-25 | Stephen Gregory Eick | Method and apparatus for finding and selecting a desired data item from a large schedule of data items using a tv set and a controller similar to a tv-remote-control |
KR0164827B1 (en) | 1995-03-31 | 1999-03-20 | 김광호 | The program guide signal receiver |
US5880768A (en) | 1995-04-06 | 1999-03-09 | Prevue Networks, Inc. | Interactive program guide systems and processes |
US5550576A (en) | 1995-04-17 | 1996-08-27 | Starsight Telecast Incorporated | Method and apparatus for merging television program schedule information received from multiple television schedule information sources |
US5630119A (en) | 1995-05-05 | 1997-05-13 | Microsoft Corporation | System and method for displaying program listings in an interactive electronic program guide |
US5677708A (en) | 1995-05-05 | 1997-10-14 | Microsoft Corporation | System for displaying a list on a display screen |
US5585838A (en) | 1995-05-05 | 1996-12-17 | Microsoft Corporation | Program time guide |
US5945987A (en) | 1995-05-05 | 1999-08-31 | Microsoft Corporation | Interactive entertainment network system and method for providing short sets of preview video trailers |
US5654748A (en) | 1995-05-05 | 1997-08-05 | Microsoft Corporation | Interactive program identification system |
US5914746A (en) | 1995-05-05 | 1999-06-22 | Microsoft Corporation | Virtual channels in subscriber interface units |
US6215530B1 (en) | 1995-05-22 | 2001-04-10 | Scientific-Atlanta, Inc. | Logical and composite channel mapping in an MPEG network |
US5600378A (en) | 1995-05-22 | 1997-02-04 | Scientific-Atlanta, Inc. | Logical and composite channel mapping in an MPEG network |
US5793410A (en) | 1995-05-26 | 1998-08-11 | Hyundai Electronics America | Video pedestal network |
WO1996041472A1 (en) | 1995-06-07 | 1996-12-19 | Starsight Telecast Incorporated | Television system with downloadable features |
US5721878A (en) | 1995-06-07 | 1998-02-24 | International Business Machines Corporation | Multimedia control system and method for controlling multimedia program presentation |
US5682597A (en) | 1995-06-15 | 1997-10-28 | International Business Machines Corporation | Hybrid video-on-demand based on a near-video-on-demand system |
US5671276A (en) | 1995-07-21 | 1997-09-23 | General Instrument Corporation Of Delaware | Method and apparatus for impulse purchasing of packaged information services |
US5748254A (en) | 1995-07-24 | 1998-05-05 | Coach Master International Corporation | Systems with a remote control in which information can be retrieved from an encoded, laser readable disc |
US5801753A (en) | 1995-08-11 | 1998-09-01 | General Instrument Corporation Of Delaware | Method and apparatus for providing an interactive guide to events available on an information network |
US6002394A (en) | 1995-10-02 | 1999-12-14 | Starsight Telecast, Inc. | Systems and methods for linking television viewers with advertisers and broadcasters |
WO1997013368A1 (en) | 1995-10-02 | 1997-04-10 | Starsight Telecast, Incorporated | Systems and methods for providing television schedule information |
US5929932A (en) | 1995-10-24 | 1999-07-27 | Sanyo Electric Co., Ltd. | Program guide display controller at user terminal of television broadcasting system |
JP2000500626A (en) | 1995-11-13 | 2000-01-18 | イー グイド インコーポレイテッド | Contract TV with VBI packet data |
ES2312915T3 (en) | 1995-11-13 | 2009-03-01 | Gemstar Development Corporation | METHOD AND APPARATUS FOR THE VISUAL PRESENTATION OF TEXT DATA TO GRAPHICS ON THE TELEVISION RECEIVERS SCREEN. |
US5734597A (en) | 1995-11-24 | 1998-03-31 | International Business Machines Corporation | Graphical user interface interaction between time and date controls |
US5872588A (en) | 1995-12-06 | 1999-02-16 | International Business Machines Corporation | Method and apparatus for monitoring audio-visual materials presented to a subscriber |
CA2215707C (en) | 1996-01-22 | 2005-07-26 | Philips Electronics N.V. | Transmission of data items |
US5635989A (en) | 1996-02-13 | 1997-06-03 | Hughes Electronics | Method and apparatus for sorting and searching a television program guide |
JP4420474B2 (en) | 1996-02-14 | 2010-02-24 | ソニー株式会社 | Electronic program guide display control apparatus and method |
US5751372A (en) | 1996-02-19 | 1998-05-12 | Hughes Electronics | Method and apparatus for navigating an on-screen program guide |
BR9702071A (en) | 1996-02-19 | 1998-05-26 | Hughes Aircraft Co | Method and apparatus for selecting channel guides based on the call signal |
CA2251687C (en) | 1996-03-15 | 2006-05-09 | E Guide, Inc. | Combination of vcr index and epg |
US5657072A (en) | 1996-04-10 | 1997-08-12 | Microsoft Corporation | Interactive entertainment network system and method for providing program listings during non-peak times |
US6469753B1 (en) | 1996-05-03 | 2002-10-22 | Starsight Telecast, Inc. | Information system |
KR100205549B1 (en) | 1996-05-06 | 1999-07-01 | 윤종용 | Vod and set top board-mounted computer system |
US5778187A (en) | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
US5969748A (en) | 1996-05-29 | 1999-10-19 | Starsight Telecast, Inc. | Television schedule system with access control |
US6065050A (en) | 1996-06-05 | 2000-05-16 | Sun Microsystems, Inc. | System and method for indexing between trick play and normal play video streams in a video delivery system |
US6181333B1 (en) | 1996-08-14 | 2001-01-30 | Samsung Electronics Co., Ltd. | Television graphical user interface having channel and program sorting capabilities |
KR100204575B1 (en) | 1996-10-17 | 1999-06-15 | 정선종 | Remote measurement data compression saving and detecting method in satellite controlling system |
US6543053B1 (en) | 1996-11-27 | 2003-04-01 | University Of Hong Kong | Interactive video-on-demand system |
US6745391B1 (en) | 1997-12-10 | 2004-06-01 | E Guide, Inc. | Premium channel promotion system and method |
US6177931B1 (en) | 1996-12-19 | 2001-01-23 | Index Systems, Inc. | Systems and methods for displaying and recording control interface with television programs, video, advertising information and program scheduling information |
US6253375B1 (en) | 1997-01-13 | 2001-06-26 | Diva Systems Corporation | System for interactively distributing information services |
US5850218A (en) | 1997-02-19 | 1998-12-15 | Time Warner Entertainment Company L.P. | Inter-active program guide with default selection control |
US6111611A (en) | 1997-07-10 | 2000-08-29 | Thomson Consumer Electronics | System for forming and processing program specific information suitable for terrestrial, cable or satellite broadcast |
US6175362B1 (en) | 1997-07-21 | 2001-01-16 | Samsung Electronics Co., Ltd. | TV graphical user interface providing selection among various lists of TV channels |
US6141488A (en) | 1997-09-05 | 2000-10-31 | United Video Properties, Inc. | Program guide system for recording television programs |
AU9298398A (en) | 1997-09-05 | 1999-03-29 | Prevue International, Inc. | Program guide application interface system |
US6172712B1 (en) | 1997-12-31 | 2001-01-09 | Intermec Ip Corp. | Television with hard disk drive |
JP4014281B2 (en) | 1998-03-19 | 2007-11-28 | 富士通株式会社 | Program reservation system in CATV |
US6792616B1 (en) | 1998-05-01 | 2004-09-14 | Scientific-Atlanta, Inc. | System and method for providing a plurality of programming services in a television system |
US6005603A (en) | 1998-05-15 | 1999-12-21 | International Business Machines Corporation | Control of a system for processing a stream of information based on information content |
US7603684B1 (en) | 1998-05-19 | 2009-10-13 | United Video Properties, Inc. | Program guide system with video-on-demand browsing |
WO1999062261A1 (en) | 1998-05-29 | 1999-12-02 | Diva Systems Corporation | Interactive information distribution system and method |
TW416224B (en) | 1998-07-07 | 2000-12-21 | United Video Properties Inc | Interactive television program guide system with local advertisements |
CN1867068A (en) | 1998-07-14 | 2006-11-22 | 联合视频制品公司 | Client-server based interactive television program guide system with remote server recording |
AR019458A1 (en) | 1998-07-23 | 2002-02-20 | United Video Properties Inc | AN INTERACTIVE TELEVISION PROGRAMMING GUIDE PROVISION THAT SERVES AS AN ENTRY |
US6233389B1 (en) | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
US6324338B1 (en) | 1998-08-07 | 2001-11-27 | Replaytv, Inc. | Video data recorder with integrated channel guides |
AU5781599A (en) | 1998-08-23 | 2000-03-14 | Open Entertainment, Inc. | Transaction system for transporting media files from content provider sources tohome entertainment devices |
US7694319B1 (en) * | 1998-11-02 | 2010-04-06 | United Video Properties, Inc. | Interactive program guide with continuous data stream and client-server data supplementation |
US8290351B2 (en) | 2001-04-03 | 2012-10-16 | Prime Research Alliance E., Inc. | Alternative advertising in prerecorded media |
JP2003518342A (en) | 1999-03-01 | 2003-06-03 | インデックス システムズ インコーポレイテッド | System and method for deleting extra listings in an electronic program guide |
DE60001157D1 (en) | 1999-03-09 | 2003-02-13 | Powertv Inc | TV ADMINISTRATOR |
US20040255336A1 (en) | 1999-03-30 | 2004-12-16 | Gotuit Video, Inc. | Methods and apparatus for simultaneous program viewing |
US6718552B1 (en) | 1999-04-20 | 2004-04-06 | Diva Systems Corporation | Network bandwidth optimization by dynamic channel allocation |
US6820265B1 (en) | 1999-06-29 | 2004-11-16 | Rare Limited | System method and data storage medium for sharing data between video games |
US6532593B1 (en) | 1999-08-17 | 2003-03-11 | General Instrument Corporation | Transcoding for consumer set-top storage application |
IT1310145B1 (en) | 1999-08-25 | 2002-02-11 | Rai Radiotelevisione Italiana | ACQUISITION SYSTEM AND SYNTHETIC PRESENTATION OF TV PROGRAMS |
US7240359B1 (en) | 1999-10-13 | 2007-07-03 | Starz Entertainment, Llc | Programming distribution system |
US20050177850A1 (en) | 1999-10-29 | 2005-08-11 | United Video Properties, Inc. | Interactive television system with programming-related links |
US6609253B1 (en) | 1999-12-30 | 2003-08-19 | Bellsouth Intellectual Property Corporation | Method and system for providing interactive media VCR control |
WO2001056285A1 (en) | 2000-01-27 | 2001-08-02 | Berberet Suzanne M | System and method for providing broadcast programming, a virtual vcr, and a video scrapbook to programming subscribers |
US20010047516A1 (en) | 2000-02-01 | 2001-11-29 | Compaq Computer Corporation | System for time shifting live streamed video-audio distributed via the internet |
CA2403198A1 (en) | 2000-03-13 | 2001-09-20 | Media Arts & Images Corporation | Video data management, transmission, and control system and method employing distributed video segments microcasting |
CA2972297A1 (en) | 2000-03-31 | 2001-10-11 | Rovi Guides, Inc. | Systems and methods for improved audience measuring |
US6931657B1 (en) | 2000-04-21 | 2005-08-16 | Microsoft Corporation | Methods and arrangements for providing a novel television and multimedia viewing paradigm |
US7934232B1 (en) | 2000-05-04 | 2011-04-26 | Jerding Dean F | Navigation paradigm for access to television services |
US20020175998A1 (en) * | 2000-05-31 | 2002-11-28 | Hoang Khoi Nhu | Data-on-demand digital broadcast system utilizing prefetch data transmission |
US6442328B1 (en) | 2000-05-31 | 2002-08-27 | Keen Personal Media, Inc. | Digital video recorder connectable to an auxiliary interface of a set-top box that provides video data stream to a display device based on selection between recorded video signal received from the dig |
WO2001095610A1 (en) | 2000-06-02 | 2001-12-13 | V-Sync Co., Ltd. | Printer with advertisement issuance function |
SE522365C2 (en) | 2000-06-08 | 2004-02-03 | Mikael Laangberg | Device and method for recording and playing video signals |
KR20130066712A (en) | 2000-10-11 | 2013-06-20 | 유나이티드 비디오 프로퍼티즈, 인크. | Systems and methods for delivering media content |
JP2004533001A (en) | 2000-10-11 | 2004-10-28 | ユナイテッド ビデオ プロパティーズ, インコーポレイテッド | Systems and methods for providing targeted advertisements based on current behavior |
US7028329B1 (en) | 2000-10-13 | 2006-04-11 | Seiko Epson Corporation | Remote accessible programming |
US7124424B2 (en) | 2000-11-27 | 2006-10-17 | Sedna Patent Services, Llc | Method and apparatus for providing interactive program guide (IPG) and video-on-demand (VOD) user interfaces |
US8352988B2 (en) | 2000-11-27 | 2013-01-08 | Cox Communications, Inc. | System and method for time shifting the delivery of video information |
CA2430166A1 (en) | 2000-11-28 | 2002-06-06 | Seachange International, Inc. | Content/service handling and delivery |
US20020078466A1 (en) | 2000-12-15 | 2002-06-20 | Siemens Information And Communication Networks, Inc. | System and method for enhanced video e-mail transmission |
KR101548473B1 (en) | 2001-02-21 | 2015-08-28 | 로비 가이드스, 인크. | Systems and methods for interactive program guides with personal video recording features |
JP4686870B2 (en) * | 2001-02-28 | 2011-05-25 | ソニー株式会社 | Portable information terminal device, information processing method, program recording medium, and program |
AU2002250559A1 (en) | 2001-03-22 | 2002-10-08 | United Video Properties, Inc. | Personal video recorder systems and methods |
US20020178447A1 (en) | 2001-04-03 | 2002-11-28 | Plotnick Michael A. | Behavioral targeted advertising |
WO2002093299A2 (en) | 2001-05-11 | 2002-11-21 | Scientific-Atlanta, Inc. | Channel buffering and display management system for multi-tuner set-top box |
US20020191950A1 (en) | 2001-06-15 | 2002-12-19 | Xiaoling Wang | Apparatus and a method for preventing commercial skipping |
US7444662B2 (en) | 2001-06-28 | 2008-10-28 | Emc Corporation | Video file server cache management using movie ratings for reservation of memory and bandwidth resources |
US20030046695A1 (en) | 2001-08-29 | 2003-03-06 | Digeo, Inc. | System and method for enabling focused navigation using filtering and direct-tune buttons |
US7107531B2 (en) | 2001-08-29 | 2006-09-12 | Digeo, Inc. | System and method for focused navigation within a user interface |
US7194563B2 (en) | 2001-12-05 | 2007-03-20 | Scientific-Atlanta, Inc. | Disk driver cluster management of time shift buffer with file allocation table structure |
US6868264B2 (en) | 2001-12-13 | 2005-03-15 | International Business Machines Corporation | Method and apparatus for managing audio broadcasts in an automobile |
US20030188317A1 (en) | 2002-03-28 | 2003-10-02 | Liew William J. | Advertisement system and methods for video-on-demand services |
US7810121B2 (en) | 2002-05-03 | 2010-10-05 | Time Warner Interactive Video Group, Inc. | Technique for delivering network personal video recorder service and broadcast programming service over a communications network |
US7174126B2 (en) | 2002-05-03 | 2007-02-06 | Time Warner Interactive Video Group Inc. | Technique for effectively accessing programming listing information in an entertainment delivery system |
US7073189B2 (en) | 2002-05-03 | 2006-07-04 | Time Warner Interactive Video Group, Inc. | Program guide and reservation system for network based digital information and entertainment storage and delivery system |
US20050015355A1 (en) | 2003-07-16 | 2005-01-20 | Apple Computer, Inc. | Method and system for data sharing between application programs |
US20050138546A1 (en) * | 2003-12-23 | 2005-06-23 | Microsoft Corporation | Personalized web page on a home network for viewing on a television |
US8544043B2 (en) * | 2004-07-21 | 2013-09-24 | Qualcomm Incorporated | Methods and apparatus for providing content information to content servers |
US7602820B2 (en) | 2005-02-01 | 2009-10-13 | Time Warner Cable Inc. | Apparatus and methods for multi-stage multiplexing in a network |
US7954131B2 (en) | 2007-06-13 | 2011-05-31 | Time Warner Cable Inc. | Premises gateway apparatus and methods for use in a content-based network |
JP5365060B2 (en) | 2008-04-30 | 2013-12-11 | 富士通モバイルコミュニケーションズ株式会社 | Information processing device |
US8341242B2 (en) | 2008-11-24 | 2012-12-25 | Time Warner Cable, Inc. | System and method for managing entitlements to data over a network |
US8359616B2 (en) * | 2009-09-30 | 2013-01-22 | United Video Properties, Inc. | Systems and methods for automatically generating advertisements using a media guidance application |
US9027062B2 (en) | 2009-10-20 | 2015-05-05 | Time Warner Cable Enterprises Llc | Gateway apparatus and methods for digital content delivery in a network |
US10264029B2 (en) | 2009-10-30 | 2019-04-16 | Time Warner Cable Enterprises Llc | Methods and apparatus for packetized content delivery over a content delivery network |
US20120017245A1 (en) * | 2010-07-15 | 2012-01-19 | Xuemin Chen | Method and system for providing programming guide and recording information via an ip multimedia gateway |
US8925009B2 (en) * | 2010-12-10 | 2014-12-30 | Verizon Patent And Licensing Inc. | Graphics handling for electronic program guide graphics in an RVU system |
US9064278B2 (en) * | 2010-12-30 | 2015-06-23 | Futurewei Technologies, Inc. | System for managing, storing and providing shared digital content to users in a user relationship defined group in a multi-platform environment |
US8745212B2 (en) * | 2011-07-01 | 2014-06-03 | Google Inc. | Access to network content |
WO2014058233A1 (en) * | 2012-10-11 | 2014-04-17 | 연세대학교 산학협력단 | Method for increasing gui response speed of user device through data preloading, and said user device |
US9426535B2 (en) * | 2013-12-20 | 2016-08-23 | Verizon Patent And Licensing Inc. | Synchronization algorithm for data streaming by proxy server through asynchronous multicast channel |
US9948962B2 (en) * | 2014-11-13 | 2018-04-17 | Time Warner Cable Enterprises Llc | Apparatus and methods for efficient delivery of electronic program guide data |
-
2014
- 2014-11-13 US US14/541,035 patent/US9948962B2/en active Active
-
2018
- 2018-04-16 US US15/954,478 patent/US10567814B2/en active Active
-
2020
- 2020-02-14 US US16/792,089 patent/US11212561B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8230343B2 (en) * | 1999-03-29 | 2012-07-24 | Digitalsmiths, Inc. | Audio and video program recording, editing and playback systems using metadata |
US20100257561A1 (en) * | 2005-09-22 | 2010-10-07 | Nds Limited | Surfer's Paradise |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160337455A1 (en) * | 2015-05-13 | 2016-11-17 | Arris Enterprises, Inc. | Content streaming apparatus for transferring a streaming session to another apparatus |
US9716763B2 (en) * | 2015-05-13 | 2017-07-25 | Arris Enterprises Llc | Content streaming apparatus for transferring a streaming session to another apparatus |
US10419549B2 (en) | 2015-05-13 | 2019-09-17 | Arris Enterprises Llc | Content streaming apparatus for transferring a streaming session to another apparatus |
US20170075516A1 (en) * | 2015-09-11 | 2017-03-16 | Lg Electronics Inc. | Mobile terminal and controlling method thereof |
US10635261B2 (en) * | 2015-09-11 | 2020-04-28 | Lg Electronics Inc. | Mobile terminal and controlling method thereof |
US10397655B2 (en) * | 2017-07-12 | 2019-08-27 | Verizon Patent And Licensing Inc. | Content onboarding and custom channel lineup provisioning |
US10848827B2 (en) | 2017-07-12 | 2020-11-24 | Verizon Patent And Licensing Inc. | Content onboarding and custom channel lineup provisioning |
US11431698B2 (en) * | 2018-10-31 | 2022-08-30 | NBA Properties, Inc. | Partner integration network |
US20230006990A1 (en) * | 2018-10-31 | 2023-01-05 | NBA Properties, Inc. | Partner integration network |
US11706204B2 (en) * | 2018-10-31 | 2023-07-18 | NBA Properties, Inc. | Partner integration network |
Also Published As
Publication number | Publication date |
---|---|
US20200186843A1 (en) | 2020-06-11 |
US10567814B2 (en) | 2020-02-18 |
US9948962B2 (en) | 2018-04-17 |
US11212561B2 (en) | 2021-12-28 |
US20180255327A1 (en) | 2018-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230164373A1 (en) | Apparatus and methods for monitoring and optimizing delivery of content in a network | |
US11924521B2 (en) | Apparatus and methods for delivery of multicast and unicast content in a content delivery network | |
US20240048790A1 (en) | Apparatus and methods for recording, accessing, and delivering packetized content | |
US11212561B2 (en) | Apparatus and methods for efficient delivery of electronic program guide data | |
US11695994B2 (en) | Cloud-based digital content recorder apparatus and methods | |
US10219017B2 (en) | Apparatus and methods for multicast delivery of content in a content delivery network | |
US10979768B2 (en) | Method and system for device discovery and content management on a network | |
US20210352370A1 (en) | Methods and apparatus for providing and uploading content to personalized network storage | |
US10812866B2 (en) | Apparatus and methods for controlling digital video recorders |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: TIME WARNER CABLE ENTERPRISES LLC, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:NIELSEN, NICHOLAS;REED, THOMAS;HYBERTSON, ERIC;REEL/FRAME:034168/0616 Effective date: 20141113 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNORS:BRIGHT HOUSE NETWORKS, LLC;CHARTER COMMUNICATIONS OPERATING, LLC;TIME WARNER CABLE ENTERPRISES LLC;REEL/FRAME:038747/0507 Effective date: 20160518 Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, NE Free format text: SECURITY INTEREST;ASSIGNORS:BRIGHT HOUSE NETWORKS, LLC;CHARTER COMMUNICATIONS OPERATING, LLC;TIME WARNER CABLE ENTERPRISES LLC;REEL/FRAME:038747/0507 Effective date: 20160518 |
|
AS | Assignment |
Owner name: TIME WARNER CABLE ENTERPRISES LLC, MISSOURI Free format text: CHANGE OF ADDRESS;ASSIGNOR:TIME WARNER CABLE ENTERPRISES LLC;REEL/FRAME:044456/0167 Effective date: 20160601 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., ILLINOIS Free format text: SECURITY INTEREST;ASSIGNORS:ADCAST NORTH CAROLINA CABLE ADVERTISING, LLC;ALABANZA LLC;AMERICA'S JOB EXCHANGE LLC;AND OTHERS;SIGNING DATES FROM 20160518 TO 20180518;REEL/FRAME:046567/0090 Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., I Free format text: SECURITY INTEREST;ASSIGNORS:ADCAST NORTH CAROLINA CABLE ADVERTISING, LLC;ALABANZA LLC;AMERICA'S JOB EXCHANGE LLC;AND OTHERS;SIGNING DATES FROM 20160518 TO 20180518;REEL/FRAME:046567/0090 |
|
AS | Assignment |
Owner name: WELLS FARGO TRUST COMPANY, N.A., UTAH Free format text: SECURITY INTEREST;ASSIGNORS:BRIGHT HOUSE NETWORKS, LLC;CHARTER COMMUNICATIONS OPERATING, LLC;TIME WARNER CABLE ENTERPRISES LLC;AND OTHERS;REEL/FRAME:046630/0193 Effective date: 20180716 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |