SUPPLYING OMITTED CRITICAL CODE PORTION TO ACTIVATE LICENSABLE COMPONENT IN AUDIO VIDEO DEVICE

-

An audio-video display device includes a licensable component requiring software code to execute a licensable function. The device is vended with the software code but without the critical piece of code. Upon determining that a license for the licensable function has been activated, the critical piece of code is downloaded to the device to enable execution of the licensed function.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description

This application claims priority to U.S. patent application Ser. No. 12/970,215, filed Dec. 16, 2010 and to U.S. provisional patent application Ser. No. 61/412,552, filed Nov. 11, 2010.

I. FIELD OF THE INVENTION

The present application relates generally to supplying omitted critical code portions to activate a licensable component in an audio video device.

II. BACKGROUND OF THE INVENTION

Televisions incorporate a host of technologies to enable a viewer to watch programming from a variety of sources. These sources include terrestrial broadcast sources of analog (using National Television System Committee, or NTSC, format) and digital (using Advanced Television System Committee, or ATSC, format) TV signals. ATSC signals typically use video compression known as Motion Picture Experts Group (MPEG-2) and TVs must consequently support MPEG-2 decompression if they support ATSC programming.

Cable-provided “basic” television programming can also be provided in NTSC or quadrature amplitude modulation (QAM) format. Cable-provided “enhanced” programming may also be provided using high definition multimedia interface (HDMI) principles. Likewise, satellite-provided TV signals may be received in HDMI. As well, video from the Internet can be displayed on many modern TVs in a variety of formats, including data over cable service Internet specification (DOCSIS) format. Furthermore, TVs are often configured to support multiple audio formats, including advanced audio coding (AAC), Audio code 3 (AC3), digital theater system (DTS), and so on. And as contemporary viewers know, TVs are expected to support the presentation of electronic program guides (EPGs).

SUMMARY OF THE INVENTION

As understood herein, various TV technologies require license fees to be paid. As further understood herein, many technologies that must be built in to modem TVs to support various program sources may not be used. Nonetheless, license fees for the unused technologies are still paid, unnecessarily cascading cost.

Accordingly, a method includes receiving initial software code in an audio-video display device having a processor being able to execute code. The initial software code does not include a critical piece of code, without which the initial software cannot be executed by the processor to undertake a licensed function. Responsive to a determination that a license for the licensed function has been activated, the critical piece of code is received to cooperate with the initial software code in the audio-video display device to render a fully capable code. The method includes using the processor to execute the fully capable code to thereby undertake the licensed function on the audio-video display device.

The initial software code may have an entry point and an exit point, and the critical piece of code can be copied into the initial software code between the entry point and the exit point to render the fully capable code. In some embodiments the initial software code has no executable capability whatsoever without the critical piece of code. In other embodiments the initial software code has a reduced executable capability without the critical piece of code. In this latter embodiment, the initial software code can include a reduced capability module and the reduced capability module may be removed from operation when the critical piece of code is received. In any case, without the critical piece of code, the licensed function cannot be executed regardless of any security measures that may be lifted, because the critical piece of code must be present and executable within software code and until the license for the licensed function has been activated, the critical piece of code is missing from the initial software code as opposed to being present in the initial software code but merely disabled in some fashion.

In another aspect, a TV includes a licensable component for which a license has not been obtained prior to vending the TV. A processor in the TV executes software code associated with the licensable component to provide a licensed function only in the event that a critical piece of code is present in the software code. The software code is not executable by the processor to provide the licensed function in the event that the critical piece of code is not present in the software code even though the software code is accessible to the processor. A communication interface communicatively coupled to the processor receives the critical piece of code responsive to a determination that a license for the licensed function and/or for the licensable component has been activated.

The licensable component can be a terrestrial broadcast advanced television systems committee (ATSC) demodulator assembly, a video decoder, an audio decoder, a digital rights management component, a web browser, or an electronic program guide (EPG) component.

In another aspect, a method includes, responsive to a determination that a license for a licensed function has been activated, providing to an audio-video display device a critical piece of code to initial software code in the audio-video display device to render a fully capable code. The initial software prior to the provision of the critical piece of code, typically when the device is vended, does not include the critical piece of code, without which the initial software cannot be executed by a processor in the audio-video display device to undertake the licensed function. The method includes indicating to the audio-video display device that the licensed function is available on the audio-video display device.

The details of the present invention, both as to its structure and operation, can best be understood in reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a non-limiting example system in accordance with present principles;

FIG. 2 is a block diagram of an example TV;

FIG. 3 is a flow chart of non-limiting TV set up logic in accordance with present principles;

FIG. 4 is a flow chart of non-limiting logic for automatically detecting whether an ATSC demodulator is required to be activated;

FIGS. 5-7 are schematic diagrams illustrating alternate methods for activating an ATSC demodulator;

FIG. 8 is a flow chart of non-limiting logic for licensing a component in a TV;

and

FIG. 9 is a schematic diagram illustrating program code with a missing piece of critical software being replaced to enable a licensable feature.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring initially to the non-limiting example embodiment show in FIG. 1, a system 10 includes an audio video device such as a TV 12 including a TV tuner 16 communicating with a TV processor 18 accessing a tangible computer readable storage medium 20 such as disk-based or solid state storage. The TV 12 can output audio on one or more speakers 22. The TV 12 can receive streaming video from the Internet using a built-in wired or wireless modem 24 communicating with the processor 12 which may execute a software-implemented browser 26. Video is presented under control of the TV processor 18 on a TV display 28 such as but not limited to a high definition TV (HDTV) flat panel display. User commands to the processor 18 may be wirelessly received from a remote control (RC) 30 using, e.g., rf or infrared. Audio-video display devices other than a TV may be used, e.g., smart phones, game consoles, personal digital organizers, notebook computers and other types of computers, etc.

TV programming from one or more terrestrial TV broadcast sources 32 as received by a terrestrial broadcast antenna 34 which communicates with the TV 12 may be presented on the display 28 and speakers 22. The terrestrial broadcast programming may conform to digital ATSC standards and may carry within it a terrestrial broadcast EPG, although the terrestrial broadcast EPG may be received from alternate sources, e.g., the Internet via Ethernet, or cable communication link, or satellite communication link.

TV programming from a cable TV head end 36 may also be received at the TV for presentation of TV signals on the display 28 and speakers 22. When basic cable only is desired, the cable from the wall typically carries TV signals in QAM or NTSC format and is plugged directly into the “F-type connector” 38 on the TV chassis in the U.S., although the connector used for this purpose in other countries may vary. In contrast, when the user has an extended cable subscription for instance, the signals from the head end 36 are typically sent through a STB 40 which may be separate from or integrated within the TV chassis but in any case which sends HDMI baseband signals to the TV.

Similarly, HDMI baseband signals transmitted from a satellite source 42 of TV broadcast signals received by an integrated receiver/decoder (IRD) 44 associated with a home satellite dish may be input to the TV 12 for presentation on the display 28 and speakers 22. Also, streaming video may be received from the Internet 46 for presentation on the display 28 and speakers 22. The streaming video may be received at the computer modem 24 or it may be received at an in-home modem 48 that is external to the TV 12 and conveyed to the TV 12 over a wired or wireless Ethernet link and received at an RJ45 or 802.11x antenna on the TV chassis.

FIG. 2 shows details of an example TV 12. As shown, the terrestrial signal in ATSC format is input to the TV tuner 16, as is basic cable in NTSC or QAM format in the event that basic cable is used and the wall cable plugged into the F-type connector 38. On the other hand, streaming Internet video may be received at a DOCSIS tuner 50 and demodulated/decoded at a DOCSIS decoder/demodulator 52. Typically, the DOCSIS components are housed separately from the TV 12 but in some embodiments may be included in the chassis of the TV 12.

The output of the tuner 16, depending on the signal format received, may be sent to an NTSC decoder/demodulator 54, or a QAM decoder/demodulator 56, or an ATSC decoder/demodulator 58. The output from the NTSC decoder/demodulator 54 can be sent directly to the display 28 and speakers 22 for presentation. On the other hand, the output from the digital decoder/demodulators 56, 58 typically is sent to a transport stream demultiplexer 60, which separates the desired program from other programs in the selected stream and sends the desired program to an MPEG video decoder 62, which in turn uncompresses the MPEG desired program and sends the uncompressed program to the TV display 28 for presentation. Audio from the demultiplexer 60 may be sent to an audio decoder 64 which in turn sends the decoded audio to the speakers 22 for presentation.

In contrast to the sequence of decoder/demodulators, demultiplexer, and MPEG decoders discussed above, video from either the STB 40 or IRD 44 is in baseband HDMI when it is received by the TV 12. Accordingly, the signals from the STB 40 or IRD 44 are sent directly to the TV display 28 for presentation without further video decompression between the STB 40 or IRD 44 and TV display 28. Audio from the STB 40 or IRD 44 may still be in a format, e.g., AC3, that requires decoding prior to play on the speakers 22 so the audio may be sent through the audio decoder 64 as shown. Likewise, audio from the ATSC terrestrial source 32 may be in AC3 format and so may be sent through the audio decoder 64. Internet video from the DOCSIS decoder/demodulator 52 may be sent through the demultiplexer 60 and decoders 62, 64 as shown.

Now referring to FIG. 3, at block 66 a user of the TV 12 can be conducted, using onscreen user interfaces (UI), through a set-up routine upon first power on or thereafter from a menu to set up various features of the TV. As an example, the user may be asked, for one or more licensable components within the TV, if the user desires to use that component. This may be done implicitly, e.g., by asking the user if the user wishes to automatically scan the broadcast spectrum to detect channels, in which case it may be inferred that the ATSC decoder/demodulator 58 and MPEG decoder 62 will be required and, hence, that licenses to use those components will be needed. Also, in this latter case it may be inferred that a license to the terrestrial broadcast EPG may be required, whereas such a license would not be required if terrestrial broadcast were not being used as an input source.

Or again, the user may be given the choice to receive Internet video through the built-in modem 24 or from an external modem 48 and if the latter is chosen, no license need be obtained for the internal browser 26; otherwise, a license may be required to use the internal browser 26.

Proceeding to block 68, for each license that is inferred to be required based on the user set-up selections at block 66, the TV 12 uploads a request for the license over the Internet, for example, or back through a two-way cable system, etc. Or, as explained further below the request may be made by telephone. Regardless of how made, the request typically identifies the component for which a license is required based on user input at block 66 along with a unique identification of the TV, e.g., a hash of the TV model number and serial number, in some embodiments encrypted if desired. The request may be made at set-up time. Alternatively, the request may be cached for later upload when, e.g., an appropriate broadband connection is sensed. In any case, the request may be sent to an Internet server at a prestored Internet address or to a cable head end or to another appropriate licensing entity or agent.

Block 70 indicates that assuming it passes authentication the TV 12 receives back the license in the form of licensing information, typically a code that must be input to the TV processor 18 to enable or unlock the associated component. Or, as discussed further below in reference to FIG. 9, the associated component may require software code to function and a critical piece of the code which is related to the licensable feature may be omitted when the device is vended, with this critical piece of code being supplied at block 70 to enable the licensable feature of the component. Prior to provision of the critical piece of code, the licensable feature of the component in effect is not merely locked out, but rather is effectively missing altogether, even though other parts of software code needed to execute the licensable feature are vended with the device.

The code may be automatically input to the appropriate internal components of the TV at block 72 or the code may be displayed on the TV and the user prompted by means of an onscreen UI to enter the code using, e.g., the RC 30. Proper input of .the code activates the related component within the TV. Block 74 simply indicates that license fee data is maintained and used to generate billing information from the licensing agency to the manufacturer of the TV, and may also be used to generate marketing data as discussed further below. The data may be kept in the TV until uploaded to a licensing entity/agent by means noted above.

FIG. 4 shows that automatic license determinations may be made outside of a user set-up routine if desired. In the example shown in FIG. 4, commencing at decision diamond 76 it is determined whether a predetermined physical condition exists in the TV, e.g., a particular kind of connection, from which it may be inferred what licensable components will be required. In the example of FIG. 4, the physical condition is the presence of a voltage in the automatic gain control (AGC) circuitry of the tuner 16, which would occur when, for instance, a connection is made at the TV chassis to the terrestrial antenna 34 or when a cable from the wall is connected to the F-type connector 38.

When the tested-for physical condition exists, the logic flows to block 78, in this example to activate the NTSC demodulator 54. This is done recognizing that NTSC demodulators typically require no licenses, so to avoid unnecessarily requesting licenses, the signal at the tuner 16 is first tested to determine if it is an NTSC signal. Decision diamond 80 indicates that the test may be whether “noise”, is present in the signal.

If the test indicates that NTSC signals only are present the logic ends, but otherwise the logic flows to block 82 to activate the QAM decoder/demodulator 56. If QAM only is detected (by the QAM decoder/demodulator 56 recognizing QAM signals and/or no noise) the logic ends, but if the QAM decoder/demodulator 56 does not recognize the signal, this indicates that the signal is neither QAM nor (from decision diamond 80) NTSC, with the inference thus being that the signal is ATSC requiring use of the ATSC decoder/demodulator 58, which is activated at block 86 to process the signal. At block 88 an uplink is obtained by the TV processor 18 to the above-described licensing entity/agent to obtain the license code discussed above using the unique ID of the TV, and at block 90 the code is received and used as necessary to permit use of the ATSC decoder/demodulator 58.

Or, the step at block 90 can be omitted and the ATSC decoder/demodulator 58 immediately activated on the assumption that the processor 18 is programmed to send a message to the licensing entity/agent that licensing accounting is to be generated after activation of the ATSC decoder/demodulator 58.

Yet again, as shown in dashed lines in FIG. 4 the logic may flow first from decision diamond 84 to blocks 88 and 90 to obtain the licensing “unlock” code and then back to block 86 to activate the ATSC decoder/demodulator 58 using the code, to ensure that no use may be made of the ATSC decoder/demodulator 58 until such time as the licensing entity/agent has been informed of its use, has authenticated the TV for the necessary ATSC license, and has determined that under business rules the license code should be downloaded to fulfill the request.

Additional example inference rules that may be employed pursuant to automatically obtaining needed component licenses after vending the TV to avoid paying for unnecessary licenses prior to sale of the TV include, if there is ATSC present, it is less likely that QAM will be found; if ATSC is present, the total number of ATSC channels will be much smaller than the number for QAM channels. Also, when signals are received from an external modern 48, audio video programming does not require use of the built-in browser 26 and so receipt of video over an Ethernet link without receipt of signals at the internal modem 24 may be inferred to mean that the browser 26 is not in use.

FIGS. 5-7 illustrate logic that may be used during setup to obtain licenses. Using, e.g., the RC 30, a person may input 92 a request to conduct auto-scan of available terrestrial or cable or satellite channels from, e.g., an onscreen setup menu presented on an audio video display product 94 (which may be implemented by the TV 12). In response, the AV display product sends an activation request for, e.g., the ATSC decoder/demodulator 58 which may include the tuner ID and product 94 ID and/or the decoder/demodulator 58 ID/product 94 ID. Activation of the ATSC decoder/demodulator 58 is executed at 96 using activation codes from one or more licensing entities/agents such as server 98, provided the licensing entities/agents determine, based on the information received from the product 94, that the product is entitled to a license for the requested component. As mentioned above and explained more fully below with respect to FIG. 9, the TV may be vended with essential executable code missing from licensable components so that the components are not only non-enabled, they are non-functional. The activation codes sent to the TV pursuant to a license request in such embodiments may include the essential code that had been missing to render the components not only activated, but functional as well.

A log may be kept by the licensing entities/agents indicating what products and what components in those products have been activated and based on that log, licensing accounting data may be generated for purposes of presenting licensing invoices for activated components to the manufacturer of the product 94. In any case, 100 indicates that the product 94 receives the activation response, e.g., activation codes, to activate the demodulator/decoder 58 at 101, which converts the product 94 to an ATSC-capable device. The user may be notified using onscreen notification that ATSC programming may now be viewed using the product 94.

FIG. 6 shows an alternative embodiment. Using, e.g., the RC 30, a person may input 102 a request to conduct auto-scan of available terrestrial or cable or satellite channels from, e.g., an onscreen setup menu presented on an audio video display product 94 (which may be implemented by the TV 12). In response, at 104 telephone information including a phone number to a licensing entity/agent is prepared and the user notified 106 of the information by means of, e.g., a user interface or prompt presented on the product 94. The user enters 108 the information into a telephone, either by speaking the number or by holding the telephone adjacent a speaker on the product 94 for receiving dual tone multifrequency (DTMF) tones from the product that are detected by the telephone and used to automatically dial the number using, e.g., a voice response unit (VRU) 110.

Other alternate embodiments involve sending short message service (SMS) messages to a server to send the above information or scanning bar-type codes on the TV or component to send the requisite information to the server to obtain the license. In any case, determining what licenses are needed may be accomplished upon start up and/or periodically during operation.

Tuner activation is generated at 112 by licensing entities/agents 114 such as Internet servers and the activation code discussed above sent 116 to the VRU 110, which presents the code to the user to complete the activation process at 120. Activation of the licensable component, e.g., the ATSC decoder/demodulator 58, is executed at 101, which converts the product 94 to an ATSC-capable device. The user may be notified using onscreen notification that ATSC programming may now be viewed using the product 94.

FIG. 7 shows another alternative embodiment. Using, e.g., the RC 30, a person may input 122 a request to conduct auto-scan of available terrestrial or cable or satellite channels from, e.g., an onscreen setup menu presented on an audio video display product 94 (which may be implemented by the TV 12). In response, at 124 Internet information including an Internet address of a licensing entity/agent is prepared and the user notified 126 of the information by means of, e.g., a user interface or prompt presented on the product 94. The user enters 128 the information into, e.g., a home computer 127. Tuner activation is generated at 130 by licensing entities/agents 132 such as Internet servers and the activation code discussed above sent 134 to the computer, which presents 136 the code to the user by means of, e.g., a web page or telephone to complete the activation process at 138. Activation of the licensable component, e.g., the ATSC decoder/demodulator 58, is executed at 101, which converts the product 94 to an ATSC-capable device. The user may be notified using onscreen notification that ATSC programming may now be viewed using the product 94.

Alternatively, licensing information may be exchanged using short message service (SMS) codes or by using bar codes. To use bar codes the TV can include a camera that images the bar codes on various components, which are interpreted by the processor 18 as identifying information.

In some instances, if only a limited number (e.g., two) NTSC channels are needed, a limited and less expensive license may be requested and granted to permit access to only those two channels through the NTSC demodulator with a license being requested and granted to any component such as a stereo audio decoder should the legacy device (typically, a VCR) use such audio.

FIG. 8 shows logic that may be executed by a licensing entity/agent computer. Commencing at block 140, a license request from, e.g., the TV 12 is received at, e.g., any of the above-described servers or head ends, which are programmed with software to execute the logic shown in FIG. 8. The unique ID discussed above is looked up at block 142 and the requesting device is authenticated at decision, diamond 144 by, e.g., determining if the device is on a list of approved devices. If desired, it may be further determined whether a license for the particular licensable component that is the subject of the request has already been granted and if so, authentication fails. If the requesting device is approved and a license for the licensable component that is the subject of the request has not already been granted, the logic moves to block 146 to send license information, e.g., activation codes, to the requesting device.

Block 148 indicates that license accounting data is generated pursuant to sending the activation code to the requesting device. This accounting data can be used to effect remuneration from the manufacturer of the requesting device to the licensing authority for the component that is the subject of the request. At block 150 the authorized device database is modified to record the grant of the license.

Marketing data may be generated at block 152 based on the license grant. As an example, the total number of devices vended with the licensable component may be compared against the number of licenses granted to requesting devices to ascertain usage of the component compared to other components within the requesting device. For instance, it might be noted that 30% of vended devices of a particular TV model ever request activation of the ATSC tuner. This data can moreover be correlated to demographic data obtained during device registration so that, as an example, of the 30% of devices requesting activation of the TV tuner, it can be known which geographic region was more likely to request such activation, or which demographic age group, etc. It may be further ascertained, using device registration information submitted by purchasers, that of the devices requesting activation of the ATSC tuner, for example, 90% of those devices were second or third home TVs that consequently can be inferred to lack a cable or satellite hookup.

It is preferred that once a licensable component has been activated by obtaining a license for it, it cannot subsequently be deactivated by the user, to avoid multiple license payments for the same component. Accordingly, the TV processor 18 may be programmed to refuse deactivation commands from the user if any are input for any component that has been activated and licensed, at least insofar as deactivation would require another license to reactivate.

Verification of license may also be provided by the TV processor so that, for example, if a component license is requested by the TV but the corresponding feature never used within some period of time, the TV can retract the license request and any license fees refunded as a result.

Now referring to FIG. 9, a schematic diagram is shown representing software . code 200 that may be stored on, e.g., the medium 20 in FIG. 1 for execution by, e.g., the processor 18 to execute a licensable function of the example audio video device (TV). As shown, the code typically has an entry point or module 202 and an exit point or module 204. Additional modules may be programmed between the entry and exit points 202, 204. In some implementations, the additional modules programmed between the entry and exit points 202, 204 are useless without the critical piece of code described below, and no function at all may be executed using the code 200 without the critical piece of code described below. In the example shown, however, a reduced capability module 206 is accessed from the entry point 202 and after being executed, control is passed to the exit module 204. As but one example, if the feature to which the code 200 is related is decoding and playing video, the reduced capability module 206 may be executed to play video in standard definition only, typically not requiring a license, so that without the below-described critical piece of code, the software code 200 may be executed to provide a reduced capability function, typically one that does not require a license.

In any case, upon activation of a licensable function, a critical piece of code 208 is provided to the audio video device in any of the ways described above, and is copied into the software code 200 to permit execution of a licensable function. Without the critical piece of code 208, the licensable function cannot be executed regardless of any security measures that may be lifted, since the critical piece of code must be present and executable within the software code 200 and until the licensable function is activated, the critical piece of code 208 is missing, as opposed to being present in the code 200 but merely disabled in some fashion. The distinction may have business importance, because were the code 200 to be vended with the critical piece 208 present but disabled, one set of business rules may be applied, whereas were the code 200 to be vended with the critical piece 208 missing altogether, another set of business rules may apply.

As shown by the dashed line 210, the critical piece of code may be copied into the sequence of the software code 200 in the appropriate location between the entry and exit points 202, 204 to permit execution of the licensable function. Or, as indicated by the dashed lines 212, 214, in the case where the software code 200 as vended has reduced capability provided by a reduced capability module 206 prior to license activation, the critical piece of code 208 may replace the reduced capability module 206, with the module 206 remaining present in the code if desired or being removed from the code as indicated by the dashed line 214. In the example being used for exposition, the critical piece of code, when executed in conjunction with the remainder of the code 200, may provide for high definition video decoding and play.

In addition to the above-described means for conveying the missing critical piece of code, the code may be provided to the device embedded in broadcast TV signals, or by providing the code on a removable memory medium such as a USB flash drive and then shipping the removable memory medium to the purchaser of the device, who is instructed to connect it to the device sought to be upgraded and download the critical piece of code into the device. When the device is IP-enabled the critical piece of code may be delivered over the Internet from a code server having access to the ID of the device and the Internet address of the device as sent by the device as part of the license activation request.

Without limitation, the need for paying for licenses for the following technologies may be determined during TV set-up or subsequently by automatically detecting whether the technologies are being used:

VIDEO DECODERS

MPEG-2 video, MPEG-2 video with optical disk, MPEG4 advanced video coding (AVC), MPEG4 Visual, MPEG video codec (VC) 1

AUDIO DECODERS

unified AAC (MPEG 2&4 AAC) 2ch, unified AAC (MPEG 2&4 AAC) 3ch, Dolby Digital AC3 2ch, Dolby Digital AC3 5.1 ch, Dolby Digital Plus (DD+) 2ch, ProLogic2 (Surround Sound), MPEG audio 1&2 layer 1, 2, 3) MP3, DTS_Blueray disk (BD) (2CH/2CH+ Digital Out), BBE Sound, sound retrieval system (SRS) sound

EPGs

Gemstar Guide EPG, non-Gemstar EPG (SI-EPG)

DEMODULATORS

Association of Radio Industries and Businesses (ARIB) (D+BS+CS), ATSC, digital video broadcasting (terrestrial) (DVB-T)

OTHER COMPONENTS INCLUDING DIGITAL RIGHTS MANAGEMENT (DRM)

Joint Photographic Expert Group (JPEG), digital transmission content protection (DTCP)/AACP/Open MG, HDMI, System Synchronized Brightness Control (contrast enhancement), Inverter controller integrated circuit (IC), IEEE 802.11 wireless license, IEEE 802.11(n), BD Pool (player), BD Pool (recorder), digital video disk (DVD) format, IEEE 802.11/16, IEEE 1394

SOFTWARE

JAVA, MHP/Ginga interactive TV software, JAVA-BD combination, DivX codec software, Windows Media Audio, Windows Media Video, Windows Media Network read, Windows Media digital rights management (DRM), audio watermark, Netfront, web browser software.

Additionally, production encryption keys and test encryption keys may be used to permit testing a licensable component in production, pre-sale, without triggering the above-described license request mechanisms. A TV may be placed in a test activation mode used only in the manufacturing or test phase, and if desired the test mode may have a hardwired time out. A test key or keys can be used to activate licensable components and the license request algorithm recognizes a test key and responsive to the recognition does not request a license. The test activation mode may be hardwired to deactivate after a single power cycle and the TV processor may not permit reactivation of the test mode thereafter. Activation of a licensable component thereafter requires a production key which is associated with a license request.

While the particular SUPPLYING OMITTED CRITICAL CODE PORTION TO ACTIVATE LICENSABLE COMPONENT IN AUDIO VIDEO DEVICE is herein shown and described in detail, it is to be understood that the subject matter which is encompassed by the present invention is limited only by the claims.

Claims

1. Method comprising:

receiving initial software code in an audio-video display device having a processor being able to execute code, the initial software code not including a critical piece of code without which the initial software cannot be executed by the processor to undertake a licensed function;
receiving, responsive to a determination that a license for the licensed function has been activated, the critical piece of code in cooperation with the initial software code in the audio-video display device to render a fully capable code; and
using the processor to execute the fully capable code to thereby undertake the licensed function on the audio-video display device.

2. The method of claim 1, wherein the audio-video display device is a TV.

3. The method of claim 1, wherein the initial software code has an entry point and an exit point, the critical piece of code being copied into the initial software code between the entry point and the exit point to render the filly capable code.

4. The method of claim 1, wherein the initial software code has no executable capability whatsoever without the critical piece of code.

5. The method of claim 1, wherein the initial software code has a reduced executable capability without the critical piece of code.

6. The method of claim 5, wherein the initial software code includes a reduced capability module and the reduced capability module is removed from operation when the critical piece of code is received.

7. The method of claim 1, wherein without the critical piece of code, the licensed function cannot be executed regardless of any security measures that may be lifted, because the critical piece of code must be present and executable within software code and until the license for the licensed function has been activated, the critical piece of code is missing from the initial software code as opposed to being present in the initial software code but merely disabled in some fashion.

8. TV comprising:

at least one licensable component for which a license has not been obtained prior to vending the TV;
a processor in the TV;
the processor executing software code associated with the licensable component to provide a licensed function only in the event that a critical piece of code is present in the software code, the software code not being executable by the processor to provide the licensed function in the event that the critical piece of code is not present in the software code even though the software code is accessible to the processor; and
a communication interface communicatively coupled to the processor and receiving the critical piece of code responsive to a determination that a license for the licensed function and/or for the licensable component has been activated.

9. The TV of claim 8, wherein the licensable component is a terrestrial broadcast advanced television systems committee (ATSC) demodulator assembly.

10. The TV of claim 8, wherein the licensable component is a video decoder.

11. The TV of claim 8, wherein the licensable component is an audio decoder.

12. The TV of claim 8; wherein the licensable component is a digital rights management component.

13. The TV of claim 8, wherein the licensable component is a web browser.

14. The TV of claim 8, wherein the licensable component is an electronic program guide (EPG) component.

15. Method comprising:

responsive to a determination that a license for a licensed function has been activated, providing to an audio-video display device a critical piece of code to initial software code in the audio-video display device to render a fully capable code executable to undertake the licensed function, the initial software code not including, at time of vending the audio-video display device, the critical piece of code, and without the critical piece of code the initial software cannot be executed by a processor in the audio-video display device to undertake the licensed function; and
indicating to the audio-video display device that the licensed function is available on the audio-video display device.

16. The method of claim 15, wherein the audio-video display device is a TV.

17. The method of claim 15, wherein the initial software code has an entry point and an exit point, the critical piece of code being copied into the initial software code between the entry point and the exit point to render the fully capable code.

18. The method of claim 15, wherein the initial software code has no executable capability whatsoever without the critical piece of code.

19. The method of claim 15, wherein the initial software code has a reduced executable capability without the critical piece of code.

20. The method of claim 19, wherein the initial software code includes a reduced capability module and the reduced capability module is removed from operation when the critical piece of code is received.

Patent History
Publication number: 20120120321
Type: Application
Filed: Mar 11, 2011
Publication Date: May 17, 2012
Applicant:
Inventor: PETER SHINTANI (San Diego, CA)
Application Number: 13/045,835
Classifications
Current U.S. Class: Demodulator (348/726); Prevention Of Unauthorized Use Of Data Including Prevention Of Piracy, Privacy Violations, Or Unauthorized Data Modification (726/26); 348/E05.113
International Classification: G06F 21/00 (20060101); H04N 5/455 (20060101);