DESCRIPTION
DIGITAL MEDIA FILE CONVERSION
Technical Field
In one aspect, this invention relates to a method for processing electronic information files. In another aspect, the invention relates to a device for processing electronic information files.
Background Art
While the internet has facilitated the chsse ination of information in electronic form, the unauthorized copying of the electronic files carrying the information is a major problem. Techniques for restricting unauthorized copying would be very desirable.
From a business perspective, the deliverables for the electronic transactions vary in format over a wide range and are customer specific. A method for converting electronic files into a customer-specified format would be very desirable.
From a legal perspective, the capability of differentiating authorized copies of electromc files from unauthorized copies would be very desirable. Techniques for providing such capability would be very desirable.
From a customer and user standpoint, system responsiveness to requested transactions is extremely desirable. A high speed system for completing the steps required to complete a transaction in which information files are transferred in exchange for a fee would be very desirable. In particular, in situations where the requested transaction is very complex, requiring several operations on a file, a system that can perform these operations at high speed in a parallel fashion that would allow the requested transaction to happen at the time when the user makes the request without slowing down the transaction would be very desirable.
Particularly in the music industry, a new order is corning. Music companies will need to be flexible and customer-responsive in order to survive. New ways for consumers to access music quickly and flexibly via the internet and yet provide profits to the artists and the music companies are needed. The video market will soon undergo a similar transformation.
Currently, music file management is a large problem for music companies and distributors. For example, if they offer a song in several formats and sample rates
(say, eight for example) they need to convert their entire music library (typically 1000 to 1,000,000 songs) into each of those formats. They require extensive disk storage for all these formats and sometimes store less commonly purchased songs on less expensive tape storage, which causes an undesirable time delay for purchasers. Organizing all of these copies of media files is also a significant administrative task.
And when a new format is adopted, the entire library has to be converted into this new format as well. A system which allows the media files to be stored once in a high quality format, and when an order is placed, be transformed into the format required by the ordering user would be very desirable. A system which easily accommodates the adoption of a new music format, by a simple software upgrade, would be further desirable.
The object of the invention is to provide systems, methods and devices for fulfilling the above described needs.
Disclosure of Invention
In one embodiment of the invention, there is provided a computer-implemented process for receiving and carrying out a request for a digital media file transformation f om a network communications capable machine or system. The invention includes
a transcoding appliance. In the transcoding appliance there is received a request for a digital media file transformation in a predetermined format that includes (i) source information describing how to access the digital media file, (ii) transformation information identifying which transformation to perform on the digital media file, including any specification data required to perform the transformation, and (iii) destination information identifying where to transmit the resulting transformed digital media file. The digital media file is accessed based on the source information, processed based on the transformation information, and the resulting transformed digital media file is transmitted based on the destination information.
The transcoding appliance is preferably capable of providing several digital media transformation services on several digital media files to several requesting machines or systems on the same communications network, independent of the operating systems and hardware characteristics of those machines or systems. More preferably, the transcoding appliance is capable of simultaneously receiving or obtaining digital media files, executing several digital media file transformations, including digital media format conversion, fingerprint generation, fingerprint encryption, fingerprint watermarking, and digital rights management encryption and encoding, and transmitting transformed digital media files. In a preferred embodiment of the invention, the digital media file is accessed based on the source information as a first data stream over a first period of time, the first data stream is processed based on the transformation information to form a second data stream over a second period of time, and the second data stream is transmitted based on the destination information as a third data stream over a third period of time. At least a portion of the step of processing is performed simultaneously with at least a portion of at least one of steps of accessing and transmitting, to hasten turnaround.
Another embodiment of the invention provides a system and a process for acquiring digital media files from a communications network and detecting watermarked fingerprints within those files.
The system enables a process for detecting an unauthorized transfer of a digital media file that has taken place over a communications network. The process is carried out by providing a digital media file containing a watermarked digital fingerprint to an authorized end user computer over the communications network pursuant to an end user agreement restricting the rights of the authorized end user to further transfer of the digital media file to other end users. A sentinel computer is configured to execute a selected strategy to acquire digital media files from end user computers on a coπimunications network, communications capability is established on the network, and the selected strategy is executed. Digital media files are acquired from the end user computers over the network and the watermarked digital fingerprint is detected within one or more of the acquired digital media files.
The detection is preferably carried out in a transcoding appliance which is preferably capable of simultaneously receiving or obtaining digital media files, applying the necessary transformations to result in the format suitable for detecting watermarks, detecting watermarked digital fingerprints, and transmitting the resulting digital media file to a storage location. In using this capability, the transcoding appliance receives a search request to search a digital media file for a digital media file watermark. The search request is in a predetermined format that includes source information describing how to access the digital media file, transformation information identifying which digital media file watermark searches to perform on the digital media file, including any specification data required to perform the digital media file watermark searches and produce decrypted information from the watermark, and destination information identifying where to transmit the accessed digital media file and the decrypted information from the watermark. The digital media file is retrieved based
on the source information as a first data stream over a first period of time. It is transmitted based on the destination information as a second data stream over a second period of time, processed based on the transformation information to form a third data stream over a third period of time, and the decrypted information from the watermark is fransrnitted based on the destination information as a fourth data stream over a fourth period of time.
Brief Description of Drawings
Figure 1 is a box diagram illustrating correlation between the software and hardware elements of the invention.
Figure 2 is a flow chart illustrating data flows in accordance with an embodiment of the invention.
Figure 3 is a flow chart illustrating data flows in accordance with an embodiment of the invention.
Figure 4 is a schematic illustrating a deployment of an embodiment of the invention.
Figure 5 is a schematic illustrating a deployment of an embodiment of the invention.
Figure 6 is a schematic illustrating a deployment of an embodiment of the invention.
Figure 7 is a schematic illustrating a data transformation process according to an embodiment of the invention.
Figure 8 is a schematic illustrating a deployment of an embodiment of the invention.
Figure 9 is a schematic illustrating a deployment of an embodiment of the invention
Figure 10 is a flow chart illustrating data flows in accordance with an embodiment of the invention.
Figure 11 is a flow chart illustrating data flows in accordance with an embodiment of the invention.
Best Mode for Carrying out the Invention The invention generally relates to a transcoding appliance which is capable of providing several digital media transformation services on several digital media files to several requesting machines or systems on the same communications network, independent of the operating systems and hardware characteristics of those machines or systems.
The potential types of networks to which the invention may be applied include the Internet, where the appliance could be employed by end users as a service, transcoding their files into their preferred format, or where the appliance could be used to find illegally published media on the www; corporate wide area networks (WANs) and local area networks (LANs), two good examples being a media retailer, and a university or college that is willing to monitor for illegal activity on their network; wireless device networks where the appliance can be used to detect illegal transfers between cellphones and PDAs, or where it could be used as a transcoding device; fUesharing networks to detect illegal sharing and less likely, but potentially to watermark and D M encode files requested by users.
Filesharing networks come in two main varieties right now. One (the more common) allows users to share their locally stored files with others. The other more advanced variety employs the user's computers to store parts of shared files. In this newer
variety, when the file is requested from the network by a user, the user's computer receives and assembles the parts from a variety of computers in the network—not just one. This is to enable larger files, like movies, being transferred at higher speed. The invention can be applied to both types of filesharing networks.
Preferably, this aspect of the invention is carried out as a computer-implemented process for receiving and carrying out a request for a digital media file transformation from a network communications capable machine or system. See Figure 1. The invention employs a transcoding appliance 101.
Figure 2 illustrates one process embodiment of the invention as carried out in a transcoding appliance 201. In the transcoding appliance there is received a request (as part of the data stream) 204 for a digital media file transformation in a predetermined format that includes (i) source information describing how to access the digital media file, (ii) transformation information identifying which transformation to perform on the digital media file, including any specification data required to perform the transformation, and (hi) destination information identifying where to transmit the resulting transformed digital media file. The digital media file is accessed based on the source information, (data flow 204, processor 206) processed based on the transformation information (processor 208), and the resulting transformed digital media file is transmitted (data flow 264, processor 212) based on the destination information.
The specific transformations are not the basis of this invention. Many methods already exist for the encoding of media in formats that provide many different benefits.
For example, formats such as MP3, Real Audio, and Ogg Vorbis provide a compression of audio media for transmission over the internet, with varying degrees of loss of detail. Some loss of detail is acceptable to users of digital media, if it results in compression of the data that dramatically reduces the time and bandwidth used during the transfer of the media file over a communications network.
The accessing is typically conducted by retrieving the digital media file based on the source information or by receiving the digital media file based on the source information. Figure 2 illustrates generally a passive, receiving system. Figure 3 illustrates generally an active system, wherein the digital media file is retrieved from a specified source, such as media storage system 314. The processing steps conducted by processor 208 in the Figure 2 embodiment generally find correspondence in processor 308 in the Figure 3 embodiment.
Figure 4 illustrates digital file receipt or retrieval from a split network. The end user selects a media file to be downloaded from a P2P split file network. The media file may be stored on several workstations 416 in the P2P network. The retailer includes one of their own servers 402 in the network and stores a small part of every media file shared on this server. Upon an end user's download of a media file from the network, the retailer's server passes the part of the media file and a request to the appliance 401 to transform it to the end user's selected format, watermark a digital fingerprint into the file, and transmit it to the end user's workstation. The appliance executes the request. The end user's workstation 418 assembles the final digital media file from several peers in the P2P network, and the final file now contains a unique fingerprint.
Figure 5 illustrates another deployment scenario. The end user identifies a media file to be downloaded. The end user's workstation 520 connects to the Web Server 522 and requests that the appliance 501 acquire the media file and transform it to the end user's required format. The web server queues the request until the appliance has available cycles, and then forwards the request to the appliance. The appliance acquires the media file from the media provider server 585, transforms it to the appropriate format, and transmits it directly to the end user's workstation.
Figure 6 illustrates another deployment scenario. The end user selects a media file to be downloaded from an e-commerce site on the www. Upon selection of the media file and the download format required, the web server 624 queues the request on the queue server 626. The queue server waits until the appliance 601 has available cycles, and then forwards the request to the appliance. The queued request indicates that the appliance acquire the media file from the media storage system 614, transform it to the end user's selected format, and transmit it to the end user's workstation 620. The appliance executes the request.
In one preferred embodiment, the transformation information includes an instruction to use a transcoding transformation to transcode the accessed digital media file into a digital format specified in the request. The process further comprises transcoding the accessed digital media file into the digital format specified in the request to produce a reformatted digital media file (processor 208, 308).
In another preferred embodiment, the transformation information includes fingerprint specification data, an instruction to use a digital fingerprint formatting transformation based on the fingerprint specification data, and an instruction to use a watermarking fransformationto imbed the resulting formatted fmgerprint into the digital media file. The process further comprises formatting a digital fingerprint for embedding in the transformed digital media file and embedding the formatted digital fingerprint into the transformed digital media file to form a transformed, watermarked digital media file (processor 208, 308).
In another preferred embodiment, the transformation information includes digital rights management (DRM) specification data, and an instruction to use a digital rights management (DRM) transcoding transformation to transcode the accessed digital media file into a DRM enabled format using the DRM specification data. The process
further comprises transcoding the accessed digital media file to form a transformed, DRM enabled, digital media file (processor 2Q8S 308).
There are a large number of digital rights management (DRM) formats, such as Microsoft's Windows Media DRM, Real Networks' Helix DRM, and Apple's AAC/Fairtunes DRM, designed to ensure that media files may only be used by users that purchase a license. These formats often involve encryption of the data, so that the media file is completely useless unless decrypted. The invention is not limited to a particular type of DRM format.
In another preferred embodiment, the transformation information includes fingerprint specification data, an instruction to use a digital fingerprint formatting transformation based on the fingerprint specification data, and an instruction to use a watermarking transformation to imbed the resulting formatted fingerprint into the reformatted digital media file. The process further comprises formatting a digital fingerprint for embedding in the reformatted digital media file, and embedding the formatted digital fingerprint into the reformatted digital media file to form a watermarked, reformatted digital media file (processor 208, 308).
The watermarking of digital fingerprints into media files has been developed by companies such as Verance and Digimark Corporation. A digital fingerprint typically contains identifying hifor ation about the contents of the media file, the artist, the distributor, or the specific sale of the rights to use the digital media. The fingerprint is likely to be encrypted and then digitally watermarked onto the file. Digital watermarking is a process by which the fingerprint is added to the file without altering the file enough that the fingerprint is visible or audible to the end user. The invention is not limited to a particular type of digital watermarking.
In another preferred embodiment, the transformation information includes digital rights management (DRM) specification data and an instruction to use a digital rights management (DRM) transcoding transformation to transcode the reformatted digital media file into a DRM enabled format using the DRM specification data. The process further comprises transcoding the reformatted digital media file to form a transformed,
DRM-enabled digital media file (processor 208, 308).
In another preferred embodiment, the transformation information includes digital rights management (DRM) specification data and an instruction to use a digital rights management (DRM) transcoding transformation to transcode the watermarked digital media file into a DRM enabled format using the DRM specification data. The process further comprises transcoding the watermarked digital media file into a DRM enabled digital media file to form a watermarked, DRM-enabled digital media file (processor 208, 308).
In another preferred embodiment, the transformation information includes digital rights management (DRM) specification data and an instruction to use a digital rights management (DRM) transcoding transformation to transcode the watermarked, reformatted digital media file into a DRM enabled format using the DRM specification data. The process further comprises transcoding the watermarked, reformatted digital media file into a DRM enabled digital media file to form a watermarked, reformatted, DRM-enabled digital media file (processor 208, 308).
It is within the scope of this invention to use and carry out other transformations. For example, the transformation information can be selected from the group consisting of audio enhancement for the removal of formatting artifacts, audio volume level standardization, audio noise reduction, video noise reduction, video color adjustment, video image stabilization, video brightness and contrast adjustment, and video enhancement for the removal of artifacts.
It is further within the scope of the invention to transform only a portion of a digital media file. This is especially applicable on file-sharing networks where large files, for example, movies, are split up into portions and distributed among the members' computer systems. This is done so that downloads from the network access different nodes on the network, spreading the fransmission over different communication links, maximizing the potential speed of the transmission of the downloading user's system, and minimizing the cost of bandwidth consumption for the organization that operates the file-sharing network. In such a case, the apphance could be employed to watermark one or more small portions of the media files at request time, allowing all of the advantage of this network configuration, but also providing a tracking mechanism for the downloaded file to the owner of the digital rights. This aspect of the invention can be carried out by including in the transformation information fingerprint specification data, an instruction to use a digital fingerprint formatting transformation based on the fingerprint specification data, and an instruction to use a watermarking transformation to imbed the resulting formatted fmgerprint into the at least one of the portions of reformatted digital media file sent to the transcoding appliance. The process would include formatting a digital fingerprint for embedding in at least one portion of the reformatted digital media file, embedding the formatted digital fingerprint into the at least one portion of the reformatted digital media file to form at least one watermarked, reformatted digital media file, and trarismitting the at least one transformed portion of the reformatted digital media file based on the destination information.
In another embodiment of the invention, the transcoding apphance is capable of simultaneously receiving or obtaining digital media files, executing several digital media file transformations, including digital media format conversion, fingerprint generation, fingerprint encryption, fingerprint watermarking, and digital rights management encryption and encoding, and trammitting transformed digital media
files. This embodiment of the invention could also be used for the other types of transformations mentioned above.
As in the embodiment of the invention described above, this aspect of the invention is preferably carried out as a computer-implemented process for receiving and carrying out a request for a digital media file transformation from a network communications capable machine or system. The invention includes a transcoding appliance. In the transcoding appliance there is received a request for a digital media file transformation in a predetermined format that includes (i) source information describing how to access the digital media file, (ii) transformation information identifying which transformation to perform on the digital media file, including any specification data required to perform the transformation, and (iii) destination information identifying where to transmit the resulting transformed digital media file. In this embodiment of the invention, the digital media file is accessed based on the source information as a first data stream over a first period of time, the first data stream is processed based on the transformation information to form a second data stream over a second period of time, and the second data stream is transmitted based on the destination information as a third data stream over a third period of time. At least a portion of the step of processing is performed simultaneously with at least a portion of at least one of steps of accessing and fransmitting. The process is generally conducted as shown in Figure 2 and 3.
By using this process, it is possible to receive, transform and send the digital media file at the same time, or at least over during substantially the same period of time. This way the end user doesn't even know that a transcoding apphance is involved.
They can request a file from the network and the server that they request it from pipes the file through the transcoding appliance without substantially slowing the download of the file.
Preferably, the transcoding apphance comprises a motherboard 126, and the process further comprising receiving the request at the motherboard. The first data stream is also preferably retrieved at the motherboard. The motherboard preferably can complete the transformations required by the invention. However, for repetitive complex tasks, such as the subtasks of a transformation, the motherboard is preferably associated with massively parallel processors.
The step of processing the first data stream preferably comprises at least one of (a) transcoding the retrieved digital media file into a digital format specified in the request, (b) fingerprinting and watermarking the digital media file to produce a digital fingerprint based on the fingerprint specification data specified in the request and to imbed the resulting formatted fingerprint into the digital media file; and (c) DRM transcoding the retrieved digital media file into a DRM enabled format using DRM specification data specified in the request, and more preferably comprises at least two of the steps of transcoding, fingerprinting and watermarking, and DRM transcoding.
Even more preferably, at least a portion of the at least two steps is performed simultaneously on different portions of the data stream. This can be accomplished by forming a data stream output from a first of the at least two steps into a data stream input to a second of the at least two steps.
Figure 7 gives an example of a series of transformations performed by the apphance. In Figure 7, the third transformation is complex and has been parallelized for performance advantage. The parsing of the request must generally be performed before the transformations may be carried out.
In a most highly preferred embodiment, the transcoding apphance further comprises a plurality of parallel processor means, each operably associated with the motherboard, for separately and simultaneously performing portions of the steps required for processing the first data stream and forming the second data stream, in
a manner dependent on the transformation information specified in the request. Preferably, the parallel processor means are used for repetitive complex tasks, typically within one of the transformations. For example, to encode a digital audio file from WAV to MP3 format, fast Fourier transforms are performed on sections of the audio waveform. The parallel processor means can be selected from the group consisting of (a) a transcoder processor partition to transcode the retrieved digital media file into a digital format specified in the request, (b) a fingerprinting and watermarking processor partition to produce a digital fingerprint based on the fingerprint specification data specified in the request and to imbed the resulting formatted fingerprint into the digital media file; and (c) a digital rights management
(DRM) processor partition to transcode the retrieved digital media file into a DRM enabled format using the DRM specification data specified in the request. Blades 128 (see Figure 1) are preferably employed as the processor means. In the embodiments of the invention illustrated in Figures 2 and 3, the function of the blades corresponds to processors 258, 358.
Where at least one of the steps of transcoding, fingeφrinting and watermarking, and DRM transcoding is comprised of repetitive subtasks, the process preferably further comprises simultaneously perforrning the subtasks on different portions of the data stream with a parallel processing technique.
The franscoding appliance preferably fhrther includes a volatile memory means, as this enables storing at least a portion of the data stream in the volatile memory means between the processing steps.
In a further embodiment of the invention, there is provided a system for acquiring digital media files from a communications network and detecting watermarked fingerprints within those files.
Figure 8 illustrates one technique for carrying this out. In Figure 8, the sentinel systems 828 identify and acquire media files that are to be tested. The apphance 801 receives the media files directly from the sentinel systems and processes them to detect digital fingeφrints. If detected, the decrypted fingeφrint and the original media file are stored in the evidence storage system. This process is further illustrated in Figure
10.
Figure 9 illustrates another technique for carrying out this embodiment. In Figure 9, the sentinel systems 928 identify media files that are to be tested. The apphance 901 acquires the media files directly from the servers 932 or networks 934 on which they reside, and processes them to detect digital fingeφrints. If detected, the decrypted fingeφrint and the original media file are stored on the evidence storage system 930. This process is further illustrated in Figure 11.
The system enables a process for detecting an unauthorized transfer of a digital media file over a communications network. The process is carried out by providing a digital media file containing a watermarked digital fingeφrint to an authorized end user computer over the communications network pursuant to an end user agreement restricting the rights of the authorized end user to further transfer of the digital media file to other end users. A sentinel computer is configured to execute a selected strategy to acquire digital media files from end user computers on a communications network, cornmunications capability is established on the network, and the selected strategy is executed. Digital media files are acquired from the end user computers over the network and the watermarked digital fingeφrint is detected within one of the acquired digital media files. The attributes of the acquired digital media files are preferably logged and the files are preferably transmitted to a machine configured to store them.
In a one embodiment, communications are intervalhcly reestablished on the network and identifying information for the sentinel computer is disguised to prevent other users of the network from identifying the sentinel computer as a monitoring mechanism.
In the embodiment of the invention shown in Figure 10, the sentinel computer 1028 is operated in conjunction with a transcoding apphance 1001. One way this can be done is to configure the sentinel computer to transmit instructions and a digital media file to a transcoding appliance configured to detect a watermarked digital fingeφrint in a digital media file, (data flow 1004, processor 1008) Communications are established between the sentinel computer and the transcoding apphance. The sentinel computer transmits the instructions and a digital media file acquired from the network the transcoding apphance, and the transcoding apphance attempts to detect a watermarked digital fingeφrint in the file.
Another way the sentinel computer can be operated in conjunction with the transcoding apphance is by configuring the sentinel computer 1128 to transmit instructions 1104 to the transcoding apphance. See Figure 11. Communications are established between the sentinel computer and the transcoding apphance and the transcoding apphance and the network. The transcoding apphance then receives instructions from the sentinel computer to acquire a digital media file from the network (media storage 1114) and executes the instructions to receive the file. The transcoding appliance then attempts to detect a watermarked digital fingeφrint in the file (processor 1108). As should be apparent, the processing steps conducted by processor 1008 in the Figure 10 embodiment generally find correspondence in processor 1108 in the Figure 11 embodiment
The transcoding appliance preferably identifies the format of the digital media file, and transmits the digital media file, in the exact format in which it was obtained, to a
machine configured to store the acquired digital media files, (evidence storage system 1030, 1130) transcodes the digital media file from a DRM enabling format to an open digital format, if the digital media file was acquired in a DRM enabling format, and detects a watermarked digital fingeφrint, if one exists in the digital media file, based on information contained in the instructions from the sentinel computer.
It is also preferred that the transcoding apphance transforms the digital media file into a different format if it is not in a format suitable for watermark detection and transmits the transformed digital media file to a machine configured to store the acquired digital media file.
In one embodiment of the invention, the sentinel computer establishes communications with the network and searches the network for specific formats of digital media files. It acquires these files, makes a selection from them according to predetermined parameters, and forwards those selected to the transcoding appliance for watermark detection and transmission to a machine configured to store the acquired digital media files. The process may be carried out in accord with Figure 10.
In another embodiment of the invention, the sentinel computer establishes communications with a streaming media broadcasting station, acquires the streamed digital media files, and forwards the acquired streamed digital media files to the transcoding appliance for watermark detection and transmission to the machine configured to store the acquired digital media files. The process may be carried out in accord with Figure 10.
In another embodiment of the invention, the sentinel computer establishes communications with a filesharing network, selects and acquires digital media files from the filesharing network, and forwards the selected files to the transcoding
appliance for watermark detection and fiansmission to the machine configured to store the files. The process may be carried out in accord with Figure 10.
In another embodiment of the invention, the sentinel computer estabhshes communications with a filesharing network and acquires digital media files from the filesharing network which match predetermined parameters. The predetermined parameters can be selected from the group consisting of user parameters, network address parameters, digital media file parameters, and sampling parameters, for example. The acquired digital media files are forwarded to the transcoding apphance for watermark detection and transmission to the machine configured to store the acquired digital media files. Suitable user parameters can be selected from the group consisting of a user name, the number of files shared, and users sharing specified files. Suitable network address parameters can be selected from the group consisting of specific addresses or addresses in a range of values. Suitable sampling parameters can be selected from the group consisting of sample type and sample size. Suitable digital media file parameters can be selected from the group consisting of file name, file name extension, and file size. The sample type can be selected from the group consisting of random, alphabetical order, size order, and user name. The process can be carried out in accord with Figure 10.
In still another embodiment of the invention, the transcoding apphance is capable of simultaneously receiving or obtaining digital media files, applying the necessary transformations to result in the format suitable for detecting watermarks, detecting watermarked digital fingeφrints, and transmitting the resulting digital media file to a storage location. The process can be carried out in accord with Figures 10 or 11.
This embodiment of the invention is preferably carried out as a computer-implemented process for receiving and carrying out a request for a digital media file transformation from a network communications capable machine or system. A transcoding apphance
is (1001, 1101) employed. The transcoding appliance receives a search request (data flows 1002, 1102) to search a digital media file for a digital media file watermark. The search request is in a predetermined format that includes source information describing how to access the digital media file, transformation information identifying which digital media file watermark searches to perform on the digital media file, including any specification data required to perform the digital media file watermark searches and produce decrypted information from the watermark, and destination information identifying where to transmit the accessed digital media file and the decrypted information from the watermark. The digital media file is retrieved based on the source information as a first data stream over a first period of time, (data flows
1004, 1104, 11105) It is fransrnitted based on the destination information as a second data stream over a second period of time, (data streams 1098, 1198, processors 1006, 1106) processed based on the transformation information to form a third data stream over a third period of time, (data streams 1099, 1199, processors 1008, 1108) and the decrypted information from the watermark is transmitted based on the destination information as a fourth data stream over a fourth period of time (data streams 10100, 11100, processors 1012, 1112).
The transcoding apphance preferably includes a motherboard which receives the search request and retrieves the first data stream.
The processing of the first data stream preferably includes at least one of DRM decrypting the retrieved digital media file into its original format prior to being DRM transcoded, transcoding the retrieved digital media file into a digital format compatible with the digital media file watermark searches specified in the transformation information, detecting a watermark containing a digital fingeφrint in the digital media file based on the types of watermark searches specified in the transformation information, and decrypting the digital fingeφrint detected in a watermarked digital media file, based on the specification data required to produce decrypted information
specified in the transformation information. Preferably, the processing step includes at least two of the just described steps of DRM decrypting, digital media file transcoding, watermark detecting, and digital fingeφrint decrypting. More preferably, at least a portion of the at least two steps is performed simultaneously on different portions of the data stream This can be expeditiously accomplished by forming a data stream output from a first of the at least two steps into a data stream input to a second of the at least two steps.
For best results, the transcoding apphance preferably further includes a plurahty of parallel processor means, each operably associated with the motherboard, for processing the first data stream and forming the second data stream, in a manner dependent on the transformation information specified in the request.
The parallel processor means can be selected from the group consisting of a DRM decryption processor partition to decrypt the retrieved digital media file into a DRM disabled format using the DRM specification data specified in the request, a transcoder processor partition to transcode the retrieved digital media file into a digital format specified in the request, a watermark detection processor partition to detect a watermark containing a digital fingeφrint based on the transformation specification data specified in the request, and a fingeφrint decryption processor partition to decrypt the fingeφrint contained in a detected watermark.
Where at least one of the steps of DRM decrypting, digital media file transcoding, watermark detection, and fingeφrint decryption is comprised of repetitive subtasks, the process preferably further comprises simultaneously performing the subtasks on different portions of the data stream with a parallel processing technique. Inclusion of a volatile memory means in the transcoding apphance facilitates this as it permits storing at least a portion of the data stream in the volatile memory means between the processing steps.
Additional aspects of the invention are further shown in the attached Figures, as further described below. As between the figures, the identical digits following the figure number digits generally describe corresponding elements of the invention employed in different settings.
Reference signs used in the drawings
Figure 1
140 software elements
141 client request software 142 request mgmt application
(identify request manage request parse request receive mcoming data transmit outgoing data)
143 transcoder application
(process request)
144 repetitive processing
(transform media data chunk) 145 hardware elements
146 client system
126 transcoding apphance motherboard 128 transcoding apphance DSP blade(s) functional elements 147 client application
148 server 101 transcoder communication elements
149 network protocol
150 transcoding apphance protocol
151 DMA
Figure 2 Data Entities (rectangles)
252 Ghent System
253 Process Log
254 Destination System Single process entities (single circles) 255 identify request
Multiple process entities (concentric circles) 256 manage request 206 receive mcoming data 212 transmit outgoing data 257 parse request
208 process request 258 transform media data chunk Media file data flows (heavy dark arrows) 204 incoming data stream 259 request data stream
260 parsed request specification
261 media data stream
262 media data chunk
263 transformed media data chunk 210 transformed media data stream
264 outgoing data stream Authentication data flows (sohd arrows)
202 connection request
265 authentication data
266 authentication challenge
267 authentication success
Control and Logging Data flows (dashed arrows)
268 client system connection 269 log information
270 transformation completion message
271 request parsing completion message
272 request data, media data and transformed media data addresses
273 media data and request data addresses 274 client system connection
275 receipt completion message
276 media data and transformed media data addresses
277 transmission completion message
278 client system connection 279 transformed media data address
280 media file destination network address
Figure 3
Data Entities (rectangles) 352 Ghent System
353 Process Log
381 Destination System
314 Media Storage System Single process entities (single circles) 355 identify request
Multiple process entities (concentric circles)
356 manage request
306 receive incoming data
312 transmit outgoing data
357 parse request 308 process request
358 transform media data chunk media file data flows (heavy dark arrows) 304 incoming data stream
382 mcoming media data stream
359 request data stream
360 parsed request specification
361 media data stream 362 media data chunk
363 transformed media data chunk 310 transformed media data stream
364 outgoing data stream Authentication data flows (sohd arrows) 302 connection request
365 authentication data
366 authentication challenge
367 authentication success
Control and Logging Data flows (dashed arrows) 368 client system connection
369 log information
370 transformation completion message
371 request parsing completion message
372 request data, media data and transformed media data addresses 373 media data and request data addresses
374 client system connection
375 receipt completion message
376 media data and transformed media data addresses
377 transmission completion message
378 chent system connection
379 transformed media data address
3 0 media file destination network address 383 media file storage network address
Figure 4
495 P2P Spht File Networks 401 Transcoding apphance 416 workstations in the P2P network 418 retailer server
420 end user's workstation
Figure 5
584 Ethernet 585 media provider server
520 end user workstations
586 internet
522 web server
501 transcoding apphance
Figure 6
684 Ethernet
601 transcoding apphance
626 queue server 624 e-commerce servers
614 media storage system
686 internet
620 end user workstations
Figure 7
787 receive incoming data
788 parse request
789 perform first transformation
790 perform second transformation
791 perform third transformation
792 perform repetitive complex transformation of media data chunks in parallel
793 perform fourth transformation
794 transmit outgoing stream
Figure 8 884 Ethernet 828 Sentinel systems 830 Evidence Storage system 801 transcoding apphance
886 internet
895 P2P spht file networks
896 P2P networks
897 media servers
Figure 9 984 Ethernet 928 Sentinel Systems 930 evidence storage system 901 transcoding apphance
986 internet
995 P2P spht file networks
996 P2P networks 932 media servers
Figure 10
Data Entities (rectangles)
1028 Sentinel system
1053 Process Log 1030 Evidence storage system
Single process entities (single circles)
1055 identify request
Multiple process entities (concentric circles)
1056 manage request 1006 receive mcoming data
1012 transmit outgoing data
1057 parse request 1008 process request
1058 transform media data chunk Media file data flows (heavy dark arrows)
1004 mcorning data stream
1098 original media file
1059 request data stream
1060 parsed request specification 1061 media data stream
1062 media data chunk
1063 transformed media data chunk
1099 detected digital fingeφrint
10100 detected digital fingeφrint to storage Authentication data flows (sohd arrows)
1002 connection request
1065 authentication data
1066 authentication challenge
1067 authentication success
Control and Logging Data flows (dashed arrows)
1068 chent system connection
1069 log information
10101 detection completion message 1071 request parsing completion message
1072 request data, media data and detected fingeφrint addresses
1073 media data and request data addresses
1074 chent system connection
10102 receipt and storage completion message 10103 media data and detected fingeφrint addresses
1077 transmission completion message
1078 chent system connection
1079 transformed media data address 10104 save original media file instruction
Figure 11
Data Entities (rectangles)
1128 Sentinel system 1153 Process Log 1130 Evidence storage system
1114 Media storage system Single process entities (single circles)
1155 identify request Multiple process entities (concentric circles) 1156 manage request
1106 receive incoming data 1112 transmit outgoing data 1157 parse request 1108 process request
1158 transform media data chunk Media file data flows (heavy dark arrows)
1104 mcoming data stream
11105 mcoming media data stream 1198 original media file
1159 request data stream
1160 parsed request specification
1161 media data stream
1162 media data chunk 1163 transformed media data chunk
1199 detected digital fingeφrint
11100 detected digital fingeφrint to storage Authentication data flows (sohd arrows)
1102 connection request 1165 authentication data
1166 authentication challenge
1167 authentication success
Control and Logging Data flows (dashed arrows)
1168 chent system connection 1069 log information
11101 detection completion message
11106 parsing completion message
1172 request data, media data and detected fingeφrint addresses
1173 media data and request data addresses 1174 chent system connection
11102 receipt and storage completion message
11103 media data and detected fingeφrint addresses
1177 transmission completion message
1178 chent system connection
1179 transformed media data address 11104 save original media file histruction
11107 media file storage network address
11108 file request