This invention relates to an apparatus for and a method of copy-protecting a content carrying recording medium against unauthorised copying of that content where the recording medium is an optical disc (or a precursor thereof) or other recording medium from which content data that can be accessed in a non-sequential manner using navigational data stored by the recording medium, to a recording medium having such copy protection and to copy-protected data for recordal on a recording medium. For simplicity, a recording medium from which content data that can be accessed in a non-sequential manner using navigational data stored by the recording medium is referred to hereinafter simply as a “recording medium”.
The advent of digital recording techniques has enabled digital copies of digital content carried by recording media such as optical discs (for example DVDs) to be made with little or no loss of copy quality. This makes it easy for an unauthorised person to produce unauthorised copies of digital content-carrying recording media. Accordingly, copy-protection techniques have been developed. Most current copy-protection techniques exploit differences in the ways a legitimate player and an unauthorised copying apparatus or “ripper” would access a recording medium in order to defeat copying while preserving good playability. As an example, a legitimate DVD player follows a navigational path on the DVD that is defined by navigational commands and control data carried by the DVD whereas most unauthorised copying apparatus or rippers access the content of a DVD file-by-file or sector-by-sector. Accordingly, production of good quality or playable copies by a file-by-file or sector-by-sector unauthorised copying apparatus can be frustrated by adding subversive data (that is data that detrimentally affects at least one of the copying process, copy quality and playability of a copy) to a part of the digital data that does not form part of the navigational path of the DVD so that the subversive data is ignored by a legitimate player but detrimentally affects the production of an unauthorised copy. For example, data may be altered to affect the digital sum value (DSV) of some of the digital data in a manner which does not affect a legitimate player but interferes with an unauthorised copying apparatus or “ripper”.
The above types of copy-protection may prevent digital copying of the content of an optical disc such as a DVD by a ripper that copies the data on a sector-by-sector or a file-by-file basis. However, other more sophisticated rippers may be able to parse navigation information contained on the optical disc so as to select the content data be copied. Thus, for example, so-called “IFO parsing rippers” are capable of parsing navigation information contained on a DVD and automatically selecting the “main title” or the “main program chain (PGC)” for ripping or allowing the user the possibility of selecting a particular title or a particular program chain from amongst those available.
An embodiment provides apparatus for providing, for recordal onto a recording medium, recording data having content data and control data for enabling a player playing such a recording medium to navigate through the content data. In an embodiment, the recording data has content data comprising a plurality of content data files and navigation data to enable a player of the recording medium to navigate through the content data, the recording data also having volume information comprising location data representing the location of the content data files within the recording volume, and the apparatus is operable to cause at least some data relating to file identification information in the volume information for at least one of the content data files to be incorrect, for example to alter the data, to inhibit a reader reading the volume information from finding the file or files.
An embodiment apparatus for providing recording data to be recorded onto a recording medium, the apparatus comprising a data processor operable:
to provide recording data comprising at least one video title set having content data files comprising a video object data set, a video title set information file for the video title set and video manager information and comprising a volume file system information having identification information for enabling location of content data files; and
to cause at least some data relating to identification information in the volume file system information for at least one of the content data files to be incorrect to inhibit a reader reading the volume file system information from finding the file or files.
The identification information may comprise a file start address and a file length for each content data file and the data processor may be operable to alter at least one of the file length and the file start address for at least one of the content data files. As another possibility error data may be incorrect, for example the Cyclic Redundancy Check may be altered or corrupted.
The data processor may alternatively or additionally be operable to add a corrupt video title set information file or a content data file to the recording data for at least one video title set and the identification information may comprise information identifying the corrupt video title set information file or content data file rather than the actual video title set information file or content data file for the at least one video title set.
The volume information may comprise at least one of UDF and ISO information.
In an embodiment, recording data to be recorded on an optical disc such as a DVD has at least one video title set having content data files having a video object data set, a video title set information file for the video title set and video manager information. The recording data also has volume file system information having identification information for enabling location of content data files. In order to inhibit copying by a file-by-file or an IFO parsing copying apparatus identification information in the volume information for at least one of the content data files is caused be incorrect, for example altered. The incorrect information may be a file start address or length or may point to a corrupt video title set information file rather than the correct video title set information file or may be in the error detection data (for example the CRC may be altered or corrupted). In an embodiment, recording data to be recorded on an optical disc such as a DVD has at least one video title set having content data files having a video object data set, a video title set information file for the video title set and video manager information. The recording data also has a volume file system information having data relating to file identification for enabling location of content data files. In order to inhibit copying by a file-by-file copying apparatus data relating to file identification in the volume information for at least one of the content data files is caused to be incorrect, for example altered. The incorrect information may be at least one of a file start address, a file length, incorrect error detection data, a pointer to a corrupt video title set information file rather than the correct video title set information file.
The present invention also provides a method of causing identification information in the volume information for at least one of the content data files to be incorrect to inhibit a reader reading the volume information from finding the file or files.
The method may further comprise at least one of: providing a recording data file comprising the recording data; producing a master carrying the recording data; producing a precursor to a master carrying the recording data; producing at least one recorded medium such as an optical disc, for example a DVD carrying the recording data; and writing the recording data onto a writable or rewritable optical disc, for example a DVD. The invention also provides the recording data itself and a recording medium carrying the recording data. The present invention also provides a computer-readable medium storing computer-readable instructions to program a processor to carry out the method.
The recording medium may be an optical disc such as a DVD or a precursor thereof such as Digital Linear Tape, glass master, or stamping master, or may be any other form of recording medium from which content data that can be accessed in a non-sequential manner using navigational data stored by the recording medium.
Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which:
a to 8d show a video title set information (VTSI) table of a DVD;
Referring now to
The data processor 2 has a data processor controller 3 to control overall operation of the data processor 2, a user interface 4 operable to provide a user with information and to receive instructions from the user, an asset receiver 5 operable to receive assets (such as the video data file or data files plus any additional audio data files and graphics data files for logos, menus and the like) selected by the user to form the content of the DVD and an asset encoder 6, operable, under the control of the controller 3 and in accordance with user instructions received via the user interface 4, to effect any required encoding of the assets to ensure that the assets are in a format specified by the DVD standard with which the DVD is to comply, for example MPEG 2 for video data.
The data processor also has an authorer 7 that enables the user, via the user interface 4, to specify parameters of the DVD being produced such as the video format and disc size, to import encoded assets from the asset encoder 6, to synchronise assets, and to add chapter points, create menus and so on to ensure that the final DVD has the required presentation data (that is the audio and video content data to be delivered to a viewer by a DVD player) and navigation data (comprising general control data, search control data, user interface control data and navigation control data) to enable navigation through the content of the DVD in a non-sequential manner in accordance with the appropriate DVD standard. The authorer 7 thus, under user control, multiplexes the assets, adds navigation and control information according to the appropriate DVD standard specification and writes out an authored data file or final disc image or DDP (Disc Description Protocol) File Set containing the appropriate DVD specification data files in a directory. The authorer 7 is generally also able to simulate the resulting DVD so that the user can review and check their work.
The data processor 2 may also have a file receiver 91 to receive already authored DVD-Video content in the form of DVD-Video files, or as an image file or as a DDP File Set.
The data processor 2 may also include a subversive data receiver 90 operable to receive subversive data.
The data processor 2 also has a copy protector 8 to provide copy protection to a DVD-Video file, an image file or a DDP File Set provided by the authorer 7 or by the file receiver 91, as will be described below. Where authoring is to be carried out by the authorer 7, the functionality provided by the copy protector 8 may form part of the authorer so that the copy protection can be effected during the authoring process that results in the DDP File Set.
The data processor 2 is coupled to provide the copy-protected file to a master producer 9 configured to carry out a conventional mastering process including encoding the copy-protected image file or DPP File Set in accordance with the appropriate DVD standard specification to produce channel code data for recording, that is to carry out processes such as scrambling, interleaving, error correction and EFM plus encoding in accordance with the appropriate DVD standard specification.
The master producer 9 is arranged to provide the resulting master file to at least one of a local recorder 12 and a master data file provider 10 which in known manner provides a data file, for example a digital linear tape (DLT) file, for supply to a replicator 11. The replicator 11 will normally, although not necessarily, be located remotely of the remainder of the producing apparatus and will generally have a glass master producer 13 to cut a glass master, a stamping master producer 14 to produce stamping masters from the glass master and a disc producer 15 to produce the final DVD discs 16 from the stamping masters. Any local recorder 12 will be in the form of a DVD writer that writes or records on writable or rewritable DVD discs to produce one or more recorded discs 17. The master producer 9 is shown as a separate component but may be part of the data processor 2 or its functionality may possibly be provided by the recorder 12 and/or master data file provider 10.
The player 20 has a controller 23 which controls overall operation of the reading apparatus and which includes a presentation data provider 24 to provide presentation data to an output provider 26 which is generally in the form of a display such as a monitor or TV display, but could be a communications link to a display. The controller 23 also provides a navigator 25 to control the location on the DVD that is read by the read head circuitry of the recording medium reader 21 in accordance with user input instructions received via a user input provider 27 (which may be a keyboard, pointing device and/or a remote control, for example) and navigation or control data read from the DVD.
It will of course be appreciated that the functional components shown in
The functional components shown in
The computing apparatus 300 comprises a processing unit 30 coupled by one or more buses 37 to storage devices 31 which comprise a removable medium drive 32 for receiving a removable medium RM 33 (in this case a DVD drive for receiving a DVD and/or a DLT drive), a read only memory (ROM) 34, a random access memory (RAM) 35 and a mass storage device 36 such as a hard disc drive.
The bus 37 also couples the processing unit 30 to a number of peripheral input/output devices that may form the user interface 20 of
It will, of course, be appreciated that the storage devices and input/output devices may not comprise all of those shown in
As shown diagrammatically in
The computing apparatus 300 or 300a may be programmed to provide the copying apparatus 1 shown in
Of course, where apparatus has different physical components, then these may be provided by programming of corresponding respective computing apparatus.
The apparatus shown in
To facilitate understanding of how the apparatus 1 shown in
A DVD has a complex and non-linear structure with multiple elementary streams being interleaved and multiple discrete elements of content organized in a structured and hierarchical manner within a DVD video zone. Navigation to and through the digital presentation data stored on a DVD is controlled by navigation data which may be present at different levels in the physical data structure of the DVD video zone. The presentation data of a DVD video zone thus cannot be played simply by the player 20 accessing the recorded data in sequential manner from the beginning to the end of the recording of the data on the DVD. Rather, the navigation path or paths taken through the content by the player 20 depend(s) upon the navigator 25 of the player 20, the way the DVD is authored, and interaction with the user.
A DVD comprises a physical data structure and a logical data structure in the form of a logical hierarchy that overlies the physical data structure. The physical data structure determines the manner in which data is organised on a DVD with, in accordance with the DVD standards, data being stored in a sequential and physically contiguous or sequential manner on the DVD. The logical data structure determines the grouping of video sequences and the play back order of blocks of video in a sequence. The data to be recorded on the disc is organised in physical sectors. Each physical sector consists of a SYNC block, a header, a data pack and error detection code. In order to ensure that channel coding rules are met and to minimise the effect of defects on the disc, the data of these sectors have error correction parity codes added and are interleaved in blocks of 16 sectors (an ECC block) before channel coding in accordance with the EFM+ (8 to 16 modulation) channel coding scheme of the DVD format and the channel coded data is stored onto a DVD in the form of pits and lands. When recording the data, ISO/UDF file system information (in accordance with ISO9660/UDF (Universal Disc Format)) is recorded on the disc to enable location of and therefore access to each sector of the disc. The final data recorded on a single layer DVD consists of a lead-in section, then the program data section, and then a lead-out section.
As shown in
The video manager 101 provides control information for the entire DVD video zone. In the example shown in
The number of video title sets will depend upon the particular DVD structure.
Each video title set will usually have a language folder and one or more title folders. The language folder is associated with one or more menu program chains (PGCs) for providing menus to be displayed to the user to enable the user to select various options such as language, cut, aspect ratio (widescreen or not) and so on, while the title folder is associated with at least one title program chain (a title may contain up to 215−1 program chains). For simplicity,
Each title folder 106 and 107 has at least one program chain (PGC). The first program chain in a title is known as the entry program chain (“entry PGC”). As shown in
Each program chain comprises program chain information (PGCI) comprising navigation data which controls access to components of a program chain and may typically contain from 0 to 99 programs (PG). A program chain may contain no programs but only PGCI. Such a program chain is known as a dummy program chain. For example, the first play program chain is a dummy program chain. The program chains may have pre-commands and post-commands that can be used to define the order in which the program chains are accessed by a player.
In the example shown in
As an illustration,
Each program has one logical cell or a sequence of logical cells that map to a corresponding physical cell or physical cells of the presentation data structure. In the example of
It will of course be appreciated that
Each video title set (VTS) consists of video title set information (VTSI) 212, 213 comprising navigation data to control the presentation of titles and menus in the video title set in a single file VTS_##—0.IFO (where ## represents a two digit number between 01 and 99 representing the video title set number), a menu video object set 214, 215 for any video title set menu video objects (VTSM_VOBS) which typically contains the content for all types of menu within the video title set in a single file VTS_##—0.VOB (as in the example shown in
Each video object set (VOBS) consists of a sequence of physical cells. For clarity in the diagram,
As shown in
Each navigation pack (NV_PCK) 232 consists of a pack header 242 identifying the pack, followed by a system header 243 and two navigation data packets 244 and 245. The first of the two packets 244 comprises presentation control information (PCI) for controlling button display and navigation and program presentation in real time and the second packet 245 comprises data search information (DSI) for controlling forward/reverse scanning and seamless branching. DVD players contain a track buffer to enable variable rate and seamless playback. There is therefore a time delay between reading by the read head and decoding and playing of the audio and video data. Therefore real time control information is distributed between and stored within the PCI and DSI packets and the player checks and utilises this information before and after the corresponding physical cell passes through the track buffer. Navigation packs 232 are thus used by the navigation engine or navigator 25 of the DVD player to ensure playback, trick play modes and search operations are executed successfully and in a timely manner.
It will be understood from the above that the DVD video zone thus includes navigation data that controls access and interactive playback and that navigation data exists at different levels within the DVD video zone. The navigation data includes control commands (for example for format, language, audio selection, sub-picture selection, parental management, display mode and display aspect), navigation commands (for example for general system parameters, system parameters, navigation timer and menu buttons), and search and user interface commands (for example for PGCI searches to enable selection of a particular menu or presentation data searches enable selection of a title, part of title (chapter), and so on). As will be explained below, the volume file system information also includes navigation and control data.
a show the structure of the Video Title Set Information (VTSI) 210 of a video title set which comprises navigation data such as, for example: pointers to chapters in a Video Title Set Part of Title Search Pointer Table (VTS_PTT_SRPT) 210a; pointers to program chains in a Video Title Set Program Chain Information Table (VTS_PGCIT) 210b; time maps in a Video Title Set Time Map Table (VTS_TMAPT) 210c; a Video Title Set Cell Address Table (VTS_C_ADT) 210d; a VTSI_MAT table 210e and so on. As shown in
In a program chain, the program chain information (PGCI) comprises navigation data such as, for example: the number of the programs within the chain; prohibited user operations; links between program chains; playback mode; pre-commands to be executed before accessing any of the programs of the chain; cell commands; and post-commands to be executed after accessing the programs of the chain.
In a video object unit, the presentation control information (PCI) comprises navigation data such as, for example: prohibited user operations, button information, non-seamless angle jump pointers, and presentation times while the data search information (DSI) comprises navigation data such as, for example: presentation times, audio gap lengths, VOBU pointers for forward and reverse scanning, video synchronisation pointers to audio and sub-picture packs reference picture pointers, link to next interleaved unit, and seamless angle jump pointers.
In a program chain, navigation commands can be included as discussed above as pre-commands to be executed before reading any cell(s) of the program chain and/or as post-commands to be executed after reading the cell(s) of the program chain. Examples of program chain navigation commands include “go to” instructions to go to a command number, “link to” instructions to program chain number, part of title number, cell number and so on, “jump” instructions to move out of the current domain or state of the DVD playback, and SPRM and GPRM setting and manipulating instructions and “comparison” instructions, so allowing conditional actions, for example allowing a “go to” or “jump” instruction to be executed in the event a certain comparison is true or a certain SPRM or GPRM parameter is set to a certain value.
The explanation so far is a simplified overview of the DVD format of a DVD-Video protected according to an embodiment of the present invention. For a more detailed description of the DVD format and recording process, reference should be made to the DVD standards.
The navigation information necessary in order to read a DVD-video may be accessed by locating the relevant files through the UDF/ISO file system (“file-based” approach) or by locating the Video Manager Information (VMGI) and then using the pointers in the navigation information contained in the VMGI and VTSI (“navigation-based” approach). The file-based approach is the approach generally used by unauthorised copying apparatus or rippers whilst most legitimate players will use the navigation-based approach.
The copy protector 8 of the apparatus shown in
Examples of ways in which the data processor 2, and the copy protector 2 in particular, may operate to alter at least one of the start address information for a file in one or both of the UDF and ISO information and the size or length of the file in one or both of the UDF and ISO information will now be described.
Thus, when a user instructs the data processor 2 via the user interface 4 that a DVD video zone is to be produced, the controller 3 first determines, for example on the basis of user input, at SO whether assets are to be encoded or whether the file to be processed is an image file or DDP File Set received by the file receiver 91. If assets are to be encoded, then the controller 3 will generally prompt the user via the user interface 4 to provide the required assets which are then received by the asset receiver 5 at S1 in
The controller 3 then at S3 in
If the answer at S0 is no, then at S1a, the controller 3 causes a received image file or DPP File Set to be supplied to the copy protector 8.
At S4, the copy protector 8 adds copy protection to the image file/DDP File Set. At S5, the copy protector outputs the modified image file or DDP File Set to the master producer 9. At S5a, the master producer 9 carries out a conventional mastering process, including the normal processes of encoding the copy-protected image file or DPP File Set in accordance with the appropriate DVD standard specification and so produces channel code data for recording as illustrated schematically by
The master producer 9 produces a master file, for example a digital linear tape, containing the copy-protected authored file (DPP File Set) for supply via the master data file provider 10 to the replicator 11 which may be remotely located. As another possibility, the master file may be supplied to the replicator over a network which may be a local network or the Internet, for example. The replicator 11 produces a glass master carrying the image file and physical sector address tags mapping the logical sector numbers to the actual sectors on the glass master. This glass master is then used at to produce stamping masters from which the final DVD discs are produced (T9 in
As another possibility or additionally, the master file may be supplied at S6 to the local recorder 12 which records the image file onto a writable DVD disc and adds physical sector address tags to the actual sectors on the optical disc.
Subversive data may, depending upon the type of subversive data, be added at S60 prior to encoding of the assets, or at S70 prior to the copy protection process, or at S4 as part of the copy protection process, depending upon the type of subversive data. As another possibility, subversive data may be provided by deliberately physically damaging a sector or sectors of the disc during the final recording process by the recorder 12 or during production of the glass master, for example.
Examples of the operation of the copy protector 8 at S4 in
At S10 in
At S11 in
If the answer at S11 is yes, the start address for the selected file is to be altered, then at S12 in
At S13 in
If the answer at S13 is yes, then at S14 in
At S15 in
Where the copy protector alters the file start address in the UDF/ISO information, then, as mentioned above, the copy protector may alter the file start address so that, for example, the file start address points to a location on the DVD that stores a completely different file so that the ripper reads the correct files but in a scrambled or random order so that the content cannot be played correctly, to a location on the DVD part way through the correct file so that a ripper cannot not access all the content data of the file, or to a location outside the DVD-Video zone or to a location outside the volume, for example a location before the true file start location, that stores subversive data that causes a copy disc to be unreadable or unwatchable. The same or different approaches to changing the file start address may be used for different files.
Where the copy protector alters the apparent file size data in the UDF/ISO information, then, as mentioned above, the copy protector may reduce or increase the apparent file size data. The apparent file size data may be reduced (or increased) for all the files for which the data is to be changed or the file size data for some may be increased and the file size data for others reduced. Reducing the file size data will cause a file-by-file ripper to copy only part of the data for the file so that the ripper does not copy all of the content data and the resulting copy DVD will not be watchable. Increasing the file size data will cause a file-by-file ripper to copy subversive data added after the end of the file or to require a significant amount of extra time to rip the content from the copy protected DVD, even to the extent that, for example, the resulting copied content may not fit onto a DVD writable disc and may not be watchable.
The file for which the start address and/or file size data is altered in the UDF/ISO information may be a VOB file but it could be any file for which at least one of the start address and file size are listed in the UDF/ISO provided the necessary information can still be accessed by a legitimate player via the navigation information within the VMGI and VTSI.
As a consequence of the process carried out by the copy protector, the resulting DVDs have UDF/ISO information that is at least partially incorrect or inconsistent with the VMGI and/or the VTSI in terms of the start address and/or file size data for at least some of the files. When a copying apparatus or ripper attempts to copy such a DVD file-by file, it will identify the start address and file size data for the files that it is to copy from the UDF/ISO information and so will fail to access the correct content on the DVD. However, as the navigation data on the DVD has not been altered, that is the VMGI and the VTSI navigation data and any other navigation data is correct, a legitimate player accessing the DVD using a navigation approach, will have no difficulty in reading and playing the DVD because, as illustrated by
As mentioned above, the change to the file start address or file size data may cause a ripper to be directed to subversive data which inhibits the copying process or renders a copy DVD unreadable, unplayable or unwatchable. Examples of different types of subversive data are given above. As another possibility, the subversive data may simply be additional content data that will appear when the title is played and render the title unwatchable, for example such additional content data may be scrambled frames of title content data making the viewer believe that the DVD is faulty and/or notices alerting the viewer to the fact that the DVD is an unauthorised copy.
Another example of operation of the copy protector 8 at S4 in
In this example, at S20 in
In the example illustrated by
The copy protector may be capable of carrying out one or both of the methods described above with respect to
As described above, the data processor may be operable to alter at least one of the file length and the file start address for at least one of the content data files. As another possibility or additionally, the data processor may alter or corrupt error data so that it is incorrect, for example the Cyclic Redundancy Check (CRC) bytes for some files may be altered or corrupted within the file system information so as to render the file system information for those files seemingly incorrect and therefore unusable. Similarly any other information, such as the CRC length value or the checksum value, that would subvert the file system information access if it were incorrect may be altered or corrupted.
As shown in
As mentioned above, the copy protector functionality may be provided within the authorer so that the copy protection does not form a separate step but is carried out as part of the authoring process.
In the above-described embodiments, the recording medium is a DVD or a precursor such as a glass master or stamping master. The recording medium may be another form of optical disc or a precursor. It will, of course, be appreciated that the present invention may be applied to other forms of digital recording media such as, for example, magnetic or magneto-optical recording discs. In addition, as described above, the recording medium is a disc that is read by spinning or rotating the disc about a central axis. It may, however, also be possible to apply the present invention to digital recording media in the form of Digital Linear Tape which is transported along a path past, rather than rotated with respect to, a read/write head.