# US 8,751,494 B2 · Constructing album data using discrete track data from multiple sources

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,751,494 B2
- Document ID: US8751494B2
- Status: Granted
- Kind: B2
- Application number: 12/316,706
- Filed: 2008-12-15
- Published: 2010-06-17
- Granted: 2014-06-10
- Earliest claimed: 2008-12-15
- Assignees: Rovi Technologies Corporation
- Applicants: Jens Nicholas Wessling; Robert Dennis Kahlbaum
- Inventors: Jens Nicholas Wessling; Robert Dennis Kahlbaum
- Web page: https://patentgrep.com/patent/US8751494B2

## CPC

- G11B 27/28: by using information signals recorded by the same method as the main recording {(G11B27/22 takes precedence)}
- G06F 16/68: Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F 16/683: using metadata automatically derived from the content
- G11B 27/329: {on a disc [VTOC]}
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method and a system are provided for constructing album data using discrete track data from multiple sources. In one example, the system identifies one or more set of tracks having a similar album title, wherein the one or more set of tracks are obtained from one or more client devices. The system then searches across the one or more set of tracks for tracks having a matching fingerprint and a matching album title. The system groups tracks that match according to an original album title in metadata to obtain grouped tracks. The system mines across the grouped tracks to generate a juxtaposition of track data from the one or more client devices. The system then generates album data for one or more albums based on the juxtaposition of track data.

## Claims

### Claim 1

A method for constructing album data, the method comprising:
for each of a plurality of client devices, obtaining track data for one or more tracks of the client device, the track data including an original album title in track metadata;
from among the one or more tracks of the plurality of client devices for which the track data is obtained, identifying one or more set of tracks having a similar album title;
searching across the one or more set of tracks for matching tracks having a matching fingerprint and a matching album title according to an original album title in track metadata, the searching including comparing a combination of the track fingerprint and the track album title for each of the one or more set of tracks;
grouping the matching tracks, the matching tracks being grouped according to an original album title in metadata to obtain grouped matching tracks;
mining across the track data of the grouped matching tracks to generate a juxtaposition of the track data of the grouped matching tracks; and
generating album data for one or more albums based on the juxtaposition of the track data of the grouped matching tracks.

### Claim 2 (depends on 1)

The method of claim 1, wherein the generating album data comprises constructing one or more table of contents for the one or more albums.

### Claim 3 (depends on 1)

The method of claim 1, further comprising at least one of:
determining that particular album data of the one or more albums is not in an albums database; and
adding the particular album data to the albums database.

### Claim 4 (depends on 1)

The method of claim 1, wherein identifying the one or more set of tracks is followed by collecting a fingerprint for each track of the one or more set of tracks, wherein the fingerprint provides an independent piece of track identification and is unaffected by metadata.

### Claim 5 (depends on 1)

The method of claim 1, wherein the mining across the track data of the grouped matching tracks comprises:
determining matching fingerprints; and
reading non-fingerprint metadata included in the track data of each track of the matching fingerprints.

### Claim 6 (depends on 5)

The method of claim 5, wherein particular matching fingerprints do not have matching album data in track data associated with the particular matching fingerprints.

### Claim 7 (depends on 5)

The method of claim 5, wherein particular matching fingerprints do not have matching song names in metadata track data associated with the matching fingerprints.

### Claim 8 (depends on 1)

The method of claim 1, wherein the mining across the track data of the grouped matching tracks comprises:
reading a number of tracks that each client device had fingerprinted, wherein a client device is a device that provided a set of tracks;
reading a maximum track that each client device had for each album; and reading track count values from each track to determine how many albums
match among client devices.

### Claim 9 (depends on 1)

The method of claim 1, wherein the mining across the track data of the grouped matching tracks is performed offline without accessing any of the plurality of client devices that provided a set of tracks.

### Claim 10 (depends on 1)

The method of claim 1, further comprising sending at least some of the album data to a user computer, wherein the user computer is configured for using the album data to provide reliable album data for a selected track.

### Claim 11

A system for constructing album data, the system comprising:
an obtaining unit constructed to obtain for each of a plurality of client devices track data for one or more tracks of the client device, the track data including an original album title in track metadata;
an identifying unit constructed to identify, from among the one or more tracks of the plurality of client devices for which the track data is obtained, one or more set of tracks having a similar album title;
a searching unit constructed to search across the one or more set of tracks for matching tracks having a matching fingerprint and a matching album title according to an original album title in track metadata, the searching including comparing a combination of the track fingerprint and the track album title for each of the one or more set of tracks;
a grouping unit constructed to group the matching tracks, the matching tracks being grouped according to an original album title in metadata to obtain grouped matching tracks;
a mining unit constructed to mine across the track data of the grouped matching tracks to generate a juxtaposition of the track data of the grouped matching tracks; and
a generating unit constructed to generate album data for one or more albums based on the juxtaposition of the track data of the grouped matching tracks,
wherein at least one of the obtaining unit, identifying unit, searching unit, grouping unit, mining unit and generating unit comprises at least one of a processor and a memory.

### Claim 12 (depends on 1)

The system of claim 1 wherein the generating unit constructs one or more table of contents for the one or more albums.

### Claim 13 (depends on 11)

The system of claim 11, wherein the system further comprises at least one of:
a determining unit constructed to determine that particular album data of the one or more albums is not in an albums database; and
an adding unit constructed to add the particular album data to the albums database.

### Claim 14 (depends on 11)

The system of claim 11, wherein the system further comprises a fingerprint unit constructed to collect a fingerprint for each track of the one or more set of tracks after the one or more set of tracks are identified, wherein the fingerprint provides an independent piece of track identification and is unaffected by metadata.

### Claim 15 (depends on 11)

The system of claim 11, wherein the mining unit comprises:
a determining unit constructed to determine matching fingerprints; and
a reading unit constructed to read non-fingerprint metadata included in the track data of each track of the matching fingerprints.

### Claim 16 (depends on 15)

The system of claim 15, wherein particular matching fingerprints do not have matching album data in track data associated with the particular matching fingerprints.

### Claim 17 (depends on 15)

The system of claim 15, wherein particular matching fingerprints do not have matching song names in track data associated with the matching fingerprints.

### Claim 18 (depends on 11)

The system of claim 11, wherein the mining unit comprises:
a number reading unit constructed to read a number of tracks that each client device had fingerprinted, wherein a client device is a device that provided a set of tracks;
a maximum track reading unit constructed to read a maximum track that each client device had for each album; and
a track count reading unit constructed to read track count values from each track to determine how many albums match among client devices.

### Claim 19 (depends on 11)

The system of claim 11, wherein the mining unit performs the mining across the track data of the grouped matching tracks offline without accessing any of the plurality of client devices that provided a set of tracks.

### Claim 20 (depends on 11)

The system of claim 11, wherein the system further comprises a sending unit constructed to send at least some of the album data to a user computer, wherein the user computer is configured for using the album data to provide reliable album data for a selected track.

### Claim 21

A computer readable storage medium retrievably storing one or more instructions for constructing album data, wherein the one or more instructions, when executed by one or more processors, cause the one or more processors to perform the steps of:
for each of a plurality of client devices, obtaining track data for one or more tracks of the client device, the track data including an original album title in track metadata;
from among the one or more tracks of the plurality of client devices for which the track data is obtained, identifying one or more set of tracks having a similar album title;
searching across the one or more set of tracks for matching tracks having a matching fingerprint and a matching album title according to an original album title in track metadata, the searching including comparing a combination of the track fingerprint and the track album title for each of the one or more set of tracks;
grouping the matching tracks, the matching tracks being grouped according to an original album title in metadata to obtain grouped matching tracks;
mining across the track data of the grouped matching tracks to generate a juxtaposition of the track data of the grouped matching tracks; and
generating album data for one or more albums based on the juxtaposition of the track data of the grouped matching tracks.

### Claim 22 (depends on 1)

The method of claim 1, wherein each track data includes non-fingerprint metadata.

### Claim 23 (depends on 5)

The method of claim 5, wherein non-fingerprint metadata included in track data of each of particular matching fingerprints do not match, and wherein in the reading step the non-fingerprint metadata included in the track data of each of the particular matching fingerprints is read.
