CA2564162A1 - Using reference files associated with nodes of a tree - Google Patents

Using reference files associated with nodes of a tree

Info

Publication number
CA2564162A1
CA2564162A1 CA 2564162 CA2564162A CA2564162A1 CA 2564162 A1 CA2564162 A1 CA 2564162A1 CA 2564162 CA2564162 CA 2564162 CA 2564162 A CA2564162 A CA 2564162A CA 2564162 A1 CA2564162 A1 CA 2564162A1
Authority
CA
Grant status
Application
Patent type
Prior art keywords
profile
reference
input
method according
chunks
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
CA 2564162
Other languages
French (fr)
Other versions
CA2564162C (en )
Inventor
William Bland
James Edward Moore
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.)
Rovi Solutions Corp
Original Assignee
Macrovision Corporation
William Bland
James Edward Moore
Rovi Solutions Corporation
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

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/3074Audio data retrieval
    • G06F17/30755Query formulation specially adapted for audio data retrieval
    • G06F17/30758Query by example, e.g. query by humming
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/3074Audio data retrieval
    • G06F17/30743Audio data retrieval using features automatically derived from the audio content, e.g. descriptors, fingerprints, signatures, MEP-cepstral coefficients, musical score, tempo
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00-G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00-G10L21/00 specially adapted for particular use
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/121Musical libraries, i.e. musical databases indexed by musical parameters, wavetables, indexing schemes using musical parameters, musical rule bases or knowledge bases, e.g. for automatic composing methods
    • G10H2240/131Library retrieval, i.e. searching a database or selecting a specific musical piece, segment, pattern, rule or parameter set
    • G10H2240/141Library retrieval matching, i.e. any of the steps of matching an inputted segment or phrase with musical database contents, e.g. query by humming, singing or playing; the steps may include, e.g. musical analysis of the input, musical feature extraction, query formulation, or details of the retrieval process

Abstract

An input profile (101) is generated from an input audio file using a measurable attribute that was used to generate reference profiles (102) from reference audio files. The input profile (101) is then subjected to a process that was also used to generate a reference profiles tree (103), which is structured as a sparse binary tree, which is used by the audio matcher (100) to facilitate and expedite the matching process form the reference profiles (102). The input profile (101) is then compared with this subset of the reference profiles (102), representing potential matches, to determine that either it matches one of the reference profiles (102), or that it is a spoof, or that it does not match any of the reference profiles (102).

Claims (114)

1. A method for matching an input audio file with a plurality of reference audio files, comprising:
identifying potential matches of an input audio file among a plurality of reference audio files based upon at least one common characteristic;
and searching for a match of the input audio file among the potential matches.
2. The method according to claim 1, wherein the identification of the potential matches comprises identifying potential matches of the input audio file among the plurality of reference audio files by associating nodes of a sparse binary tree with the input audio file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference audio files.
3. The method according to claim 1, wherein the identification of potential matches comprises:
generating an input profile from the input audio file based upon a measurable attribute also used to generate a plurality of reference profiles from the plurality of reference audio files;
identifying potential matches among the plurality of reference profiles with the input profile by processing the input profile in a manner used to associate the plurality of reference profiles with nodes of a sparse binary tree.
4. The method according to claim 3, wherein the generation of the input profile comprises:
segmenting the input audio file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input audio file in individual of the chunks.
5. The method according to claim 4, wherein individual of the chunks includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
6. The method according to claim 4, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference audio files by segmenting the reference audio file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference audio file in individual of the chunks.
7. The method according to claim 6, wherein the plurality of reference profiles are associated with nodes of the sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
8. The method according to claim 7, wherein individual of the chunks of the input audio file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
9. The method according to claim 8, wherein the criterion is satisfied if the zero crossing count of a sampled chunk is a local maximum.
10. The method according to claim 7, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
11. The method according to claim 7, wherein the sampling of chunks in individual of the reference profiles is performed on an ever increasing sampling basis.
12. The method according to claim 11, wherein the ever increasing sampling basis is a quadratically increasing sample basis.
13. The method according to claim 11, wherein the ever increasing sampling basis is an exponentially increasing sample basis.
14. The method according to claim 11, wherein the sampling of chunks in individual of the reference profiles is performed on an ever increasing sampling basis starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with the last chunk of the reference profile by incrementing through the chunks at a specified velocity and acceleration.
15. The method according to claim 14, wherein the velocity is the number of chunks between local maxima in the reference profile, and the acceleration is the change in velocity divided by the number of chunks over which the change occurs.
16. The method according to claim 10, wherein the identification of potential matches among the plurality of reference profiles comprises identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
17. The method according to claim 16, wherein the identification of mini-matches among the plurality of reference profiles further comprises for individual reference profiles corresponding to the retrieved profile hooks:
comparing a number of chunks of the input profile and corresponding chunks of the reference profile; and identifying a mini-match if corresponding chunks of the reference profile substantially matches those of the input profile.
18. The method according to claim 17, wherein the identification of mini-matches among the plurality of reference profiles further comprises: identifying a non-full mini-match using a best matching one of the reference profiles with the input profile if none of the reference profiles identified by the profile hooks substantially matches those of the input profile.
19. The method according to claim 18, wherein the identification of potential matches further comprises: merging any mini-matches and non-full mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
20. The method according to claim 19, wherein if a mini-match is merged with a non-full mini-match, then the merged entity is referred to as a mini-match.
21. The method according to claim 20, further comprising:
identifying the input audio file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
22. The method according to claim 21, wherein the input audio file is not identified as a spoof if the sum of the total audio time covered by the mini-matches is less than a specified threshold value.
23. The method according to claim 22, wherein the input audio file is not identified as a spoof even if the sum of the total audio time covered by the mini-matches is not less than the specified threshold value, if any of the mini-matches has an associated error per second value that is greater than a first specified maximum value.
24. The method according to claim 25, wherein the searching for the match results in a best match being found if a percentage of the input profile and the reference profile covered by the best match exceeds some minimum value after ignoring all non-full mini-matches, ignoring mini-matches having an error per second value that is greater than a second specified maximum value, and taking into consideration any other programmed criteria.
25. A method for matching an input audio file with a plurality of reference audio files, comprising:
identifying potential matches of an input audio file among a plurality of reference audio files based upon at least one common characteristic;
and comparing an input profile resulting from a measurable attribute of the input audio file with reference profiles resulting from the same measurable attribute of the potential matches to determine a match.
26. The method according to claim 25, further comprising generating the input profile by:
segmenting the input audio file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input audio file in individual of the chunks.
27. The method according to claim 26, wherein individual of the chunks includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
28. The method according to claim 26, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference audio files by segmenting the reference audio file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference audio file in individual of the chunks.
29. The method according to claim 28, wherein the plurality of reference profiles are associated with nodes of the sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
30. The method according to claim 29, wherein individual of the chunks of the input audio file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
31. The method according to claim 30, wherein the criterion is satisfied if the zero crossing count of a sampled chunk is a local maximum.
32. The method according to claim 29, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
33. The method according to claim 29, wherein the sampling of chunks in individual of the reference profiles is performed on an ever increasing sampling basis.
34. The method according to claim 32, wherein the identification of potential matches among the plurality of reference profiles comprises identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
35. The method according to claim 34, wherein the comparison of the input profile with the reference profiles of the potential matches comprises for individual reference profiles corresponding to the retrieved profile hooks:
comparing a number of chunks of the input profile and corresponding chunks of the reference profile; and identifying a mini-match if corresponding chunks of the reference profile substantially matches those of the input profile.
36. The method according to claim 35, wherein the comparison of the input profile with the reference profiles of the potential matches further comprises: identifying a non-full mini-match using a best matching one of the reference profiles with the input profile if none of the reference profiles identified by the profile hooks substantially matches those of the input profile.
37. The method according to claim 36, wherein the comparison of the input profile with the reference profiles of the potential matches further comprises: merging any mini-matches and non-full mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
38. The method according to claim 37, wherein if a mini-match is merged with a non-full mini-match, then the merged entity is referred to as a mini-match.
39. The method according to claim 38, further comprising:
identifying the input audio file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
40. The method according to claim 38, wherein the comparison of the input profile with the reference profiles of the potential matches results in a best match being found if a percentage of the input profile and the reference profile covered by the best match exceeds some minimum value after ignoring all non-full mini-matches, ignoring mini-matches having an error per second value that is greater than a second specified maximum value, and taking into consideration any other programmed criteria.
41. A method for matching an input file with a plurality of reference files, comprising:
identifying potential matches of an input file among a plurality of reference files by associating nodes of a sparse binary tree with the input file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference files; and searching for a match of the input file among the potential matches.
42. The method according to claim 41, wherein the input file and the reference files include digitized samples of time varying signals.
43. The method according to claim 42, wherein the identification of potential matches comprises:
generating an input profile from the input file based upon a measurable attribute also used to generate a plurality of reference profiles from the plurality of reference files;
identifying potential matches among the plurality of reference profiles with the input profile by processing the input profile in a manner used to associate the plurality of reference profiles with nodes of the sparse binary tree.
44. The method according to claim 43, wherein the generation of the input profile comprises:
segmenting the input file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input file in individual of the chunks.
45. The method according to claim 44, wherein individual of the chunks includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
46. The method according to claim 45, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference files by segmenting the reference file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference file in individual of the chunks.
47. The method according to claim 46, wherein the plurality of reference profiles are associated with nodes of the sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
48. The method according to claim 47, wherein individual of the chunks of the input file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
49. The method according to claim 47, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
50. The method according to claim 47, wherein the sampling of chunks in individual of the reference profiles is performed on an ever increasing sampling basis.
51. The method according to claim 49, wherein the identification of potential matches among the plurality of reference profiles comprises identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
52. The method according to claim 51, wherein the identification of mini-matches among the plurality of reference profiles further comprises for individual reference profiles corresponding to the retrieved profile hooks:
comparing a number of chunks of the input profile and corresponding chunks of the reference profile; and identifying a mini-match if corresponding chunks of the reference profile substantially matches those of the input profile.
53. The method according to claim 52, wherein the identification of mini-matches among the plurality of reference profiles further comprises: identifying a non-full mini-match using a best matching one of the reference profiles with the input profile if none of the reference profiles identified by the profile hooks substantially matches those of the input profile.
54. The method according to claim 53, wherein the identification of potential matches further comprises: merging any mini-matches and non-full mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
55. The method according to claim 54, wherein if a mini-match is merged with a non-full mini-match, then the merged entity is referred to as a mini-match.
56. The method according to claim 55, further comprising:
identifying the input file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
57. The method according to claim 55, wherein the searching for the match results in a best match being found if a percentage of the input profile and the reference profile covered by the best match exceeds some minimum value after ignoring all non-full mini-matches, ignoring mini-matches having an error per second value that is greater than a second specified maximum value, and taking into consideration any other programmed criteria.
58. A method for matching an input file with a plurality of reference files, comprising:
identifying potential matches of an input file among a plurality of reference files by associating nodes of a sparse binary tree with the input file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference files; and comparing a profile resulting from a measurable attribute of the input file with profiles resulting from the same measurable attribute of the potential matches to determine a match.
59. The method according to claim 1c, wherein the input file and the reference files include digitized samples of time varying signals.
60. The method according to claim 59, further comprising generating the input profile by:
segmenting the input file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input file in individual of the chunks.
61. The method according to claim 60, wherein individual of the chunks includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
62. The method according to claim 61, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference files by segmenting the reference file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference file in individual of the chunks.
63. The method according to claim 62, wherein the plurality of reference profiles are associated with nodes of the sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
64. The method according to claim 63, wherein individual of the chunks of the input file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
65. The method according to claim 64, wherein the criterion is satisfied if the zero crossing count of a sampled chunk is a local maximum.
66. The method according to claim 63, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
67. The method according to claim 63, wherein the sampling of chunks in individual of the reference profiles is performed on an ever increasing sampling basis.
68. The method according to claim 66, wherein the identification of potential matches among the plurality of reference profiles comprises identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
69. The method according to claim 68, wherein the comparison of the input profile with the reference profiles of the potential matches comprises for individual reference profiles corresponding to the retrieved profile hooks:
comparing a number of chunks of the input profile and corresponding chunks of the reference profile; and identifying a mini-match if corresponding chunks of the reference profile substantially matches those of the input profile.
70. The method according to claim 69, wherein the comparison of the input profile with the reference profiles of the potential matches further comprises: merging any mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
71. The method according to claim 70, wherein the comparison of the input profile with the reference profiles of the potential matches results in a best match being found if a percentage of the input profile and the reference profile covered by the best match exceeds some minimum value after ignoring mini-matches having an error per second value that is greater than a specified maximum value, and taking into consideration any programmed criteria.
72. A method for matching an input audio file with a plurality of reference audio files, comprising:
generating an input profile from an input audio file based upon a measurable attribute also used to generate a plurality of reference profiles from a plurality of reference audio files;
identifying potential matches among the plurality of reference profiles with the input profile by processing the input profile in a manner used to associate individual of the plurality of reference profiles with nodes of a sparse binary tree; and comparing the input profile with the potential matches to determine a match.
73. The method according to claim 72, wherein the generation of the input profile comprises:
segmenting the input audio file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input audio file in individual of the chunks.
74. The method according to claim 73, wherein individual of the chunks includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
75. The method according to claim 73, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference audio files by segmenting the reference audio file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference audio file in individual of the chunks.
76. The method according to claim 75, wherein the plurality of reference profiles are associated with nodes of the sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
77. The method according to claim 76, wherein individual of the chunks of the input audio file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
78. The method according to claim 76, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
79. The method according to claim 78, wherein the identification of potential matches among the plurality of reference profiles comprises identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
80. The method according to claim 79, wherein the identification of mini-matches among the plurality of reference profiles further comprises for individual reference profiles corresponding to the retrieved profile hooks:
comparing a number of chunks of the input profile and corresponding chunks of the reference profile; and identifying a mini-match if corresponding chunks of the reference profile substantially matches those of the input profile.
81. The method according to claim 79, wherein the identification of potential matches further comprises: merging any mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
82. The method according to claim 81, further comprising:
identifying the input audio file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
83. The method according to claim 81, wherein the searching for the match results in a best match being found if a percentage of the input profile and the reference profile covered by the best match exceeds some minimum value after ignoring mini-matches having an error per second value that is greater than a specified maximum value, and taking into consideration any programmed criteria.
84. A method for matching an input audio file with a plurality of reference audio files, comprising:
generating a plurality of reference profiles from a plurality of reference audio files using a measurable attribute;
generating a sparse binary tree by applying a process to the plurality of reference profiles such that identifications of the plurality of reference profiles are associated at resulting nodes of the sparse binary tree;
generating an input profile from the input audio file using the measurable attribute;
applying the process to the input profile so that associated reference profiles are identified from resulting nodes of the sparse binary tree;
and comparing at least a portion of the input profile with corresponding portions of the identified reference profiles to determine a match.
85. The method according to claim 84, wherein the generation of the plurality of reference profiles comprises:
segmenting individual of the plurality of reference audio files into chunks individually representing a period of time; and counting a number of occurrences of the measurable attribute in individual of the chunks of the plurality of reference audio files.
86. The method according to claim 85, wherein individual of the chunks of the reference audio files includes information of digitized samples of an audio clip over the period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
87. The method according to claim 84, wherein the generation of the sparse binary tree comprises: sampling chunks in individual of the plurality of reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
88. The method according to claim 84, wherein the generation of the input profile comprises:
segmenting the input audio file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input audio file in individual of the chunks.
89. The method according to claim 88, wherein individual of the chunks of the input audio file includes information of digitized samples of an audio clip over their corresponding period of time, and the measurable attribute for individual of the chunks is a number of zero crossings of the digitized samples in the chunk.
90. The method according to claim 89, wherein the criterion is satisfied if the zero crossing count of a sampled chunk is a local maximum.
91. The method according to claim 89, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
92. The method according to claim 84, wherein the application of the process to the input file comprises: identifying potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
93. The method according to claim 84, wherein the comparison of the input profile with the identified reference profiles comprises:
comparing a number of chunks of the input profile and corresponding chunks of the reference profiles; and identifying a mini-match if any corresponding chunks of the reference profiles substantially matches those of the input profile.
94. The method according to claim 93, wherein the comparison of the input profile with the identified reference profiles further comprises:

merging any mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
95. The method according to claim 94, further comprising:
identifying the input audio file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
96. The method according to claim 95, wherein the comparison of the input profile with the identified reference profiles results in a best match being found if a percentage of the input profile and the reference profile corresponding to the best match exceeds some minimum value after ignoring mini-matches having an error per second value that is greater than a specified maximum value, and taking into consideration any programmed criteria.
97. An apparatus for matching an input audio file with a plurality of reference audio files, comprising at least one computer configured to:
identify potential matches of an input audio file among a plurality of reference audio files based upon at least one common characteristic; and search for a match of the input audio file among the potential matches.
98. The apparatus according to claim 97, wherein the at least one computer is further configured to identify potential matches of the input audio file among the plurality of reference audio files by associating nodes of a sparse binary tree with the input audio file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference audio files.
99. An apparatus for matching an input audio file with a plurality of reference audio files, comprising at least one computer configured to:
identify potential matches of an input audio file among a plurality of reference audio files based upon at least one common characteristic; and compare an input profile resulting from a measurable attribute of the input audio file with reference profiles resulting from the same measurable attribute of the potential matches to determine a match.
100. The apparatus according to claim 99, wherein the at least one computer is further configured to generate the input profile by:
segmenting the input audio file into chunks representing a period of time; and counting a number of occurrences of a measurable attribute of the input audio file in individual of the chunks.
101. The apparatus according to claim 100, wherein individual of the plurality of reference profiles has been generated from a corresponding one of the plurality of reference audio files by segmenting the reference audio file into chunks representing the period of time, and counting a number of occurrences of the measurable attribute of the reference audio file in individual of the chunks.
102. The apparatus according to claim 101, wherein the plurality of reference profiles are associated with nodes of a sparse binary tree by sampling chunks in individual of the reference profiles so that if a sampled chunk has a measurable attribute satisfying a criterion, then a profile hook including an identification of the reference profile is associated with a node in the sparse binary tree.
103. The apparatus according to claim 102, wherein the profile hook is associated with a node in the sparse binary tree by storing the profile hook at a current node resulting from moving down left or right branch child nodes starting with a root node of the sparse binary tree depending upon whether a current chunk has a measured attribute value greater than a specified value starting with the sampled chunk having the measurable attribute that satisfies the criterion and ending with a last chunk of the reference profile.
104. The apparatus according to claim 103, wherein the at least one computer is further configured to identify potential mini-matches by retrieving profile hooks associated with nodes in the sparse binary tree by identifying profile hooks associated with a current node resulting from moving down left or right branch child nodes starting with the root node of the sparse binary tree depending upon whether a current chunk of the input profile has a measured attribute value greater than the specified value starting with the sampled chunk of the input profile having the measurable attribute that satisfies the criterion and ending with the last chunk of the input profile.
105. The apparatus according to claim 104, wherein the at least one computer is further configured to merge any mini-matches corresponding to the same reference profile and having an offset into the input profile at which the reference profile begins within a specified tolerance.
106. The apparatus according to claim 105, wherein the at least one computer is further configured to identify the input audio file as a spoof if all mini-matches identified for the input profile do not refer to the same reference profile.
107. The apparatus according to claim 106, wherein the at least one computer is further configured to not identify the input audio file as a spoof if the sum of the total audio time covered by the mini-matches is less than a specified threshold value.
108. The apparatus according to claim 107, wherein the at least one computer is further configured to not identify the input audio file as a spoof even if the sum of the total audio time covered by the mini-matches is not less than the specified threshold value, if any of the mini-matches has an associated error per second value that is greater than a first specified maximum value.
109. An apparatus for matching an input file with a plurality of reference files, comprising at least one computer configured to:
identify potential matches of an input file among a plurality of reference files by associating nodes of a sparse binary tree with the input file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference files; and search for a match of the input file among the potential matches.
110. The apparatus according to claim 109, wherein the input file and the reference files include digitized samples of time varying signals.
111. An apparatus for matching an input file with a plurality of reference files, comprising at least one computer configured to:
identify potential matches of an input file among a plurality of reference files by associating nodes of a sparse binary tree with the input file in a same manner used to associate nodes of the sparse binary tree with the plurality of reference files; and compare a profile resulting from a measurable attribute of the input file with profiles resulting from the same measurable attribute of the potential matches to determine a match.
112. The apparatus according to claim 111, wherein the input file and the reference files include digitized samples of time varying signals.
113. An apparatus for matching an input audio file with a plurality of reference audio files, comprising at least one computer configured to:

generate an input profile from an input audio file based upon a measurable attribute also used to generate a plurality of reference profiles from a plurality of reference audio files;
identify potential matches among the plurality of reference profiles with the input profile by processing the input profile in a manner used to associate individual of the plurality of reference profiles with nodes of a sparse binary tree; and compare the input profile with the potential matches to determine a match.
114. An apparatus for matching an input audio file with a plurality of reference audio files, comprising at least one computer configured to:
generate a plurality of reference profiles from a plurality of reference audio files using a measurable attribute;
generate a sparse binary tree by applying a process to the plurality of reference profiles such that identifications of the plurality of reference profiles are associated at resulting nodes of the sparse binary tree;
generate an input profile from the input audio file using the measurable attribute;
apply the process to the input profile so that associated reference profiles are identified from resulting nodes of the sparse binary tree; and compare at least a portion of the input profile with corresponding portions of the identified reference profiles to determine a match.
CA 2564162 2003-09-19 2005-05-05 Using reference files associated with nodes of a tree Expired - Fee Related CA2564162C (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US56888104 true 2004-05-06 2004-05-06
US60/568,881 2004-05-06
US10963306 US7715934B2 (en) 2003-09-19 2004-10-12 Identification of input files using reference files associated with nodes of a sparse binary tree
US10/963,306 2004-10-12
PCT/US2005/015643 WO2005109179A3 (en) 2004-05-06 2005-05-05 Using reference files associated with nodes of a tree

Publications (2)

Publication Number Publication Date
CA2564162A1 true true CA2564162A1 (en) 2005-11-17
CA2564162C CA2564162C (en) 2011-08-23

Family

ID=35320864

Family Applications (1)

Application Number Title Priority Date Filing Date
CA 2564162 Expired - Fee Related CA2564162C (en) 2003-09-19 2005-05-05 Using reference files associated with nodes of a tree

Country Status (4)

Country Link
US (1) US7715934B2 (en)
EP (1) EP1763793A4 (en)
CA (1) CA2564162C (en)
WO (1) WO2005109179A3 (en)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834308B1 (en) * 2000-02-17 2004-12-21 Audible Magic Corporation Method and apparatus for identifying media content presented on a media playing device
US7562012B1 (en) 2000-11-03 2009-07-14 Audible Magic Corporation Method and apparatus for creating a unique audio signature
GB0107104D0 (en) * 2001-03-21 2001-05-09 Netpd Ltd Method and apparatus for identifying electronic files
WO2002082271A1 (en) 2001-04-05 2002-10-17 Audible Magic Corporation Copyright detection and protection system and method
US7877438B2 (en) * 2001-07-20 2011-01-25 Audible Magic Corporation Method and apparatus for identifying new media content
US8972481B2 (en) 2001-07-20 2015-03-03 Audible Magic, Inc. Playlist generation method and apparatus
US8332326B2 (en) * 2003-02-01 2012-12-11 Audible Magic Corporation Method and apparatus to identify a work received by a processing system
US20050203851A1 (en) * 2003-10-25 2005-09-15 Macrovision Corporation Corruption and its deterrence in swarm downloads of protected files in a file sharing network
US20050114709A1 (en) * 2003-10-25 2005-05-26 Macrovision Corporation Demand based method for interdiction of unauthorized copying in a decentralized network
US20050091167A1 (en) * 2003-10-25 2005-04-28 Macrovision Corporation Interdiction of unauthorized copying in a decentralized network
US20050108378A1 (en) * 2003-10-25 2005-05-19 Macrovision Corporation Instrumentation system and methods for estimation of decentralized network characteristics
US20050089014A1 (en) * 2003-10-27 2005-04-28 Macrovision Corporation System and methods for communicating over the internet with geographically distributed devices of a decentralized network using transparent asymetric return paths
US7877810B2 (en) * 2004-03-02 2011-01-25 Rovi Solutions Corporation System, method and client user interface for a copy protection service
US8130746B2 (en) * 2004-07-28 2012-03-06 Audible Magic Corporation System for distributing decoy content in a peer to peer network
US9137115B2 (en) * 2004-12-06 2015-09-15 Bmc Software, Inc. System and method for resource reconciliation in an enterprise management system
EP1667360A1 (en) * 2004-12-06 2006-06-07 BMC Software, Inc. Generic discovery for computer networks
US7809943B2 (en) 2005-09-27 2010-10-05 Rovi Solutions Corporation Method and system for establishing trust in a peer-to-peer network
US7529659B2 (en) * 2005-09-28 2009-05-05 Audible Magic Corporation Method and apparatus for identifying an unknown work
US20070124293A1 (en) * 2005-11-01 2007-05-31 Ohigo, Inc. Audio search system
US8086722B2 (en) * 2005-12-21 2011-12-27 Rovi Solutions Corporation Techniques for measuring peer-to-peer (P2P) networks
US7912894B2 (en) * 2007-05-15 2011-03-22 Adams Phillip M Computerized, copy-detection and discrimination apparatus and method
US8006314B2 (en) 2007-07-27 2011-08-23 Audible Magic Corporation System for identifying content of digital data
US20150006411A1 (en) * 2008-06-11 2015-01-01 James D. Bennett Creative work registry
US20100161577A1 (en) * 2008-12-19 2010-06-24 Bmc Software, Inc. Method of Reconciling Resources in the Metadata Hierarchy
US8199651B1 (en) 2009-03-16 2012-06-12 Audible Magic Corporation Method and system for modifying communication flows at a port level
US8712979B2 (en) * 2010-03-26 2014-04-29 Bmc Software, Inc. Statistical identification of instances during reconciliation process
US8688631B2 (en) 2011-03-17 2014-04-01 Alexander Savenok System and method for media file synchronization
US8478719B2 (en) 2011-03-17 2013-07-02 Remote Media LLC System and method for media file synchronization
US8589171B2 (en) 2011-03-17 2013-11-19 Remote Media, Llc System and method for custom marking a media file for file matching
US8908692B2 (en) * 2012-04-25 2014-12-09 Realtek Semiconductor Corp. Device for realizing upstream aggregation and downstream translation of a virtual local area network and method thereof
US9081778B2 (en) 2012-09-25 2015-07-14 Audible Magic Corporation Using digital fingerprints to associate data with a work
GB201220084D0 (en) 2012-11-07 2012-12-19 Ibm Storing data files in a file system
US9158799B2 (en) 2013-03-14 2015-10-13 Bmc Software, Inc. Storing and retrieving context sensitive data in a management system
CN104320690B (en) * 2014-10-13 2018-02-16 四川长虹电器股份有限公司 A television playback method and terminal TV
CN104992713A (en) * 2015-05-14 2015-10-21 电子科技大学 Fast audio comparing method

Family Cites Families (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4790017A (en) * 1983-03-10 1988-12-06 American Telephone And Telegraph Company, At&T Bell Laboratories Speech processing feature generation arrangement
US5437050A (en) * 1992-11-09 1995-07-25 Lamb; Robert G. Method and apparatus for recognizing broadcast information using multi-frequency magnitude detection
CN1912885B (en) 1995-02-13 2010-12-22 英特特拉斯特技术公司 Systems and methods for secure transaction management and electronic rights protection
US7069451B1 (en) 1995-02-13 2006-06-27 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
JP3865775B2 (en) * 1995-04-11 2007-01-10 キネテック インコーポレイテッド Identification data in a data processing system
US6003030A (en) 1995-06-07 1999-12-14 Intervu, Inc. System and method for optimized storage and retrieval of data on a distributed computer network
US5918223A (en) * 1996-07-22 1999-06-29 Muscle Fish Method and article of manufacture for content-based analysis, storage, retrieval, and segmentation of audio information
US5708759A (en) * 1996-11-19 1998-01-13 Kemeny; Emanuel S. Speech recognition using phoneme waveform parameters
US5925843A (en) * 1997-02-12 1999-07-20 Virtual Music Entertainment, Inc. Song identification and synchronization
US5914714A (en) 1997-04-01 1999-06-22 Microsoft Corporation System and method for changing the characteristics of a button by direct manipulation
US5956671A (en) * 1997-06-04 1999-09-21 International Business Machines Corporation Apparatus and methods for shift invariant speech recognition
US6112239A (en) 1997-06-18 2000-08-29 Intervu, Inc System and method for server-side optimization of data delivery on a distributed computer network
US6553403B1 (en) * 1998-06-03 2003-04-22 International Business Machines Corporation System, method and computer program product for monitoring in a distributed computing environment
US6321338B1 (en) 1998-11-09 2001-11-20 Sri International Network surveillance
US6625643B1 (en) 1998-11-13 2003-09-23 Akamai Technologies, Inc. System and method for resource management on a data network
GB9918611D0 (en) * 1999-08-07 1999-10-13 Sibelius Software Ltd Music database searching
US7020701B1 (en) 1999-10-06 2006-03-28 Sensoria Corporation Method for collecting and processing data using internetworked wireless integrated network sensors (WINS)
US6188010B1 (en) * 1999-10-29 2001-02-13 Sony Corporation Music search by melody input
US7155723B2 (en) 2000-07-19 2006-12-26 Akamai Technologies, Inc. Load balancing service
US6754699B2 (en) 2000-07-19 2004-06-22 Speedera Networks, Inc. Content delivery and global traffic management network system
US6678680B1 (en) * 2000-01-06 2004-01-13 Mark Woo Music search engine
US6665726B1 (en) 2000-01-06 2003-12-16 Akamai Technologies, Inc. Method and system for fault tolerant media streaming over the internet
US7072934B2 (en) 2000-01-14 2006-07-04 Saba Software, Inc. Method and apparatus for a business applications server management system platform
US6981180B1 (en) 2000-03-16 2005-12-27 Akamai Technologies, Inc. Method and apparatus for testing request-response service using live connection traffic
US20010037314A1 (en) * 2000-03-30 2001-11-01 Ishikawa Mark M. System, method and apparatus for authenticating the distribution of data
US6928545B1 (en) 2000-04-09 2005-08-09 Vidius Inc. Network content access control
US7185052B2 (en) 2001-05-16 2007-02-27 Akamai Technologies, Inc. Meta content delivery network system
CA2450394C (en) 2000-05-26 2011-07-19 Akamai Technologies, Inc. Global load balancing across mirrored data centers
US20020049760A1 (en) 2000-06-16 2002-04-25 Flycode, Inc. Technique for accessing information in a peer-to-peer network
US6990453B2 (en) * 2000-07-31 2006-01-24 Landmark Digital Services Llc System and methods for recognizing sound and music signals in high noise and distortion
US6732180B1 (en) * 2000-08-08 2004-05-04 The University Of Tulsa Method to inhibit the identification and retrieval of proprietary media via automated search engines utilized in association with computer compatible communications network
WO2002033505A3 (en) * 2000-10-16 2003-01-30 Ariel Peled A method and apparatus for supporting electronic content distribution
KR20020030610A (en) * 2000-10-19 2002-04-25 스톰 씨엔씨 인코포레이티드 A method for preventing reduction of sales amount of phonograph records by way of digital music file unlawfully circulated through communication network
US7072982B2 (en) 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
US7594030B2 (en) 2000-11-22 2009-09-22 Microsoft Corporation Locator and tracking service for peer to peer resources
JP4162181B2 (en) 2000-11-27 2008-10-08 ヤマハ株式会社 Program production reproducing apparatus and program preparation reproducing method and storage medium
US7627897B2 (en) * 2001-01-03 2009-12-01 Portauthority Technologies Inc. Method and apparatus for a reactive defense against illegal distribution of multimedia content in file sharing networks
US7350228B2 (en) * 2001-01-23 2008-03-25 Portauthority Technologies Inc. Method for securing digital content
US7681032B2 (en) 2001-03-12 2010-03-16 Portauthority Technologies Inc. System and method for monitoring unauthorized transport of digital content
US20030095660A1 (en) 2001-10-15 2003-05-22 Overpeer, Inc. System and method for protecting digital works on a communication network
US8041803B2 (en) * 2001-09-26 2011-10-18 Qurio Holdings, Inc. Method and system for delivering files in digital file marketplace
GB0107104D0 (en) * 2001-03-21 2001-05-09 Netpd Ltd Method and apparatus for identifying electronic files
JP2004534274A (en) * 2001-03-23 2004-11-11 インスティチュート・フォー・インフォコム・リサーチ Method and system for displaying musical information in a digital display for use in content-based multimedia indexing
JP2002297490A (en) * 2001-03-30 2002-10-11 Toshiba Corp Apparatus and method for data delivery
US20020141387A1 (en) * 2001-04-03 2002-10-03 David Orshan System, method and computer program product for delivery of internet services from a central system to multiple internet service providers at guaranteed service levels
US7580988B2 (en) 2001-04-05 2009-08-25 Intertrust Technologies Corporation System and methods for managing the distribution of electronic content
WO2002082271A1 (en) 2001-04-05 2002-10-17 Audible Magic Corporation Copyright detection and protection system and method
US20020152262A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US20020152261A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US7065482B2 (en) * 2001-05-17 2006-06-20 International Business Machines Corporation Internet traffic analysis tool
US7356487B2 (en) 2001-06-14 2008-04-08 Qurio Holdings, Inc. Efficient transportation of digital files in a peer-to-peer file delivery network
US7383433B2 (en) 2001-07-31 2008-06-03 Sun Microsystems, Inc. Trust spectrum for certificate distribution in distributed peer-to-peer networks
US7203753B2 (en) 2001-07-31 2007-04-10 Sun Microsystems, Inc. Propagating and updating trust relationships in distributed peer-to-peer networks
US7793326B2 (en) * 2001-08-03 2010-09-07 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator
US7260215B2 (en) * 2001-09-04 2007-08-21 Portauthority Technologies Inc. Method for encryption in an un-trusted environment
US20030093794A1 (en) * 2001-11-13 2003-05-15 Koninklijke Philips Electronics N.V. Method and system for personal information retrieval, update and presentation
US20030097299A1 (en) * 2001-11-21 2003-05-22 O'kane Robert Peer-to-peer (P2P) and internet content digital acknowledgement trigger used for file transfer
WO2003052614A1 (en) 2001-12-17 2003-06-26 Stargazer Foundation, Inc. System and method for disseminating knowledge over a global computer network
US6892227B1 (en) 2001-12-21 2005-05-10 Networks Associates Technology, Inc. Enterprise network analyzer host controller/zone controller interface system and method
US20030130953A1 (en) * 2002-01-09 2003-07-10 Innerpresence Networks, Inc. Systems and methods for monitoring the presence of assets within a system and enforcing policies governing assets
US7565155B2 (en) 2002-04-10 2009-07-21 Networks In Motion Method and system for dynamic estimation and predictive route generation
US7367044B2 (en) 2002-06-14 2008-04-29 Clink Systems, Ltd. System and method for network operation
US6931413B2 (en) * 2002-06-25 2005-08-16 Microsoft Corporation System and method providing automated margin tree analysis and processing of sampled data
JP2004032364A (en) * 2002-06-26 2004-01-29 Matsushita Electric Ind Co Ltd Network system
WO2004015952A3 (en) 2002-08-06 2004-12-16 Brainshield Technologies Inc Device for carrying out the copy-protected distribution of electronic documents
EP1529367A4 (en) 2002-08-06 2011-08-03 Privaris Inc Methods for secure enrollment and backup of personal identity credentials into electronic devices
US7484225B2 (en) 2002-08-08 2009-01-27 Sun Microsystems, Inc. System and method for describing and identifying abstract software modules in peer-to-peer network environments
US7487509B2 (en) 2002-08-08 2009-02-03 Sun Microsystems, Inc. System and method for providing multiple embodiments of abstract software modules in peer-to-peer network environments
US7376749B2 (en) 2002-08-12 2008-05-20 Sandvine Incorporated Heuristics-based peer to peer message routing
US7136922B2 (en) 2002-10-15 2006-11-14 Akamai Technologies, Inc. Method and system for providing on-demand content delivery for an origin server
US7549047B2 (en) 2002-11-21 2009-06-16 Xerox Corporation Method and system for securely sharing files
US6947386B2 (en) 2002-12-06 2005-09-20 Microsoft Corporation Practical network node coordinate estimation
JP2004258777A (en) 2003-02-24 2004-09-16 Fujitsu Ltd Security monitoring device, its system, its method and its program
US7313619B2 (en) 2003-03-21 2007-12-25 Intel Corporation System and method for managing distributed objects as a single representation
US7143170B2 (en) 2003-04-30 2006-11-28 Akamai Technologies, Inc. Automatic migration of data via a distributed computer network
US7409644B2 (en) 2003-05-16 2008-08-05 Microsoft Corporation File system shell
GB0315886D0 (en) 2003-07-07 2003-08-13 Way Benjamin B P Anti-piracy system
US20050108378A1 (en) * 2003-10-25 2005-05-19 Macrovision Corporation Instrumentation system and methods for estimation of decentralized network characteristics
US20050203851A1 (en) 2003-10-25 2005-09-15 Macrovision Corporation Corruption and its deterrence in swarm downloads of protected files in a file sharing network
US20050114709A1 (en) 2003-10-25 2005-05-26 Macrovision Corporation Demand based method for interdiction of unauthorized copying in a decentralized network
US20050091167A1 (en) * 2003-10-25 2005-04-28 Macrovision Corporation Interdiction of unauthorized copying in a decentralized network
US20050089014A1 (en) * 2003-10-27 2005-04-28 Macrovision Corporation System and methods for communicating over the internet with geographically distributed devices of a decentralized network using transparent asymetric return paths
US7660889B2 (en) 2003-11-18 2010-02-09 Cisco Technology, Inc. Initialization and acquisition of peers in a peers' list in a peer-to-peer network
US20050198317A1 (en) 2004-02-24 2005-09-08 Byers Charles C. Method and apparatus for sharing internet content
US7877810B2 (en) 2004-03-02 2011-01-25 Rovi Solutions Corporation System, method and client user interface for a copy protection service
US20050267945A1 (en) 2004-04-08 2005-12-01 Ori Cohen Systems and methods for deterring internet file-sharing networks
CA2569714A1 (en) 2004-06-08 2005-12-22 Dartdevices Corporation Architecture, apparatus and method for device team recruitment and content renditioning for universal device interoperability platform
US7809943B2 (en) 2005-09-27 2010-10-05 Rovi Solutions Corporation Method and system for establishing trust in a peer-to-peer network
US8086722B2 (en) 2005-12-21 2011-12-27 Rovi Solutions Corporation Techniques for measuring peer-to-peer (P2P) networks

Also Published As

Publication number Publication date Type
WO2005109179A3 (en) 2006-03-09 application
EP1763793A2 (en) 2007-03-21 application
US20050216433A1 (en) 2005-09-29 application
US7715934B2 (en) 2010-05-11 grant
WO2005109179A2 (en) 2005-11-17 application
EP1763793A4 (en) 2011-06-08 application
CA2564162C (en) 2011-08-23 grant

Similar Documents

Publication Publication Date Title
Peskir A change-of-variable formula with local time on surfaces
Suzuki Perturbative derivation of exact superpotential for meson fields from matrix theories with one flavour
Aksoy et al. Exponential rational function method for space–time fractional differential equations
Helffer et al. 18. Epilogue
Ma Estimates on some power nonlinear Volterra–Fredholm type discrete inequalities and their applications
WO2008102681A1 (en) Circuit operation worst condition decision system, method, and program
Nucci Lie symmetries of a Painlevé-type equation without Lie symmetries
Khalique Solutions and conservation laws of Benjamin–Bona–Mahony–Peregrine equation with power-law and dual power-law nonlinearities
Berezansky et al. New stability conditions for linear differential equations with several delays
Dym A note on limit theorems for the entropy of Markov chains
Merkle Inequalities for the gamma function via convexity
Hristova Nonlinear delay integral inequalities for piecewise continuous functions and applications
DE20217616U1 (en) Cryptographic apparatus such as a smart card with implementation of point multiplication on elliptical curves resistant to side channel effects
JP2011052991A (en) Device for improving s/n characteristics
Sung Complete q th moment convergence for arrays of random variables
Liu et al. An adaptive observer design for auto-synchronization of Lorenz system
Landes et al. Some aspects of polyadic inductive logic
WO2008052132A3 (en) Pattern-based filtering of query input
Miller et al. Double integral starlike operators
Set et al. Hermite Hadamard Type Inequalities for s-Convex Stochastic Processes in the Second Sense
Nucci et al. λ-symmetries and Jacobi last multiplier
mostafa El-Owaidy et al. On some new nonlinear integral inequalities of Gronwall-Bellman type
WO2009072233A1 (en) Bit string merge sort device, method, and program
Fournier Cases of Equality for a Class of Bound-Preserving Operators over P n
Duc et al. Exponential stability of stochastic evolution equations driven by small fractional Brownian motion with Hurst parameter in (1/2, 1)

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20180507