EP1569103B1 - Media extension apparatus and methods for use in an information network - Google Patents
Media extension apparatus and methods for use in an information network Download PDFInfo
- Publication number
- EP1569103B1 EP1569103B1 EP05003475.0A EP05003475A EP1569103B1 EP 1569103 B1 EP1569103 B1 EP 1569103B1 EP 05003475 A EP05003475 A EP 05003475A EP 1569103 B1 EP1569103 B1 EP 1569103B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- application
- cpe
- network
- applications
- jmf
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 76
- 238000004891 communication Methods 0.000 claims description 18
- 238000003860 storage Methods 0.000 claims description 9
- 239000000835 fiber Substances 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 2
- 230000004913 activation Effects 0.000 claims 1
- 108091006146 Channels Proteins 0.000 description 18
- 230000002452 interceptive effect Effects 0.000 description 12
- 238000009826 distribution Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 230000002085 persistent effect Effects 0.000 description 8
- 238000013459 approach Methods 0.000 description 6
- 239000003795 chemical substances by application Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 1
- 235000014552 Cassia tora Nutrition 0.000 description 1
- 244000201986 Cassia tora Species 0.000 description 1
- 101001091379 Homo sapiens Kallikrein-5 Proteins 0.000 description 1
- 102100034868 Kallikrein-5 Human genes 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229920006235 chlorinated polyethylene elastomer Polymers 0.000 description 1
- 238000000136 cloud-point extraction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
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/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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4432—Powering on the client, e.g. bootstrap loading using setup parameters being stored locally or received from the server
-
- 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4433—Implementing client middleware, e.g. Multimedia Home Platform [MHP]
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
Definitions
- HFC hybrid fiber coax
- CPE consumer premises equipment
- client portions of applications to communicate with their parent server portions in order to provide downstream and upstream communications and data/content transfer.
- Digital TV is an emerging technology which utilizes digitized and compressed data formats (e.g., MPEG) for content transmission, as compared to earlier analog "uncompressed" approaches (e.g., NTSC).
- the DTV content may be distributed across any number of different types of bearer media or networks with sufficient bandwidth, including HFC, satellite, wireless, or terrestrial.
- DTV standards such as the OpenCable Application Platform middleware specification (e.g., Version 1.0, and incipient Version 2.0) require that applications be downloaded to CPE from the bearer or broadcast network in real-time.
- OCAP is a middleware software layer specification intended to enable the developers of interactive television services and applications to design such products so that they will run successfully on any cable television system in North America, independent of set-top or television receiver hardware or operating system software choices.
- OCAP enables manufacturers and retail distributors of set-tops, television receivers or other devices to build and sell devices to consumers that support all services delivered by cable operators.
- Multimedia Home Platform defines a generic interface between interactive digital applications and the terminals on which those applications execute. This interface decouples different provider's applications from the specific hardware and software details of different MHP terminal implementations. It enables digital content providers to address all types of terminals ranging from low-end to high-end set top boxes, integrated digital TV sets and multimedia PCs.
- the MHP extends the existing DVB open standards for broadcast and interactive services in all transmission networks including satellite, cable, terrestrial and microwave systems.
- Multimedia Home Platform (MHP) Specification 1.0 contains detailed information on the enhanced broadcasting and interactive profiles, as well as various MHP content formats including PNG, JPEG, MPEG-2 Video/Audio, subtitles and resident and downloadable fonts.
- MHP 1.0 further provides mandatory transport protocols including DSM-CC object carousel (broadcast) and IP (return channel), DVB-J application model and signaling, hooks for HTML content formats (DVB-HTML application model and signaling), a graphics reference model, and Annexes with DSM-CC object carousel profile, text presentation, minimum platform capabilities, and various APIs.
- the MHP 1.0 specification provides a set of features and functions required for the enhanced broadcasting and interactive broadcasting profiles.
- the enhanced broadcasting profile is intended for broadcast (one way) services, while the interactive broadcasting profile supports in addition interactive services and allows MHPs to use the Internet. New profiles will be added later based on the continuing work of the DVB project.
- Multimedia Home Platform (MHP) Specification 1.1.X contains further detailing of Interactive and Internet Access Profiles, stored application support, application download via broadcast or interaction channels, DVB-J extensions to better support international applications and smart cards, specification of DVB-HTML, greater support for plug-ins, and support for bi-directional referencing between MHP content and Internet content.
- MHP 1.1 builds on the MHP 1.0 specification in order to better support the use of the interaction channel and to specify elements which promote interoperability with Internet content.
- ACAP Advanced Common Application Platform
- ACAP is primarily based on GEM and DASE, and includes additional functionality from OCAP.
- GEM provides a framework for the definition of a GEM Terminal Specification.
- the ACAP specification builds on GEM by adding specification elements in order to offer a higher degree of interoperability among different environments based on digital TV specifications from ATSC and SCTE.
- An ACAP Application is a collection of information which is processed by an application environment in order to interact with an end-user or otherwise alter the state of the application environment.
- ACAP Applications are classified into two categories depending upon whether the initial application content processed is of a procedural or a declarative nature. These categories of applications are referred to as procedural (ACAP-J) and declarative (ACAP-X) applications, respectively.
- An example of an ACAP-J application is a Java TVTM Xlet composed of compiled JavaTM byte code in conjunction with other multimedia content such as graphics, video, and audio.
- An example of an ACAP-X application is a multimedia document composed of XHTML markup, style rules, scripts, and embedded graphics, video, and audio.
- JMF Sun Microsystems Java Media Framework APIs
- J2SE Java 2 Platform, Standard Edition
- JMF Player API programmers can implement support for many audio or video formats by building upon an established media playback framework.
- standard implementations provide built-in support for common formats such as muLaw, Apple AIFF, and Microsoft PC WAV for audio, as well as Apple QuickTime video, Microsoft AVI video, and Motion Picture Expert Group's MPEG formats for video.
- Multimedia playback can also be readily integrated into applets and applications alike with only a limited amount of code.
- JMF also allows use of native methods for greater speed, and hence more optimized performance on each platform.
- the common Java Media Player API ensures that applets and standalone applications will run on any Java platform.
- the parametric system of MPEG-4 consists of a Systems Demultiplex (Demux) overseen by digital media integration framework (DMIF), scene graph and media decoders, buffers, compositer and renderer.
- DMIF digital media integration framework
- JVM and JMF Java Virtual Machine and Java Media Framework
- the invention includes a specification of an interfacing method in the form of an application programming interface (API). Hot object, directional, trick mode, transparency and other interfaces are also specified.
- the depacketizer outputs this data using an interface designed such that it is generic across a number of codecs.
- the interface passes all relevant information to the decoder where the actual depacketized data stream will be decompressed.
- the RTPSM need not know of any codec details since the depacketizer handles all codec specific issues.
- a default format is described for data that is output by a depacketizer. This data is provided to a handler that is aware of this format. Pluggable depacketizer naming and searching conventions are designed according to JMF's player factory architecture, and use the same rules for integrating depacketizers into the RTPSM.
- Embodiments provide a "plug-in" decoder architecture that allows software decoders to be transparently downloaded, along with media data.
- User applications are able to support new media types as long as the corresponding plug-in decoder is available with the media data. Persistent storage requirements are decreased because the downloaded decoder is transient, existing in application memory for the duration of execution of the user application.
- the architecture also supports use of plug-in decoders already installed in the user computer.
- One embodiment is implemented with object-based class files executed in a virtual machine to form a media application.
- a media data type is determined from incoming media data, and used to generate a class name for a corresponding codec (coder-decoder) object.
- a class path vector is searched, including the source location of the incoming media data, to determine the location of the codec class file for the given class name.
- the virtual machine's class loader loads the class file for integration into the media application. If the codec class file is located across the network at the source location of the media data, the class loader downloads the codec class file from the network. Once the class file is loaded into the virtual machine, an instance of the codec class is created within the media application to decode/decompress the media data as appropriate for the media data type.
- MPEG-J Java application programming interfaces
- the platform is a device like a set-top box or a PC with Java packages conforming to a well-defined Java platform.
- the Java-based application consists of Java byte code, which may be available from a local source, like a hard disk, or it may be loaded from a remote site over a network.
- the MPEG-J Java byte code may be available as a separate elementary stream.
- the MPEG-4 system is the "Presentation engine" of MPEG-J.
- MPEG-J provides programmatic control through an "Application engine” which enhances the MPEG-4 browser by providing added interactive capability.
- text can be synthesized into digitized audio data and the digitized audio data can be encapsulated in VoIP-compliant packets which can be transmitted over the VoIP communications path to the telephony gateway server.
- the JMF media interface is used to establish a data path for transporting the digital audio data between the speech application and the voice call connection.
- IP device DCM IP device control module
- the IP device providing API support to translate and relay calls between the proxy and the server so that at least one HAVi compliant device can communicate with the IP device.
- JMF and C++ graphic libraries are used in conjunction with a streaming module to get the stream data and display the stream data.
- United States Patent Application Publication 20030037331 to Lee published February 20, 2003 and entitled "System and Method for Highly Scalable Video on Demand” discloses a system and method for providing video on demand including pre-scheduled multicasts of videos as well as dynamically initiated transmissions of the front portion of videos. Users may first receive a dynamically initiated front portion of a video and then be merged into a pre-scheduled multicast. The dynamically initiated transmission is also a multicast. Multiple admission controllers and a single server coordinate the dynamically initiated transmissions for any one video. Preferably, interactive controls are supported without requiring extra server-side resources, and latency is automatically equalized between users admitted via the pre-scheduled and the dynamically initiated transmissions. A user receiving a video via a pre-scheduled multicast does not need to change channels to finish receiving the video transmitted. Client applications implemented using the Java programming language and the Java Media Framework (JMF) are also disclosed.
- JMF Java Media Framework
- OCAP for example, allows an application to extend the given protocols in an application-specific fashion. This is performed by calling the JMF PackageManager "set-prefix" methods. Setting the prefixes to provide an extended protocol is defined by JMF, which allows changes made by the "set” methods to be made persistent by providing commit-prefix methods.
- the present invention addresses the foregoing needs by disclosing an improved on-demand apparatus and associated methods.
- the term "application” refers generally to a unit of executable software that implements theme-based functionality
- the themes of applications vary broadly across any number of disciplines and functions (such as e-commerce transactions, brokerage transactions, mortgage interest calculation, 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.
- computer program is meant to include any sequence or human or machine cognizable steps which perform a function.
- Such program may be rendered in virtually any programming language or environment including, for example, C/C++, Fortran, COBOL, PASCAL, assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), and the like, as well as object-oriented environments such as the Common Object Request Broker Architecture (CORBA), JavaTM (including J2ME, Java Beans, etc.) and the like.
- CORBA Common Object Request Broker Architecture
- JavaTM including J2ME, Java Beans, etc.
- middleware refers to software that generally runs primarily at an intermediate layer in a software or protocol stack. For example, middleware may run on top of an operating system and platform hardware, and below applications.
- component refers generally to a unit or portion of executable software that is based on a related set of functionalities.
- a component could be a single class in JavaTM or C++.
- module refers generally to a loosely coupled yet functionally related set of components.
- process refers to executable software that runs within its own CPU environment. This means that the process is scheduled to run based on a time schedule or system event. It will have its own Process Control Block (PCB) that describes it.
- PCB Process Control Block
- the PCB will include items such as the call stack location, code location, scheduling priority, etc.
- task and “process” are typically interchangeable with regard to computer programs.
- a server process is an executable software process that serves various resources and information to other processes (clients) that request them.
- the server may send resources to a client unsolicited if the client has previously registered for them, or as the application author dictates.
- DTV Network Provider refers to a cable, satellite, or terrestrial network provider having infrastructure required to deliver services including programming and data over those mediums.
- network and “bearer network” refer generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, satellite networks, telco networks, and data networks (including MANs, WANs, LANs, WLANs, internets, and intranets).
- HFC hybrid fiber coax
- Such networks or portions thereof may utilize any one or more different topologies (e.g., ring, bus, star, loop, etc.), transmission media (e.g., wired/RF cable, RF wireless, millimeter wave, optical, etc.) and/or communications or networking protocols (e.g., SONET, DOCSIS, IEEE Std. 802.3, ATM, X.25, Frame Relay, 3GPP, 3GPP2, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).
- HFC hybrid fiber coax
- satellite networks e.g., satellite networks, telco networks, and data networks (including MANs, WAN
- head-end refers generally to a networked system controlled by an operator (e.g., an MSO or multimedia specific 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.
- DSTBs may literally take on any configuration, and can be retail devices meaning that consumers may or may not obtain their DSTBs from the MSO exclusively. Accordingly, it is anticipated that MSO networks may have client devices from multiple vendors, and these client devices will have widely varying hardware capabilities. Multiple regional head-ends may be in the same or different cities.
- client device and “end user device” include, but are not limited to, personal computers (PCs) and minicomputers, whether desktop, laptop, or otherwise, set-top boxes such as the Motorola DCT2XXX/5XXX and Scientific Atlanta Explorer 2XXX/3XXX/4XXX/8XXX series digital devices, personal digital assistants (PDAs) such as the Apple Newton®, "Palm®” family of devices, handheld computers such as the Hitachi “VisionPlate”, Dell Axim X3/X5, personal communicators such as the Motorola Accompli devices, Motorola EVR-8401, J2ME equipped devices, cellular telephones, or literally any other device capable of interchanging data with a network.
- PCs personal computers
- minicomputers whether desktop, laptop, or otherwise, set-top boxes such as the Motorola DCT2XXX/5XXX and Scientific Atlanta Explorer 2XXXX/3XXX/4XXX/8XXX series digital devices
- PDAs personal digital assistants
- handheld computers such as the Hitachi "VisionPlate”, Dell
- CPE Consumer Premises Equipment
- host device refers generally to a terminal device that has access to digital television content via a satellite, cable, or terrestrial network. The host device functionality may be integrated into a digital television (DTV) set.
- DTV digital television
- consumer premises equipment includes such electronic equipment such as set-top boxes, televisions, Digital Video Recorders (DVR), gateway storage devices (Furnace), and ITV Personal Computers.
- network agent refers to any network entity (whether software, firmware, and/or hardware based) adapted to perform one or more specific purposes.
- a network agent may comprise a computer program running in server belonging to a network operator, which is in communication with one or more processes on a CPE or other device.
- processor is meant to include any integrated circuit or other electronic device (or collection of devices) capable of performing an operation on at least one instruction including, without limitation, reduced instruction set core (RISC) processors, CISC microprocessors, microcontroller units (MCUs), CISC-based central processing units (CPUs), and digital signal processors (DSPs).
- RISC reduced instruction set core
- MCU microcontroller units
- CPU central processing units
- DSP digital signal processors
- the hardware of such devices may be integrated onto a single substrate (e.g., silicon "die"), or distributed among two or more substrates.
- various functional aspects of the processor may be implemented solely as software or firmware associated with the processor.
- on-demand refers to any service or condition invoked or initiated, either directly or indirectly, by a user, customer, individual, or entity (or their proxy), and includes without limitation VOD (video on demand), near-VOD or NVOD (i.e., where a request incurs a delay at the server or other entity prior to commencement of service, including so called “staggered multicast”), MOD (movies on-demand), NPVR (network personal video recorder), and COD (commerce on-demand).
- VOD video on demand
- NVOD near-VOD
- MOD moving on-demand
- NPVR network personal video recorder
- COD commerce on-demand
- UI refers to any human-system interface adapted to permit one- or multi-way interactivity between one or more users and the system.
- User interfaces include, without limitation, graphical UI, speech or audio UI, tactile UI, and even virtual UI (e.g., virtual reality).
- the present invention discloses, inter alia , a mechanism for implementing enhanced session and data/media stream management using pre-existing protocols.
- the invention is utilized in the context of on-demand (OD) services provided over a content-based network such as an HFC terrestrial cable system.
- OD on-demand
- Such networks have a plurality of consumer premises devices (CPE) or other such devices in data communication with the network; the interaction of these devices with various types of OD services is governed by standards that contain software reference frameworks (including APIs) for media handling.
- JMF Sun Microsystems Java media framework API
- MHP Multi-media Home Platform
- OCAP OpenCable application platform
- ACAP Advanced Common Application Platform
- the present invention advantageously extends the functionality of these media frameworks (e.g., JMF) over the baseline functionality called for in the standards, and further enables a network specific protocol for handling services such as on-demand (OD) in a standards-compliant and seamless fashion.
- the protocols provided by the present invention allow applications operating within the CPE's software environment to access the extension, a capability not present in the prior art. Furthermore, each of these protocols can be added to the CPE by a network-specific application using JMF.
- MSO or network-specific protocols can readily be added to the same or different CPE in order to facilitate use of e.g., OD services across multiple different networks.
- HFC hybrid fiber coax
- MSO multimedia specific operator
- CDP multimedia specific operator
- Fig. 1 illustrates a typical network component configuration with which the application media extension apparatus and methods of the present invention may be used.
- the various components of the network 100 include (i) one or more application origination points 102; (ii) one or more distribution servers 104; and (iii) consumer premises equipment (CPE) 106.
- the distribution server(s) 104 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, 106 is shown in Fig. 1 for simplicity, although it will be recognized that comparable architectures with multiple origination points, distribution servers, and/or CPE devices (as well as different network topologies) may be utilized consistent with the invention.
- the head-end architecture of Fig. 1a (described in greater detail below) may be used.
- the application origination point 102 comprises any medium that allows an application to be transferred to a distribution server 104.
- This can include for example an 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 distribution server 104 comprises a computer system where one or more applications can enter the network system.
- Distribution servers are well known in the networking arts, and accordingly not described further herein.
- Applications may be (i) "pushed" to the CPE (i.e., wherein the distribution server causes the application download to occur), (ii) "pulled” to the CPE (i.e., where the CPE causes the download), (iii) downloaded as the result of some third entity or device (such as a remote server); (iv) resident on the CPE at startup; or (v) combinations of the foregoing.
- the head-end architecture 150 comprises typical head-end 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 CPE configuration management module
- CMTS cable-modem termination system
- OOB OOB system
- the architecture 150 of Fig. 1a further includes a multiplexer/encrypter/modulator (MEM) 162 coupled to the HFC network 101 adapted to "condition" content for transmission over the network.
- MEM multiplexer/encrypter/modulator
- the distribution servers 104 are coupled to the LAN 160, which provides access to the MEM 162 and network 101 via one or more file servers 170.
- the head-end In the typical HFC network, information is carried across multiple channels.
- the head-end must be adapted to acquire the information for the carried channels from various sources.
- the channels being delivered from the head-end 150 to the CPE 106 (“downstream”) are multiplexed together in the head-end and sent to neighborhood hubs (not shown).
- Content (e.g., audio, video, etc.) is provided in each downstream (in-band) channel.
- the CPE 106 uses the out-of-band (OOB) DAVIC or DOCSIS channels and associated protocols.
- OOB out-of-band
- the OCAP 1.0 specification provides for networking protocols both downstream and upstream.
- the files and applications are configured as data and object carousels and may be sent in both the in-band and OOB channels.
- a carousel may be viewed as a directory containing files.
- the files of the carousel utilized herein are sent in a continuous round-robin fashion.
- the client device misses a desired or necessary file in one carousel transmission, it can wait for the next.
- the CPE portion of the application is configured as part of the program content on a given in-band or DOCSIS channel.
- the CPE portion is downloaded directly using IP (Internet Protocol) packet traffic in an Out-Of-Band channel.
- IP Internet Protocol
- the file carousel or other device providing the application to the CPE 106 via the aforementioned communication channels may be the distribution server 104 previously described, or alternatively a separate device which may or may not be physically co-located with the server (e.g., remote file servers 170 of Fig. 1a ).
- a remote file storage device (not shown) with carousel capability may be in data communication with the client device(s) via an out-of-band communications channel as described below, the download of the application files from the remote device being initiated by way of a query from the client device, or alternatively a signal generated by the server 104 and transmitted to the remote device.
- a remote file storage device (not shown) with carousel capability may be in data communication with the client device(s) via an out-of-band communications channel as described below, the download of the application files from the remote device being initiated by way of a query from the client device, or alternatively a signal generated by the server 104 and transmitted to the remote device.
- Figs. 2-3 exemplary methods for extending media frameworks within a network according to the present invention are now described in detail. It will be recognized that while the following embodiments are cast in terms of the exemplary MSO-based HFC network 100 of Fig. 1 , including CPE compliant with one or more of the aforementioned MHP, OCAP, and ACAP standards (including Java-based object-oriented programming environment and associated JMF), the invention may be applied to other types of APIs, software environments (including, without limitation C, C++, and Ada), and middleware environments (e.g., MHEG,), thereby providing significant flexibility.
- the invention may be applied to other types of APIs, software environments (including, without limitation C, C++, and Ada), and middleware environments (e.g., MHEG,), thereby
- the protocol set includes: (i) "ocap://" for accessing streaming broadcast media; (ii) "file://” for accessing files in a carousel or that have been cached in consumer premises equipment (CPE), and (iii) "dripfeed:” for accessing a slow feed of MPEG images that produce a slideshow effect.
- CPE consumer premises equipment
- Other standards have comparable sets of protocols; e.g., "dvb://" in MHP and "acap://" in ACAP for accessing streaming media broadcasts.
- the foregoing protocols are encapsulated in the Standards using a Locator object that contains the protocol, and any other terms necessary to identify a service and its elements.
- a source name could be used with a given protocol in order to locate a specific service in a broadcast, as in:
- the BNF production for a mini-language is: This example shows that a mini-language program consists of the keyword "program” followed by the declaration sequence, then the keyword “begin” and the statements sequence, finally the keyword “end” and a semicolon.
- Other types of BNF formats may be used consistent with the invention, the foregoing being merely illustrative in nature.
- the protocols must be supported by the media framework API (e.g., JMF) in each relevant standard.
- the exemplary JMF API(s) utilized within the OCAP, MHP and ACAP standards enables audio, video and other time-based media to be added to applications and applets built on Java technology.
- This package can capture, playback, stream, and transcode multiple media formats, and extends the Java 2 Platform, Standard Edition (J2SE) for multimedia developers by providing a toolkit to develop scalable, cross-platform technology.
- J2SE Java 2 Platform, Standard Edition
- the present invention is in no way limited to the standardized JMF APIs.
- the interface(s) provided with the trusted application(s) described herein may be customized to the particular application or CPE to which it will be distributed (in addition to the extension protocols).
- Combinations of standardized and non-standardized/customized APIs may be utilized as well in order to differentiate various services or features within the CPE or network.
- the JMF MediaHandler understands the content format of the media associated with a protocol string and the DataSource understands the actual messaging and packet protocol associated with a protocol string.
- MediaHandler is the base interface for objects that read and manage media content delivered from a DataSource.
- “SetSource” (DataSource source) sets the media source the MediaHandler should use to obtain content.
- OCAP allows an application to extend the given protocols in an application specific fashion. This is accomplished by calling the JMF PackageManager set prefix methods.
- a PackageManager maintains a persistent store of package-prefix lists.
- a package prefix specifies the prefix for a complete class name.
- a factory uses a package-prefix list to find a class that might belong to any of the packages that are referenced in the prefix list.
- the Manager uses package-prefix lists to find protocol handlers and content handlers for time-based media.
- the current version of a package-prefix list is obtained with the get ⁇ package-prefix>List method. This method returns the prefix list in use; any changes to the list take effect immediately. Unless it is made persistent with commit ⁇ package-prefix>List, a package-prefix list is only valid while the Manager is referenced. The commit ⁇ package-prefix>List method ensures that any changes made to a package-prefix list are still visible the next time that the Manager is referenced.
- JMF provides an extended protocol by setting the prefixes.
- JMF allows changes made by the set methods to be made persistent by providing commit prefix methods.
- OCAP does not allow an application to call the commit prefix methods, only the set prefix methods. Setting new prefixes adds DataSource/MediaHandler pairs to the system.
- the exemplary configuration of the present invention discloses a specific extension allowable by the relevant standards, as well as changes to these standards to allow the (JMF) extensions to be made persistent (i.e., accessible) to all applications running on the CPE 106 or other client device.
- JMF extensions specify one or more "anything on-demand” protocols.
- Various services including, without limitation, video on-demand (VOD), movies on-demand (MOD), near video on-demand (NVOD), and network personal video recorder (NPVR) are provided using multiple protocols. Each of these particular protocols can be added to the CPE 106 by a network-specific application using the JMF.
- An exemplary on-demand environment useful with the present invention comprises the Time Warner Cable iCONTROL system, which lets users choose from a variety of different input sources through the user's digital set-top box.
- the Time Warner system gives the user the ability to pause, fast forward, and rewind the content. The user pays only for the programs ordered.
- the user's remote control is used to choose the program from a selection listed on screen menus. Movies, sports, specials, original series, and music videos are available for viewing.
- the user has unlimited access to the selected content for a period of 24 hours after initiation.
- a service such as VOD will typically be implemented using one or more protocols in a first MSO's network, and one or more different protocols in a second MSO's network.
- the technique of the present invention allows services of the same type (e.g., a particular instance of a VOD application, all VOD applications generally, or even all OD applications generally) that are implemented using different protocols to be added to CPE in various different networks having different MSOs.
- Fig. 2 illustrates an exemplary method for developing a network-specific protocol according to the invention.
- the exemplary JMF protocol extension capability provides a mechanism whereby an MSO or other application downloaded to the CPE 106 can install a protocol specific to the particular network in which it operates, and that will run in a standards-compliant environment (see discussion of Fig. 3 below).
- the method 200 of developing the specific protocol(s) comprises first developing a DataSource (step 202).
- the defined DataSource implements the protocol to communicate between a head-end 150 or other network agent and the CPE 106. It also implements the protocol(s) to, inter alia: (i) setup a session, (ii) handshake or negotiate conditional access parameters, (iii) specify the content or data channel that the on-demand (OD) event will be sent to, and (iv) handle messaging for "trick” or other associated functional modes (e.g., play, pause, rewind, fast-forward).
- OD on-demand
- a MediaHandler is developed for the content format delivered by the network-specific protocol.
- the MediaHandler may use another MediaHandler specified by OCAP, ACAP, or MHP if the content format is already supported (e.g., MPEG-2).
- the MediaHandler developed per step 204 comprises a framework (interface) which supports a developed "Player” as previously described herein; the Player implements MediaHandler.
- a controller is developed that can be attached to the developed Player.
- the controller is used for, e.g., special controls of functions that are specific to the protocol, such "trick" modes. This approach allows the user to access controls of the playback using a GUI or other UI that has access to the controller.
- the controller in turn will access the DataSource to cause the appropriate messages to be sent, and the corresponding functions to be executed.
- an application developer will create an application required by an MSO and containing the aforementioned JMF components to allow a network-specific protocol to be supported in CPE (e.g., retail) devices.
- the MSO places the application in a multiplex transport stream delivered to CPE.
- An OCAP implementation will then download the JMF-equipped application and launch it if signaling (i.e. SI tables) from the head end so dictate.
- signaling i.e. SI tables
- Fig. 3 an exemplary embodiment of the method of implementing the network specific protocol components developed under the method 200 of Fig. 2 is described.
- the JMF components are developed under that method 200 (step 302), they are placed inside of one or more applications that are configured to use the components (step 304).
- the target application(s) are configured to contain the developed classes and interfaces within their application directory hierarchy. This may include files or other components in addition to the aforementioned items that are used to support the JMF components.
- a DataSource may use a plurality of classes to implement a protocol.
- the development processes (method 200 of Fig. 2 ) and the assembly or configuration of the target application(s) therefrom (step 304 of Fig. 3 ) can be performed contemporaneously by the same or different entity, or alternatively non-contemporaneously by the same or different entity.
- the network-specific protocol components are developed and assembled into the application contemporaneously via one application authoring entity.
- sets of network specific protocol components are developed, each set being adapted to, e.g., a different MSO environment.
- the application authoring entity assembles the requested application(s) from the relevant protocol component set according to the individual network parameters, and then delivers it directly (or latently) to the requesting entity.
- the CPE 106 itself can be used to assemble the network-specific protocol ("extended") application(s).
- the CPE may be provided with the aforementioned set(s) of MSO-specific components in advance (such as via download or at time of manufacture/installation), and an editor application which uses the appropriate component set in conjunction with a downloaded "generic" application blank to develop the requested application effectively on-demand (or near-OD).
- the configured application(s) is/are disposed on any CPE 106 or other network device that meets the requirements of one of the relevant standards (step 306).
- CPE may comprise, e.g., an OCAP and MHP-capable DSTB ( Fig. 5 ).
- the configured application(s) may be downloaded from the head-end 150, a network agent or other designated source, third party provider, or even provided via a data interface at the CPE 106 (such as a WiFi interface, IEEE-1394 port, or even a mass storage device such as a HDD, CD-ROM, flash cartridge, or USB Key).
- purchased or leased CPE can be pre-configured with the applications at time of sale or installation, including where the CPE as sold or leased includes a suite of pre-configured OD applications each adapted for a different MSO environment (e.g., a first version of an OD-based application configured for use on Time Warner Cable networks, a second version configured for use on Cox Cable networks, etc.).
- a suite of pre-configured OD applications each adapted for a different MSO environment (e.g., a first version of an OD-based application configured for use on Time Warner Cable networks, a second version configured for use on Cox Cable networks, etc.).
- the network-specific application is launched (step 308) either immediately or with some degree of latency. Launching the application may be made automatic, conditional upon some prerequisite or instigating event (such as the user selecting the application), or otherwise.
- the application sets the prefixes (i.e., paths to the DataSource and MediaHandler) using the JMF PackageManager set prefix methods previously described herein (step 310).
- the prefixes are network specific, so they are set by a network application.
- the prefixes are set in advance, such as at the time of manufacture or installation.
- the JMF will associate the Locator with the correct DataSource/MediaHandler pair.
- a first network's OD service can be implemented using a first protocol
- a second network's OD service can be implemented using a second protocol, but both can be implemented in CPE in a standards compliant fashion.
- both (i) one CPE with multiple network protocol capability, and (ii) a plurality of CPE each with only one network protocol, can be implemented.
- one CPE can have MSO-specific variants of the OD application for use with each different network.
- each CPE has access only to one MSO, and hence only requires one network-specific protocol.
- the present invention notably provides, inter alia , the ability for a standards-compliant CPE to download (or self-assemble) a tailored network-specific OD application which has access to the JMF or other extension associated with the relevant standard(s).
- each application runs in its own physical or logical Java virtual machine (JVM).
- JVM Java virtual machine
- This approach prevents many security issues.
- EPG electronic program guide
- MV music video
- the EPG and MV would both have to be downloaded with all the protocol class files in a redundant fashion, or they both have to be put into a single application in the current standards definition, or one application would have to register objects with the OCAP implementation using IXC, so that other applications could get to the network specific protocol handlers.
- IXC objects registered would have to provide a wrapper around JMF calls and are thus redundant.
- the present invention allows an application with a special network permission (which may be established from the head end 150, authoring entity, or even the CPE 106), to call the JMF commit prefixes methods previously described herein.
- a special network permission which may be established from the head end 150, authoring entity, or even the CPE 106
- JMF definition this makes persistent the changes caused by the set prefixes methods, thereby making the extension available to applications running on the CPE ( Fig. 4b ).
- OCAP Open Control Protocol
- applications are Java-based, and uses the Java-based permission scheme to provide various capabilities to applications in the network.
- Signed (trusted) applications are capable of receiving permissions in addition to those available to unsigned applications.
- an MSO or other entity can selectively assign application permissions to trusted applications of their choice. In the present case, these permissions would include a signed certificate from the MSO.
- the "using" application would need to have such a signed certificate from, e.g., Time Warner Cable (TWC) for that application to be able to access the extended protocol applicable to TWC networks, thereby frustrating unsigned/unauthorized or cross-network applications from gaining access.
- TWC Time Warner Cable
- the device 500 generally comprises and OpenCable-compliant embedded CPE 106 having an RF front end 502 (including modulator/demodulator) for interface with the HFC network 101 of Fig. 1 , digital processor(s) 504, storage device 506, and a plurality of interfaces 508 (e.g., video/audio interfaces, IEEE-1394 "Firewire", USB, serial/parallel ports, etc.) for interface with other end-user apparatus such as televisions, personal electronics, computers, WiFi or other network hubs/routers, etc.
- interfaces 508 e.g., video/audio interfaces, IEEE-1394 "Firewire", USB, serial/parallel ports, etc.
- Other components which may be utilized within the device (deleted from Fig.
- RF tuner stages include RF tuner stages, various processing layers (e.g., DOCSIS MAC, OOB channels, MPEG, etc.) as well as media processors and other specialized SoC or ASIC devices.
- processing layers e.g., DOCSIS MAC, OOB channels, MPEG, etc.
- media processors and other specialized SoC or ASIC devices are well known to those of ordinary skill in the cable and embedded system fields, and accordingly not described further herein.
- the device 500 of Fig. 5 is also provided with an OCAP 1.0-compliant monitor application and Java-based middleware which, inter alia , manages the operation of the device and applications running thereon, including implementing the download, application launch, and path configuration for network specific protocols as previously described herein.
- OCAP 1.0-compliant monitor application and Java-based middleware which, inter alia , manages the operation of the device and applications running thereon, including implementing the download, application launch, and path configuration for network specific protocols as previously described herein.
- middlewares e.g., MHEG, or DASE
- the device 500 may comprises a wireless device coupled to the network via a wireless link (e.g., 802.11, Bluetooth, 3G, or even UWB) of sufficient data bandwidth.
- the device 500 of Fig. 5 may be integrated with other device of components, whether related to the content-based network over which the on-demand services are provided or otherwise.
- the device 500 may be integrated with an MHP-compliant satellite receiver unit of the type well known in the art.
- the device 500 may also be integrated with a display device as well or in the alternative, so as to provide an "all-in-one" type form factor to the consumer.
- extension protocols and associated techniques of the present invention can also advantageously be used in conjunction with (and without interfering with) other functions resident in the CPE, such as for example the hardware registry described in co-owned and co-pending U.S. patent application Serial No. 10/723,959 filed November 24, 2003 and entitled “Methods And Apparatus For Hardware Registration In A Network Device", the error logging functionality described in co-owned and co-pending U.S. patent application Serial No. 10/722,206 filed November 24, 2003 and entitled “Methods And Apparatus For Event Logging In An Information Network”, and the display element management functionality described in co-owned and co-pending U.S. patent application Serial No.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Communication Control (AREA)
- Stored Programmes (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
- The present invention relates generally to the field of software applications used on an information network (such as a cable television network), and specifically to the accessibility and control of on-demand and related services at certain electronic devices such as, e.g., set-top boxes used in the network during operation of the software.
- Software applications are well known in the prior art. Such applications may run on literally any type of electronic device, and may be distributed across two or more locations or devices connected by a network. Often, a so-called "client/server" architecture is employed, where one or more portions of applications disposed on client or consumer premises devices (e.g., PCs, PDAs, digital set-top boxes {DSTBs}, handheld computers, etc.) are operatively coupled and in communication with other (server) portions of the application. Such is the case in the typical hybrid fiber coax (HFC) or satellite content network, wherein consumer premises equipment or CPE (e.g., DSTBs or satellite receivers) utilize the aforementioned "client" portions of applications to communicate with their parent server portions in order to provide downstream and upstream communications and data/content transfer.
- Digital TV (DTV) is an emerging technology which utilizes digitized and compressed data formats (e.g., MPEG) for content transmission, as compared to earlier analog "uncompressed" approaches (e.g., NTSC). The DTV content may be distributed across any number of different types of bearer media or networks with sufficient bandwidth, including HFC, satellite, wireless, or terrestrial. DTV standards such as the OpenCable Application Platform middleware specification (e.g., Version 1.0, and incipient Version 2.0) require that applications be downloaded to CPE from the bearer or broadcast network in real-time. As is well known, the OCAP specification is a middleware software layer specification intended to enable the developers of interactive television services and applications to design such products so that they will run successfully on any cable television system in North America, independent of set-top or television receiver hardware or operating system software choices. OCAP enables manufacturers and retail distributors of set-tops, television receivers or other devices to build and sell devices to consumers that support all services delivered by cable operators.
- Multimedia Home Platform (MHP) defines a generic interface between interactive digital applications and the terminals on which those applications execute. This interface decouples different provider's applications from the specific hardware and software details of different MHP terminal implementations. It enables digital content providers to address all types of terminals ranging from low-end to high-end set top boxes, integrated digital TV sets and multimedia PCs. The MHP extends the existing DVB open standards for broadcast and interactive services in all transmission networks including satellite, cable, terrestrial and microwave systems.
- Multimedia Home Platform (MHP) Specification 1.0.X contains detailed information on the enhanced broadcasting and interactive profiles, as well as various MHP content formats including PNG, JPEG, MPEG-2 Video/Audio, subtitles and resident and downloadable fonts. MHP 1.0 further provides mandatory transport protocols including DSM-CC object carousel (broadcast) and IP (return channel), DVB-J application model and signaling, hooks for HTML content formats (DVB-HTML application model and signaling), a graphics reference model, and Annexes with DSM-CC object carousel profile, text presentation, minimum platform capabilities, and various APIs. The MHP 1.0 specification provides a set of features and functions required for the enhanced broadcasting and interactive broadcasting profiles. The enhanced broadcasting profile is intended for broadcast (one way) services, while the interactive broadcasting profile supports in addition interactive services and allows MHPs to use the Internet. New profiles will be added later based on the continuing work of the DVB project.
- Multimedia Home Platform (MHP) Specification 1.1.X contains further detailing of Interactive and Internet Access Profiles, stored application support, application download via broadcast or interaction channels, DVB-J extensions to better support international applications and smart cards, specification of DVB-HTML, greater support for plug-ins, and support for bi-directional referencing between MHP content and Internet content. MHP 1.1 builds on the MHP 1.0 specification in order to better support the use of the interaction channel and to specify elements which promote interoperability with Internet content.
- The Advanced Common Application Platform (ACAP) is a recently developed specification which aims to ensure interoperability between ACAP applications and different implementations of platforms supporting ACAP applications. The architecture and facilities of the ACAP Standard are intended to apply to broadcast systems and receivers for terrestrial (over-the-air) broadcast and cable TV systems. In addition, the same architecture and facilities may be applied to other transport systems (such as satellite).
- ACAP is primarily based on GEM and DASE, and includes additional functionality from OCAP. GEM provides a framework for the definition of a GEM Terminal Specification. The ACAP specification builds on GEM by adding specification elements in order to offer a higher degree of interoperability among different environments based on digital TV specifications from ATSC and SCTE.
- An ACAP Application is a collection of information which is processed by an application environment in order to interact with an end-user or otherwise alter the state of the application environment. ACAP Applications are classified into two categories depending upon whether the initial application content processed is of a procedural or a declarative nature. These categories of applications are referred to as procedural (ACAP-J) and declarative (ACAP-X) applications, respectively. An example of an ACAP-J application is a Java TV™ Xlet composed of compiled Java™ byte code in conjunction with other multimedia content such as graphics, video, and audio. An example of an ACAP-X application is a multimedia document composed of XHTML markup, style rules, scripts, and embedded graphics, video, and audio.
- Application environments are similarly classified into two categories depending upon whether they process procedural or declarative applications. These categories are referred to as ACAP-J and ACAP-X environments, respectively. An example of an ACAP-J environment is a Java Virtual Machine (JVM) and its associated Application Programming Interface (API) implementation. An example of an ACAP-X environment is an XHTML multimedia document browser, also known as a user agent.
- In the OCAP, MHP, and ACAP standards, several protocols are defined for accessing broadcast media and files. These generally specify use of the Sun Microsystems Java Media Framework APIs (hereinafter "JMF"). The JMF enables audio, video and other time-based media to be added to applications and applets built on Java technology. This optional package, which can capture, playback, stream, and transcode multiple media formats, extends the Java 2 Platform, Standard Edition (J2SE) for multimedia developers and provides a toolkit to develop scalable, cross-platform technology. The JMF includes a set of components, including the JMF Player API.
- With the JMF Player API, programmers can implement support for many audio or video formats by building upon an established media playback framework. In addition, standard implementations provide built-in support for common formats such as muLaw, Apple AIFF, and Microsoft PC WAV for audio, as well as Apple QuickTime video, Microsoft AVI video, and Motion Picture Expert Group's MPEG formats for video. Multimedia playback can also be readily integrated into applets and applications alike with only a limited amount of code.
- JMF also allows use of native methods for greater speed, and hence more optimized performance on each platform. At the same time, the common Java Media Player API ensures that applets and standalone applications will run on any Java platform.
- A variety of different approaches to implementing media handling and management within networked systems (including use of JMF) are disclosed in the prior art. For example,
United States Patent 6,092,107 to Eleftheriadis, et al. issued July 18, 2000 and entitled "System and method for interfacing MPEG-coded audiovisual objects permitting adaptive control" discloses a system and method allowing the adaptation of a non-adaptive system for playing/browsing coded audiovisual objects, such as the parametric system of MPEG-4. The system of the invention (programmatic system) incorporates adaptive behavior on top of the parametric system. The parametric system of MPEG-4 consists of a Systems Demultiplex (Demux) overseen by digital media integration framework (DMIF), scene graph and media decoders, buffers, compositer and renderer. The Java Virtual Machine and Java Media Framework (JVM and JMF) are used to various of the aforementioned components. The invention includes a specification of an interfacing method in the form of an application programming interface (API). Hot object, directional, trick mode, transparency and other interfaces are also specified. -
United States Patent No. 6,181,713 to Patki, et al. issued January 30, 2001 and entitled "Selectable depacketizer architecture" discloses a scheme that permits the use of a selectable depacketization module to depacketize data streams. An RTP session manager (RTPSM) is responsible for receiving RTP packets from a network and parsing/processing them. A specific depacketizer module is located at runtime depending on the coding decoding scheme ("codec") used to compress the incoming data stream. A naming convention is followed in order for a specific depacketizer to be located. The depacketizer receives data that has already been parsed and is in a readable form. The depacketizer outputs this data using an interface designed such that it is generic across a number of codecs. The interface passes all relevant information to the decoder where the actual depacketized data stream will be decompressed. The RTPSM need not know of any codec details since the depacketizer handles all codec specific issues. A default format is described for data that is output by a depacketizer. This data is provided to a handler that is aware of this format. Pluggable depacketizer naming and searching conventions are designed according to JMF's player factory architecture, and use the same rules for integrating depacketizers into the RTPSM. -
United States Patent No. 6,216,152 to Wong, et al. issued April 10, 2001 and entitled "Method and apparatus for providing plug in media decoders" discloses a method and apparatus for providing plug-in media decoders. Embodiments provide a "plug-in" decoder architecture that allows software decoders to be transparently downloaded, along with media data. User applications are able to support new media types as long as the corresponding plug-in decoder is available with the media data. Persistent storage requirements are decreased because the downloaded decoder is transient, existing in application memory for the duration of execution of the user application. The architecture also supports use of plug-in decoders already installed in the user computer. One embodiment is implemented with object-based class files executed in a virtual machine to form a media application. A media data type is determined from incoming media data, and used to generate a class name for a corresponding codec (coder-decoder) object. A class path vector is searched, including the source location of the incoming media data, to determine the location of the codec class file for the given class name. When the desired codec class file is located, the virtual machine's class loader loads the class file for integration into the media application. If the codec class file is located across the network at the source location of the media data, the class loader downloads the codec class file from the network. Once the class file is loaded into the virtual machine, an instance of the codec class is created within the media application to decode/decompress the media data as appropriate for the media data type. -
United States Patent No. 6,631,350 Celi, Jr., et al. issued October 7, 2003 and entitled "Device-independent speech audio system for linking a speech driven application to specific audio input and output devices" discloses a device-independent speech audio system for linking a speech driven application to specific audio input and output devices can include a media framework for transporting digitized speech audio between speech driven applications and a plurality of audio input and output devices. The media framework can include selectable device-dependent parameters which can enable the transportation of the digitized speech to and from the plurality of audio input and output devices. The device-independent speech audio system also can include an audio abstractor configurable to provide specific ones of the selectable device-dependent parameters according to the specific audio input and output devices. Hence, the audio abstractor can provide a device-independent interface to the speech driven application for linking the speech driven application to the specific audio input and output devices. -
United States Patent No. 6,631,403 to Deutsch, et al. issued October 7, 2003 and entitled "Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems" discloses an MPEG-J collection of Java application programming interfaces (APIs) with which applications can be developed to interact with the platform and the content. In the context of MPEG-J, the platform is a device like a set-top box or a PC with Java packages conforming to a well-defined Java platform. The Java-based application consists of Java byte code, which may be available from a local source, like a hard disk, or it may be loaded from a remote site over a network. The MPEG-J Java byte code may be available as a separate elementary stream. The MPEG-4 system is the "Presentation engine" of MPEG-J. MPEG-J provides programmatic control through an "Application engine" which enhances the MPEG-4 browser by providing added interactive capability. -
United States Patent No. 6,654,722 to Aldous, et al. issued November 25, 2003 and entitled "Voice over IP protocol based speech system" discloses a VoIP-enabled speech server including a JMF interface and speech application which can be configured to communicate with a VoIP telephony gateway server over a VoIP communications path. In operation, the speech application can receive VoIP-compliant packets from the VoIP telephony gateway server over the VoIP communications path. Subsequently, digitized audio data can be reconstructed from the VoIP-compliant packets, and the digitized audio data can be speech-to-text converted. Additionally, text can be synthesized into digitized audio data and the digitized audio data can be encapsulated in VoIP-compliant packets which can be transmitted over the VoIP communications path to the telephony gateway server. The JMF media interface is used to establish a data path for transporting the digital audio data between the speech application and the voice call connection. -
United States Patent Application Publication 20020073244 to Davies, et al. published June 13, 2002 entitled "Method and an apparatus for the integration of IP devices into a HAVi network" discloses a method and apparatus for integrating IP devices into a HAVi network. An Internet Protocol (IP) and HAVi compliant device acts as a controller in the HAVi network and communicates with at least one HAVi compliant device using HAVi application programming interfaces (APIs). A server on the controller communicates with at least one IP device having a proxy and an IP and HAVi API. The server includes at least one IP device control module (IP device DCM) corresponding to the IP device. The IP device providing API support to translate and relay calls between the proxy and the server so that at least one HAVi compliant device can communicate with the IP device. In one embodiment, JMF and C++ graphic libraries are used in conjunction with a streaming module to get the stream data and display the stream data. -
United States Patent Application Publication 20030037331 to Lee published February 20, 2003 and entitled "System and Method for Highly Scalable Video on Demand" discloses a system and method for providing video on demand including pre-scheduled multicasts of videos as well as dynamically initiated transmissions of the front portion of videos. Users may first receive a dynamically initiated front portion of a video and then be merged into a pre-scheduled multicast. The dynamically initiated transmission is also a multicast. Multiple admission controllers and a single server coordinate the dynamically initiated transmissions for any one video. Preferably, interactive controls are supported without requiring extra server-side resources, and latency is automatically equalized between users admitted via the pre-scheduled and the dynamically initiated transmissions. A user receiving a video via a pre-scheduled multicast does not need to change channels to finish receiving the video transmitted. Client applications implemented using the Java programming language and the Java Media Framework (JMF) are also disclosed. - In the aforementioned OCAP, MHP and ACAP standards, several protocols are defined for accessing broadcast media and files. These protocols are indicated in string form, and are encapsulated in the standards using a Locator object that contains the protocol and any other terms necessary to identify a service and its elements. In each standard, the protocols must be supported by JMF. The JMF MediaHandler understands the content format of the media associated with a protocol string, and the JMF DataSource understands the actual messaging and packet protocol associated with a protocol string.
- OCAP, for example, allows an application to extend the given protocols in an application-specific fashion. This is performed by calling the JMF PackageManager "set-prefix" methods. Setting the prefixes to provide an extended protocol is defined by JMF, which allows changes made by the "set" methods to be made persistent by providing commit-prefix methods.
- However, neither OCAP nor the other prior art approaches described above allow an application to call these commit-prefix methods and make them persistent. This means when more than one application needs to add the same protocol, each application must perform a redundant set prefix process, or communicate with an application that has set the prefixes using Inter-Xlet communications (IXC), as defined by MHP 1.0.2 and complied with in OCAP 1.0.
- Accordingly, there is a need for improved apparatus and methods for providing network-specific services in a standards compliant fashion. Such improved apparatus and methods would ideally utilize existing media handling infrastructure (e.g., the JMF APIs or comparable) to enables a network specific protocol for handling various services within the device, such as video on-demand (VOD). Such improved apparatus and methods would also ideally permit an MSO or other entity to add the network-specific protocols to the device such that comparable services (e.g., VOD) could operate on CPE within a number of heterogeneous networks.
-
WO 00/24192A - Evain J-P: "The Multimedia Home Platform" EBU review-technical, European Broadcasting Union, Brussels, BE, no 275, 21 March 1998, pages 4 to 10 discussed the design of a multimedia home platform (MHP).
- The present invention addresses the foregoing needs by disclosing an improved on-demand apparatus and associated methods.
- In a first aspect of the invention, there is provided a method of operating Java-based consumer premises equipment according to
claim 1. - In a second aspect of the invention, there is provided Java-based consumer premises equipment for use in a content-based network according to claim 9.
- These and other aspects of the invention shall become apparent when considered in light of the disclosure provided below.
-
-
Fig. 1 is a functional block diagram illustrating an exemplary HFC network configuration useful with the present invention. -
Fig. 1a is a functional block diagram illustrating one exemplary head-end configuration of an HFC network useful with the present invention. -
Fig. 2 is a logical flow diagram illustrating an exemplary method for developing a network-specific protocol according to the invention. -
Fig. 3 is a logical flow diagram illustrating an exemplary embodiment of the method of implementing the network specific protocol components developed under the method ofFig. 2 . -
Fig. 4a is a graphical representation of the prior art definition of JMF extensions for CPE provided by the relevant standards such as OCAP, MHP and ACAP, illustrating definitions which can only be applied to the application that sets the prefixes. -
Fig. 4b is a graphical representation of an exemplary definition of JMF extensions according to the present invention, illustrating definitions which can be applied to any number of applications of the CPE, whether they set the prefixes or not. -
Fig. 5 is block diagram of a first embodiment of an improved electronic device (e.g., CPE) with extended protocol capability according to the present invention. - 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 theme-based functionality The themes of applications vary broadly across any number of disciplines and functions (such as e-commerce transactions, brokerage transactions, mortgage interest calculation, 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 "computer program" is meant to include any sequence or human or machine cognizable steps which perform a function. Such program may be rendered in virtually any programming language or environment including, for example, C/C++, Fortran, COBOL, PASCAL, assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), and the like, as well as object-oriented environments such as the Common Object Request Broker Architecture (CORBA), Java™ (including J2ME, Java Beans, etc.) and the like.
- As used herein, the term "middleware" refers to software that generally runs primarily at an intermediate layer in a software or protocol stack. For example, middleware may run on top of an operating system and platform hardware, and below applications.
- The term "component" refers generally to a unit or portion of executable software that is based on a related set of functionalities. For example, a component could be a single class in Java™ or C++. Similarly, the term "module" refers generally to a loosely coupled yet functionally related set of components.
- As used herein, the term "process" refers to executable software that runs within its own CPU environment. This means that the process is scheduled to run based on a time schedule or system event. It will have its own Process Control Block (PCB) that describes it. The PCB will include items such as the call stack location, code location, scheduling priority, etc. The terms "task" and "process" are typically interchangeable with regard to computer programs.
- A server process is an executable software process that serves various resources and information to other processes (clients) that request them. The server may send resources to a client unsolicited if the client has previously registered for them, or as the application author dictates.
- As used herein, the term "DTV Network Provider" refers to a cable, satellite, or terrestrial network provider having infrastructure required to deliver services including programming and data over those mediums.
- As used herein, the terms "network" and "bearer network" refer generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, satellite networks, telco networks, and data networks (including MANs, WANs, LANs, WLANs, internets, and intranets). Such networks or portions thereof may utilize any one or more different topologies (e.g., ring, bus, star, loop, etc.), transmission media (e.g., wired/RF cable, RF wireless, millimeter wave, optical, etc.) and/or communications or networking protocols (e.g., SONET, DOCSIS, IEEE Std. 802.3, ATM, X.25, Frame Relay, 3GPP, 3GPP2, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).
- As used herein, the term "head-end" refers generally to a networked system controlled by an operator (e.g., an MSO or multimedia specific 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. DSTBs may literally take on any configuration, and can be retail devices meaning that consumers may or may not obtain their DSTBs from the MSO exclusively. Accordingly, it is anticipated that MSO networks may have client devices from multiple vendors, and these client devices will have widely varying hardware capabilities. Multiple regional head-ends may be in the same or different cities.
- As used herein, the terms "client device" and "end user device" include, but are not limited to, personal computers (PCs) and minicomputers, whether desktop, laptop, or otherwise, set-top boxes such as the Motorola DCT2XXX/5XXX and Scientific Atlanta Explorer 2XXX/3XXX/4XXX/8XXX series digital devices, personal digital assistants (PDAs) such as the Apple Newton®, "Palm®" family of devices, handheld computers such as the Hitachi "VisionPlate", Dell Axim X3/X5, personal communicators such as the Motorola Accompli devices, Motorola EVR-8401, J2ME equipped devices, cellular telephones, or literally any other device capable of interchanging data with a network.
- Similarly, the terms "Consumer Premises Equipment (CPE)" and "host device" refer to any type of electronic equipment located within a consumer's or user's premises and connected to a network. The term "host device" refers generally to a terminal device that has access to digital television content via a satellite, cable, or terrestrial network. The host device functionality may be integrated into a digital television (DTV) set. The term "consumer premises equipment" (CPE) includes such electronic equipment such as set-top boxes, televisions, Digital Video Recorders (DVR), gateway storage devices (Furnace), and ITV Personal Computers.
- As used herein, the term "network agent" refers to any network entity (whether software, firmware, and/or hardware based) adapted to perform one or more specific purposes. For example, a network agent may comprise a computer program running in server belonging to a network operator, which is in communication with one or more processes on a CPE or other device.
- As used herein, the term "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 and 2.0. DOCSIS (version 1.0) is a standard and protocol for internet access using a "digital" cable network. DOCSIS 1.1 is interoperable with DOCSIS 1.0, and has data rate and latency guarantees (VoIP), as well as improved security compared to DOCSIS 1.0. DOCSIS 2.0 is interoperable with 1.0 and 1.1, yet provides a wider upstream band (6.4 MHz), as well as new modulation formats including TDMA and CDMA. It also provides symmetric services (30 Mbps upstream).
- The term "processor" is meant to include any integrated circuit or other electronic device (or collection of devices) capable of performing an operation on at least one instruction including, without limitation, reduced instruction set core (RISC) processors, CISC microprocessors, microcontroller units (MCUs), CISC-based central processing units (CPUs), and digital signal processors (DSPs). The hardware of such devices may be integrated onto a single substrate (e.g., silicon "die"), or distributed among two or more substrates. Furthermore, various functional aspects of the processor may be implemented solely as software or firmware associated with the processor.
- As used herein, the term "on-demand" refers to any service or condition invoked or initiated, either directly or indirectly, by a user, customer, individual, or entity (or their proxy), and includes without limitation VOD (video on demand), near-VOD or NVOD (i.e., where a request incurs a delay at the server or other entity prior to commencement of service, including so called "staggered multicast"), MOD (movies on-demand), NPVR (network personal video recorder), and COD (commerce on-demand).
- As used herein, the term "user interface" or UI refers to any human-system interface adapted to permit one- or multi-way interactivity between one or more users and the system. User interfaces include, without limitation, graphical UI, speech or audio UI, tactile UI, and even virtual UI (e.g., virtual reality).
- The present invention discloses, inter alia, a mechanism for implementing enhanced session and data/media stream management using pre-existing protocols. In the exemplary embodiment, the invention is utilized in the context of on-demand (OD) services provided over a content-based network such as an HFC terrestrial cable system. Such networks have a plurality of consumer premises devices (CPE) or other such devices in data communication with the network; the interaction of these devices with various types of OD services is governed by standards that contain software reference frameworks (including APIs) for media handling. One such software framework comprises the well known Sun Microsystems Java media framework API (JMF), which is specified in most major cable media-related middleware standards including the Multi-media Home Platform (MHP) standard, the OpenCable application platform (OCAP) standard, and the Advanced Common Application Platform (ACAP) application programming interfaces (APIs).
- The present invention advantageously extends the functionality of these media frameworks (e.g., JMF) over the baseline functionality called for in the standards, and further enables a network specific protocol for handling services such as on-demand (OD) in a standards-compliant and seamless fashion. The protocols provided by the present invention allow applications operating within the CPE's software environment to access the extension, a capability not present in the prior art. Furthermore, each of these protocols can be added to the CPE by a network-specific application using JMF.
- Moreover, MSO or network-specific protocols can readily be added to the same or different CPE in order to facilitate use of e.g., OD services across multiple different networks.
- Exemplary embodiments of the apparatus and methods of the present invention are now described in detail. While these exemplary embodiments are described in the context of the aforementioned hybrid fiber coax (HFC) cable system architecture having an multimedia specific operator (MSO), digital networking capability, and plurality of client devices/CPE, the general principles and advantages of the invention may be extended to other types of networks and architectures, whether broadband, narrowband, wired or wireless, or otherwise, the following therefore being merely exemplary in nature.
- It will also be appreciated that while described generally in the context of a consumer (i.e., home) end user domain, the present invention may be readily adapted to other types of environments (e.g., commercial/enterprise, government/military, etc.) as well. Myriad other applications are possible.
-
Fig. 1 illustrates a typical network component configuration with which the application media extension apparatus and methods of the present invention may be used. The various components of the network 100 include (i) one or more application origination points 102; (ii) one or more distribution servers 104; and (iii) consumer premises equipment (CPE) 106. The distribution server(s) 104 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, and/or CPE devices (as well as different network topologies) may be utilized consistent with the invention. For example, the head-end architecture ofFig. 1a (described in greater detail below) may be used. - The
application origination point 102 comprises any medium that allows an application to be transferred to a distribution server 104. This can include for example an 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 distribution server 104 comprises a computer system where one or more applications can enter the network system. Distribution servers are well known in the networking arts, and accordingly not described further herein.
- The
CPE 106 includes any equipment in the "consumers' premises" (or other locations, whether local or remote to the distribution server 104) that can be accessed by a distribution server 104.Such CPEs 106 comprise processors and associated computer memory adapted to store and run the downloaded or resident application. In the present context, at least a portion of the application is typically downloaded to theCPE 106, wherein the latter executes the downloaded application(s)/components, although it will be recognized that all of applications may conceivably be uploaded to the server, or alternatively transferred to another device, such as other networked CPE or the like. Applications may be (i) "pushed" to the CPE (i.e., wherein the distribution server causes the application download to occur), (ii) "pulled" to the CPE (i.e., where the CPE causes the download), (iii) downloaded as the result of some third entity or device (such as a remote server); (iv) resident on the CPE at startup; or (v) combinations of the foregoing. - Referring now to
Fig. 1a , one exemplary embodiment of the network head-end architecture useful with the invention is described. As shown inFig. 1a , the head-end architecture 150 comprises typical head-end components and services includingbilling module 152, subscriber management system (SMS) and CPE configuration 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 invention. It will also be appreciated that the head-end configuration depicted inFig. 1a is high-level, conceptual architecture and that each MSO may have multiple head-ends deployed using custom architectures. - The
architecture 150 ofFig. 1a further includes a multiplexer/encrypter/modulator (MEM) 162 coupled to theHFC network 101 adapted to "condition" content for transmission over the network. In the present context, the distribution servers 104 are coupled to theLAN 160, which provides access to theMEM 162 andnetwork 101 via one or more file servers 170. In the typical HFC network, information is carried across multiple channels. Thus, the head-end must be adapted to acquire the information for the carried channels from various sources. Typically, the channels being delivered from the head-end 150 to the CPE 106 ("downstream") are multiplexed together in the head-end and sent to neighborhood hubs (not shown). - Content (e.g., audio, video, etc.) is provided in each downstream (in-band) channel. To communicate with the head-end, the
CPE 106 uses the out-of-band (OOB) DAVIC or DOCSIS channels and associated protocols. The OCAP 1.0 specification provides for networking protocols both downstream and upstream. To distribute files and applications to theCPE 106, the files and applications are configured as data and object carousels and may be sent in both the in-band and OOB channels. As is well known in the art, a carousel may be viewed as a directory containing files. The files of the carousel utilized herein are sent in a continuous round-robin fashion. If the client device misses a desired or necessary file in one carousel transmission, it can wait for the next. Alternatively, in another embodiment, the CPE portion of the application is configured as part of the program content on a given in-band or DOCSIS channel. As yet another embodiment, the CPE portion is downloaded directly using IP (Internet Protocol) packet traffic in an Out-Of-Band channel. Note that the file carousel or other device providing the application to theCPE 106 via the aforementioned communication channels may be the distribution server 104 previously described, or alternatively a separate device which may or may not be physically co-located with the server (e.g., remote file servers 170 ofFig. 1a ). For example, a remote file storage device (not shown) with carousel capability may be in data communication with the client device(s) via an out-of-band communications channel as described below, the download of the application files from the remote device being initiated by way of a query from the client device, or alternatively a signal generated by the server 104 and transmitted to the remote device. Many other permutations of the foregoing system components and communication methods may also be used consistent with the present invention, as will be recognized by those of ordinary skill in the field. - Referring now to
Figs. 2-3 , exemplary methods for extending media frameworks within a network according to the present invention are now described in detail. It will be recognized that while the following embodiments are cast in terms of the exemplary MSO-based HFC network 100 ofFig. 1 , including CPE compliant with one or more of the aforementioned MHP, OCAP, and ACAP standards (including Java-based object-oriented programming environment and associated JMF), the invention may be applied to other types of APIs, software environments (including, without limitation C, C++, and Ada), and middleware environments (e.g., MHEG,), thereby providing significant flexibility. - In the exemplary MHP, OCAP, and ACAP standards, several protocols are defined for accessing broadcast media and files. These protocols are typically indicated in a known format (e.g., string form). Using the OCAP standard as an example, the protocol set includes: (i) "ocap://" for accessing streaming broadcast media; (ii) "file://" for accessing files in a carousel or that have been cached in consumer premises equipment (CPE), and (iii) "dripfeed:" for accessing a slow feed of MPEG images that produce a slideshow effect. Other standards have comparable sets of protocols; e.g., "dvb://" in MHP and "acap://" in ACAP for accessing streaming media broadcasts.
- The foregoing protocols are encapsulated in the Standards using a Locator object that contains the protocol, and any other terms necessary to identify a service and its elements. For example, a source name could be used with a given protocol in order to locate a specific service in a broadcast, as in:
- "ocap://NBC"
- meaning "is defined as";
| - meaning "or"; and
<> - nonterminal :: = sequence_of_alternatives consisting of strings of terminals or nonterminals separated by the meta-symbol |
- For example, the BNF production for a mini-language is: This example shows that a mini-language program consists of the keyword "program" followed by the declaration sequence, then the keyword "begin" and the statements sequence, finally the keyword "end" and a semicolon. Other types of BNF formats (extended or otherwise) may be used consistent with the invention, the foregoing being merely illustrative in nature.
- In the exemplary embodiment, the protocols must be supported by the media framework API (e.g., JMF) in each relevant standard. As previously described, the exemplary JMF API(s) utilized within the OCAP, MHP and ACAP standards enables audio, video and other time-based media to be added to applications and applets built on Java technology. This package can capture, playback, stream, and transcode multiple media formats, and extends the
Java 2 Platform, Standard Edition (J2SE) for multimedia developers by providing a toolkit to develop scalable, cross-platform technology. - It will be appreciated, however, that the present invention is in no way limited to the standardized JMF APIs. For example, the interface(s) provided with the trusted application(s) described herein may be customized to the particular application or CPE to which it will be distributed (in addition to the extension protocols). Combinations of standardized and non-standardized/customized APIs may be utilized as well in order to differentiate various services or features within the CPE or network.
- In the particular case of JMF, the JMF MediaHandler understands the content format of the media associated with a protocol string and the DataSource understands the actual messaging and packet protocol associated with a protocol string. MediaHandler is the base interface for objects that read and manage media content delivered from a DataSource. There are typically three (3) supported types of MediaHandler/code>: (i) Player, (ii) MediaProxy and (iii) DataSink. "SetSource" (DataSource source) sets the media source the MediaHandler should use to obtain content.
- OCAP allows an application to extend the given protocols in an application specific fashion. This is accomplished by calling the JMF PackageManager set prefix methods. As in known to those of ordinary skill, a PackageManager maintains a persistent store of package-prefix lists. A package prefix specifies the prefix for a complete class name. A factory uses a package-prefix list to find a class that might belong to any of the packages that are referenced in the prefix list. The Manager uses package-prefix lists to find protocol handlers and content handlers for time-based media.
- The current version of a package-prefix list is obtained with the get<package-prefix>List method. This method returns the prefix list in use; any changes to the list take effect immediately. Unless it is made persistent with commit<package-prefix>List, a package-prefix list is only valid while the Manager is referenced. The commit<package-prefix>List method ensures that any changes made to a package-prefix list are still visible the next time that the Manager is referenced.
- Hence, providing an extended protocol by setting the prefixes is defined by JMF. JMF allows changes made by the set methods to be made persistent by providing commit prefix methods. However, OCAP does not allow an application to call the commit prefix methods, only the set prefix methods. Setting new prefixes adds DataSource/MediaHandler pairs to the system.
- As previously described, the exemplary configuration of the present invention discloses a specific extension allowable by the relevant standards, as well as changes to these standards to allow the (JMF) extensions to be made persistent (i.e., accessible) to all applications running on the
CPE 106 or other client device. These JMF extensions specify one or more "anything on-demand" protocols. Various services including, without limitation, video on-demand (VOD), movies on-demand (MOD), near video on-demand (NVOD), and network personal video recorder (NPVR) are provided using multiple protocols. Each of these particular protocols can be added to theCPE 106 by a network-specific application using the JMF. - An exemplary on-demand environment useful with the present invention comprises the Time Warner Cable iCONTROL system, which lets users choose from a variety of different input sources through the user's digital set-top box. The Time Warner system gives the user the ability to pause, fast forward, and rewind the content. The user pays only for the programs ordered. The user's remote control is used to choose the program from a selection listed on screen menus. Movies, sports, specials, original series, and music videos are available for viewing. In the exemplary iCONTROL system, the user has unlimited access to the selected content for a period of 24 hours after initiation.
- Moreover, a service such as VOD will typically be implemented using one or more protocols in a first MSO's network, and one or more different protocols in a second MSO's network. The technique of the present invention allows services of the same type (e.g., a particular instance of a VOD application, all VOD applications generally, or even all OD applications generally) that are implemented using different protocols to be added to CPE in various different networks having different MSOs.
-
Fig. 2 illustrates an exemplary method for developing a network-specific protocol according to the invention. As previously described, the exemplary JMF protocol extension capability provides a mechanism whereby an MSO or other application downloaded to theCPE 106 can install a protocol specific to the particular network in which it operates, and that will run in a standards-compliant environment (see discussion ofFig. 3 below). - As shown in
Fig. 2 , themethod 200 of developing the specific protocol(s) (e.g., "xod://") comprises first developing a DataSource (step 202). The defined DataSource implements the protocol to communicate between a head-end 150 or other network agent and theCPE 106. It also implements the protocol(s) to, inter alia: (i) setup a session, (ii) handshake or negotiate conditional access parameters, (iii) specify the content or data channel that the on-demand (OD) event will be sent to, and (iv) handle messaging for "trick" or other associated functional modes (e.g., play, pause, rewind, fast-forward). - Next, per step 204, a MediaHandler is developed for the content format delivered by the network-specific protocol. The MediaHandler may use another MediaHandler specified by OCAP, ACAP, or MHP if the content format is already supported (e.g., MPEG-2). As will be recognized by those of ordinary skill in the programming arts, the MediaHandler developed per step 204 comprises a framework (interface) which supports a developed "Player" as previously described herein; the Player implements MediaHandler.
- Per
step 206, a controller is developed that can be attached to the developed Player. The controller is used for, e.g., special controls of functions that are specific to the protocol, such "trick" modes. This approach allows the user to access controls of the playback using a GUI or other UI that has access to the controller. The controller in turn will access the DataSource to cause the appropriate messages to be sent, and the corresponding functions to be executed. - In one exemplary embodiment, an application developer will create an application required by an MSO and containing the aforementioned JMF components to allow a network-specific protocol to be supported in CPE (e.g., retail) devices. The MSO places the application in a multiplex transport stream delivered to CPE. An OCAP implementation will then download the JMF-equipped application and launch it if signaling (i.e. SI tables) from the head end so dictate. When the application is launched, it sets and commits the prefixes, thereby subsequently allowing any application within the device to use them.
- Referring now to
Fig. 3 , an exemplary embodiment of the method of implementing the network specific protocol components developed under themethod 200 ofFig. 2 is described. As shown inFig. 3 , once the JMF components are developed under that method 200 (step 302), they are placed inside of one or more applications that are configured to use the components (step 304). Specifically, the target application(s) are configured to contain the developed classes and interfaces within their application directory hierarchy. This may include files or other components in addition to the aforementioned items that are used to support the JMF components. For example, a DataSource may use a plurality of classes to implement a protocol. - It will be recognized that the development processes (
method 200 ofFig. 2 ) and the assembly or configuration of the target application(s) therefrom (step 304 ofFig. 3 ) can be performed contemporaneously by the same or different entity, or alternatively non-contemporaneously by the same or different entity. For example in one embodiment, the network-specific protocol components are developed and assembled into the application contemporaneously via one application authoring entity. - In another embodiment, sets of network specific protocol components are developed, each set being adapted to, e.g., a different MSO environment. In response to a request for the application within a given MSO network, such as from the head-
end 150, a network agent, or even theCPE 106, the application authoring entity assembles the requested application(s) from the relevant protocol component set according to the individual network parameters, and then delivers it directly (or latently) to the requesting entity. - In yet another embodiment, the
CPE 106 itself can be used to assemble the network-specific protocol ("extended") application(s). For example, the CPE may be provided with the aforementioned set(s) of MSO-specific components in advance (such as via download or at time of manufacture/installation), and an editor application which uses the appropriate component set in conjunction with a downloaded "generic" application blank to develop the requested application effectively on-demand (or near-OD). - Next, the configured application(s) is/are disposed on any
CPE 106 or other network device that meets the requirements of one of the relevant standards (step 306). Such CPE may comprise, e.g., an OCAP and MHP-capable DSTB (Fig. 5 ). The configured application(s) may be downloaded from the head-end 150, a network agent or other designated source, third party provider, or even provided via a data interface at the CPE 106 (such as a WiFi interface, IEEE-1394 port, or even a mass storage device such as a HDD, CD-ROM, flash cartridge, or USB Key). As yet another alternative, purchased or leased CPE can be pre-configured with the applications at time of sale or installation, including where the CPE as sold or leased includes a suite of pre-configured OD applications each adapted for a different MSO environment (e.g., a first version of an OD-based application configured for use on Time Warner Cable networks, a second version configured for use on Cox Cable networks, etc.). - Once resident on the CPE or target device, the network-specific application is launched (step 308) either immediately or with some degree of latency. Launching the application may be made automatic, conditional upon some prerequisite or instigating event (such as the user selecting the application), or otherwise. When the application is launched, it sets the prefixes (i.e., paths to the DataSource and MediaHandler) using the JMF PackageManager set prefix methods previously described herein (step 310). In the exemplary configuration, the prefixes are network specific, so they are set by a network application. Alternatively, however, it will be recognized that other approaches may be used, such as where the CPE manufacturer has an existing arrangement with the MSO, and the prefixes are set in advance, such as at the time of manufacture or installation.
- Advantageously, whenever the application uses a Locator with the new protocol string in a method call (such as during use by the consumer during a VOD or similar session), the JMF will associate the Locator with the correct DataSource/MediaHandler pair.
- Thus, by implementing the aforementioned methods, a first network's OD service can be implemented using a first protocol, and a second network's OD service can be implemented using a second protocol, but both can be implemented in CPE in a standards compliant fashion. It will be recognized that both (i) one CPE with multiple network protocol capability, and (ii) a plurality of CPE each with only one network protocol, can be implemented. For example, where a user has more than one MSO environment available to them, one CPE can have MSO-specific variants of the OD application for use with each different network. Alternatively, and more commonly, each CPE has access only to one MSO, and hence only requires one network-specific protocol.
- However, regardless of form, the present invention notably provides, inter alia, the ability for a standards-compliant CPE to download (or self-assemble) a tailored network-specific OD application which has access to the JMF or other extension associated with the relevant standard(s).
- One significant shortcoming of the prior art definition of JMF extensions provided by the relevant standards such as OCAP, MHP and ACAP is that the definition can only be applied to the application that sets the prefixes (
Fig. 4a ). Accordingly, in another aspect of the invention, a method (including optionally a change or modification to the relevant standards) is disclosed which allows this definition to be extended to any application with appropriate permission. - In the aforementioned standards, each application runs in its own physical or logical Java virtual machine (JVM). This creates so-called "walled gardens" around the applications, and prevents them from accessing classes that are not part of their class hierarchy or the system class hierarchy (i.e., they can't access classes specific to other applications). This approach prevents many security issues. However, it would be desirable to make a network extended protocol available to all network applications that are properly configured to make use of extension without significantly impairing security. For example; if an electronic program guide (EPG) and a music video (MV) application that need to use the same extended protocol, then rules would need to be enforced regarding their use. For example, the EPG and MV would both have to be downloaded with all the protocol class files in a redundant fashion, or they both have to be put into a single application in the current standards definition, or one application would have to register objects with the OCAP implementation using IXC, so that other applications could get to the network specific protocol handlers. However, IXC objects registered would have to provide a wrapper around JMF calls and are thus redundant.
- In one exemplary embodiment, the present invention allows an application with a special network permission (which may be established from the
head end 150, authoring entity, or even the CPE 106), to call the JMF commit prefixes methods previously described herein. By JMF definition, this makes persistent the changes caused by the set prefixes methods, thereby making the extension available to applications running on the CPE (Fig. 4b ). - However, with each application is running in its own JVM, all class files found in the calling application's directories indicated by the set prefixes method calls are also placed into the system class file space when the JMF commit prefixes methods are called. To support this functionality, additional statements are added to include the paths of the class files indicated by the new prefixes into the system classpath.
- The foregoing modifications can cause perceived security issues. When network specific protocol handling is exposed to all applications, a malicious application could use the protocol to damage the protocol in general. For example, a malicious application might try to flood the network with messages using an MSO provided protocol. However, the aforementioned standards currently include application signing requirements, and class loader and RuntimePermission restrictions that alleviate most security concerns of these issues. Other issues are alleviated in the present embodiment by adding one or more stipulations that require that any application using an extended protocol of the type described herein must have the same permission required to commit the prefixes for that protocol. Hence, a level of parity between the committing and using applications is established, thereby preventing applications that don't have appropriate permission from calling the extended protocol.
- Optionally, yet other stipulations may be added, such as requiring that any application using an extended protocol must be signed with a certificate belonging to the MSO owning the network to which the
CPE 106 is currently connected. In the exemplary context of OCAP, the standard (OCAP 1.0) specifies that applications are Java-based, and uses the Java-based permission scheme to provide various capabilities to applications in the network. Signed (trusted) applications are capable of receiving permissions in addition to those available to unsigned applications. Particularly, an MSO or other entity can selectively assign application permissions to trusted applications of their choice. In the present case, these permissions would include a signed certificate from the MSO. The "using" application would need to have such a signed certificate from, e.g., Time Warner Cable (TWC) for that application to be able to access the extended protocol applicable to TWC networks, thereby frustrating unsigned/unauthorized or cross-network applications from gaining access. - Accordingly, using the present invention, a network operator can commit classes in CPE that can be used by any of their applications to implement MSO provided services in a standards-compliant fashion. This provides significant flexibility to the MSO, as well as increasing user satisfaction from an increasingly seamless access and utilization of OD or other applications running on their individual CPE.
- Referring now to
Fig. 5 , a first embodiment of the improved electronic device with extended protocol capability according to the present invention is described. As shown inFig. 5 , thedevice 500 generally comprises and OpenCable-compliant embeddedCPE 106 having an RF front end 502 (including modulator/demodulator) for interface with theHFC network 101 ofFig. 1 , digital processor(s) 504, storage device 506, and a plurality of interfaces 508 (e.g., video/audio interfaces, IEEE-1394 "Firewire", USB, serial/parallel ports, etc.) for interface with other end-user apparatus such as televisions, personal electronics, computers, WiFi or other network hubs/routers, etc. Other components which may be utilized within the device (deleted fromFig. 5 for simplicity) include RF tuner stages, various processing layers (e.g., DOCSIS MAC, OOB channels, MPEG, etc.) as well as media processors and other specialized SoC or ASIC devices. These additional components and functionality are well known to those of ordinary skill in the cable and embedded system fields, and accordingly not described further herein. - The
device 500 ofFig. 5 is also provided with an OCAP 1.0-compliant monitor application and Java-based middleware which, inter alia, manages the operation of the device and applications running thereon, including implementing the download, application launch, and path configuration for network specific protocols as previously described herein. It will be recognized by those of ordinary skill that myriad different device and software architectures may be used consistent with the invention, the device ofFig. 5 being merely exemplary. For example, different middlewares (e.g., MHEG, or DASE) may be used in place of the OCAP middleware of the illustrated embodiment. Alternatively, thedevice 500 may comprises a wireless device coupled to the network via a wireless link (e.g., 802.11, Bluetooth, 3G, or even UWB) of sufficient data bandwidth. - It will also be appreciated that the
device 500 ofFig. 5 may be integrated with other device of components, whether related to the content-based network over which the on-demand services are provided or otherwise. For example, thedevice 500 may be integrated with an MHP-compliant satellite receiver unit of the type well known in the art. Thedevice 500 may also be integrated with a display device as well or in the alternative, so as to provide an "all-in-one" type form factor to the consumer. - It will further be appreciated that the extension protocols and associated techniques of the present invention can also advantageously be used in conjunction with (and without interfering with) other functions resident in the CPE, such as for example the hardware registry described in co-owned and co-pending
U.S. patent application Serial No. 10/723,959 filed November 24, 2003 U.S. patent application Serial No. 10/722,206 filed November 24, 2003 U.S. patent application Serial No. 10/773,664 filed February 6, 2004 Fig. 3 ) can be predicated upon notification from the hardware registry (or an access thereof by the application launched) that sufficient hardware or resources is/are present to support the OD capability of the application is present on the CPE. Similarly, the aforementioned display element (e.g., window) manager can be adapted to include the extended application within its visibility stack upon launch of the application. Myriad other possible uses and interactions between the various inventions are also possible, as will be recognized by those of ordinary skill. - It will be recognized that while certain aspects of the invention are described in terms of a specific sequence of steps of a method, these descriptions are only illustrative of the broader methods of the invention, and may be modified as required by the particular application. Certain steps may be rendered unnecessary or optional under certain circumstances. Additionally, certain steps or functionality may be added to the disclosed embodiments, or the order of performance of two or more steps permuted. All such variations are considered to be encompassed within the invention disclosed and claimed herein.
- While the above detailed description has shown, described, and pointed out novel features of the invention as applied to various embodiments, it will be understood that various omissions, substitutions, and changes in the form and details of the device or process illustrated may be made by those skilled in the art without departing from the invention. The foregoing description is of the best mode presently contemplated of carrying out the invention. This description is in no way meant to be limiting, but rather should be taken as illustrative of the general principles of the invention. The scope of the invention should be determined with reference to the claims.
::=
Claims (15)
- A method of operating Java-based consumer premises equipment (CPE)(106) in operative communication with a content delivery network (101), the method comprising:receiving at said CPE a first application which when run on said CPE implements a network-specific protocol thereon, said application comprising a plurality of components, said plurality of components including Java Media Framework (JMF) extensions (304);storing said first application within a storage device of said (CPE) (306);launching said first application (308);setting and committing prefixes for said JMF extensions present in the components of said first application (310), said first application causing said CPE to implement said network-specific protocol; andoperating said CPE and said first application to provide services to a user;wherein said network-specific protocol comprises an extension to an existing protocol, said extension being specific to said network; andwherein said committed JMF extensions are adapted to be utilized by one or more of a plurality of second applications, said one or more of said plurality of second applications having appropriate permission from the network entity owning the content delivery network (101) to which the CPE is in operative communication , said appropriate permission comprising at least a signed certificate from said network entity.
- The method of Claim 1, wherein said act of receiving comprises receiving using an in-band channel of a hybrid fiber coax (HFC) or satellite network.
- The method of Claim 1, wherein said services comprise on-demand services, and said act of causing said CPE to implement said network-specific protocol comprises causing said CPE and said first application to enable an on-demand application resident on said CPE to access one or more media-based interfaces via said network specific protocol.
- The method of Claim 1, wherein said content delivery network comprises a hybrid fiber coax (HFC) cable network, and at least one of said plurality of second applications comprises an on-demand application.
- The method of Claim 1, wherein said content delivery network comprises a Digital Video Broadcasting Multimedia Home Platform (DVB/MHP)-compliant satellite network, and at least one of said plurality of second applications comprises an on-demand application.
- The method of Claim 5, wherein said at least one of said plurality of second applications accesses said extension using one or more Java Media Framework (JMF) application programming interfaces (APIs).
- The method of Claim 1, wherein, said CPE is adaptable for use in any one of a plurality of different networks, and said first application is particularly adapted for use in said content delivery network; and
wherein said method further comprises selectively allowing at least one of said plurality of second applications resident on said CPE to access said extension, said at least one of said plurality of second applications having attributes specific to said content delivery network. - The method of Claim 7, wherein said content delivery network comprises a hybrid fiber coax (HFC) cable network, and said at least one of said plurality of second applications comprises an on-demand application that accesses said extension via one or more Java Media Framework (JMF) application program interfaces (APIs).
- Java-based consumer premises equipment (CPE) (106,500) for use in a content delivery network, comprising:a digital processor (504);a storage device (506) in data communication with said processor, adapted to store a plurality of components thereon;means for receiving (502) at said CPE a first software application and a plurality of second software applications, said first application comprising a plurality of components, said plurality of components including Java Media Framework (JMF) extensions, said first application when run on said CPE implementing a network-specific protocol thereon;wherein said CPE is configured to:store said first application and said plurality of second software applications within said storage device (506);launch said first application and set and commit prefixes for said JMF extensions present in the components of the said first application (310) on said processor (504), said first application causing said CPE to implement said network-specific protocol; andutilize said application to provide services to a user;wherein said committed JMF extensions are adapted to be utilized by one or more of the plurality of second applications, said one or more of said plurality of second applications having appropriate permission from the network entity owning the content delivery network (101) to which said CPE is in operative communication, said appropriate permission comprising at least a signed certificate from said network entity.
- The CPE of Claim 9, wherein;
said means for receiving comprises means for receiving a channel of a hybrid fiber coax (HFC) or satellite network;
said services comprise on-demand services, and said causing said CPE to implement comprises enabling an on-demand application resident on said CPE to access one or more media-based interfaces via said network specific protocol; and
said launching of said first application is performed in response to activation of said on-demand application resident on said CPE . - The CPE of Claim 9, wherein said network-specific protocol comprises an extension to an existing protocol, said extension being specific to said network, said CPE is configured to selectively allow at least one said plurality of second applications resident on said CPE to access said extension.
- The CPE of Claim 11, wherein said content delivery network comprises a Digital Video Broadcasting Multimedia Home Platform (DVB/MHP)-compliant satellite network, and at least one of said plurality of second applications comprises an on-demand application.
- The CPE of Claim 11 or 12, wherein said at least one of said plurality of second applications accesses said extension using one or more Java Media Framework (JMF) application programming interfaces (APIs).
- The CPE of Claim 9, wherein said network-specific protocol comprises an extension to an existing protocol, said extension being specific to said network, said CPE is adaptable for use in any one of a plurality of different networks, and said first application is particularly adapted for use in said content delivery network; and
wherein said CPE is further configured to selectively allow at least one of said plurality of second applications resident thereon to access said extension, said at least one of said plurality of second applications having attributes specific to said content delivery network. - The CPE of Claim 9, wherein said first application comprises a plurality of developed components within an application directory and arranged in a hierarchy;
wherein said CPE is further configured to configure at least one path to at least one of said developed components; and.
wherein said developed components comprise Java classes and interfaces.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US782680 | 1985-10-02 | ||
US10/782,680 US8078669B2 (en) | 2004-02-18 | 2004-02-18 | Media extension apparatus and methods for use in an information network |
Publications (3)
Publication Number | Publication Date |
---|---|
EP1569103A2 EP1569103A2 (en) | 2005-08-31 |
EP1569103A3 EP1569103A3 (en) | 2010-04-28 |
EP1569103B1 true EP1569103B1 (en) | 2017-03-22 |
Family
ID=34750454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP05003475.0A Expired - Lifetime EP1569103B1 (en) | 2004-02-18 | 2005-02-17 | Media extension apparatus and methods for use in an information network |
Country Status (2)
Country | Link |
---|---|
US (2) | US8078669B2 (en) |
EP (1) | EP1569103B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11582607B2 (en) | 2020-07-10 | 2023-02-14 | Western Digital Technologies, Inc. | Wireless security protocol |
US11882434B2 (en) | 2020-07-09 | 2024-01-23 | Western Digital Technologies, Inc. | Method and device for covertly communicating state changes |
Families Citing this family (175)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7136908B2 (en) | 2001-01-29 | 2006-11-14 | Intel Corporation | Extensible network services system |
EP1493250A2 (en) * | 2002-04-09 | 2005-01-05 | Thomson Licensing S.A. | Methods for communication in a multi-cluster network, device for connection to a network of clusters and bridge for connecting clusters |
US7673020B2 (en) * | 2003-05-02 | 2010-03-02 | Microsoft Corporation | System and method for facilitating communication between a computing device and multiple categories of media devices |
US9247288B2 (en) | 2003-08-12 | 2016-01-26 | Time Warner Cable Enterprises Llc | Technique for effectively delivering targeted advertisements through a communications network having limited bandwidth |
US8302111B2 (en) | 2003-11-24 | 2012-10-30 | Time Warner Cable Inc. | Methods and apparatus for hardware registration in a network device |
US7266726B1 (en) | 2003-11-24 | 2007-09-04 | Time Warner Cable Inc. | Methods and apparatus for event logging in an information network |
US9213538B1 (en) | 2004-02-06 | 2015-12-15 | Time Warner Cable Enterprises Llc | Methods and apparatus for display element management in an information network |
US8078669B2 (en) | 2004-02-18 | 2011-12-13 | Time Warner Cable Inc. | Media extension apparatus and methods for use in an information network |
US20160065414A1 (en) | 2013-06-27 | 2016-03-03 | Ken Sundermeyer | Control system user interface |
US11343380B2 (en) | 2004-03-16 | 2022-05-24 | Icontrol Networks, Inc. | Premises system automation |
US10156959B2 (en) | 2005-03-16 | 2018-12-18 | Icontrol Networks, Inc. | Cross-client sensor user interface in an integrated security network |
US11916870B2 (en) | 2004-03-16 | 2024-02-27 | Icontrol Networks, Inc. | Gateway registry methods and systems |
US11244545B2 (en) | 2004-03-16 | 2022-02-08 | Icontrol Networks, Inc. | Cross-client sensor user interface in an integrated security network |
US9141276B2 (en) | 2005-03-16 | 2015-09-22 | Icontrol Networks, Inc. | Integrated interface for mobile device |
US11201755B2 (en) | 2004-03-16 | 2021-12-14 | Icontrol Networks, Inc. | Premises system management using status signal |
US11811845B2 (en) | 2004-03-16 | 2023-11-07 | Icontrol Networks, Inc. | Communication protocols over internet protocol (IP) networks |
US10237237B2 (en) | 2007-06-12 | 2019-03-19 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US10062273B2 (en) | 2010-09-28 | 2018-08-28 | Icontrol Networks, Inc. | Integrated security system with parallel processing architecture |
US7711796B2 (en) | 2006-06-12 | 2010-05-04 | Icontrol Networks, Inc. | Gateway registry methods and systems |
US10721087B2 (en) | 2005-03-16 | 2020-07-21 | Icontrol Networks, Inc. | Method for networked touchscreen with integrated interfaces |
US9531593B2 (en) | 2007-06-12 | 2016-12-27 | Icontrol Networks, Inc. | Takeover processes in security network integrated with premise security system |
GB2428821B (en) | 2004-03-16 | 2008-06-04 | Icontrol Networks Inc | Premises management system |
US11159484B2 (en) | 2004-03-16 | 2021-10-26 | Icontrol Networks, Inc. | Forming a security network including integrated security system components and network devices |
US11277465B2 (en) | 2004-03-16 | 2022-03-15 | Icontrol Networks, Inc. | Generating risk profile using data of home monitoring and security system |
US8635350B2 (en) | 2006-06-12 | 2014-01-21 | Icontrol Networks, Inc. | IP device discovery systems and methods |
US11316958B2 (en) | 2008-08-11 | 2022-04-26 | Icontrol Networks, Inc. | Virtual device systems and methods |
US12063220B2 (en) * | 2004-03-16 | 2024-08-13 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US11489812B2 (en) | 2004-03-16 | 2022-11-01 | Icontrol Networks, Inc. | Forming a security network including integrated security system components and network devices |
US11113950B2 (en) | 2005-03-16 | 2021-09-07 | Icontrol Networks, Inc. | Gateway integrated with premises security system |
US10142392B2 (en) | 2007-01-24 | 2018-11-27 | Icontrol Networks, Inc. | Methods and systems for improved system performance |
US11582065B2 (en) | 2007-06-12 | 2023-02-14 | Icontrol Networks, Inc. | Systems and methods for device communication |
US20090077623A1 (en) | 2005-03-16 | 2009-03-19 | Marc Baum | Security Network Integrating Security System and Network Devices |
US10200504B2 (en) | 2007-06-12 | 2019-02-05 | Icontrol Networks, Inc. | Communication protocols over internet protocol (IP) networks |
US9729342B2 (en) | 2010-12-20 | 2017-08-08 | Icontrol Networks, Inc. | Defining and implementing sensor triggered response rules |
US10522026B2 (en) | 2008-08-11 | 2019-12-31 | Icontrol Networks, Inc. | Automation system user interface with three-dimensional display |
US11368429B2 (en) | 2004-03-16 | 2022-06-21 | Icontrol Networks, Inc. | Premises management configuration and control |
US10339791B2 (en) | 2007-06-12 | 2019-07-02 | Icontrol Networks, Inc. | Security network integrated with premise security system |
US11190578B2 (en) | 2008-08-11 | 2021-11-30 | Icontrol Networks, Inc. | Integrated cloud system with lightweight gateway for premises automation |
US11677577B2 (en) | 2004-03-16 | 2023-06-13 | Icontrol Networks, Inc. | Premises system management using status signal |
US20170118037A1 (en) | 2008-08-11 | 2017-04-27 | Icontrol Networks, Inc. | Integrated cloud system for premises automation |
US8843978B2 (en) | 2004-06-29 | 2014-09-23 | Time Warner Cable Enterprises Llc | Method and apparatus for network bandwidth allocation |
US8266429B2 (en) | 2004-07-20 | 2012-09-11 | Time Warner Cable, Inc. | Technique for securely communicating and storing programming material in a trusted domain |
US8312267B2 (en) * | 2004-07-20 | 2012-11-13 | Time Warner Cable Inc. | Technique for securely communicating programming content |
US7555554B2 (en) * | 2004-08-06 | 2009-06-30 | Microsoft Corporation | System and method for generating selectable extension to media transport protocol |
US8522293B2 (en) | 2004-12-15 | 2013-08-27 | Time Warner Cable Enterprises Llc | Method and apparatus for high bandwidth data transmission in content-based networks |
US7602820B2 (en) | 2005-02-01 | 2009-10-13 | Time Warner Cable Inc. | Apparatus and methods for multi-stage multiplexing in a network |
US7567565B2 (en) | 2005-02-01 | 2009-07-28 | Time Warner Cable Inc. | Method and apparatus for network bandwidth conservation |
US7954128B2 (en) * | 2005-02-11 | 2011-05-31 | Time Warner Cable Inc. | Methods and apparatus for variable delay compensation in networks |
US8028322B2 (en) * | 2005-03-14 | 2011-09-27 | Time Warner Cable Inc. | Method and apparatus for network content download and recording |
US20170180198A1 (en) | 2008-08-11 | 2017-06-22 | Marc Baum | Forming a security network including integrated security system components |
US20120324566A1 (en) | 2005-03-16 | 2012-12-20 | Marc Baum | Takeover Processes In Security Network Integrated With Premise Security System |
US20110128378A1 (en) | 2005-03-16 | 2011-06-02 | Reza Raji | Modular Electronic Display Platform |
US9306809B2 (en) | 2007-06-12 | 2016-04-05 | Icontrol Networks, Inc. | Security system with networked touchscreen |
US11615697B2 (en) | 2005-03-16 | 2023-03-28 | Icontrol Networks, Inc. | Premise management systems and methods |
US11496568B2 (en) | 2005-03-16 | 2022-11-08 | Icontrol Networks, Inc. | Security system with networked touchscreen |
US10999254B2 (en) | 2005-03-16 | 2021-05-04 | Icontrol Networks, Inc. | System for data routing in networks |
US11700142B2 (en) | 2005-03-16 | 2023-07-11 | Icontrol Networks, Inc. | Security network integrating security system and network devices |
US20060294585A1 (en) * | 2005-06-24 | 2006-12-28 | Microsoft Corporation | System and method for creating and managing a trusted constellation of personal digital devices |
US20070022459A1 (en) | 2005-07-20 | 2007-01-25 | Gaebel Thomas M Jr | Method and apparatus for boundary-based network operation |
DE102005042979A1 (en) * | 2005-09-09 | 2007-05-10 | Deutsche Telekom Ag | Method and system for carrying out interactive television |
US8117342B2 (en) * | 2005-10-04 | 2012-02-14 | Microsoft Corporation | Media exchange protocol supporting format conversion of media items |
US8170065B2 (en) | 2006-02-27 | 2012-05-01 | Time Warner Cable Inc. | Methods and apparatus for selecting digital access technology for programming and data delivery |
US8718100B2 (en) | 2006-02-27 | 2014-05-06 | Time Warner Cable Enterprises Llc | Methods and apparatus for selecting digital interface technology for programming and data delivery |
US8458753B2 (en) | 2006-02-27 | 2013-06-04 | Time Warner Cable Enterprises Llc | Methods and apparatus for device capabilities discovery and utilization within a content-based network |
US20070209057A1 (en) * | 2006-03-01 | 2007-09-06 | Broadband Wizard Inc. | Wireless delivery of broadband cable signals |
US9026677B2 (en) * | 2006-03-17 | 2015-05-05 | Cisco Technology, Inc. | Method and apparatus for providing video on demand |
US20070250711A1 (en) * | 2006-04-25 | 2007-10-25 | Phonified Llc | System and method for presenting and inputting information on a mobile device |
KR100791540B1 (en) | 2006-05-09 | 2008-01-03 | 주식회사 알티캐스트 | Headend system and service providing method which provides interactive VOD service |
US9386327B2 (en) | 2006-05-24 | 2016-07-05 | Time Warner Cable Enterprises Llc | Secondary content insertion apparatus and methods |
US8280982B2 (en) | 2006-05-24 | 2012-10-02 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US12063221B2 (en) | 2006-06-12 | 2024-08-13 | Icontrol Networks, Inc. | Activation of gateway device |
US10079839B1 (en) | 2007-06-12 | 2018-09-18 | Icontrol Networks, Inc. | Activation of gateway device |
US8024762B2 (en) | 2006-06-13 | 2011-09-20 | Time Warner Cable Inc. | Methods and apparatus for providing virtual content over a network |
US9135626B2 (en) * | 2006-06-30 | 2015-09-15 | Nokia Technologies Oy | Advertising middleware |
KR20080024623A (en) * | 2006-09-14 | 2008-03-19 | 삼성전자주식회사 | Display device and its data display method |
US8520850B2 (en) | 2006-10-20 | 2013-08-27 | Time Warner Cable Enterprises Llc | Downloadable security and protection methods and apparatus |
US8732854B2 (en) | 2006-11-01 | 2014-05-20 | Time Warner Cable Enterprises Llc | Methods and apparatus for premises content distribution |
US8370818B2 (en) | 2006-12-02 | 2013-02-05 | Time Warner Cable Inc. | Methods and apparatus for analyzing software interface usage |
USRE47718E1 (en) * | 2007-01-10 | 2019-11-05 | Lg Electronics Inc. | Method of transmitting/receiving digital contents and apparatus for receiving digital contents |
US8621540B2 (en) | 2007-01-24 | 2013-12-31 | Time Warner Cable Enterprises Llc | Apparatus and methods for provisioning in a download-enabled system |
US11706279B2 (en) | 2007-01-24 | 2023-07-18 | Icontrol Networks, Inc. | Methods and systems for data communication |
US8181206B2 (en) | 2007-02-28 | 2012-05-15 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US7633385B2 (en) | 2007-02-28 | 2009-12-15 | Ucontrol, Inc. | Method and system for communicating with and controlling an alarm system from a remote server |
US20080235746A1 (en) | 2007-03-20 | 2008-09-25 | Michael James Peters | Methods and apparatus for content delivery and replacement in a network |
US20080244682A1 (en) * | 2007-03-26 | 2008-10-02 | General Instrument Corporation | Method for enhancing features offered by a software application residing on a set top terminal |
US8451986B2 (en) | 2007-04-23 | 2013-05-28 | Icontrol Networks, Inc. | Method and system for automatically providing alternate network access for telecommunications |
EP2158764A4 (en) * | 2007-05-07 | 2011-07-20 | Ryan Steelberg | Open api digital video recorder and method of making and using same |
US12283172B2 (en) | 2007-06-12 | 2025-04-22 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US11089122B2 (en) | 2007-06-12 | 2021-08-10 | Icontrol Networks, Inc. | Controlling data routing among networks |
US11237714B2 (en) | 2007-06-12 | 2022-02-01 | Control Networks, Inc. | Control system user interface |
US11601810B2 (en) | 2007-06-12 | 2023-03-07 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US11218878B2 (en) | 2007-06-12 | 2022-01-04 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US11316753B2 (en) | 2007-06-12 | 2022-04-26 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US12003387B2 (en) | 2012-06-27 | 2024-06-04 | Comcast Cable Communications, Llc | Control system user interface |
US10523689B2 (en) | 2007-06-12 | 2019-12-31 | Icontrol Networks, Inc. | Communication protocols over internet protocol (IP) networks |
US11646907B2 (en) | 2007-06-12 | 2023-05-09 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US11212192B2 (en) | 2007-06-12 | 2021-12-28 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US12184443B2 (en) | 2007-06-12 | 2024-12-31 | Icontrol Networks, Inc. | Controlling data routing among networks |
US11423756B2 (en) | 2007-06-12 | 2022-08-23 | Icontrol Networks, Inc. | Communication protocols in integrated systems |
US8625607B2 (en) | 2007-07-24 | 2014-01-07 | Time Warner Cable Enterprises Llc | Generation, distribution and use of content metadata in a network |
US7770200B2 (en) * | 2007-07-24 | 2010-08-03 | Time Warner Cable Inc. | Methods and apparatus for format selection for network optimization |
US7802286B2 (en) * | 2007-07-24 | 2010-09-21 | Time Warner Cable Inc. | Methods and apparatus for format selection for network optimization |
US11831462B2 (en) | 2007-08-24 | 2023-11-28 | Icontrol Networks, Inc. | Controlling data routing in premises management systems |
US9071859B2 (en) | 2007-09-26 | 2015-06-30 | Time Warner Cable Enterprises Llc | Methods and apparatus for user-based targeted content delivery |
US8561116B2 (en) * | 2007-09-26 | 2013-10-15 | Charles A. Hasek | Methods and apparatus for content caching in a video network |
US8099757B2 (en) | 2007-10-15 | 2012-01-17 | Time Warner Cable Inc. | Methods and apparatus for revenue-optimized delivery of content in a network |
EP2075735A1 (en) * | 2007-12-27 | 2009-07-01 | Gemalto SA | Selection of access conditions for portable tokens |
US11916928B2 (en) | 2008-01-24 | 2024-02-27 | Icontrol Networks, Inc. | Communication protocols over internet protocol (IP) networks |
US9503691B2 (en) * | 2008-02-19 | 2016-11-22 | Time Warner Cable Enterprises Llc | Methods and apparatus for enhanced advertising and promotional delivery in a network |
US8300541B2 (en) * | 2008-02-19 | 2012-10-30 | Time Warner Cable Inc. | Apparatus and methods for utilizing statistical multiplexing to ensure quality of service in a network |
US8813143B2 (en) * | 2008-02-26 | 2014-08-19 | Time Warner Enterprises LLC | Methods and apparatus for business-based network resource allocation |
US20170185278A1 (en) | 2008-08-11 | 2017-06-29 | Icontrol Networks, Inc. | Automation system user interface |
US20100037241A1 (en) * | 2008-08-08 | 2010-02-11 | Sivakumar Murugesan | Apparatus and method for transparent data collection from a network for electronic program guide-like applications |
US11258625B2 (en) | 2008-08-11 | 2022-02-22 | Icontrol Networks, Inc. | Mobile premises automation platform |
US11792036B2 (en) | 2008-08-11 | 2023-10-17 | Icontrol Networks, Inc. | Mobile premises automation platform |
US11729255B2 (en) | 2008-08-11 | 2023-08-15 | Icontrol Networks, Inc. | Integrated cloud system with lightweight gateway for premises automation |
US11758026B2 (en) | 2008-08-11 | 2023-09-12 | Icontrol Networks, Inc. | Virtual device systems and methods |
US9154942B2 (en) * | 2008-11-26 | 2015-10-06 | Free Stream Media Corp. | Zero configuration communication between a browser and a networked media device |
US8638211B2 (en) | 2009-04-30 | 2014-01-28 | Icontrol Networks, Inc. | Configurable controller and interface for home SMA, phone and multimedia |
US9602864B2 (en) | 2009-06-08 | 2017-03-21 | Time Warner Cable Enterprises Llc | Media bridge apparatus and methods |
US9866609B2 (en) | 2009-06-08 | 2018-01-09 | Time Warner Cable Enterprises Llc | Methods and apparatus for premises content distribution |
US9094713B2 (en) | 2009-07-02 | 2015-07-28 | Time Warner Cable Enterprises Llc | Method and apparatus for network association of content |
US9178634B2 (en) | 2009-07-15 | 2015-11-03 | Time Warner Cable Enterprises Llc | Methods and apparatus for evaluating an audience in a content-based network |
US8813124B2 (en) | 2009-07-15 | 2014-08-19 | Time Warner Cable Enterprises Llc | Methods and apparatus for targeted secondary content insertion |
US9237381B2 (en) | 2009-08-06 | 2016-01-12 | Time Warner Cable Enterprises Llc | Methods and apparatus for local channel insertion in an all-digital content distribution network |
US9635421B2 (en) | 2009-11-11 | 2017-04-25 | Time Warner Cable Enterprises Llc | Methods and apparatus for audience data collection and analysis in a content delivery network |
US8701138B2 (en) | 2010-04-23 | 2014-04-15 | Time Warner Cable Enterprises Llc | Zone control methods and apparatus |
US8799411B2 (en) | 2010-05-28 | 2014-08-05 | Arvato Digital Services Canada, Inc. | Method and apparatus for providing enhanced streaming content delivery with multi-archive support using secure download manager and content-indifferent decoding |
US9906838B2 (en) | 2010-07-12 | 2018-02-27 | Time Warner Cable Enterprises Llc | Apparatus and methods for content delivery and message exchange across multiple content delivery networks |
US8836467B1 (en) | 2010-09-28 | 2014-09-16 | Icontrol Networks, Inc. | Method, system and apparatus for automated reporting of account and sensor zone information to a central station |
US8930979B2 (en) | 2010-11-11 | 2015-01-06 | Time Warner Cable Enterprises Llc | Apparatus and methods for identifying and characterizing latency in a content delivery network |
US10148623B2 (en) | 2010-11-12 | 2018-12-04 | Time Warner Cable Enterprises Llc | Apparatus and methods ensuring data privacy in a content distribution network |
US11750414B2 (en) | 2010-12-16 | 2023-09-05 | Icontrol Networks, Inc. | Bidirectional security sensor communication for a premises security system |
US9147337B2 (en) | 2010-12-17 | 2015-09-29 | Icontrol Networks, Inc. | Method and system for logging security event data |
US10038927B2 (en) * | 2011-12-22 | 2018-07-31 | Cisco Technology, Inc. | Out-of-band signaling and device-based content control |
US8904462B2 (en) | 2012-01-24 | 2014-12-02 | Motorola Mobility Llc | System and method for communication resource information |
US9078040B2 (en) | 2012-04-12 | 2015-07-07 | Time Warner Cable Enterprises Llc | Apparatus and methods for enabling media options in a content delivery network |
US9854280B2 (en) | 2012-07-10 | 2017-12-26 | Time Warner Cable Enterprises Llc | Apparatus and methods for selective enforcement of secondary content viewing |
US8862155B2 (en) | 2012-08-30 | 2014-10-14 | Time Warner Cable Enterprises Llc | Apparatus and methods for enabling location-based services within a premises |
US9565472B2 (en) | 2012-12-10 | 2017-02-07 | Time Warner Cable Enterprises Llc | Apparatus and methods for content transfer protection |
US9131283B2 (en) | 2012-12-14 | 2015-09-08 | Time Warner Cable Enterprises Llc | Apparatus and methods for multimedia coordination |
US20140282786A1 (en) | 2013-03-12 | 2014-09-18 | Time Warner Cable Enterprises Llc | Methods and apparatus for providing and uploading content to personalized network storage |
US10368255B2 (en) | 2017-07-25 | 2019-07-30 | Time Warner Cable Enterprises Llc | Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks |
US9066153B2 (en) | 2013-03-15 | 2015-06-23 | Time Warner Cable Enterprises Llc | Apparatus and methods for multicast delivery of content in a content delivery network |
CN104284242A (en) * | 2013-07-05 | 2015-01-14 | 上海帕科软件科技有限公司 | Automatic switching-on logon system for set top box |
US9313568B2 (en) | 2013-07-23 | 2016-04-12 | Chicago Custom Acoustics, Inc. | Custom earphone with dome in the canal |
US11146637B2 (en) | 2014-03-03 | 2021-10-12 | Icontrol Networks, Inc. | Media content management |
US11405463B2 (en) | 2014-03-03 | 2022-08-02 | Icontrol Networks, Inc. | Media content management |
US9621940B2 (en) | 2014-05-29 | 2017-04-11 | Time Warner Cable Enterprises Llc | Apparatus and methods for recording, accessing, and delivering packetized content |
US11540148B2 (en) | 2014-06-11 | 2022-12-27 | Time Warner Cable Enterprises Llc | Methods and apparatus for access point location |
US20160057173A1 (en) * | 2014-07-16 | 2016-02-25 | Genband Us Llc | Media Playback Synchronization Across Multiple Clients |
US10028025B2 (en) | 2014-09-29 | 2018-07-17 | Time Warner Cable Enterprises Llc | Apparatus and methods for enabling presence-based and use-based services |
US9935833B2 (en) | 2014-11-05 | 2018-04-03 | Time Warner Cable Enterprises Llc | Methods and apparatus for determining an optimized wireless interface installation configuration |
US9986578B2 (en) | 2015-12-04 | 2018-05-29 | Time Warner Cable Enterprises Llc | Apparatus and methods for selective data network access |
US9918345B2 (en) | 2016-01-20 | 2018-03-13 | Time Warner Cable Enterprises Llc | Apparatus and method for wireless network services in moving vehicles |
US10492034B2 (en) | 2016-03-07 | 2019-11-26 | Time Warner Cable Enterprises Llc | Apparatus and methods for dynamic open-access networks |
US10586023B2 (en) | 2016-04-21 | 2020-03-10 | Time Warner Cable Enterprises Llc | Methods and apparatus for secondary content management and fraud prevention |
US10687115B2 (en) | 2016-06-01 | 2020-06-16 | Time Warner Cable Enterprises Llc | Cloud-based digital content recorder apparatus and methods |
US10164858B2 (en) | 2016-06-15 | 2018-12-25 | Time Warner Cable Enterprises Llc | Apparatus and methods for monitoring and diagnosing a wireless network |
CN106354489B (en) * | 2016-08-19 | 2019-09-17 | 成都卓影科技股份有限公司 | A kind of EPG engine and page parsing method |
US11212593B2 (en) | 2016-09-27 | 2021-12-28 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated secondary content management in a digital network |
US10911794B2 (en) | 2016-11-09 | 2021-02-02 | Charter Communications Operating, Llc | Apparatus and methods for selective secondary content insertion in a digital network |
US10645547B2 (en) | 2017-06-02 | 2020-05-05 | Charter Communications Operating, Llc | Apparatus and methods for providing wireless service in a venue |
US10638361B2 (en) | 2017-06-06 | 2020-04-28 | Charter Communications Operating, Llc | Methods and apparatus for dynamic control of connections to co-existing radio access networks |
US10958948B2 (en) | 2017-08-29 | 2021-03-23 | Charter Communications Operating, Llc | Apparatus and methods for latency reduction in digital content switching operations |
US10939142B2 (en) | 2018-02-27 | 2021-03-02 | Charter Communications Operating, Llc | Apparatus and methods for content storage, distribution and security within a content distribution network |
US11716558B2 (en) | 2018-04-16 | 2023-08-01 | Charter Communications Operating, Llc | Apparatus and methods for integrated high-capacity data and wireless network services |
CN108881987A (en) * | 2018-06-13 | 2018-11-23 | 青岛海信宽带多媒体技术有限公司 | Media play controlling method, device, equipment and the storage medium of set-top box |
US11044597B2 (en) | 2018-08-07 | 2021-06-22 | Charter Communications Operating, Llc | Apparatus and methods for registration and operation in wireless networks |
US11157694B2 (en) | 2018-08-14 | 2021-10-26 | Snap Inc. | Content suggestion system |
US11481197B1 (en) | 2018-10-05 | 2022-10-25 | Cigna Intellectual Property, Inc. | Distributed software development pipeline for coherent graphical user interface |
CN112840728B (en) | 2018-10-12 | 2024-09-13 | 特许通讯运营公司 | Apparatus and method for cell identification in a wireless network |
US10980025B2 (en) | 2019-01-31 | 2021-04-13 | Charter Communications Operating, Llc | Methods and apparatus for frequency transition management in a quasi-licensed wireless system |
US11129171B2 (en) | 2019-02-27 | 2021-09-21 | Charter Communications Operating, Llc | Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system |
US11026205B2 (en) | 2019-10-23 | 2021-06-01 | Charter Communications Operating, Llc | Methods and apparatus for device registration in a quasi-licensed wireless system |
Family Cites Families (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3999051A (en) | 1974-07-05 | 1976-12-21 | Sperry Rand Corporation | Error logging in semiconductor storage units |
US4339657A (en) | 1980-02-06 | 1982-07-13 | International Business Machines Corporation | Error logging for automatic apparatus |
US4604751A (en) | 1984-06-29 | 1986-08-05 | International Business Machines Corporation | Error logging memory system for avoiding miscorrection of triple errors |
US5121475A (en) | 1988-04-08 | 1992-06-09 | International Business Machines Inc. | Methods of dynamically generating user messages utilizing error log data with a computer system |
JPH02297228A (en) | 1989-05-11 | 1990-12-07 | Fujitsu Ltd | Fault information storing system |
US5245615A (en) | 1991-06-06 | 1993-09-14 | International Business Machines Corporation | Diagnostic system and interface for a personal computer |
US5463768A (en) | 1994-03-17 | 1995-10-31 | General Electric Company | Method and system for analyzing error logs for diagnostics |
US5790779A (en) | 1995-03-10 | 1998-08-04 | Microsoft Corporation | Method and system for consolidating related error reports in a computer system |
KR100243314B1 (en) | 1995-04-07 | 2000-02-01 | 윤종용 | Error log method using defect list |
US5850544A (en) | 1995-06-06 | 1998-12-15 | International Business Machines Corporation | System and method for efficient relational query generation and tuple-to-object translation in an object-relational gateway supporting class inheritance |
US5862316A (en) | 1996-07-01 | 1999-01-19 | Sun Microsystems, Inc. | Multiprocessing system having coherency-related error logging capabilities |
US5895472A (en) | 1996-11-12 | 1999-04-20 | International Business Machines Corporation | Change and accounting log for object-oriented systems |
US6370571B1 (en) | 1997-03-05 | 2002-04-09 | At Home Corporation | System and method for delivering high-performance online multimedia services |
US6092107A (en) * | 1997-04-07 | 2000-07-18 | At&T Corp | System and method for interfacing MPEG-coded audiovisual objects permitting adaptive control |
US6366876B1 (en) | 1997-09-29 | 2002-04-02 | Sun Microsystems, Inc. | Method and apparatus for assessing compatibility between platforms and applications |
US5954826A (en) | 1997-09-29 | 1999-09-21 | Sun Microsystems, Inc. | Method and apparatus for analyzing data |
US6216152B1 (en) * | 1997-10-27 | 2001-04-10 | Sun Microsystems, Inc. | Method and apparatus for providing plug in media decoders |
US6181713B1 (en) * | 1997-10-27 | 2001-01-30 | Sun Microsystems, Inc. | Selectable depacketizer architecture |
US6631403B1 (en) * | 1998-05-11 | 2003-10-07 | At&T Corp. | Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems |
JP3509060B2 (en) * | 1998-05-28 | 2004-03-22 | 松下電器産業株式会社 | Display control device and method |
ATE225536T1 (en) | 1998-06-26 | 2002-10-15 | Deutsche Telekom Ag | METHOD FOR TESTING JAVA BYTECODE PROGRAMS FOR SECURITY PROPERTIES |
US6762796B1 (en) | 1998-08-10 | 2004-07-13 | Olympus Optical Co., Ltd. | Image pickup module having integrated lens and semiconductor chip |
US6381735B1 (en) | 1998-10-02 | 2002-04-30 | Microsoft Corporation | Dynamic classification of sections of software |
US6336122B1 (en) | 1998-10-15 | 2002-01-01 | International Business Machines Corporation | Object oriented class archive file maker and method |
WO2000024192A1 (en) | 1998-10-19 | 2000-04-27 | General Instrument Corporation | Television set-top box with configurable functionality |
US6460141B1 (en) | 1998-10-28 | 2002-10-01 | Rsa Security Inc. | Security and access management system for web-enabled and non-web-enabled applications and content on a computer network |
GB9825102D0 (en) | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
US6487665B1 (en) | 1998-11-30 | 2002-11-26 | Microsoft Corporation | Object security boundaries |
US6581206B2 (en) | 1999-11-12 | 2003-06-17 | Sun Microsystems, Inc. | Computer program language subset validation |
US6873877B1 (en) * | 1999-02-11 | 2005-03-29 | Loudeye Corp. | Distributed production system for digitally encoding information |
US6802056B1 (en) | 1999-06-30 | 2004-10-05 | Microsoft Corporation | Translation and transformation of heterogeneous programs |
US6762798B1 (en) * | 1999-07-13 | 2004-07-13 | Sun Microsystems, Inc. | Methods and apparatus for providing video control for television applications |
US6532552B1 (en) | 1999-09-09 | 2003-03-11 | International Business Machines Corporation | Method and system for performing problem determination procedures in hierarchically organized computer systems |
US6505298B1 (en) | 1999-10-25 | 2003-01-07 | International Business Machines Corporation | System using an OS inaccessible interrupt handler to reset the OS when a device driver failed to set a register bit indicating OS hang condition |
US6490580B1 (en) | 1999-10-29 | 2002-12-03 | Verizon Laboratories Inc. | Hypervideo information retrieval usingmultimedia |
US7158993B1 (en) | 1999-11-12 | 2007-01-02 | Sun Microsystems, Inc. | API representation enabling submerged hierarchy |
US6948175B1 (en) | 1999-11-16 | 2005-09-20 | Ricoh Company, Ltd. | Method and system of remote diagnostic, control and information collection using a dynamic linked library |
US7016064B2 (en) | 1999-12-27 | 2006-03-21 | Fuji Photo Film Co., Ltd. | Method and system for remote management of processor, and method and system for remote diagnosis of image output apparatus |
US6996808B1 (en) | 2000-02-12 | 2006-02-07 | Microsoft Corporation | Function injector |
US6687735B1 (en) * | 2000-05-30 | 2004-02-03 | Tranceive Technologies, Inc. | Method and apparatus for balancing distributed applications |
US6654722B1 (en) * | 2000-06-19 | 2003-11-25 | International Business Machines Corporation | Voice over IP protocol based speech system |
US6829250B2 (en) * | 2000-08-10 | 2004-12-07 | Verizon Communications Inc. | Automatic programming of customer premises equipment for vertical services integration |
US6631350B1 (en) * | 2000-08-28 | 2003-10-07 | International Business Machines Corporation | Device-independent speech audio system for linking a speech driven application to specific audio input and output devices |
US7107606B2 (en) * | 2000-08-30 | 2006-09-12 | The Chinese University Of Hong Kong | System and method for highly scalable video on demand |
US6651248B1 (en) | 2000-09-01 | 2003-11-18 | International Business Machines Corporation | Method and apparatus for efficient interface method dispatch |
US7146305B2 (en) | 2000-10-24 | 2006-12-05 | Vcis, Inc. | Analytical virtual machine |
US7343427B2 (en) * | 2000-12-13 | 2008-03-11 | Sony Corporation | Method and an apparatus for the integration of IP devices into a HAVi network |
US7127517B2 (en) | 2000-12-27 | 2006-10-24 | International Business Machines Corporation | Protocol adapter framework for integrating non-IIOP applications into an object server container |
US6750879B2 (en) | 2000-12-30 | 2004-06-15 | Intel Corporation | Method and apparatus for communicating cable modem problem demarcation through a graphical user interface |
US7055146B1 (en) | 2001-03-08 | 2006-05-30 | Microsoft Corporation | Method and system for dynamically inserting modifications for identified programs |
EP1374049B1 (en) | 2001-03-26 | 2016-11-23 | Accenture Global Services Limited | Broadband communications |
US6829729B2 (en) | 2001-03-29 | 2004-12-07 | International Business Machines Corporation | Method and system for fault isolation methodology for I/O unrecoverable, uncorrectable error |
US7370322B1 (en) * | 2001-04-11 | 2008-05-06 | Sun Microsystems, Inc. | Method and apparatus for performing online application upgrades in a java platform |
US7243090B2 (en) | 2001-05-16 | 2007-07-10 | Sun Microsystems, Inc. | System and method for specification tracking in a Java compatibility testing environment |
CA2475472C (en) | 2001-05-22 | 2017-07-04 | Imagine Broadband Limited | Simulating user activity in a broaband network |
US7987228B2 (en) | 2001-07-03 | 2011-07-26 | Accenture Global Services Limited | Broadband communications |
US7546602B2 (en) | 2001-07-10 | 2009-06-09 | Microsoft Corporation | Application program interface for network software platform |
US7225367B2 (en) | 2001-08-22 | 2007-05-29 | Genworth Financial, Inc. | Method and system for tracking errors |
US6847649B2 (en) * | 2001-08-24 | 2005-01-25 | Ericsson Inc. | Methods, systems and computer program products for accessing an embedded web server on a broadband access terminal |
US6842870B2 (en) | 2001-09-20 | 2005-01-11 | International Business Machines Corporation | Method and apparatus for filtering error logs in a logically partitioned data processing system |
US8713623B2 (en) | 2001-09-20 | 2014-04-29 | Time Warner Cable Enterprises, LLC | Technique for effectively providing program material in a cable television system |
US7010796B1 (en) | 2001-09-28 | 2006-03-07 | Emc Corporation | Methods and apparatus providing remote operation of an application programming interface |
US7000154B1 (en) | 2001-11-28 | 2006-02-14 | Intel Corporation | System and method for fault detection and recovery |
US6973597B2 (en) | 2001-12-05 | 2005-12-06 | Hewlett-Packard Development Company, L.P. | Method and apparatus for rebooting a printer |
US6912670B2 (en) | 2002-01-22 | 2005-06-28 | International Business Machines Corporation | Processor internal error handling in an SMP server |
JP2004005321A (en) * | 2002-03-26 | 2004-01-08 | Sony Corp | Program, recording medium, information processing device and method, and information processing system |
US7587592B2 (en) | 2002-04-03 | 2009-09-08 | Ntt Docomo, Inc. | Distribution method, distribution system, and terminal device |
US7228540B2 (en) | 2002-05-14 | 2007-06-05 | Microsoft Corporation | Preparation for software on demand system |
US7216170B2 (en) | 2002-05-22 | 2007-05-08 | Microsoft Corporation | Systems and methods to reference resources in a television-based entertainment system |
US7080356B2 (en) | 2002-09-18 | 2006-07-18 | Sun Microsystems, Inc. | Certification test suite |
DE10393080T5 (en) | 2002-10-08 | 2005-09-29 | Invensys Systems, Inc., Foxboro | service portal |
US7150008B2 (en) | 2002-10-25 | 2006-12-12 | Microsoft Corporation | Non-invasive rule-based binary analysis of software assemblies |
US7634779B2 (en) * | 2002-11-20 | 2009-12-15 | Sun Microsystems, Inc. | Interpretation of DVD assembly language programs in Java TV-based interactive digital television environments |
US7316003B1 (en) | 2002-12-18 | 2008-01-01 | Oracle International Corp. | System and method for developing a dynamic web page |
JP4125169B2 (en) | 2003-04-02 | 2008-07-30 | キヤノン株式会社 | Log acquisition method |
KR100526181B1 (en) | 2003-05-13 | 2005-11-03 | 삼성전자주식회사 | Test-Stream Generating Method And Apparatus Providing Various Standards And Testing Level |
US7574431B2 (en) * | 2003-05-21 | 2009-08-11 | Digi International Inc. | Remote data collection and control using a custom SNMP MIB |
US7386836B2 (en) | 2003-06-09 | 2008-06-10 | International Business Machines Corporation | Maintaining multiple valid concurrent serialized object versions |
US7401324B1 (en) | 2003-09-18 | 2008-07-15 | Sun Microsystems, Inc. | Method and apparatus for performing time measurements during instrumentation-based profiling |
US7290253B1 (en) | 2003-09-30 | 2007-10-30 | Vmware, Inc. | Prediction mechanism for subroutine returns in binary translation sub-systems of computers |
US7519953B2 (en) | 2003-09-30 | 2009-04-14 | Microsoft Corporation | Method and system for automatically testing a software build |
US8302111B2 (en) * | 2003-11-24 | 2012-10-30 | Time Warner Cable Inc. | Methods and apparatus for hardware registration in a network device |
US7266726B1 (en) * | 2003-11-24 | 2007-09-04 | Time Warner Cable Inc. | Methods and apparatus for event logging in an information network |
US7600219B2 (en) | 2003-12-10 | 2009-10-06 | Sap Ag | Method and system to monitor software interface updates and assess backward compatibility |
US8078669B2 (en) | 2004-02-18 | 2011-12-13 | Time Warner Cable Inc. | Media extension apparatus and methods for use in an information network |
EP1769319A4 (en) | 2004-06-02 | 2010-03-03 | Open Text Corp | Systems and methods for dynamic menus |
US8201191B2 (en) | 2004-06-30 | 2012-06-12 | Time Warner Cable Inc. | Apparatus and methods for implementation of network software interfaces |
US8312267B2 (en) | 2004-07-20 | 2012-11-13 | Time Warner Cable Inc. | Technique for securely communicating programming content |
US7506320B2 (en) | 2004-09-09 | 2009-03-17 | International Business Machines Corporation | Generating sequence diagrams using call trees |
US7614045B2 (en) | 2004-09-24 | 2009-11-03 | Sap (Ag) | Sharing classes and class loaders |
US9723267B2 (en) | 2004-12-15 | 2017-08-01 | Time Warner Cable Enterprises Llc | Method and apparatus for wideband distribution of content |
US20130247027A1 (en) | 2005-02-16 | 2013-09-19 | Solidcore Systems, Inc. | Distribution and installation of solidified software on a computer |
US7945902B1 (en) | 2005-07-13 | 2011-05-17 | Oracle America, Inc. | Detection of non-standard application programming interface usage via analysis of executable code |
DE102005050304A1 (en) | 2005-10-17 | 2007-04-19 | Netccm Gmbh | Method and program for the generation of automatically distributable clients of application servers |
US20090222867A1 (en) | 2005-12-22 | 2009-09-03 | Toshihiko Munetsugu | Broadcast receiving apparatus, video storing apparatus, and multimedia delivering system |
US8255891B2 (en) | 2005-12-30 | 2012-08-28 | Intel Corporation | Computer-implemented method and system for improved data flow analysis and optimization |
US8347341B2 (en) | 2006-03-16 | 2013-01-01 | Time Warner Cable Inc. | Methods and apparatus for centralized content and data delivery |
US20070261090A1 (en) | 2006-03-24 | 2007-11-08 | Miller Eric B | Interactive television application distribution, control, and communication system and methods |
US7739698B2 (en) | 2006-05-25 | 2010-06-15 | International Business Machines Corporation | Multiplatform API usage tool |
US7895579B2 (en) | 2006-06-16 | 2011-02-22 | Microsoft Corporation | Automated method and system for collecting and reporting API performance profiles |
US7814544B1 (en) | 2006-06-22 | 2010-10-12 | Symantec Corporation | API-profile guided unpacking |
US8520850B2 (en) | 2006-10-20 | 2013-08-27 | Time Warner Cable Enterprises Llc | Downloadable security and protection methods and apparatus |
-
2004
- 2004-02-18 US US10/782,680 patent/US8078669B2/en active Active
-
2005
- 2005-02-17 EP EP05003475.0A patent/EP1569103B1/en not_active Expired - Lifetime
-
2011
- 2011-12-12 US US13/323,616 patent/US9414116B2/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
None * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11882434B2 (en) | 2020-07-09 | 2024-01-23 | Western Digital Technologies, Inc. | Method and device for covertly communicating state changes |
US11582607B2 (en) | 2020-07-10 | 2023-02-14 | Western Digital Technologies, Inc. | Wireless security protocol |
Also Published As
Publication number | Publication date |
---|---|
EP1569103A3 (en) | 2010-04-28 |
US20120151019A1 (en) | 2012-06-14 |
US8078669B2 (en) | 2011-12-13 |
US20060036750A1 (en) | 2006-02-16 |
EP1569103A2 (en) | 2005-08-31 |
US9414116B2 (en) | 2016-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1569103B1 (en) | Media extension apparatus and methods for use in an information network | |
US9473827B2 (en) | Apparatus and methods for implementation of network software interfaces | |
US20070261090A1 (en) | Interactive television application distribution, control, and communication system and methods | |
US9980000B2 (en) | Method, computer program, reception apparatus, and information providing apparatus for trigger compaction | |
AU2003234144B2 (en) | Supporting common interactive television functionality through presentation engine syntax | |
US20190020916A1 (en) | Scheduling trigger apparatus and method | |
US20100017832A1 (en) | Network digital television middleware | |
CA2546598C (en) | Methods and apparatus for hardware registration in a network device | |
JP5738469B2 (en) | Smart set top box for providing smart service and digital TV service using basic media player included in single operating system and driving method thereof | |
EP3313080A1 (en) | Remote device configuration | |
US20100146575A1 (en) | Methods and apparatus for controlling display in a networked device | |
US20080250461A1 (en) | Multimedia data transmitting apparatus and multimedia data receiving apparatus | |
PT1281279E (en) | Generic data processing engine | |
Jones | DVB-MHP/Java TV data transport mechanisms | |
US20030033612A1 (en) | Software appliance method and system | |
Karachristos et al. | A real-time streaming games-on-demand system | |
CN117714798A (en) | Remote video dynamic push control method and device | |
Kar et al. | Architecture of retail set-top box application platform for digital cable network | |
Papadimitriou et al. | Integrating Semantic Technologies with Interactive Digital TV | |
Galbraith | Standards for broadband customer premises equipment | |
Hinze-Hoare | From Digital Television to Internet? | |
Galbraith | Standards for Broadband Customer Premises Equipment | |
Kuo et al. | Multi-Shot Framework with Preloading Architecture for Low-Latency MHP Application Delivery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA HR LV MK YU |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: TIME WARNER CABLE, INC. |
|
17P | Request for examination filed |
Effective date: 20060215 |
|
PUAL | Search report despatched |
Free format text: ORIGINAL CODE: 0009013 |
|
AK | Designated contracting states |
Kind code of ref document: A3 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA HR LV MK YU |
|
17Q | First examination report despatched |
Effective date: 20100719 |
|
AKX | Designation fees paid |
Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: TIME WARNER CABLE INC. |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: TIME WARNER CABLE ENTERPRISES LLC |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20160923 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04N 21/81 20110101ALI20160909BHEP Ipc: H04N 21/443 20110101ALI20160909BHEP Ipc: G06F 9/445 20060101AFI20160909BHEP |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 878399 Country of ref document: AT Kind code of ref document: T Effective date: 20170415 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602005051551 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170623 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 878399 Country of ref document: AT Kind code of ref document: T Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170622 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170722 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170724 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602005051551 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 14 |
|
26N | No opposition filed |
Effective date: 20180102 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20180228 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180217 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180228 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180228 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180217 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180228 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20050217 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170322 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240123 Year of fee payment: 20 Ref country code: GB Payment date: 20240123 Year of fee payment: 20 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20240123 Year of fee payment: 20 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R071 Ref document number: 602005051551 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: PE20 Expiry date: 20250216 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION Effective date: 20250216 |