GB2410817A - Access control to non-volatile memory of a portable storage medium - Google Patents

Access control to non-volatile memory of a portable storage medium Download PDF

Info

Publication number
GB2410817A
GB2410817A GB0423761A GB0423761A GB2410817A GB 2410817 A GB2410817 A GB 2410817A GB 0423761 A GB0423761 A GB 0423761A GB 0423761 A GB0423761 A GB 0423761A GB 2410817 A GB2410817 A GB 2410817A
Authority
GB
United Kingdom
Prior art keywords
data
content
storage medium
security device
data storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB0423761A
Other versions
GB0423761D0 (en
GB2410817B (en
Inventor
Jeremy Mayo Boswell
Jonathan Mark Kendrick
Timothy John Revell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rok Productions Ltd
Original Assignee
Rok Productions Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rok Productions Ltd filed Critical Rok Productions Ltd
Publication of GB0423761D0 publication Critical patent/GB0423761D0/en
Priority to BRPI0405684 priority Critical patent/BRPI0405684A/en
Priority to RU2007101296/09A priority patent/RU2007101296A/en
Priority to US11/629,556 priority patent/US20070288715A1/en
Priority to PCT/IB2005/051965 priority patent/WO2005125214A2/en
Priority to EP05746956A priority patent/EP1759531A2/en
Publication of GB2410817A publication Critical patent/GB2410817A/en
Application granted granted Critical
Publication of GB2410817B publication Critical patent/GB2410817B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • H04N21/440272Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA for performing aspect ratio conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8355Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A portable data storage medium 60 includes non-volatile memory 62, and an interface 61 for connecting to an external device. It also includes a controller 63 which reads data out from the non-volatile memory. A security device 64 is connected between the controller and the memory. The non-volatile memory stores a media player operable when running on an external device to interact with the security device in such a way that the security device can determine whether the media player is entitled to access content data from the non-volatile memory, and allows or disallows access to the content data accordingly. The security device may be integral with the controller.

Description

24tO81 7 - 1 Handling or Storing Content
Description
The invention relates to a portable data storage medium including a security device, s to apparatus for providing audio-visual content for reproduction on a mobile device, and to a method of providing audiovisual content for reproduction on a mobile device.
There is a trend for mobile telephones, also known as cellular telephones, to be 0 provided with colour displays having many thousands of pixels. As time progresses the quality of these displays and the resolutions afforded thereby increases.
Furthermore, semiconductor terminology is such the mobile telephones can be provided with quite substantial amounts of memory. Whereas previously it has been known to incorporate MP3 players and the like into mobile telephones, the provision of improved displays and increased amounts of memory allows mobile telephones to be used for use as limited digital television receivers. It has been proposed as well to provide audiovisual content on a multimedia card (MMC), for viewing on a mobile telephone. The Nokia _ 7610 is one such capable mobile telephone. This telephone can handle 3GPP and RealMedia audio-visual formats.
The provision of copyright works onto MMCs for sale to the public potentially provides an opportunity for the content to be illegally copied and distributed. The invention aims to provide a memory device, such as an MMC, in which the content cannot be easily accessed in such a way as to allow it to be copied but which can allow it to be played out for consumption.
According to a first aspect of the invention, there IS provided a portable data storage medium comprising: non-volatile memory; an interface including terminals for connecting to an external device; a controller operable to read data out from the non-volatile memory and feed it to the interface; and a security device operable to determine whether an external device is entitled - 2 to access content data from the non-volatile memory, and to allow or disallow access to the content data accordingly A data terminal of the controller can be connected to the interface via the security device.
Alternatively, the security device can be integral with the controller. In this case, the controller and security device may be operable to decrypt content data read out from the non-volatile memory.
Advantageously, the controller is operable also to write data from the interface to the non-volatile memory. In this case, if the controller and security device is operable to decrypt content data read out from the nonvolatile memory, it may be operable also to encrypt data written from the interface to the non-volatile memory.
Providing audio-visual content for consumption on a mobile device currently is a laborious and time-consuming process. It is an aim of the present invention to provide apparatus and method for providing audiovisual content for reproduction on a mobile device which is convenient yet capable of utilising the full capabilities of a target mobile device.
According to a second aspect of the present Invention there is provided apparatus for providing audio-visual content for reproduction on a mobile device, the apparatus comprising: an audio-vsual content supply arrangement; a source of target device configuration information; a codec; and a conversion module, wherein the conversion module is arranged to use the codec to convert audo-vlsual content provided by the audo-visual content source according to configuration information provided by the target device configuration information source, thereby to supply mobile device consumable content data. so - 3
This can allow the automated error-free generation of audio-visual content for reproduction on mobile devices, such as mobile telephones, which is optimised for consumption by the particular mobile device. As described in the embodiments, optimisation may be in respect of such characteristics as frame rate, display size (in s particular aspect ratio) and audio output capabilities. Optimisation may also take into account the user of the mobile device, by providing audio, and optionally subtitles, in a suitable language.
Advantageously, the apparatus is arranged to use a) configuration information comprising a maximum volume size for a target storage device, and b) a detected content duration parameter to determine an appropriate bit rate for one or both of audio and video components, and to control the conversion module to provide converted data having the determined bit rate for the audio and/or video components. This can allow the quality of the audio and/or video components to be optimised automatically according to the content source and to the size of the destination.
Preferably the apparatus is arranged to determine from the target device configuration information a required aspect ratio for displayed video, and to control the conversion module to modify the source audio-visual content so as to provide content having the required aspect ratio.
The apparatus preferably further comprises a digital rights management module arranged to operate with the conversion module to provide the content with data 2s operable to restrict content playback.
It is expected that for most uses of the invention in coming years the audio-visual content supply arrangement will include a media drive operable to receive a storage medium having audio-visual content stored thereon. However, this IS not essential, and the supply arrangement could instead be a reader of data from another type of data source, for example a solid state memory data source, which could be internal or external to the apparatus. Internal data sources could include hard disk drive data sources and sources involving the reception of data from a communications network, such as the Internet or a private link over a public or private network.
According to a third aspect of the invention, there is provided a method for s providing audio-visual content for reproduction on a mobile device, the method comprising controlling a conversion module to use a codec to convert audio-visual content according to target device configuration information, and to provide the converted audio-visual content at an output.
According to a fourth aspect of the invention, there is provided apparatus for providing audio-visual content for reproduction on a mobile device, the apparatus comprising: an audio-visual content supply arrangement; the apparatus being arranged to write into an area of memory data constituting: audio-visual content; two or more different media players; and a loader program, the loader program being arranged such that when loaded into a mobile device it causes configuration parameters of the mobile device to be determined, causes one of the media players to be selected on the basis of the detected configuration parameters, and controls the mobile device to use the selected media player.
According to a fifth aspect of the invention, there is provided data stored on a portable medium or existing at least transiently in memory, the data constituting: audo-visual content; two or more different media players; and a loader program, the loader program bemg arranged such that when loaded into a mobile device it causes conOguraton parameters of the mobile device to be determined, causes one of the media players to be selected on the bests of the detected configuration parameters, and controls the mobile device to use the selected media player. - 5
According to a sixth aspect of the invention, there is provided a method of providing audio-visual content for reproduction on a mobile device, the method comprlsmg: writing into an area of memory data constituting: s audio-visual content; two or more different media players; and a loader program, the loader program being arranged to cause a mobile device to determine configuration parameters of the mobile device, to select one of the media players on the basis of the detected configuration parameters, and to control the mobile device to use the selected media player.
According to a seventh aspect of the invention, there is provided a method of operating a mobile device, the method comprising: storing audio- visual content data and two or more different media players in internal and/or external memory; determining configuration parameters of the mobile device, selecting one of the media players on the basis of the detected configuration parameters, and using the selected media player to consume the audio-visual content data.
The term 'mobile device' will be understood to embrace mobile (cellular) telephones and personal digital assistants having bidirectional voice communication capabilities, as well as other mobile devices, including dedicated media players and the like.
Embodiments of the present Invention will now be described by way of example only, with reference to the accompanying drawings in which: Figure 1 Is a schematic diagram of audio-visual content provision apparatus embodying the invention; Figures 2 and 3 arc flowcharts Illustrating steps of operation of the Figure 1 apparatus; o - 6 Figure 4 is a schematic drawing illustrating apparatus for playback of the converted audio-visual content in a mobile telephone; Figure 5 illustrates a combination of an MMC and the mobile telephone of Figure 4; Figures 6 and 7 illustrate alternative embodiments of MMC hardware, according to s certain aspects of the invention; Figure 8 is a flowchart illustrating security validation between the mobile telephone of Figure 4 and the MMC of Figure 6 or Figure 7; and Figure 9 is a schematic drawing of a system of interconnected computers operable according to the invention.
Throughout the drawings, reference numerals are re-used for like elements.
Referring firstly to Figure 1, content extracting and converting apparatus 10 is illustrated schematically. Two alternative sources of audio-visual content 8, 9 are included. A first content source 8 utilises film or movie data stored on a DVD (digital video disk or digital versatile disk) 15. An automated extraction configuration module 16 examines metadata stored on the DVD 15 to determine the configuration of content data stored on the DVD. This involves the application of a tcprobe, and an analysis of the information returned from the DVD 15. This is described in more detail below. The result is data stored in an extraction configuration memory area 17 representing an extraction configuration. The extraction configuration data from the memory area 17 is utilised by a DVD decryption and extraction module 18 to extract movie data (i.e. the content data) from the DVD 15. The result is content data in an intermediate format, which is written to an intermediate format movie data area 14. The data included in the intermediate format movie data area 14 is in predetermined format and is suitable for conversion into a form ready for reproduction on a mobile telephone (not shown). Preferably the intermediate format is AVI. This format has the advantage of high resolution, yet is relatively easy to handle and it is relatively easy to convert from AVI into 3GPP and many other formats suitable for use by mobile devices.
The second source of audio-visual content 9 receives from a movie data storage area 12 data representing a movie (or film) in AVI (audio-visual interleave) or other o - 7 format. The movie so supplied is converted by a format conversion module 13 before being written to the intermediate format movie data area 14.
Thus, either of the audio-visual content sources 8, 9 can be used to provide movie data in the intermediate format movie data area 14.
A mobile format conversion module 19 converts movie data stored in the extracted movie data area 14 and provides a movie in mobile telephone consumable format in a mobile format movie data area 20. The mobile format conversion module 19 utilises a digital rights management (DRM) processing module 21, which allows certain control over the access and distribution of the resulting movie data. The conversion effected by the mobile format conversion module 19 uses a codec 22, which preferably is custom-designed for the purpose. Importantly, the conversion effected by the mobile format conversion module 19 uses information stored in a production configuration data area 23. By controlling the mobile format conversion module 19 on the basis of information specific to the configuration of, and thus tailored to, a target device, the apparatus 10 can be used to provide movie data for any of potentially a large number of target mobile devices.
The extraction effected by the audio-visual content source 12 will now be described in detail with reference to Figure 2.
In Figure 2, extraction configuration is effected at step S1. This utilises the automated extraction configuration 16 shown in Figure 1. Extraction configuration commences by analysing the DVD source 15. The result of an example analysis, i.e. what is returocd in response to a query, is illustrated below: (dvd_reader.c) mpeg2 pal 16:9 only letterboxed UO 720x576 video (dvd_reader.c) ac3 en drc 4SkHz 6Ch (dvd_reader.c) ac3 de drc 48kHz 6Ch (dvd_reader.c) ac3 en drc 48kHz 2Ch (dvd_reader.c) subtitle OO=<en> (dvd_reader.c) subtitle 01=<dc> o - 8 (dvd_reader.c) subtitle 02=<sv> (dvd_reader.c) subtitle 03=<no> (dvd_reader.c) subtitle 04=<da> (dvd_reader.c) subtitle 05=<fi> s (dvd_reader.c) subtitle 06=<is> (dvd_reader.c) subtitle 07=<en> (dvd_reader.c) subtitle 08=<de> [tcprobe] summary for /media/dvdrecorder/, (*) = not default, 0 = not detected import frame size: -g 720x576 [720x576] aspect ratio: 16:9 (*) frame rate: -f 25.000 [25.000] frc=3 audio track: -a O [O] -e 48000,16,2 [48000,16,2] -n Ox2000 [Ox2000] audio track: -a 1 [O] -e 48000,16,2 [48000,16,2] -n Ox2000 [Ox2000] audio track: -a 2 [O] -e 48000,16,2 [48000,16,2] -n Ox2000 [Ox2000] [tcprobe] V: 185950 frames, 7438 sec (A 25.000 fps [tcprobe] A: 116.22 MB (A 128 kbps [tcprobe] CD: 650 MB I V: 533.8 MB (A 602.0 kbps [tcprobe] CD: 700 MB I V: 583.8 MB (A 658.4 kbps [tcprobe] CD: 1300 MB I V: 1183.8 MB (A 1335.1 kbps [tcprobe] CD: 1400 MB 1 V: 1283.8 MB (A 1447.9 kbps This information is returned by tcprobe, which is part of transcode.
Part of the extraction configuration process of S1 involves determining the configuration of the target device, which is represented by the information stored in the production configuration data area 23. It is helpful therefore to understand the information that is stored there.
Information data stored in the production configuration data area 23 identifies the aspect ratio of the display of the target device. In most cases, the aspect ratio 4:3, although this may vary form device to device. Certain devices will include 16:9 (wdescreen) aspect ratios, although m practice the aspect ratio may take a value which Is not the same as a conventional television aspect ratio. The production configuration data also identifies the audio language required. It also identifies o whether or not subtitles are required. If they are required, the production information configuration identifies the language that the subtitles are required to be in. The bitrates of the video and the audio tracks are included in the production configuration data. The bltrates may depend on the capabilities of the target device, s on the particular media player installed in the target device or on any other factors.
The production configuration data may also indicate a maximum volume size, for example indicating the amount of usable memory in an MMC. The production configuration information also includes an indication of the format on which the movie data is to be stored. For example, this format can be 3GPP or MPEG-4 format, or any other suitable format.
The information included in the production configuration data area 23 also includes the type of the target device. This may be, for example, a model number of the mobile telephone on which the movie is to be reproduced. In some circumstances, it may be possible that two different mobile telephones having the same model number can have different hardware and/or software configurations. Where different configurations are possible, and this may have a bearing on the optimum processing effected by the apparatus 10, the information stored in the production configuration data area 23 preferably also includes details of how the hardware and/or software configuration departs from the standard configuration, or perhaps instead merely specifies the configuration.
The automated extraction configuration module 16 determines from the information returned by tcprobe, (in particular the first line thereof reproduced above) that the DVD 15 contains only widescreen (that is 16:9 aspect ratio) video in MPEG 2 PAL format. The module 16 also determines that there are three audio tracks, identified by the second and fourth lmes respectively. The first and second tracks have 6 channels each and 48 kHz sampling rates. The first is in the English language and the second is in the Gctman language, as identified by the "en" and "de" designations. The third audio track is in the English language and is a stereo (two channel) signal having a 48 kHz sampling rate. The module determines also that the DVD 15 has eight subtitle tracks, in venous languages. The module 16 also determines the frame rate, the number of frames and the length of the movie. The
- - 10
module 16 uses the last four lines of the returned information to determine the content bitrate variations that can be extracted from the DVD 16.
The function of the automated extraction configuration module 16 also includes s obtaining decryption keys, which are needed to allow the audiovisual content on the DVD to be reproduced.
The information determined by the automated extraction configuration module 16 constitutes the configuration of the DVD 15.
Based on the information in the production configuration data area 23 and on the DVD configuration information, the automated extraction configuration module 16 makes a decision as to which audio tracks, which video channel (if there is more than one video channel) and which subtitle track are needed. Typically, the subtitle track identified by this process is the first listed subtitle track which is in the same language as the subtitle language identified in the production configuration data area 23. Also, the audio track identified by this process is the audio track which is in the same language as the audio language identified in the production configuration data area 23 and which is most suitable for use by the target device. In most cases, Dolby AM Pro Logic _ audio channels will not be suitable, because most target devices will not be equipped to handle such audio signals. A stereo audio track will in most cases be the most suitable audio track, although any mono track may be most suitable for a target device with only mono audio capabilities. The video channel selected by this process typically is the main channel, i.e. the actual movie, and not any 'additional features', such as trailers and behind-thescene documentaries and the like that are commonly included on DVDs. Data identifying the tracks and channels identified by this process is stored in the extraction configuration data area 17.
In step S2, the data stored on the DVD 151S read as a stream. This is represented by the arrow between the movie on DVD data area 15 and the DVD decryption and extraction module 18 m Figure 1. It IS only the content which is read at this time, smce the configuration information, or metadata, is not used by the DVD o - 11 decryption and extraction module 18 directly. Also, it is only the relevant content which is read. The relevant content is identified to the DVD decryption and extraction module 18 by the information stored in the extraction configuration data area 17, which identifies the relevant video channel, the relevant audio channel and s any relevant subtitle channel. At step S3, the relevant portions of the DVD data stream are decrypted by the DVD decryption and extraction module 18. This decryption uses transcode with the keys extracted by the automated extraction configuration module 16. Decryption is performed "on the fly", i.e. as a continuous process as the content is read from the DVD 15. As the data is decrypted, it is 0 converted into the intermediate format, i.e. AVI format. At step S5, the movie data is written into the extracted movie data buffer 14 as a file or series of files in the intermediate format.
At step S6, extraction post-processing is performed. This involves splitting or joining the content file or files present in the extracted movie data buffer 14 into components. Whether there is any splitting or any joining and the extent of it depends on the target device configuration information stored in the production configuration data area 23. In most cases, this step will involve splitting the extracted content cleanly to multiple volumes. Providing movie content in the form of multiple volumes is desirable in many circumstances due to the limitations of mobile telephones. It is a fairly straightforward procedure to split DVD movie content into volumes corresponding to the DVD chapters present on the original DVD 15. l;ollowing step S6, the extraction of the movie data is complete.
The result is movie data stored m the extracted movie data buffer 14 which is encoded into an intermediate format (e.g. AVI format) and which includes only one audio track, which is in the required language identified by the production configuration information stored in production configuration data area 23, and optionally one subtitled track, in the required language. The extracted movie data typically IS divided into a number of volumes, although this may not be necessary depending on the configuration of the target device.
Instead of usmg a DVD data source 15, the other movie data storage area 12 may be o - 12 used. In this case, format conversion to the intermediate format, for example AVI, is carried out by the format conversion module 13. If only DVD sources 15 will be used, then the second content source 9 can be omitted. If included, the format conversion module 13 takes a form which is suitable for the particular type of s content provided at the other movie data storage area 12. A separate format conversion module 13 may be needed for each type of data that can be stored in the other movie data storage area 12.
The procedure of Figure 3 begins with the extraction process complete. At step S1, the extraction file is read. This is an "on the fly" procedure and is represented by the arrow linking the extracted movie data buffer 14 with the mobile format conversion module 19. At step S2, the mobile format conversion module 19 decodes the content comprising the movie data. The step uses transcode. At step S3, the decoded content is encoded into the required mobile format, as identified by the production configuration information stored m the production configuration data area 23. The encoding is performed by the coder 22. The encoding is performed in such a way as to result in audio and video content having the most appropriate bitrates. What are the most appropriate bitrates is determined by the mobile format conversion module 19. In particular, the mobile format conversion module 19 uses knowledge of the number of video frames m the video data and the length of the audio track along with the maximum volume size information stored in the production configuration data area 23 to determine the most suitable bitrates.
In most cases, the most suitable berates for the audio and video will be the bltrates which are the maximum possible bitrates which could be used to fit the entire 2s content withm the maximum volume size.
Usually, the bitrates selected for the audio and the video give rise to comparable quality for those components, although there can be some discrepancy if this results in mobile format movie data which would give an improved playback experience if this is possible having regard to the maximum volume size. For example, if audio and video content at a certam quality level would give rise to data exceeding the maximum volume S1ZC but that content at a quality level immediately below that would give rise to a significant shortfall of the volume size, the mobile format o - 13 conversion module 19 may make a decision to use the higher bitrate for the video content and the lower bitrate for the audio content, so as to make the best use of the available volume size.
If examination of the information stored in the production configuration data area 23 reveals that the target device is not optlmised for video playback at the same frame rate as that of the DVD source 15, then this is taken into account by the mobile format conversion module 19. In particular, the mobile format conversion module 19 may modify the frame rate of the content data so that it is optimised for the target mobile device. Typically, this will involve a reduction in the frame rate which, because of the limited display size in most mobile telephones, would not be so noticeable as it would if a full size display were used. If the optimal frame rate is not equal to the source frame rate divided by an integer, then the mobile format conversion module 19 may use frame interleaving to effect a smooth result in the generated movie content when played back on a mobile telephone.
Step S3 thus utilises information stored in the production configuration data area 23 to control the mobile format conversion module 19 to encode the data using the codec 22 into the appropriate data format and with appropriate bitrates.
The production configuration data area 23 may be updatable according to the target device which is of interest in a particular format conversion process. In this case, the production configuration data area 23 will store data for only one target device at a time, and this data is changed as required. Alternatively, the production configuration data area 23 stores a set of data for each of plural target devices, and one of the data sets is selected according to the particular target device of interest at a given time. In either case, the apparatus 10 is easily controlled to carry out a format conversion process which is optlmised for each of plural target device configurations.
Digital rights management content is added to step S4. This Is implemented by the mosaic format conversion module 19 using the DRM processing module 21. The procedure implemented by the step S4 depends on the target format identified by o - 14 the information stored in the production configuration data area 23. What form of DRM content is added may depend in particular on the form of the codec 22. The form of the codec 22 in turn has an effect on the form of the codec in the media player. In particular, when the codec 22 is a custom codec, a custom form of DRM is used. Here, the form of DRM can be selected to provide optimal operation with the custom media player. If an off-the-shelf codec, such as Real Media _, iS used as the codec 22, a suitable DRM will be used.
Assuming it is allowed by the media player and the target device, the DRM content may impose content reproduction and distribution restrictions as follows. One option is to limit viewing of the content to the particular target device or user, as for example identified by an IMEI or an IMSI number or any other unique or quasi- unique serial number. In this case, the serial number needs to be included in the production configuration data area 23, so that the mobile format conversion module 19 can operate with the DRM processing module 21 and the production configuration data area 23 to include suitable DRM content in the movie data.
Another option is to allow the movie to be viewable up until a particular time and/or date. Thus, the resulting movie will have a "shelf-life" and will not be viewable after the date and/or time specified by the DRM content. A third option is to allow the movie content to be viewable on a predetermined number of occasions (N times). Once the movie has been viewed N times, the media player in the target device will not allow thecontent to be refused again, thereby rendering it useless. Alternatively, the media player may be arranged to erase the MMC or otherwise delete or corrupt the movie data immediately after the Nth viewing.
Alternatively or in addition, the DRM content can prevent the content being copied or forwarded if not authorised. Thus, it can be said that the DRM content prevents or deters the consumption of the content on mobile devices other than the one for which it was intended and/or copying of the content.
Preferably, the DRM content is encrypted and included m the header of the resulting movie data, although the DRM content may be included in the movie data in any suitable way. Clearly, if a standard DRM process is required to be used by the target device, the DRM content included in the movie data by the mobile format so - 15 conversion module 19 in the DRM processing module 21 will conform to the relevant standard.
At step S5, the target content is written to the mobile format movie data area 20 as s a file. The file may be an area of memory in a computer server, for instance, or the content file may be written directly onto an MMC or other portable transferable media. The file written by this step S5 includes content in the appropriate format, and also DRM content either embedded into the movie content or else in a separate file. After step S5, the conversion is complete, the result is stored in the mobile format movie data area 20 data constituting the movie originally on the DVD data area 15 but encoded in a format suitable for use by the target mobile device and having appropriate audio and video content bitrates. Furthermore, the movie includes suitable DRM content, multiple volumes if appropriate to the format of the target device, a single audio sound track, and optionally a single subtitle track.
Where the video content on the DVD 15 has a different aspect ratio to the display of the target device, there preferably is modification of the video signal from the DVD such that it corresponds to the aspect ratio of the target device. This can be carried out by the DVD encryption and extraction module 18. Preferably however, modification of the video signal from the DVD 15 such that it corresponds to the aspect ratio of the target device is carried out by the mobile format conversion module 19. The modification may involve simple cropping from the left and right sides of images if narrower images arc required, or cropping from the top and bottom of images if wider images are required. The modification may mvolve aswell or instead a limited amount of image stretching, either widthwise or heightwise. In this case, it is preferred to have more picture linearity m the central region of the display than at the edges of the display. Thus, compression or stretching is effected to a greater degree at the edges of the images than it is a central portion. The DVDencryptlon and extraction module 18 or the mobile format conversion module 19, as the case may be, can be pre-programmed to make a decision as to what cropping and/or stretching is required on the basis of a look- up table relating course aspect ratios to target device aspect ratios and the corresponding modification required, or in any other suitable way. so - 16
In the embodiments described above, the data written to the mobile format movie data area 20 relates only to content data. In an advantageous embodiment, the data written to the mobile format movie data area 20 also includes one or more media s players. This is advantageous for a number of reasons. Firstly, it reduces the number of factors which need to be taken into account by the mobile format conversion module 19. The target device configuration information does not need to include information identifying the media player included in the mobile device, since this is not needed when the media player is included with the movie content 0 data. Secondly, it allows movie content data to be consumed even if no suitable media player, or indeed no media player at all, is included in the mobile device.
The media player or players may be embedded, or alternatively included alongside, the movie content data. Embedding the media player into the content data allows easier control of the movie content, and makes it very difficult for the movie content data to be separated by unauthorised persons. Each media player typically consumes less than 1MB of memory.
In one embodiment, a single custom media player is Included with the movie content data. After the data is written onto an MMC card, the data relating to the media player is extracted by the mobile device from the MMC and the media player run to process the movie content data.
In another embodiment, a number of different media players are stored, along with the movie content data and a loader program. The mobile device IS controlled to run the loader program imtlally. The program detects the relevant configuration of the mobile device and determines therefrom which of the media players to use to consume the movie content data. In this way, it IS possible to utilise an MMC card for a greater number of target device configurations, which clearly can be advantageous, espccally when the MMC cards are intended for retail from a shop display or similar.
If the media player is not a custom player, the loader program preferably is arranged o - 17 to control the mobile device to detect whether or not it already includes a suitable media player. If a suitable media player is detected, this is controlled to be used instead of Installing a media player from the MMC card onto the mobile deuce.
This is advantageous since it reduces the possibility of there being an installation or Reinstallation error, thereby improving the reliability of the mobile device.
Instead of including multiple separable media players, multiple media players may be provided through a single configurable media player software application. In this case, the loader program may determine what media player is required, and operate appropriate software modules forming part of the media player software. Software module or functions which are not appropriate for the mobile device configuration are not used. Thus, multiple media players are made up from a single software application, which reuses modules or functions for certain media player functionality. Where a single media player software application is used, the loader program may form part of the media player software application itself.
The movie content data, as well as any media player(s), stored in the mobile format movie data area 20 can be communicated to the target mobile device in any suitable way. For the next few years at least, it is envisaged that mostly MMC or other transferable media will be used to store and transport the movie content. However, as mobile data transfer becomes faster and cheaper, it is expected that movie content will be transferable over-the-air, for example using WAP or 3G data transfer. Transfer may instead be effected by transfer from an Internet connected PC which has downloaded the movie content from a website, using a short range lmk such as a cable, or wirelessly using IrDA or Bluetooth, or using a transferable storage medium such as an MMC.
A mobile device is shown schematically m Figure 4. Here, the mobile telephone 40 includes all the conventional components needed for voice communication, although these are not shown for the sake of clarity. The telephone 40 includes a movie decoder module 41, which is in bidirectional communication with a codec 42.
A movie is stored m a mobile movie data area 43, which may take any suitable form.
It may for example be an MMC, a memory space connected by way of an external o - 18 drive, internal RAM or other memory, or it may take any other suitable form. A DRM validation module 44 is connected to receive DRM data from the data in the mobile movie data area 43. The DRM validation module 44 controls the movie decoder module 41 to allow or disallow it to decode the movie data from the mobile s movie data area 43 on the basis of a decision made using the DRM data, and time/date or serial number inputs as appropriate. When allowed by the DRM validation module 44 to decode movie data from the mobile movie data area 43 and when controlled to do so by user input, the movie decoder module 41 uses the codec 42 to decode the data and provide decoded data to a buffer 45. From the buffer 45, the movie is displayed on a display 46 by a display module 47. The display module provides control data to the movie decoder module 41 so as to enable decoding at a suitable rate.
The mobile telephone 40 may be arranged to install a loader program from the mobile movie data area 43, if one is stored there. The loader program then causes the mobile telephone 40 to determine its configuration, and to select a media player, which is a software application and which is also stored in the mobile movie data area 43, accordingly. This media player then is used to consume the movie content data. If a suitable media player is already installed in the mobile telephone 40, then this is used instead, and no media player then is installed from the mobile movie data area 43. However, using a proprietary media player stored in the mobile movie data area 43, particularly although not exclusively in the case of the use of a portable storage device such as an MMC, can be advantageous since is allows effective control over the security of the content data, and allows other features not necessarily available with off-the-shelf or pre-mstalled media players.
The combination of an MMC and mobile device is illustrated m Figure 5. Here, the mobile device 40 is shown to include a CPU 51, which provides video signals to the display 46, via a display driver (not shown), and to an audio output device 52 (c.g.
headphone socket or speaker, via an audio device driver (not shown). lihe CPU 51 is connected via a bus to ROM 53, to RAM 54 and to an MMC connector and Interface 55. An MMC 56 is connected to the mobile device 40 by the MMC connector and interface 55. so - 19
The MMC has stored in its internal non-volatile memory movie content data 57, three different media players 58, and a loader program 59. When content is required to be played-out from the MMC, the mobile device loads the loader s program 59, which decides which of the media players 58 is most suitable by determining configuration parameters of the mobile device 40 and comparing them to parameters of the media players. This media player then is selected on the basis of the determination, is loaded onto the mobile device 40, and is run (i.e. the media player program is processed) to reproduce the content from the content data 57. As is conventional, operation of the media player 58 involves storing the media player program in the RAM 54, and using the CPU 51 to extract relevant data from the MMC 56, to decode it and to render the resulting content. Figure 5 is schematic, and detail not relevant to the invention is omitted.
The or each media player is arranged to detect the properties of the display 46 of the host mobile device 40. In particular, the media player detects the display dimensions and orientation, in terms of numbers of pixels in height and width. The player is arranged to control reproduction of the video content on the display 46 in an orientation which is most suited to the mobile device 40. If the display 46 is wider than it is high, then video content is reproduced with conventional orientation, i.e. without its orientation being modified. If however the display 46 is determined to be higher than it is wide, the media player reproduces the video content rotated by 90 degrees. Thus, the media player ensures that the video content always is reproduced in landscape format (wider than tall) regardless of screen dimensions. This allows more effective use of the area of the display 46.
When the video content is rotated on a display 46 by the media player, the functions of a number of keys on a keypad (not shown) or other input device are caused by the media player 40 to be modified so as to be different to their functions when the video content Is not rotated by the media player. Since the mobile device 40 will need to be rotated onto its side before the video can be viewed in its intended orientation, providing different key functions with different orientations allows the same control experience to be provided to a user regardless of the orientation of the o - 20 moble device 40. Thus, modifying the controls allows control of the media player using the keypad or other input device to be more convenient and more intuitive for a user. The controls of particular importance are volume up/down, play, pause, forward and rewind, etc. When the mobile device 40 is not a high specification device, i.e. it has relatively low content handling capability and/or a low resolution display, the media player is arranged such that it can access content from the MMC and not access content from other sources. This allows the content on the MMC to be optimised for reproduction by the proprietary media player, thus providing richer content reproduction than would otherwise be available considering memory size and other technical limitations of the MMC. This feature does not impinge on the ability of the media player to use a standard CODEC 42 pre-existing within the mobile device 40. Indeed, the media player may utilise standard or other third-party CODECs, or it may utilise a proprietary CODEC.
When being run on higher specification mobile devices 40, a different media player 58 is used. Here, the media player selected by the loader program 59 is one which is operable to scale non-optimal content for best presentation.
Alternatively, one media player 58 which has adjustable functionality is provided on the MMC 56. Such a media player does not require a loader program. When running on a mobile device 40, this media player 58 detects the relevant characteristics of the mobile device 40 and activates appropriate components and functionality of the media player 58 and refrains from activating other components and functionality.
The hardware of the MMC 56 may be standard, for example any of the MMC forms which currently are publicly available. A typical MMC hardware design consists of a flash memory device and a memory/interface controller residing on a very thin PCB (printed circuit board) in a very low profile plastic housing. The underside of the I'CB generally forms the bottom of the housing. There are a number of different sizes of MMC. To - 21
According to certain aspects of the invention, the MMC hardware is nonconventional, and includes additional security features. In this case, a proprietary media player 58 is used to unlock and read content on the secure MMC.
A first embodiment of a novel MMC will now be described with reference to Figure 6. Here, an MMC 56 includes a housing 60 in which connector pins 61 are provided. The connector pins form part of a host communications interface to an external device, such as the mobile device 40. The MMC 56 also includes non volatile memory 62, connected to a memory and interface controller 63, which controls access to the memory 62 and interfaces to the connector pins 61. The MMC thusfar described is conventional. The MMC 56 also includes a security device 64, which is not conventional. The security device 64 is interposed between the memory and interface controller 63 and the connector pins 61. Thus, the memory and interface controller 63 and the data (DAT), command (CMD) and clock (CLK) ones of the connector pins 61 are not connected directly since at least some connection between these components is via the security device 64. VCC, VSS1 and VSS2 ones of the connector pins 61 are connected to both the security device 64 and the memory and interface controller 63 in parallel. The security device 64 may be implemented as a microcontroller, an ASIC (application specific integrated circuit) or an FPGA (field programmable gate array). The components of the MMC 56 are mounted onto a PCB (printed circuit board), which forms part of the housing 60. Thus, the MMC 56 may have the same dimensions and the same external connectors as a conventional MMC.
The security device 64 is arranged to intercept data and commands communicated between the host device, e.g. the mobile device 40, and the memory and interface controller 63. This intercepted data is processed and either is passed through the security device 64 modified or unmodified, or alternatively is replaced by data generated by the security device 64 itself.
Spccfc data or commands passed in any response can switch the security device 64 into an active mode, in which the security device 64 reads or writes to one of the o - 22 memory and interface controller 63 and the host interface 61, masquerading as the other one of those devices. In the active mode, the security device 64 also independently, i.e. without external control, interrogates the memory and interface controller 63 and either prepares data for subsequent host requests or writes data to s the non-volatile memory 62 for subsequent requests.
The provision of the active mode allows copy protection to be achieved through cooperation between the MMC 56 and the media player 58.
The security device 64 does not restrict access to regions of the nonvolatile memory 62 where unprotected content resides, in both read and write modes. This allows the MMC 56 including the security device 64 to be used conventionally, i.e. without the security features provided by the security device being operational. The security device 64 can be activated only by authorised entities, such as those licensed to place copyright content, e.g. movies, onto the MMC 56.
The MMC 56 and the media player 58 are provided with the same serial number.
During configuration, the media player 58 is provided also with the result of application of the derail number to a hash function, hereafter termed the hash of the serial number. The memory and interface controller 63 is controlled by the security device 64 to store at programming time (i.e. when it is programmed before sale) the serialised data serial number, a preconfigured security code, and the hash of the serial number.
Validation of the MMC 56 by the media player 58 and validation of the media player 58 by the MMC 56 will now be described with reference to Figure 8.
When the MMC 56 with content, one or more media players 58 and optionally a loader program 59 loaded onto it is connected with a mobile device 40, the media player is made visible m a menu thereof, and thus becomes able to be activated as with any other software application present on the mobile device 40. When the media player 58 first is started, a first security validation is Implemented, in which the following occurs. Firstly, the most suitable media player 58 is uploaded to the To mobile device 58. The media player 58 then at step S8.1 sends the hash of the serial number to the security device 64. The security device 64 at step S8.2 then compares this with its internally stored hash of the serial number. If the comparison at step S8.3 reveals a match, it is initially assumed that the media player 58 and the MMC 56 are matched, and the security device 64 unlocks the M M C 56 at step S8.4. The security device 64 then sends at step S8.5 the Reconfigured validation code to the media player 58. Alternatively, if the comparison does not reveal a match, the security device 64 at step S8.6 does not respond. When the media player 58 receives a validation code, it performs at step S8.7 a 32 bit CRC (cyclic redundancy check) calculation on the validation code. On the basis of this calculation, the media player 58 determines at step S8.8 whether the M M C 56is the one associated with the media player 58, and unlocks the media player at step S8.9 if appropriate, or else aborts with an error message at step S8.10. At this stage, the media player 58 can read data from unprotected areas on thereon-volatile memory 62, if any such areas are present.
A second stage security check is performed when playing the content. After the media controls on the MMC 56 are unlocked and the data becomes readable, data is l read out from the non-volatile memory 62 to the media player 58. In parallel with this, the data stream is set at step S8.11 mto frames of lkB, i.e. there are 1000 bytes between frame start and end points. The media player at step S8.12 calculates the security code (as described in more detail below) and then sends it to the security device 64, where it is decoded at step S8.13. On the basis of the decoding, the security device 64 determines at step S8.14 if the security code is valid. If invalid, the security device 64 at step S8.15 resets a timeout counter, thereby preventing a timeout occurring and locking the content. If valid, the memory and interface controller 63 at step S8.16 considers the subsequent data frame as being validated for access. If a valid code is not received before the end of this frame, subsequent frames are filled with random data instead of content data.
the meals player 58 recalculates the correct security code once in every frame, but generates 20 security codes for each data frame, 19 of which are incorrect. The media player 58 sends the M M C 5G all the security codes at step S8.17, in this - 24 example resulting in 20 security codes being sent for every frame of data. 19 of these codes are intentionally incorrect, and only one of them is correct. The security device 64 of the MMC 56 compares the results of its calculations with the security code sent by the media player 58. The security device 64 allows content s data to be sent to the player as long as one correct security code is received in every frame. If the security device 64 detects that a valid security code has not been received for a predetermined period of time, using a timer, or if too few codes (either correct or incorrect) are received, then the security device 64 disables access to the data in the non-volatile memory 62. The security device 64 then needs to be unlocked again by the media player 58 before content playback can be resumed.
The security device 64 also locks the MMC 56 if it has not been accessed for a predetermined, configurable period of time.
The security code is calculated based on the following data: CRC - the last 4 bytes of the decoded validation code (the checksum part) Bytes the total number of bytes read from the MMC 56 so far Random - a number between one half of the number of security updates per frame (in this case, 10 is half of the 20 updates per frame that there are) and 0.
The media player 58 performs the calculation: ((CRC<<Mod 32(Bytes)) Xor (Bytes)) * Random This means that the checksum part (CRC) of the validation code is shifted left by a module of 32 of the number of bytes read. The result is Xor-ed with the number of bytes read. The Xor operation consists of applying corresponding bits in the two numbers to respective excluslvc-or gates. The result Is multiplied by the random number Random.
The security device 64 in the MMC 56 performs the calculation: ((CRC< <Mod 32(Bytes)) Xor (Bytes)) * Moduloframe size(framc number) o Moduloframe size(frame number) is frame number modulo 1000 in this instance because the frame size may change, i.e. 1000 e.g. 5032 becomes 0032.
s The result of this is the continual validation of the media player 58 by the security device 64 of the MMC 56. This prevents it being possible to use a false media player to extract the content data in a useable form; instead the data can only be extracted from the MMC 56 by the correct media player 58, which renders the content for consumption but does not allow the content data to be used to provide unauthorized copies. The fact that the media player 58 sends many incorrect codes makes it difficult or impossible to determine from examination of the codes sent from the media player 58 to the MMC 56 what calculation is needed to determine the correct codes, thus increasing security since the difficulty of making a false media player which could extract data Dom the MMC is significantly increased.
Using these features, the security device 64 is operable to determine whether an external device, comprising the mobile device 40 running the media player 58, is entitled to access content data from the non-volatile memory 62, and to allow or disallow access to the content data accordingly.
An alternative MMC 70 is shown in Figure 7. Here, the memory and interface controller G3 is omitted. Instead, a combined memory and interface controller and security device 71 connects the non-volatile memory 62 with the connector pms 61.
This provides the same functionality that the memory and interface controller 63 and the security device 64 do together, but with some additional functionality, as explained below. This embodiment has an advantage in that it could be included within a smaller housing than the Figure 6 MMC 56. Since it has less hardware, it may also be less expensive to manufacture. Also, the combined memory and interface controller and security device 71 does not need to support the same type of non-volatile memory as a MMC controller, thereby providing component flexibility. o 26
The combined memory and interface controller and security device 71 emulates the host interface of a standard MMC controller, so as to allow full connectivity with host devices, such as the mobile device 40. It also supports additional host interface commands to support security configuration and security validation in s some specific hosts. The combined memory and interface controller and security device 71 encrypts all data written to the non-volatile memory 62, and decrypts all data read from the non-volatile memory 62. Thus, data accessed by the mobile device 40 is not read from the non-volatile memory 62 directly; instead it is decrypted, processed and buffered in the combined memory and interface controller and security device 71.
Some data accessed by the host is a result of processing, for example the security device 64 compiles information for subsequent host requests, or is status information, e.g. security status information, which the media player 58 can use to re-valdate security or inform the user of the nature of a problem The combined memory and interface controller and security device 71 can be implemented by a microcontroller, an ASIC or an EPGA.
With the MMCs of both Figures 5 and 6, DRM information is stored in a DRM file wlthm an area of the non-volatile memory 62 which has been defined as a secure area during MMC configuration. The media player 58 can read the DRM file but not influence it, except in the case of a time specific DRM matter. The security device 64 or 71 is arranged to count the number of times that the content is played. If the content is only partially played, this is counted as a play of the content. The number of times that the content has been played is recorded in the DRM file by the security device 64 or 71. This information can be read by but cannot be not influenced by the media player 58. The DRM file indicates a maximum number of occasions in which the content data can be played out.
The DRM data also includes a timeout date or validity date for the content. When the media player 58 is hrst started, it cooperates with the security device 64 or 71 to write the current time and date of the mobile device 40 from its loternal clock (not O - 27 shown) into the DRM file. If playback of the content is requested and the security device 64 or 71 determines that the latest time and date at which the content could be played has expired (i.e. the current time and date is later than the time/date first recorded plus the validity period), the security validation between the security device 64 or 71 and the media player 58 fails, and an appropriate message is delivered to the user via the display 46. The same occurs if the limit of the number of occasions on which the content data can be played out is reached. The security device 64 also writes to the DRM file data identifying that the content has expired. If after the content has expired once and the time/date of the mobile
device 40 is changed to a value that precedes the expiry time/date of the content, the security device 64 or 71 can detect this by detecting data identifying that the content has previously expired in the DRM file. In this case, a predetermined number of further plays of the content, for example 5 plays, are allowed before the content becomes locked requiring a DRM unlock. This is achieved using on-line validation. This feature eases the user impact if the clock in the mobile device was incorrectly configured when the media player 58 was first started.
The on-line validation process commences with the media player 58 connecting to a DRM server, shown at 80 in Figure 5, for example belonging to an entity that is licensed to render content onto MMCs. The DRM server 80 knows the configuration of every MMC 56 that has been released. Connection may be made through WAP or SMS, or in any other suitable way. If the DRM information on the DRM server is valid, the DRM server sends a code through the media player 58 to the security device 64 or 71, which causes it to be validated and thus unlocks the content for further playback. This involves updating the DRM file. Locked content can be unlocked again by payment for further content access through a variety of channels (web, wap (e.g. Bango) and SMS).
If content on an MMC 56, 71 Is locked, the media player 58 will not play the content data back. In this case, the user of the mobile device 40 may arrange for the content to be unlocked for further playback, for example by making an additional payment. This can occur in any suitable way, for example using WAP, a o - 28 web-based payment service, or by negotiating with an operator by telephone. When payment is made, the DRM server 80 is updated with this information. When the user subsequently starts the media player 58 and attempts to access the locked content, the media player 58 contacts the DRM server 80, in any suitable way, which sends an unlocking code to the mobile device 40 which the media player 58 passes to the security device 64 or 71. The security device 64 or 71 then validates the unlocking code, and updates the DRM file to unlock the content.
Although the mobile device 40 is said to be a mobile (cellular) telephone, it may instead be a personal digital assistant (PDA), which may or may not have bidirectional voice communication capabilities. The invention is primarily concerned with providing audio-visual content on a device which is designed primarily for another function. However, the invention is concerned also with dedicated media players.
Also, although certain aspects of the invention have been described in relation to an MMC 56, this is not essential. Instead of an MMC, other type of medium including non-volatile memory and an internal memory controller with access to content data stored on the memory being obtained through an interface could be used instead.
For example, a memory device with a USB or Bluetooth _ or other interface could be used instead. The housing of the memory device may take any suitable form.
Where a movie on a DVD is to be provided onto transferable media for use with a general class of target mobile devices, or even where the movie is to be provided for more than a small number of target devices on the same model number, a system such as a system shown in Figure 9 can be used to advantage. In Figure 9, first to third servers 30, 31, 32 are shown. The first server 30 is designated as a management node, and includes connections to each of the second and third servers 31, 32, which constitute child nodes. Each of the servers 30 to 32 includes at least first and second DVD drives 33. In this example, DVDs need to be inserted into and extracted from the DVD drives 33 manually, although it is possible to use robots or other automation for this task mstead if required. o - 29
Each of the servers 30 to 32 extracts and converts films from DVDs in the DVD drives 33 in parallel. Movies can be extracted from DVDs in a single drive sequentially, i.e. one after the other.
Assuming sufficient speed for the DVD drive 33 and sufficient processing speed for the servers 30 to 32, the DVD extraction and conversion process can be completed in respect of one DVD in tens of minutes. Thus, where a serial number of a target device or similar is to be included in the resulting movie to enable the movie to be reproduced only on that target device, the conversion process needs to be effected once for each specific target device. It will be appreciated that the extraction process needs to be performed only once, since the extracted movie is stored in the extracted movie data buffer.
Where a movie is to be used for a number of target devices of the same class, then the extraction and conversion processes need to be performed only once. Once the movie is stored in mobile format in the mobile format movie data area 20, it can be copied to an MMC or other removable media device as many times is required.
This can be carried out in a suitable manner, for example using internal or external MMC drives.
The setup for the management system installation specific architecture is in flat files, for example, in a /etc/ subdirectory. The setup for movie production is in database tables using a custom Postgres or Oracle database, although any other suitable database can be used Instead, depending on the scale and performance requirements. The management system running on the child node servers 31, 32 communicate with the management system on the first server 30. The management node 30 is responsible for task allocation. One instance of the management system is required for each conversion session. - 30
Claims 1. A portable data storage medium comprising: non-volatile memory; s an interface including terminals for connecting to an external device; a controller operable to read data out from the non-volatile memory and feed it to the interface; and a security device operable to determine whether an external device is entitled to access content data from the non-volatile memory, and to allow or disallow access to the content data accordingly.
2. A portable data storage medium as claimed in claim 1, in which a data terminal of the controller is connected to the interface via the security device.
3. A portable data storage medium as claimed m claim 1, in which the security device is integral with the controller.
4. A portable data storage medium as claimed in claim 3, in which the controller and security device is operable to decrypt content data read out from the non-volatile memory.
5. A portable data storage medium as claimed in any preceding claim, in which the controller is operable also to write data from the interface to the non-volatile memory.
6. A portable data storage medium as claimed in any preceding claim, in which the non-volatile memory has stored therein data comprising computerreadable instructions constituting a media player.
7. A portable data storage medium as claimed in claim 6, in which the media player Is operable when runumg on an external device to detect configuration parameters of the external device, and to control functionality of the media player dependent on the detected configuration parameters. o - 31
8. A portable data storage medium as claimed in any of claims 1 to 5, in which the non-volatile memory has stored therein data comprising computerreadable instructions constituting two or more media players and a loader program, s the loader program being operable when running on an external device to determine configuration parameters of the device, to select one of the media players on the basis of the detected configuration parameters, and to control the mobile device to run the selected media player.
9. A portable data storage medium as claimed in any of claims 6 to 8, in which the media player is operable when running on an external device to interact with the security device in such a way that the security device can determine whether the media player is entitled to access content data from the non-volatile memory.
10. A portable data storage medium as claimed in any of claims 6 to 9, in which the media player is operable when running on an external device to determine display characteristics of the device, and to select an orientation of video content reproduction dependent on the detected display characteristics.
11. A portable data storage medium as claimed in claim 10, further comprising controlling functionality of one or more keys of the external device dependent on the selected orientation.
12. A portable data storage medium as claimed in any of claims 6 to 10, in which the media player is operable to validate the data storage medium by performing a calculation on a validation code received from the data storage medium.
13. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to determine whether the external device is entitled to access content data by receiving codes and determining that a valid code is received at least once within every predetermined time interval or unit of data.
A portable data storage medium as claimed in any preceding claim, in which (} - 32 the security device is operable to maintain rights management data in the non- volatile memory which is representative of the playback allowability status of the content data.
s 15. A portable data storage medium as claimed in claim 14, in which the security device is operable to update the rights management data with data identifying a number of occasions on which the content data is played out.
16. A portable data storage medium as claimed in claim 14 or claim 15, in which 0 the security device is operable to store rights management data representative of a time and/or date at which the content data is first played out.
17. A portable data storage medium as claimed in any preceding claim, in which the security device IS responsive to a predetermined data sequence or a predetermined command to enter an active mode.
18. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to allow or disallow access to content data which is stored in a designated protected area of the nonvolatile memory dependent on the determination as to whether the external device is entitled, and to refrain from disallowing access to content data in unprotected areas of the non-volatile memory.
19. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to lock the content data on a determination that the validity period of the content data has expired or that a predetermined limit of number of occasions of content data play out is reached, thereby to prevent access to the content data.
20. A portable data storage medium as claimed in claim 1G and claim 19, in which the security device is operable on a determination that the validity period of the content data has expired to update the rights management data with data indicative of content data validity period explry. l\: - 33
21. A portable data storage medium as claimed in claim 19 or claim 20, in which the security device is responsive to receiving an unlocking code to unlock the content for further playback s 22. A portable data storage medium as claimed in claim 20 and claim 21, in which the security device is responsive to receiving the unlocking code to update the rights management data appropriately.
23. A portable data storage medium as claimed in any preceding claim, in which the security device is responsive to a request for access to content data which is locked to access a remote server through a communication channel of the external device, and to unlock the content data for further playback on receipt of an unlocking code.
24. Apparatus for providing audio-visual content for reproduction on a mobile device, the apparatus comprising: an audio-visual content supply arrangement; a source of target device configuration information; a codec; and a conversion module, wherein the conversion module is arranged to use the coder to convert audio-visual content provided by the audio- visual content source according to configuration information provided by the target device configuration information source, thereby to supply mobile device consumable content data. 2s
25. Apparatus according to claim 24, arranged to use a) configuration information comprising a maximum volume Size for a target storage device, and b) a detected content duration parameter to determine an appropriate bit rate for one or both of audio and video components, and to control the conversion module to provide converted data having the determined bit rate for the audio and/or video components. - - 34
26. Apparatus according to claim 24 or claim 25, arranged to determine from the target device configuration information a required aspect ratio for displayed video, and to control the conversion module to modify the source audio-visual content so as to provide content having the required aspect ratio. s
27. Apparatus according to any of claims 24 to 26, further comprising a digital rights management module arranged to operate with the conversion module to provide the content with data operable to restrict content playback.
28. Apparatus according to any of claims 24 to 27, wherein the audiovisual content supply arrangement includes a media drive operable to receive a storage medium having audio-visual content stored thereon.
29. Apparatus according to any of claims 24 to 28, arranged to provide with the mobile device consumable content data one or more media players suitable for use in consuming the data.
30. A method for providing audio-visual content for reproduction on a mobile device, the method comprising controlling a conversion module to use a codec to convert audio-visual content according to target device configuration information, and to provide the converted audio-visual content at an output.
31. Apparatus for providing audio-visual content for reproduction on a mobile device, the apparatus comprising: an audo-visual content supply arrangement; the apparatus being arranged to write into an area of memory data constituting: audio-visual content; two or more media players; and a loader program, the loader program bemg arranged such that when loaded into a mobile device it causes configuration parameters of the mobile device to be determined, causes one - 35 of the media players to be selected on the basis of the detected configuration parameters, and controls the mobile device to use the selected media player.
32. Data stored on a portable medium or existing at least transiently in memory, the data constituting: audio-visual content; two or more media players; and a loader program, the loader program being arranged such that when loaded into a mobile device it causes configuration parameters of the mobile device to be determined, causes one of the media players to be selected on the basis of the detected configuration parameters, and controls the mobile device to use the selected media player.
33. A method of providing aud1o-visual content for reproduction on a mobile device, the method comprising: writing into an area of memory data constituting: audio-visual content; two or more media players; and a loader program, the loader program being arranged to cause a mobile device to determine configuration parameters of the mobile device, to select one of the media players on the basis of the detected configuration parameters, and to control the mobile device to use the selected media player.
34. A method of operating a mobile device, the method comprising: storing aud1o-visual content data and two or more media players in internal and/or external memory; determining configuration parameters of the mobile device, selecting one of the media players on the basis of the detected configuration parameters, and using the selected mcda player to consume the audio-visual content data.

Claims (20)

  1. Amendments to the claims have been filed as follows 3b Claims 1. A
    portable data storage medium comprising: non-volatile memory having stored therem data comprising computer s readable instructions constituting a media player an interface including terminals for connecting to an external device; a controller operable to read data out from the non-volat1le memory and feed it to the interface; and a security device, in which the media player is operable when running on an external device to interact with the security device in such a way that the security device can determine whether the media player IS entitled to access content data from the non-volatile memory, the security device allowing or disallowing access to the content data accordingly.
  2. 2. A portable data storage medium as claimed in claim 1, in which a data terminal of the controller is connected to the interface via the security device.
  3. 3. A portable data storage medium as claimed in claim 1, in which the security device is integral with the controller.
  4. 4. A portable data storage medium as claimed in claim 3, in which the controller and security device is operable to decrypt content data read out from the non-volatile memory.
  5. 5. A portable data storage medium as claimed in any preceding claim, in which the controller is operable also to write data from the interface to the non-volatile memory.
  6. 6. A portable data storage medium as claimed in any preceding claim, in which the media player is operable when running on an external device to detect configuration parameters of the external device, and to control functionality of the media player dependent on the detected configuration parameters.
    :. .e . ..:
  7. 7. A portable data storage medium as claimed in any preceding claim, in which the media player is operable when running on an external device to determine display characteristics of the device, and to select an orientation of video content s reproduction dependent on the detected display characteristics.
  8. 8. A portable data storage medium as claimed in claim 7, further comprising controlling functionality of one or more keys of the external device dependent on the selected orientation.
  9. 9. A portable data storage medium as claimed in any preceding claim, in which the media player is operable to validate the data storage medium by performing a calculation on a validation code received from the data storage medium.
  10. 10. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to determine whether the external deuce is entitled to access content data by receiving codes and determining that a valid code is received at least once within every predetermined time interval or unit of data.
  11. 11. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to maintain rights management data in the non- volatile memory which is representative of the playback allowability status of the content data.
  12. 12. A portable data storage medium as claimed in claim 11, in which the security device is operable to update the rights management data with data identifying a number of occasions on which the content data is played out.
  13. 13. A portable data storage medium as claimed in claim 11 or claim 12, in which the security device is operable to store rights management data representative of a time and/or date at which the content data is first played out.
  14. 14. A portable data storage medium as claimed in any preceding claim, in which . ... . . . : . . A: .:e A: . ë: :. At
    the security device is responsive to a predetermined data sequence or a predetermined command to enter an active mode.
  15. 15. A portable data storage medium as claimed in any preceding claim, in which s the security device is operable to allow or disallow access to content data which is stored in a designated protected area of the nonvolatile memory dependent on the determination as to whether the external device is entitled, and to refrain from disallowing access to content data in unprotected areas of the non-volatile memory.
  16. 16. A portable data storage medium as claimed in any preceding claim, in which the security device is operable to lock the content data on a determination that the validity period of the content data has expired or that a predetermined limit of number of occasions of content data play out is reached, thereby to prevent access to the content data.
  17. 17. A portable data storage medium as claimed in claim 13 and claim 16, in which the security device is operable on a determination that the validity period of the content data has expired to update the rights management data with data indicative of content data validity period expiry.
  18. 18. A portable data storage medium as claimed in claim 16 or claim 17, in which the security device is responsive to receiving an unlocking code to unlock the content for further playback
  19. 19. A portable data storage medium as claimed in claim 17 and claim 18, in which the security device is responsive to receiving the unlocking code to update the rights management data appropriately.
  20. 20. A portable data storage medium as claimed in any preceding claim, in which the security device is responsive to a request for access to content data which is locked to access a remote server through a communication channel of the external device, and to unlock the content data for further playback on receipt of an unlocking code.
    i .. .. .. ë
    I
    21 A portable data storage medium as claimed in any preceding claim, in which the non-volatile memory has stored therein data comprising computerreadable instructions constituting two or more media players and a loader program, s the loader program being operable when running on an external device to determine configuration parameters of the device, to select one of the media players on the basis of the detected configuration parameters, and to control the mobile device to run the selected media player.
    : . . ... -: . . : :--e..e: :.
GB0423761A 2004-06-14 2004-10-26 Storing content Expired - Fee Related GB2410817B (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
BRPI0405684 BRPI0405684A (en) 2004-10-26 2004-12-16 portable data storage medium, apparatus and method for providing audio-visual content for playback on a mobile device, data stored on a portable medium or at least transiently stored in a memory and method for operating a mobile device
RU2007101296/09A RU2007101296A (en) 2004-06-14 2005-06-14 MULTIMEDIA PLAYER
US11/629,556 US20070288715A1 (en) 2004-06-14 2005-06-14 Media Player
PCT/IB2005/051965 WO2005125214A2 (en) 2004-06-14 2005-06-14 Media player
EP05746956A EP1759531A2 (en) 2004-06-14 2005-06-14 Media player

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0413231A GB2410146B (en) 2004-06-14 2004-06-14 Providing audio-visual content

Publications (3)

Publication Number Publication Date
GB0423761D0 GB0423761D0 (en) 2004-12-01
GB2410817A true GB2410817A (en) 2005-08-10
GB2410817B GB2410817B (en) 2006-01-11

Family

ID=32732454

Family Applications (3)

Application Number Title Priority Date Filing Date
GB0413231A Expired - Fee Related GB2410146B (en) 2004-06-14 2004-06-14 Providing audio-visual content
GB0602328A Expired - Fee Related GB2421394B (en) 2004-06-14 2004-06-14 Providing audio-visual content
GB0423761A Expired - Fee Related GB2410817B (en) 2004-06-14 2004-10-26 Storing content

Family Applications Before (2)

Application Number Title Priority Date Filing Date
GB0413231A Expired - Fee Related GB2410146B (en) 2004-06-14 2004-06-14 Providing audio-visual content
GB0602328A Expired - Fee Related GB2421394B (en) 2004-06-14 2004-06-14 Providing audio-visual content

Country Status (3)

Country Link
CN (1) CN101073263A (en)
GB (3) GB2410146B (en)
RU (1) RU2007101296A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8904289B2 (en) * 2011-04-21 2014-12-02 Touchstream Technologies, Inc. Play control of content on a display device
US10552585B2 (en) * 2016-12-14 2020-02-04 Microsoft Technology Licensing, Llc Encoding optimization for obfuscated media
WO2018176734A1 (en) * 2017-03-27 2018-10-04 华为技术有限公司 Data processing method and terminal

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995016238A1 (en) * 1993-12-06 1995-06-15 Telequip Corporation Secure computer memory card
EP1050887A1 (en) * 1999-04-27 2000-11-08 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card and data reading apparatus
EP1050821A2 (en) * 1999-04-07 2000-11-08 Sony Corporation Memory units, data processing units, and methods therefor

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0008501D0 (en) * 2000-04-07 2000-05-24 Hunt Simon J Mixed video streaming and push technology distribution system for mobile users
US7190976B2 (en) * 2000-10-02 2007-03-13 Microsoft Corporation Customizing the display of a mobile computing device
US20020151327A1 (en) * 2000-12-22 2002-10-17 David Levitt Program selector and guide system and method
JP2003087704A (en) * 2001-09-12 2003-03-20 Kenwood Corp On-vehicle optical disk reproduction system, on-vehicle optical disk reproducing device, converter, and information communication terminal
JP2003230117A (en) * 2002-01-31 2003-08-15 Nec Commun Syst Ltd Transmission system, transmission device, transmission scheme and transmission method for dynamic image data
JP2003298744A (en) * 2002-03-29 2003-10-17 Canon Inc Communication controller, gateway, information holder, information delivery system, communication control method, program and storing medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995016238A1 (en) * 1993-12-06 1995-06-15 Telequip Corporation Secure computer memory card
EP1050821A2 (en) * 1999-04-07 2000-11-08 Sony Corporation Memory units, data processing units, and methods therefor
EP1050887A1 (en) * 1999-04-27 2000-11-08 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card and data reading apparatus

Also Published As

Publication number Publication date
GB2410146A (en) 2005-07-20
RU2007101296A (en) 2008-07-27
GB2421394B (en) 2007-03-21
CN101073263A (en) 2007-11-14
GB0602328D0 (en) 2006-03-15
GB0413231D0 (en) 2004-07-14
GB2410146B (en) 2007-03-14
GB0423761D0 (en) 2004-12-01
GB2410817B (en) 2006-01-11
GB2421394A (en) 2006-06-21

Similar Documents

Publication Publication Date Title
US20060195909A1 (en) Media player operable to decode content data
US20070288715A1 (en) Media Player
US7913315B2 (en) Recording apparatus that records information for protecting intangible property right, recording method thereof, record medium thereof, and program thereof
US8265274B2 (en) Data processing device, data processing method, data processing program, recording medium containing the data processing program and integrated circuit
US20080199006A1 (en) Method and Apparatus for Accessing Proteceted Data
EP1977323B1 (en) Apparatus for and a method of downloading media content
JP2006511148A (en) Method and apparatus for processing hierarchical media data
JP2009506475A (en) Integrated multimedia file format structure and multimedia service system and method based on the integrated multimedia file format structure
WO2005008385A2 (en) Reprogrammable security for controlling piracy and enabling interactive content
KR20070100755A (en) Method for preparing dvd-video formatted data, method for reconstructing dvd-video data and dvd-video data structure
US9672365B2 (en) Systems and methods for signaling content rights through release windows life cycle
US8422861B2 (en) Content management device
US20090245520A1 (en) Digital content protection methods
US20050276572A1 (en) Providing audio-visual content
US20020141737A1 (en) Audio data recording medium and related apparatuses
GB2410817A (en) Access control to non-volatile memory of a portable storage medium
JP2006217434A (en) Recording device, reproducing device, recording method, reproducing method, and recording and reproducing device
GB2423662A (en) Media player arranged to decode video content blocks having digital fingerprints
US20070172055A1 (en) Apparatus and method for distorting digital contents and recovering the distorted contents
JP2011008525A (en) Information processing apparatus and video processing method
GB2427785A (en) Providing audio-visual content on a mobile device with digital rights management
GB2427976A (en) Providing audio-visual content to a mobile device where the conversion module can determine the bit rate
US20060092048A1 (en) Semiconductor device
Park et al. DRM for streamed MPEG-4 media
KR20050058230A (en) Apparatus and method for distorting digital contents and recovering the distorted contents

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20090226 AND 20090304

732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20090423 AND 20090429

732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20110113 AND 20110119

PCNP Patent ceased through non-payment of renewal fee

Effective date: 20131026