# Patent

## Title
Determining an identification of a disc based on a format of the disc

## Abstract

A system, method, and computer-readable storage media for disc identification are disclosed. A first disc format may be identified by matching a sequence of symbols on a disc to format data. Content stored on the disc in a first location that is used to generate IDs for the first disc format may be referenced, and the content processed to generate an ID for the disc. The first location can be identified by referencing ID processing data that also identifies other locations used to generate IDs for different disc formats. Portions of the content that are accessed can include directory names, folder names, or file names.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This patent application is a continuation of, and claims priority to, U.S. patent application Ser. No. 12/330,533, filed on Dec. 9, 2008, now U.S. Pat. No. 8,572,314, which is incorporated herein by reference in its entirety.


BACKGROUND
In the present paradigm, digital versatile discs (DVDs) are the dominant medium for storing media content, such as movies. These existing or standard DVDs store media content utilizing a standardized format.
Users often desire to be presented with metadata about the content of their DVDs. For instance, if the user puts a DVD that contains the movie “The Longest Yard” in a DVD player, the user may want to know when the movie was produced and who the actors are. A technique exists for generating a unique identification (ID) from the media content of individual standard DVDs.
A new paradigm is evolving around high definition DVDs in several formats, yet standard DVDs remain in the marketplace. Specifically, many users have large standard DVD collections. Accordingly, consumer acceptance of the new DVD formats depends upon the availability of DVD-players that will handle multiple, and preferably all, available DVD formats. However, the existing technique for generating unique IDs from media content on a DVD does not address the possibility of multiple DVD formats. Thus, the ability to offer users the features that they have come to expect, such as related metadata cannot be realized. The present concepts offer solutions for determining unique IDs for various DVD formats that are not available with existing techniques.
SUMMARY
The described implementations relate to DVD identification. Tools can access media content from a DVD and identify a format of the media content. The tools can also determine a unique identification for the media content based upon the format.
In another implementation the tools can include a DVD format module configured to identify a format of a DVD, at least in part, by searching content of the DVD for identifying aspects. In one case, the DVD format module can search for identifying aspects in the form of a specific sequence of symbols that are unique to a particular DVD format. So, identification of the specific sequence of symbols can be utilized to identify the DVD format. This implementation can also include an identification module configured to determine a unique identification of the content by examining at least two portions of the content. The unique ID can identify the content and the DVD format.
The term “tool(s)” may, for instance, refer to device(s), system(s), method(s), computer-readable instructions (e.g., one or more computer-readable media having executable instructions), component(s), and/or module(s), as permitted by the context above and throughout the document. The above listed examples are intended to provide a quick reference to aid the reader and are not intended to define the scope of the concepts described herein.



BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings illustrate implementations of the concepts conveyed in the present application. Features of the illustrated implementations can be more readily understood by reference to the following description taken in conjunction with the accompanying drawings. Like reference numbers in the various drawings are used wherever feasible to indicate like elements. Further, the left-most numeral of each reference number conveys the Figure and associated discussion where the reference number is first introduced.
FIG. 1 shows an example of DVD identification tools in accordance with some implementations of the present concepts.
FIG. 2 illustrates an example of DVD identification tools in the form of systems in accordance with some implementations of the present concepts.
FIG. 3 is a flowchart of an example of DVD identification tools in the form of methods in accordance with some implementations of the present concepts.



DETAILED DESCRIPTION
Overview
This patent application pertains to identifying digital versatile discs (DVDs). Specifically, tools are described for identifying DVDs that work for multiple different DVD formats. From a functional perspective, one potential goal of the present implementations can be to consistently generate the same unique ID for a given DVD. For instance, when the present tools are applied to the DVD movie “The Unforgiven” the same unique ID should be generated every time. This unique ID can then be associated with metadata about the movie. This metadata can be accessed the next time the same DVD (i.e., a DVD having the same content) is played. The metadata can be presented to a viewer or used in another manner.
Note, that some implementations can identify a DVD format in the unique ID. Such configurations can generate the same unique ID each time a Blu-ray format DVD movie “The Unforgiven” is read. Similarly, a high-definition DVD (HD-DVD) format DVD movie of “The Unforgiven” should produce the same unique ID each time, but the unique ID for the Blu-ray format would be different than for the HD-DVD format. Another potential goal of the present tools is to avoid assigning the same unique ID to two different DVDs. For instance, the functionality would be diminished if the same unique ID was assigned to the movies “The Unforgiven” and “Splash” for example.
FIG. 1 shows a DVD identification (ID) tool 100 that can function with existing and/or yet to be developed DVD formats. DVD ID tool 100 can access media content from a DVD at 102. For instance, the tool can read the DVD to obtain the media content or obtain the content from a device that read the DVD. The DVD ID tool can identify a format of the media content at 104. Identifying the format of the media content can also be thought of as identifying the format of the DVD. For instance, in one case the DVD ID tool can search for specific sequences of symbols in the content that can be indicative of a specific DVD format.
At 106, the DVD ID tool determines a unique identification (unique ID) of the DVD. In some cases, the unique ID can convey the format of the DVD. For example, a unique ID for a Blu-ray format DVD might start with “BR” whereas a unique ID for a HD-DVD format may start with “HD”. The unique ID can be correlated to metadata associated with the DVD. So, for instance, the DVD ID tool 100 having determined the unique ID can access a database or datatable and obtain metadata associated with the DVD.
Exemplary System Architecture/Environments
FIG. 2 shows an exemplary system architecture/operating environment 200 in which DVD identification concepts described above and below can be implemented on various devices. In this case, architecture 200 includes a DVD player 202 and a computer 204 that can be communicably coupled with one another via a network 206. DVD player 202 can be a stand-alone device that has its own display device (e.g., a portable DVD player), a set-top type player configured to output to a user's television (TV), or a component of a computer, such as a personal computer (PC), among others. For instance, computer 204 includes a DVD player 208. In other configurations, computer 204 may or may not include a DVD player.
In this case, DVD player 202 includes a DVD format module 210(1), a format datatable 212(1), an ID module 214(1), an ID processing datatable 216(1), and a metadata datatable 218(1). Alternatively or additionally, some or all of these components 210-218 can occur on computer 204 as designated by a “(2)” suffix.
As the name implies, DVD format module 210(1) is configured to identify a format of DVD 208. The DVD format module can examine the DVD's content for various parameters or aspects that can be indicative of a particular DVD format. In an illustrated example, the DVD format module can access format datatable 212(1) which can contain a listing of DVD formats at column 220 and corresponding identifying aspects at column 222. In some cases, identifying aspects can be symbols that are unique to a particular DVD format. So for instance, DVD format column 220 shows “HD-DVD” format 224 and identifying aspects column 222 shows corresponding symbols “VPLST000” at 226. Similarly, “Blu-ray format” is shown at 228 with identifying aspects listed as symbols “AACS” (“Advanced Access Content System”) at 230, “WMV-HD” (“Windows Media High-Definition Video”) is shown at 232 and identifying aspects “M&V folder” (“menu and video folder”) are shown at 234, and “standard” format and “video_ts folder” are shown at 236, 238, respectively.
In some cases, format datatable 212(1) can be generated in advance by examining a plurality of DVDs of a specific known format. For instance, tens or hundreds or thousands of Blu-ray DVDs may be examined to identify some parameter or aspect, such as a directory name that appears in all of the examined Blu-ray discs. For discussion purposes, assume that a hypothetical identified directory name is “ABC123”. This directory name can be checked against discs of other formats. If the directory name “ABC123” occurs in all Blu-ray discs and no discs of other formats, then it is a good candidate for inclusion in format datatable 212(1). The same (or similar) techniques can be applied to each disc format to generate format datatable 212(1).
The DVD format module 210(1) can examine the contents of DVD 208 to identify a match with any of the symbols of column 222. If a match is identified, then the DVD format module can horizontally reference in the format datatable 212(1) to the corresponding DVD format and thereby identify the DVD's format. The DVD format module 210(1) can convey the identified format match to ID module 214(1).
ID module 214(1) can utilize the format information from the DVD format module 210(1) to determine a unique identification of the DVD 208. For example, the ID module 214(1) can examine at least two portions of the DVD content to determine the unique identification. Utilizing at least two portions can help ensure that truly unique IDs can be generated for any given existing or yet to be determined DVD format. The portions can be related to directories, folders, and/or files, among others. So for instance, the portions may relate to a title of a directory, folder, and/or file or content within the directory, folder, and/or file. In this case, the ID module utilizes information from ID processing datatable 216(1) in determining how to generate the unique ID.
ID processing table 216(1) includes a DVD format column 240 and a location column 242. A horizontal row in the ID processing table correlates an individual DVD format with a location in the DVD's content that can be processed to create a unique ID for the DVD. For instance, in relation to HD-DVDs 244 the table lists a VPLST000.xpl file in an AAADV_OBJ directory at 246. For Blu-ray format 248 a corresponding location is listed as MCMF.xml file in AACS directory and file sizes of BDMV directory at 250. For sake of brevity, other DVD formats are not specifically listed in ID processing datatable 216(1) but are described in another example below.
ID processing datatable 216(1) can be generated in a similar manner to the technique described above relative to the format datatable 212(1). As mentioned above, one goal of the present tools is to avoid assigning a unique ID to two different DVD discs. Thus, good candidates for inclusion on the ID processing table occur in essentially every DVD of a given format yet tend to be relatively highly differentiated from one DVD of the format to another. The locations listed in ID processing datatable 216(1) tend to be relatively highly differentiated from disc to disc. Thus, these locations are good candidates for processing to generate a unique ID that is, in fact, unique to that particular DVD. In comparison, locations that are relatively constant from disc to disc, especially discs of a given format, can increase a likelihood of the same unique ID being generated for different discs.
The ID module 214(1) can process content of the DVD at the location(s) obtained from the ID processing datatable 216(1) to generate the DVD's unique ID. In some cases, the processing can include hashing the content at the specified location to generate the unique ID.
The ID module 214(1) can further utilize the unique ID of the DVD to obtain corresponding metadata. For instance, the ID module can access a metadata datatable 218(1) that lists unique IDs and corresponding metadata.
Metadata datatable 218(1) includes a unique ID column 252 and a metadata column 254. So for instance, looking at unique ID column 252, a hypothetical unique ID of “BD1475” is referenced horizontally to the metadata column 254 which indicates that the corresponding title is “Caddyshack”. Similarly, unique ID “BD66831” is referenced to the title “Casablanca”. In the present example, if the ID module 214(1) generates unique ID BD1475, then the ID module can obtain corresponding metadata which in this case is the movie's title “Caddyshack”. The ID module can then cause the title “Caddyshack” to be displayed for the user. The skilled artisan should recognize other types and/or uses of metadata.
The metadata datatable 218(1) may be generated at a previous time utilizing the techniques described above to generate unique IDs for known DVDs. Metadata for individual DVDs is then associated with the respective unique ID. For instance, metadata can relate to title, actors, producers, directors, year of production, etc.
The above description relates to a generally free-standing configuration where all of the described components occur on DVD player 202. Other implementations can employ a distributed configuration where some or all of the components occur only on computer 204. In such implementations, computer 204 can be thought of as performing a server role where data is transmitted back and forth between DVD player 202 and computer 204 and some or all of the processing is performed on the server. In other distributed configurations, DVD format module 210(1) and ID module 214(1) can occur on DVD player 202, while one or more of the datatables 212(2), 216(2) and/or 218(2) are maintained on computer 204. The DVD format module 210(1) and ID module 214(1) can access the datatables on computer 204 as needed. For example, the metadata datatable may not be maintained on DVD-player 202. Instead, when the DVD player generates a unique ID, the DVD player can access a remote metadata datatable, such as metadata datatable 218(2) over network 206 to obtain the corresponding metadata. This configuration can provide a centralized datatable of metadata that is easily updated as new DVDs are released.
Still another configuration can blend the stand alone and distributed configurations. For instance, metadata datatable 218(1) can be generated on another device, such as computer 204 and downloaded to DVD player 202. This can be a one-time event or can be re-occurring to update the datatable to reflect new releases.
Exemplary Methods
FIG. 3 illustrates a flowchart of a method or technique 300 that is consistent with at least some implementations of the present concepts. The order in which the method 300 is described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order to implement the method, or an alternate method. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof such that a computing device can implement the method. In one case, the method is stored on a computer-readable storage media as a set of instructions such that execution by a computing device causes the computing device to perform the method.
The method identifies a format of media content from a digital versatile disc (DVD) by locating a specific sequence of symbols in the media content at block 302. For instance, the symbols can be letters, numerals and/or other symbols that tend to occur in DVDs of a particular format and tend not to occur in DVDs of other formats. For instance, the sequence of symbols can be a title of a directory or folder or file, among others.
Based upon the identified format, the method references multiple predefined entities of the content at block 304. For instance, the entities can be directories, folder, files, or other organizational entities of the DVD content. So, for example, the method can reference two directories, two folders, two files, a folder and a file, a directory and a file, etc. Referencing two entities avoids potential instances of assigning a unique ID to two different DVDs. Further, the present techniques can readily include future DVD formats. A specific implementation is described in detail below which generates a 25 character unique ID for each DVD. Of course, other implementations can generate unique IDs that have more or less characters so long as the selected number of characters can generate at least as many unique IDs as a number of DVDs that may exist now or in the future.
In the present example, the unique ID is a 25 character long string that contains alpha numeric characters. In this case, the first 2 characters will denote the type of disc. Table 1 below denotes several disc types. Other DVD formats can also be accommodated.









TABLE 1






First 2 characters
Disc Type








HD
HD-DVD



BD
Blue-Ray



WH
WMV-HD



SD
Standard DVD









The remaining 23 characters of this implementation are defined below.
HD-DVD
HD-DVD format is specified in Table 2.











TABLE 2








Characters
Value










 1 to 2
HD




 3 to 17
15 character hexadecimal value generated





by hashing the contents of ‘VPLST000.xpl’





under ‘ADV_OBS’ directory in the root





directory of the disc and grabbing the first





15 characters.




18 to 25
8 character hexadecimal value generated





by hashing all the file sizes under the





‘ADV_OBS’ directory in the root directory





of the disc and grabbing the first 8 characters.










Blu-Ray

If the Blu-ray disc has a ‘mcmf.xml’ file under ‘ARCS’ directory then the locations are defined in Table 3. If the Blu-ray disc does not have a ‘mcmf.xml’ file under ‘AACS’ directory then the locations are defined in Table 4.











TABLE 3








Characters
Value










 1 to 2
BD




 3 to 17
15 character hexadecimal value generated





by hashing the contents of ‘mcmf.xml’ file





under ‘AACS’ directory in the root directory





of the disc and grabbing the first 15 characters.




18 to 25
8 character hexadecimal value generated





by hashing all the file sizes under the





‘BDMV’ directory in the root directory of





the disc and grabbing the first 8 characters.



















TABLE 4






Characters
Value








1 to 2
BD



3 to 25
23 character hexadecimal value generated




by hashing all the file sizes under the




‘BDMV’ directory in the root directory of




the disc and grabbing the first 8 characters.









WMV-HD

WMV-HD locations are described below in relation to Table 5.









TABLE 5






Characters
Value








 1 to 2
WH



 3 to 10
8 character hexadecimal value generated




by hashing all the file sizes under the root




directory of the disc and grabbing the first




8 characters.



11 to 18
8 character hexadecimal value generated




by hashing all the file sizes under the




‘Menu’ directory in the root directory of the




disc and grabbing the first 8 characters.



19 to 25
7 character hexadecimal value generated




by hashing all the file sizes under the




‘Video’ directory in the root directory of the




disc and grabbing the first 7 characters.









The method hashes data from the multiple predefined entities to generate a unique identification for the media content at block 306. In the above example, the data that is hashed is defined in the corresponding table. The skilled artisan should recognize other implementations that satisfy the present goals of consistently generating the same unique ID for a given DVD and avoiding assigning the same unique ID to two different DVDs. The present concepts, rather than being restrictive in nature and/or tied to a specific DVD format, are instead readily adaptable to many (and potentially all) existing and yet to be developed DVD formats.
CONCLUSION
Although techniques, methods, devices, systems, etc., pertaining to DVD identification scenarios are described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing the claimed methods, devices, systems, etc.

## Claims

1. A method comprising:
identifying a first format of a disc by locating a specific sequence of symbols on the disc and matching the specific sequence of symbols on the disc to format data, the format data indicating a plurality of disc formats and corresponding symbols that identify individual disc formats including the first format;
referencing content stored on the disc in a first location that is used to generate identifications for the first format, the first location being identified by referencing identification (ID) processing data that also identifies other locations that are used to generate identifications for disc formats other than the first format; and
processing the content stored on the disc in the first location to generate an identification for the disc.

2. The method of claim 1, further comprising:
using the identification for the disc to obtain metadata associated with the disc.

3. The method of claim 1, wherein the processing of the content comprises hashing the content.

4. The method of claim 1, wherein the referencing of the content comprises directly accessing the disc to obtain the content or receiving the content from a disc player that directly accesses the disc.

5. The method of claim 1, further comprising:
determining that the specific sequence of symbols is common to a plurality of different discs of the first format; and
responsive to the determining, populating the format data with the specific sequence of symbols mapped to the first format.

6. A computing device having a computer-readable storage medium storing instructions that, when executed by the computing device, cause the computing device to perform operations comprising:
identifying a first format of a disc by locating a specific sequence of symbols on the disc and matching the specific sequence of symbols on the disc to format data, the format data indicating a plurality of disc formats and corresponding symbols that identify individual disc formats including the first format;
referencing content stored on the disc in a first location that is used to generate identifications for the first format, the first location being identified by referencing identification (ID) processing data that also identifies other locations that are used to generate identifications for disc formats other than the first format; and
processing the content stored on the disc in the first location to generate an identification for the disc.

7. The computing device of claim 6, wherein the computing device is a stand-alone disc player, a set-top disc player, or a disc player component of a personal computer.

8. The computing device of claim 6, wherein the computing device is a personal computer.

9. The computing device of claim 8, wherein the personal computer comprises a disc player component.

10. The computing device of claim 6, the operations comprising:
accessing the format data by communicating over a network with another computing device that maintains the format data.

11. The computing device of claim 6, the operations comprising:
accessing the ID processing data by communicating over a network with another computing device that maintains the ID processing data.

12. The computing device of claim 6, the operations comprising:
using the identification for the disc to obtain metadata relating to the disc.

13. The computing device of claim 12, the operations comprising:
accessing the metadata by communicating over a network with another computing device that maintains the metadata and other metadata relating to other discs.

14. The computing device of claim 13, the operations comprising:
downloading a metadata datatable from the another computing device over the network, the metadata datatable comprising the metadata and the other metadata.

15. The computing device of claim 12, wherein metadata is accessed in a metadata datatable stored locally on the computing device.

16. A hardware computer-readable storage medium storing instructions which, when executed by a computing device, cause the computing device to perform acts comprising:
identifying a first format of a first disc by locating a first specific sequence of symbols on the first disc and matching the first specific sequence of symbols on the first disc to format data, the format data indicating a plurality of disc formats and corresponding symbols that identify individual disc formats including the first format and a second disc format;
referencing first content stored on the first disc in a first location that is used to generate first identifications for the first format, the first location being identified by referencing identification (ID) processing data that also identifies a second location that is used to generate second identifications for the second format; and
processing the first content stored on the first disc in the first location to generate a first identification for the first disc.

17. The hardware computer-readable storage medium media of claim 16, the acts further comprising:
determining that a second disc is in the second disc format by locating a second specific sequence of symbols on the second disc and matching the second specific sequence of symbols on the second disc to the format data;
referencing second content stored on the second disc in the second location; and
processing the second content stored on the second disc in the second location to generate a second identification for the second disc.

18. The hardware computer-readable storage medium of claim 17, wherein the first format is a first digital versatile disc format and the second format is a second digital versatile disc format.

19. The hardware computer-readable storage medium of claim 16, the acts further comprising:
accessing a remote metadata datatable with the first identification to obtain first metadata about the first disc.

20. The hardware computer-readable storage medium of claim 19, the acts further comprising:
presenting the first metadata to a viewer of the first disc, wherein the first metadata identifies a title of a movie stored on the first disc, one or more actors in the movie stored on the first disc, one or more producers of the movie stored on the first disc, or a year of production of the movie stored on the first disc.