GB2368245A - Distribution system for digital works with associated metadata - Google Patents
Distribution system for digital works with associated metadata Download PDFInfo
- Publication number
- GB2368245A GB2368245A GB0025440A GB0025440A GB2368245A GB 2368245 A GB2368245 A GB 2368245A GB 0025440 A GB0025440 A GB 0025440A GB 0025440 A GB0025440 A GB 0025440A GB 2368245 A GB2368245 A GB 2368245A
- Authority
- GB
- United Kingdom
- Prior art keywords
- server
- metadata
- entity
- data
- file
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 claims description 43
- 238000004891 communication Methods 0.000 claims description 12
- 235000014510 cooky Nutrition 0.000 claims description 6
- 238000013475 authorization Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/104—Grouping of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Abstract
An author of digital works (eg music,video,software etc.) 2 registers with an upload server 3 via network 1 (eg the internet) and is assigned a directory. The author then uploads digital works into a file in this directory on the server. The author subsequently instructs the server to prepare the digital work for distribution by supplying metadata (eg license information) for the digital work. The server queues these instructions and watermarks, compresses and encrypts the digital works in turn, possibly into a streaming format file. An executable file comprising a licensing control program and the metadata is also created. The streaming file and the executable file are transferred to a download server 4 which makes the digital work available for download, possibly over the internet. Subsequent use of the downloaded digital work is subject to the metadata included in the executable file, for instance royalties may be paid to the author via the upload server.
Description
Data Distribution System
Description The present invention relates to a method of distributing a data entity.
Individual artists and programmers and small publishing companies can easily make copies of the works they own available to the public by making them available for downloading at a web site or by using a file sharing system such as Napster or
Gnutella. However, these techniques have the disadvantage that there is no mechanism for ensuring an income stream from people obtaining copies of the works.
Electronic licensing systems, such as that provided by ViaTech, Inc. , of Natick, MA, USA, are available. However, these are unsuited to the needs of the individual or small company.
It is an aim of the present invention to provide technical means to make electronic licensing available to individuals and small companies.
According to the present invention, there is provided a method of distributing a data entity, for example an audio, image or video file or a computer program, the method comprising: receiving a data entity by means of a first network communication protocol; receiving metadata relating to said entity by means of a second network communication protocol; creating a communicable, executable entity including data derived from said data entity and said metadata; and transferring the executable entity to a server for downloading therefrom.
Preferably, the executable entity is created automatically in response to the reception of the metadata associated with a data entity.
Preferably, said executable entity includes means defining licensing rules. However, this is not essential and licensing rules may be contained in, for example, a database that can be accessed by the executable entity.
A method according to the present invention may include generating a streaming format file from said data entity and transferring the streaming format file with the executable entity to said server for streaming therefrom.
In embodiments particularly, but not exclusively, adapted for use by an individual, the first network communication protocol is ftp and the second network communication protocol is http. Preferably, the method includes responding to submission of user details in an http request by adding said user details to a database, associate a directory with said user details and send an http response including a username and password allowing write access to said directory by ftp.
More preferably, the method includes associating said metadata with user data stored in said database on the basis of cookie data received with said metadata.
A method according to the present invention may include adding an element to a queue, defining an order in which executable entities are to be created, in response to said receipt of metadata. The queue may be defined by a database table comprising at least one record containing received metadata associated with a data entity.
In embodiments particularly, but not exclusively, adapted for use by small companies, the first network communication protocol is ftp and the second network communication protocol is ftp. Preferably, receiving the data entity and the metadata comprises connecting to an ftp server and downloading the data entity and the metadata from the ftp server. More preferably, the method includes adding an element to a queue, defining an order in which executable entities are to be created, for each said data entity downloaded from the ftp server. Preferably, the queue is defined by a file comprising received metadata associated with at least one data entity.
The present invention also extends to apparatus configured to perform a method according to the present invention.
Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which
Figure 1 shows a network over which a system according to the present invention operates;
Figure 2 illustrates the data source of Figure 1;
Figure 3 illustrates the upload server of Figure 1;
Figure 4 is a signalling diagram illustrating registration of a user with the upload server of Figure 1;
Figure 5 is a signalling diagram illustrating a distribution authorising session between the data source and upload server of Figure 1;
Figure 6 is a flowchart illustrating processing of uploaded files by the upload server of Figure 1;
Figure 7 illustrates an alternative data server;
Figure 8 illustrates an alternative upload server; and
Figure 9 is a flowchart illustrating a batch upload CGI script.
Referring to Figure 1, an embodiment of the present invention is implemented in a networked environment comprising the Internet 1, a data source 2, an upload server 3, a download server 4 and a download client 5. The data source 2, the upload server 3, the download server 4 and the download client 5 are all connected to the
Internet 1.
Referring to Figure 2, the data source 2 comprises a personal computer supporting a file system 21, an ftp client 22 and a web browser 23. The file system 21 includes a plurality of music files.
Referring to Figure 3, the upload server 3 comprises a powerful computer supporting a file system 31, an ftp server 32, a web server 33, a queue database 34 defining a queue, an electronic licensing system (ELS) process 35 and a user database 36. The ELS process 35 comprises the eLicense Music toolkit from
ViaTech, Inc.. However, additional or alternative processes may be employed. The queue database 34 comprises a pending table and a history table.
The download server 4 is a powerful computer supporting a web server configured for serving ViaTech eLicense files and streaming Real Audio format audio data.
The download client is a conventional personal computer supporting a web browser.
The process of making a piece of music available on the download server 4 will now be described.
Referring to Figure 4, a user who wishes to register with the upload server 3 uses the web browser 23 of the data source 2 to request a registration page from the web server 33 at the upload server 3. The registration page comprise a form which the user fills in with his name, address, email address and credit card details. The user submits the completed form to the web server 33 where it is processed by a CGI script. The CGI script validates the data from the form and, if there are any errors, it sends an error page to the web browser 23. If the user-input data is validated successfully, the CGI process sends a registered page to the web browser 23. This page includes the host name to be used for connecting to the ftp server 32, a username and a password. The CGI script also creates a directory 37 in the file system 31 with the username as its name, grants write privileges for the new directory 37 to the user and saves the details entered by the user and the username and password in the user database 36.
When the user wishes to distribute a piece of music, the user produces a compressed audio file, e. g. an MP3 file, containing the music. Uncompressed wave files could be used but the file transfer times would be much larger. The user then uses the ftp client 22 to connect to the ftp server 32 and logs in using the username and password received from the web server 33. The ftp server 32 then grants the user access to the directory 37 created for the user. The user uploads the compressed audio file to the directory and terminates the ftp session. The user
could have uploaded a plurality of files in order to distribute a plurality of pieces of music.
Having uploaded the audio file, the user must instruct the upload server 3 to prepare the music for distribution. Referring to Figure 5, the user uses the web browser 23 to request a login page from the web server 33. The login page includes a form with username and password fields. The user submits the form which is validated by a login CGI script in a conventional manner. Assuming that the username/password pair is correct, the CGI script sends a welcome page and a session id cookie, which is used to identify the user in subsequent requests, to the user's web browser 23.
The welcome page has various links including one to a distribution authorisation page. The user click on this link to request the distribution authorisation page. If the session id cookie is valid, the web server 33 sends the distribution authorisation page to the user's web browser 23. This page includes a metadata input form with input elements so that the user can enter the name of the uploaded compressed audio file and metadata comprising the names of the or each artist, composer and lyric writer, copyright details and distribution rules, e. g."buy only"or"four tries then buy". The user fills in the form with the filename and metadata and submits the form. This causes the entered data to be sent to the web server 33 with a request referring to a instruction receiving CGI process. The instruction receiving
CGI process adds the form data, upload server operator id and a unique id to the pending table of the queue database 34 as a new record. After adding the form data to the pending table of the queue database 34, the instruction receiving CGI process sends an instruction acknowledgement page to the user's web browser 23.
Referring to Figure 6, the ELS process 35 repeatedly checks the pending table of the queue database 34 for records (steps s1 and s2). For each record in the pending table of the queue database 34 (step s3), the ELS process 35 tries to find the identified uploaded file (step s4). If the file cannot be found, an error message is sent to the relevant user of the data source 2 and the pending table record is deleted (step s5). If the file is found, the record is moved from the pending table to
the history table of the queue database 34 (step s6) and the file is converted it into a wave file, watermarked and then compressed and encrypted (step s7). The ELS process 35 also produces copies of the uploaded file in streaming formats for transmission at different speeds (step s8). The ELS process 35 then generates an executable file, comprising a licensing control program, the watermarked, compressed and encrypted audio and the metadata, (step s9) sends the executable file and the streaming format files to the download server 4 (step s1O), where they are made available to download clients 5. It then sends a confirmation to the
relevant user (step s11) and moves the record from the history table to the user database 37 (step sil2) where it forms an entry in a"catalogue"for the user.
The error and confirmation messages are sent by email.
Royalties payable to the user for purchases of downloaded copies of the music are paid to the operator of the upload server 3, on the basis of the upload server id, who then makes a payment to the relevant user's credit card account on the basis of the unique id.
In a second embodiment, the ftp client 22 comprises a signed Java applet embedded in the distribution authorisation page. This avoids the need for the user to become familiar with a general purpose ftp client.
Referring to Figures 7 and 8, in a third embodiment the data source 2 has an ftp server 24 instead of the ftp client 22 of the first embodiment and the upload server has a batch upload CGI script 37, which implements an ftp client instead of the ftp server 32 of the first embodiment.
As will become apparent, the present embodiment is better suited to bulk transfers of music files from the data source 2 to the upload server 3, such as in the case of the data source being operated by a music publishing company.
The operator of the data source 2 registers with the operator of the upload server and receives a password and username. This registration need not use the web
based scheme described above. The operator of the data source 2 also creates a directory 25 for the operator of the upload server 3 in the file system 21 of the data source 2 and allocates a username and password to the operator of the upload server 3.
The operator of the data source 2 creates a batch of files for transfer to the upload server 3. The batch of files comprise compressed audio files, a respective metadata file containing the same data as is input in the first embodiment using the distribution authorisation page, and a file list comprising the identifiers for the audio data and metadata files. Since the audio and metadata files are differentiated by suffixes, the file list file only contains the common filename parts of audio and metadata file pairs. The batch of files is placed in the specially created directory 25.
When the operator of the data source wishes to distribute a batch of music files, the web browser 22 of the data source 2 is used to request the welcome page, after performance of the login process described above. The welcome page has a batch upload link which refers to the batch upload CGI script 37. This link is followed and, referring to Figure 9, the batch upload CGI script 37 immediately sends back an acknowledgement page (step s23) or an error page (step s22), if the cookie is not valid (step s21) and then obtains the username and password required to access the data source 2 from the user database 36 (step s24) using the session id cookie.
Once the username and password have been obtained, the batch upload CGI script 37 establishes an ftp connection to the ftp server 24 at the data source 2 (step s25) and gets the file list file (step s26). The batch upload CGI script 37 opens the file list file and reads each entry. For each entry (steps 27), the batch upload CGI script 37 gets the audio data file and stores it in the directory of the upload server 3 allocated to the operator of the data source 2 (step s28). Also, the batch upload
CGI script 37 gets the corresponding metadata file and adds its contents to the pending table of the queue database 34 together with the uploaded server operator's id and a unique id (step s29). When all of the files identified in the file list file have been got, the ftp session is terminated.
The audio files obtained by the batch upload CGI script are then processed as in the first embodiment. However, in this embodiment, the error and confirmation messages are sent as http request to a server identified by the operator of the data source. This server will have a CGI script to process these messages and produce and alert for the operator of the data source.
In each of the embodiments, a message reporting availability of the music at the download server 4 is sent to the user or operator of the data source. This message includes the URI of the executable file.
The executables are stored temporarily at the upload server and may be archived at a dedicated archiving system. The uploaded files may also be archived and deleted.
However, it is preferred that users be informed when the space allocated to them has been filled so that they can clear their own directories on upload server 3.
Preferably, each of the processes at the upload server 3 has an associated log file for each registered user or operator of a data source. These files can be obtained by the relevant registered user or data source operator by ftp. Alternative, user and/or process specific log may be processed at the server to provide the relevant person with log information in a convenient and easily comprehensible form.
Claims (15)
1. A method of distributing a data entity, the method comprising : receiving a data entity by means of a first network communication protocol; receiving metadata relating to said entity by means of a second network communication protocol; creating a communicable, executable entity including data derived from said data entity and said metadata; and transferring the executable entity to a server for downloading therefrom.
2. A method according to claim 1, wherein said executable entity includes means defining licensing rules.
3. A method according to claim 1 or 2, wherein the data entity comprises an audio or video file.
4. A method according to claim 3, including generating a streaming format file from said data entity and transferring the streaming format file with the executable entity to said server for streaming therefrom.
5. A method according to any preceding claim, wherein the first network communication protocol is ftp and the second network communication protocol is http.
6. A method according to claim 5, comprising responding to submission of user details in an http request by adding said user details to a database, associate a directory with said user details and send an http response including a usemame and password allowing write access to said directory by ftp.
7. A method according to claim 6, including associating said metadata with user data stored in said database on the basis of cookie data received with said metadata.
8. A method according to any preceding claim, including adding an element to a queue, defining an order in which executable entities are to be created, in response to said receipt of metadata.
9. A method according to claim 8, wherein said queue is defined by a database table comprising at least one record containing received metadata associated with a data entity.
10. A method according to any one of claims 1 to 4, wherein the first network communication protocol is ftp and the second network communication protocol is ftp.
11. A method according to claim 10, wherein receiving the data entity and the metadata comprises connecting to an ftp server and downloading the data entity and the metadata from the ftp server.
12. A method according to claim 11, including adding an element to a queue, defining an order in which executable entities are to be created, for each said data entity downloaded from the ftp server.
13. A method according to claim 12, said queue is defined by a database table comprising at least one record containing received metadata associated with a data entity.
14. A method of distributing a data entity, the method being substantially as hereinbefore described.
15. An apparatus configured to perform a method according to any preceding claim.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0025440A GB2368245A (en) | 2000-10-17 | 2000-10-17 | Distribution system for digital works with associated metadata |
PCT/GB2001/004639 WO2002033934A1 (en) | 2000-10-17 | 2001-10-16 | Data distribution method and apparatus |
AU2002210685A AU2002210685A1 (en) | 2000-10-17 | 2001-10-16 | Data distribution method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0025440A GB2368245A (en) | 2000-10-17 | 2000-10-17 | Distribution system for digital works with associated metadata |
Publications (2)
Publication Number | Publication Date |
---|---|
GB0025440D0 GB0025440D0 (en) | 2000-11-29 |
GB2368245A true GB2368245A (en) | 2002-04-24 |
Family
ID=9901462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB0025440A Withdrawn GB2368245A (en) | 2000-10-17 | 2000-10-17 | Distribution system for digital works with associated metadata |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU2002210685A1 (en) |
GB (1) | GB2368245A (en) |
WO (1) | WO2002033934A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9336360B1 (en) | 2013-03-14 | 2016-05-10 | Kobalt Music Group Limited | Analysis and display of a precis of global licensing activities |
USD773490S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
USD773491S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
USD773492S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
US10319040B1 (en) | 2013-03-14 | 2019-06-11 | Ktech Services Limited | Control of the generation and display of royalty administration and rights management data based on the user's rights of access |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0715245A1 (en) * | 1994-11-23 | 1996-06-05 | Xerox Corporation | System for controlling the distribution and use of digital works |
WO1997014087A1 (en) * | 1995-10-13 | 1997-04-17 | Trustees Of Dartmouth College | System and methods for managing digital creative works |
WO1998042098A1 (en) * | 1997-03-14 | 1998-09-24 | Cryptoworks, Inc. | Digital product rights management technique |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
US5758069A (en) * | 1996-03-15 | 1998-05-26 | Novell, Inc. | Electronic licensing system |
US5905860A (en) * | 1996-03-15 | 1999-05-18 | Novell, Inc. | Fault tolerant electronic licensing system |
US6092198A (en) * | 1997-02-25 | 2000-07-18 | International Business Machines Corporation | System and method for enabling and controlling anonymous file transfer protocol communications |
AU2610300A (en) * | 1999-01-12 | 2000-08-01 | Harry Fox Agency, Inc., The | Method and system for registering and licensing works over network |
-
2000
- 2000-10-17 GB GB0025440A patent/GB2368245A/en not_active Withdrawn
-
2001
- 2001-10-16 WO PCT/GB2001/004639 patent/WO2002033934A1/en active Application Filing
- 2001-10-16 AU AU2002210685A patent/AU2002210685A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0715245A1 (en) * | 1994-11-23 | 1996-06-05 | Xerox Corporation | System for controlling the distribution and use of digital works |
WO1997014087A1 (en) * | 1995-10-13 | 1997-04-17 | Trustees Of Dartmouth College | System and methods for managing digital creative works |
WO1998042098A1 (en) * | 1997-03-14 | 1998-09-24 | Cryptoworks, Inc. | Digital product rights management technique |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9336360B1 (en) | 2013-03-14 | 2016-05-10 | Kobalt Music Group Limited | Analysis and display of a precis of global licensing activities |
US10319040B1 (en) | 2013-03-14 | 2019-06-11 | Ktech Services Limited | Control of the generation and display of royalty administration and rights management data based on the user's rights of access |
USD773490S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
USD773491S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
USD773492S1 (en) | 2013-03-15 | 2016-12-06 | Kobalt Music Group Limited | Display screen with a graphical user interface |
Also Published As
Publication number | Publication date |
---|---|
WO2002033934A1 (en) | 2002-04-25 |
GB0025440D0 (en) | 2000-11-29 |
AU2002210685A1 (en) | 2002-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE41210E1 (en) | Method and apparatuses for transferring data for multiple applications through a single communication link in response to authentication information | |
US6085249A (en) | Method and apparatuses for transferring data for multiple applications through a single communication link in response to authentication information | |
US7346585B1 (en) | Computer software and services license processing method and system | |
US6564320B1 (en) | Local hosting of digital certificate services | |
US6826546B1 (en) | Method and system for licensing a copy of a copyright protected work | |
US20030041096A1 (en) | Transaction processing in a distributed data processing system | |
US20040148503A1 (en) | Apparatus, method, and system for accessing digital rights management information | |
US20020174206A1 (en) | Web-based file manipulating system | |
EP2079028A1 (en) | Apparatus, method, and system for providing DRM protected content with content permanence | |
WO2007005890A1 (en) | Method and system for proxy-based file sharing | |
WO2005079311A2 (en) | Method for packaging a user's personal computing environment for transfer over a network | |
GB2386491A (en) | Adding watermarks using a network based image technique | |
US7499967B2 (en) | Access to web services | |
JPH1139395A (en) | Electronic open item certificating system and record medium | |
JP2004519136A (en) | How to provide images for online publications | |
JP2005130472A (en) | Initiating distribution of server-based content s by web-available device | |
JP4600849B2 (en) | Method and apparatus for making media files accessible via a web page | |
JP7090903B2 (en) | Information processing system, data provision method, and manufacturing method of information processing system | |
GB2368245A (en) | Distribution system for digital works with associated metadata | |
US7343321B1 (en) | Method of administering licensing of use of copyright works | |
US20050138042A1 (en) | Method and system for facilitating virtual exchange of documents in an internet commerce system | |
US20060161971A1 (en) | Method and apparatus for providing secure connectivity between computer applications | |
JPH10313308A (en) | Method and system for authenticating home page | |
WO2004114142A1 (en) | Web information management device, web information management method, web information management program, and recording medium thereof | |
JP4546072B2 (en) | Information processing method and computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
732E | Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977) | ||
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |