# Patent

## Title
Extensible disc player

## Abstract

The present invention provides an extensible disc player that is upgradeable to play new content types. The player's capability can be extended by downloading an appropriate decoder from a web server via the Internet. In this way, the player can play back contents that it does not originally support. If the content type is unknown, the player will check whether the disc contains a URL for linking to a web site containing an appropriate decoder. If the disc contains the URL, the player will access the web site to download the appropriate decoder. In a similar manner, the capability of a recorder can also be expanded by downloading appropriate encoders from the Internet.

## Background
This is a continuation of prior application Ser. No. 10/546,721 filed Apr. 7, 2006 and is incorporated by reference herein.


BACKGROUND OF THE INVENTION
The invention relates generally to disc players, and more particularly to disc players upgradeable to play new content types.
Optical discs have been widely used to store various types of media, such as audio, data, video, images, animations, etc., which may be encoded in various formats. For example, MPEG-2, MPEG-4, DivX, and H26.L are used for video, MP3 and SACD for audio, and Flash and SVG for animation. A conventional player typically contains a fixed number of decoders that support only a subset of the content types. As a new content type is introduced in the market, consumers would have to buy new players with decoders that support the new content type in order to play discs with this new format. This is very costly for consumers. They will have to make a difficult decision of whether to purchase the new player now and only to see that it will become obsolete in a matter of a few years or not to buy discs with the new format. If the majority of the consumers decide not to buy discs with the new format, it would severely hinder the acceptance of the new format and thus significantly affect the development of the new optical storage technology.
Therefore, there is a need to provide a player that not only can play existing content types, but also may be upgradeable to play new content types.
SUMMARY OF THE INVENTION
The present invention provides an extensible disc player that is upgradeable to play new content types. The player's capability can be extended by downloading an appropriate decoder from a web server via the Internet. In this way, the player can play back contents that it does not originally support.
According to one embodiment of the invention, an extensible disc player is provided. The player comprises: means for determining a content type of a content object on a disc; means for checking whether the disc contains a URL for linking to a web site containing an appropriate decoder, upon determining that the content type is unknown; and means for accessing the web site to download the appropriate decoder, upon checking that the disc contains the URL.
According to another embodiment of the invention, the player also includes means for pre-storing a default URL list containing links to web sites where pre-selected decoders may be downloaded, and means for checking whether a URL for the content type exists in the default URL list.
According to a further embodiment of the invention, the player further comprises means for accessing the player's manufacturer's web site for searching an appropriate decoder, upon checking that the URL for the content type does not exist in the default URL list.
In accordance with the invention, the capability of a recorder may also be expanded by downloading appropriate encoders.
Other objects and attainments together with a fuller understanding of the invention will become apparent and appreciated by referring to the following description and claims taken in conjunction with the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
The invention is explained in further detail, and by way of example, with reference to the accompanying drawings wherein:
FIG. 1 shows an overview of the operation of an extensible disc player in accordance with one embodiment of the invention; and
FIG. 2 is a flowchart diagram illustrating a process performed by an extensible disc player for obtaining an appropriate decoder in accordance with one embodiment of the invention.



Throughout the drawings, the same reference numerals indicate similar or corresponding features or functions.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG. 1 shows an overview of the operation of an extensible disc player 10 in accordance with one embodiment of the invention. Player 10 can be connected to the Internet and has the basic protocol stack support for web access (e.g., HTTP protocol stack). When an optical disc 20 is inserted into player 10, the player will attempt to recognize and play back the contents of the disc. If the player cannot handle the content format, it will try to find and download an appropriate decoder from a web server 30 via the Internet. Some basic information about the player and the unsupported content object will be included in a request to web server 30 for finding an appropriate decoder. Such information includes, for example, the player's model number, chipset model number and frequency, OS version, the content type and version, etc. After the decoder is downloaded, it is preferably stored in the player, so that the player does not have to download it again when the same content type is recognized next time. Since the storage space in the player is limited, the player can store only those decoders that were most recently downloaded and are frequently used, so that decoders that are used less frequently can be overwritten. In a similar manner, a user may also change the set of default content types supported by the player by storing pre-selected decoders in the player. The process of obtaining an appropriate decoder is described in more detail below in conjunction with FIG. 2.
FIG. 2 is a flowchart diagram illustrating a process 100 performed by extensible disc player 10 for obtaining an appropriate decoder in accordance with one embodiment of the invention. Upon insertion of the disc into the player, the player will try to present a content object on disc (step 102) and determine whether it has a content type known to the player (step 106). This can be achieved in several ways. One way is to read the Table of Contents (TOC) file on the disc to determine the content type. Another way is to use the file extension in the file system of the disc to identify the content type. A third way is to read a content description file associated with the content object, e.g., a XML file that describes the content attributes.
If the content type is known to the player, the player will load and render the content object (step 112). However, if the player does not recognize the content type, it will try to determine whether a URL for linking to a web site containing an appropriate decoder is available on the disc (step 116). If such a URL does not exist on the disc, the player will read a default URL list stored in the player (step 122). The default URL list includes some popular decoder manufacturers' web sites for this particular content type and is updateable. The player will then check whether such a URL is included in the default URL list (step 126). If such a URL does not exist, the player will access the player's manufacturer portal to find an appropriate decoder (step 132). This portal may act as a search engine to allow a user to search for an appropriate decoder, based on certain relevant information such as the player's model number, etc. On the other hand, if, at step 116, it is determined that the URL exists on the disc, the player will use the URL to access the web site (step 136). The player then determines whether the decoder is found (step 142). If it is found, the player will download the decoder (step 152) and then start to render the content object (step 156).
However, if the decoder is not found, the content object is not playable by the player and the player will prompt the user and skip the content object (step 162).
Sometimes in order to play back a content object with a new content type, not only the decoder is needed but also necessary protocol stacks (e.g. new streaming protocols) are required. In such a case, the player can also perform steps similar to the above to download the protocol stacks if they are not on the disc or in the player and run them as plug-in in the player.
Thus, the capability of a playback device, such as a DVD player, can be expanded by downloading appropriate decoder modules. In a similar manner, the capability of a recorder, such as a DVD+RW recorder, can also be expanded by downloading appropriate encoder modules or plug-ins from the Internet. For example, if a user wants to record data contents in the H.26L format in a recorder that does not originally supported the format, a H.26L encoder may be downloaded and used by the recorder.
The principles of the invention can also be used in other types of players that can be connected to the Internet. For example, DVD players that support MPV (the MultiPhoto Video standard, with more information available from www.osta.org) disc, PhotoCD players, DivX players, MP3 players, etc.
While the invention has been described in conjunction with specific embodiments, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art in light of the foregoing description. Accordingly, it is intended to embrace all such alternatives, modifications and variations as fall within the spirit and scope of the appended claims.

## Claims

1. An extensible disc player, comprising:
means for determining a content type of a content object on a disc;
means for checking whether the disc contains an address associated with an appropriate decoder, upon determining that the content type is unknown;
means for downloading the appropriate decoder upon determining that the disc contains the address;
means for accessing a pre-stored default address list upon determining that the disc does not contain the address, said address list containing addresses for obtaining decoder information; and
means for checking whether an address for the content type exists in the default address list.

2. The player of claim 1, further comprising:
means for accessing a predetermined address, said predetermined address corresponding to an address associated with a manufacturer of said player, and
searching content associated with said manufacturer for an appropriate decoder upon checking that the address for the content type does not exist in the default address list.

3. The player of claim 1, further comprising:
means for determining whether the appropriate decoder is available; and
means for downloading the decoder upon determining that the appropriate decoder is available.

4. The player of claim 1, further comprising:
means for deleting a downloaded decoder.

5. The player of, wherein address is a Universal Resource locator (URL) associated with a website.

6. The player of claim 2, wherein the accessing means includes:
means for sending a request to the predetermined address with relevant information about the player and the content type.

7. The player of claim 3, further comprising:
means for providing a notification upon determining that the appropriate decoder is not available.

8. An extensible playback device, comprising:
means for determining a content type of a content object, said content object being stored on a data storage element;
means for checking whether the data storage element contains an address associated with an appropriate decoder, upon determining that the content type is unknown;
means for downloading the appropriate decoder based on the address, upon checking that the data storage element contains the address;
means for accessing a pre-stored default address list upon determining that the data storage element does not contain the address, said default address list containing addresses where pre-selected decoders may be downloaded; and
means for checking whether an address for the content type exists in the default address list.

9. The device of claim 8, wherein said address is a Universal Resource Locator (URL) associated with a website.

10. The device of claim 8, further comprising:
means for accessing a default address, said default address representing an address of a manufacturer of the player upon checking that the address for the content type does not exist in the default address list.

11. The device of claim 10, wherein the accessing means includes:
means for sending a request to the default address with relevant information about the device and the content type.

12. A method for upgrading a disc player, said method comprising:
determining a content type of a content object on a disc;
checking whether the disc contains an address for linking to a server containing an appropriate decoder, if the content type is unknown; and
accessing the server to download the appropriate decoder using the address if the disc contains the address,
pre-storing a default address list containing links to servers where pre-selected decoders may be downloaded; and
checking whether an address for the content type exists in the default address list, if the disc does not contain the address.

13. The method of claim 12, further comprising:
accessing the player's manufacturer's server for an appropriate decoder, if the address for the content type does not exist in the default address list.

14. The method of claim 12, further comprising:
determining whether the appropriate decoder is available from the server; and
downloading the decoder if the appropriate decoder is available.

15. The method of claim 12, further comprising a step of:
enabling a user to manually delete a downloaded decoder from the player.

16. The method of claim 12, wherein said address is a Universal Resource locator (URL) of a website associated with said server.

17. The method of claim 13, wherein the accessing step includes:
sending a request to the manufacturer's server with relevant information about the player and the content type.

18. The method of claim 14, further comprising a step of:
notifying a user if the appropriate decoder is not available from the server.

19. A method for upgrading a disc recorder comprising:
pre-storing a default address list in the recorder that contains links to servers where pre-selected encoders may be downloaded;
determining whether an appropriate encoder is available in the recorder that supports a recording format selected by a user for recording data contents;
checking whether an address for linking to a server containing the appropriate encoder exists in the default address list upon determining that the appropriate encoder is not available in the recorder;
accessing the server to download the appropriate encoder, upon checking that the address exists in the default address list; and
accessing the recorder's manufacturer's server for searching an appropriate encode upon checking that the address does not exist in the default address list.

20. The method of claim 19, wherein the accessing step includes a step of:
sending a request to the manufacturer's server with relevant information about the recorder and the recording format.

21. The method of claim 19, further comprising a step of:
enabling a user to manually delete a downloaded encoder from the recorder.

22. The method of claim 19, wherein said address is a Universal Resource locator (URL) of a website associated with said server.

23. An extensible playback device, comprising:
means for determining a content type of a content object on a data storage element;
means for checking whether the data storage element contains an address identifying a location containing an appropriate decoder, upon determining that the content type is unknown; and
means for accessing the identified location to download the appropriate decoder, and
means for checking whether an address for the content type exists in a default address list, said default address list containing addresses where decoders may be downloaded, and
means for accessing a location associated with a manufacturer of said playback device, said location associated with said manufacturer including an appropriate decoder upon checking that the address for the content type does not exist in the default address list.

24. The device of claim 23, wherein the data storage element is a disc.

25. The device of claim 23, wherein the accessing includes:
sending a request with relevant information about the playback device and the content type.

26. The device of claim 23, wherein said address is a Universal Resource locator (URL) of a website associated with said server.

27. The device of claim 24, further comprising:
means for determining whether the appropriate decoder is available; and
means for downloading the decoder upon determining that the appropriate decoder is available.

28. The device of claim 25, further comprising:
means for enabling a user to manually delete a downloaded decoder from the player.

29. The device of claim 27, further comprising:
means for notifying a user upon determining that the appropriate decoder is not available from the server.

30. A method for upgrading a playback device, comprising:
determining a content type of a content object on a data storage element;
checking whether the data storage element contains an address for linking to a server containing an appropriate decoder, if the content type is unknown; and
accessing the server to download the appropriate decoder using the address, if the disc contains the address; and
checking whether an address for the content type exists in a default address list, if the disc does not contain the address, said default address list including links where decoders may be downloaded; and
accessing a manufacturer's server associated with said playback device for an appropriate decoder when the address for the content type does not exist in the default address list.

31. The method of claim 30, wherein the accessing step includes a step of:
sending a request with relevant information about the playback device and the content type.

32. The method of claim 30, wherein said address is a Universal Resource locator (URL) of website associated with said server.

33. The method of claim 31, further comprising:
determining whether the appropriate decoder is available from the server; and
downloading the decoder if the appropriate decoder is available.

34. The method of claim 33, further comprising a step of;
notifying a user if the appropriate decoder is not available from the server.

35. The method of claim 34, further comprising a step of:
enabling a user to manually delete a downloaded decoder from the player.