CA2564162A1 - Using reference files associated with nodes of a tree - Google Patents
Using reference files associated with nodes of a tree Download PDFInfo
- Publication number
- CA2564162A1 CA2564162A1 CA002564162A CA2564162A CA2564162A1 CA 2564162 A1 CA2564162 A1 CA 2564162A1 CA 002564162 A CA002564162 A CA 002564162A CA 2564162 A CA2564162 A CA 2564162A CA 2564162 A1 CA2564162 A1 CA 2564162A1
- Authority
- CA
- Canada
- Prior art keywords
- profile
- input
- chunks
- matches
- chunk
- 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
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/632—Query formulation
- G06F16/634—Query by example, e.g. query by humming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/121—Musical 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/131—Library retrieval, i.e. searching a database or selecting a specific musical piece, segment, pattern, rule or parameter set
- G10H2240/141—Library 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 proces s 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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US56888104P | 2004-05-06 | 2004-05-06 | |
US60/568,881 | 2004-05-06 | ||
US10/963,306 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 WO2005109179A2 (en) | 2004-05-06 | 2005-05-05 | Using reference files associated with nodes of a tree |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2564162A1 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 |
---|---|---|---|
CA2564162A Expired - Fee Related CA2564162C (en) | 2004-05-06 | 2005-05-05 | Using reference files associated with nodes of a tree |
Country Status (5)
Country | Link |
---|---|
US (1) | US7715934B2 (en) |
EP (1) | EP1763793A4 (en) |
AU (1) | AU2005241532B2 (en) |
CA (1) | CA2564162C (en) |
WO (1) | WO2005109179A2 (en) |
Families Citing this family (38)
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 |
EP1490767B1 (en) * | 2001-04-05 | 2014-06-11 | Audible Magic Corporation | Copyright detection and protection system and method |
US7529659B2 (en) * | 2005-09-28 | 2009-05-05 | Audible Magic Corporation | Method and apparatus for identifying an unknown work |
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 |
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 |
US20050114709A1 (en) * | 2003-10-25 | 2005-05-26 | Macrovision Corporation | Demand based method for interdiction of unauthorized copying in a decentralized network |
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 |
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 |
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 |
US10831724B2 (en) * | 2008-12-19 | 2020-11-10 | 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 |
US8589171B2 (en) | 2011-03-17 | 2013-11-19 | Remote Media, Llc | System and method for custom marking a media file for file matching |
US8478719B2 (en) | 2011-03-17 | 2013-07-02 | Remote Media LLC | System and method for media file synchronization |
US8688631B2 (en) | 2011-03-17 | 2014-04-01 | Alexander Savenok | System and method for media file synchronization |
US10127296B2 (en) | 2011-04-07 | 2018-11-13 | Bmc Software, Inc. | Cooperative naming for configuration items in a distributed configuration management database environment |
TWI510028B (en) * | 2012-04-25 | 2015-11-21 | 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 |
GB2507751A (en) | 2012-11-07 | 2014-05-14 | Ibm | Storing data files in a file system which provides reference data files |
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 kind of television broadcasting method and terminal televisions |
CN104992713B (en) * | 2015-05-14 | 2018-11-13 | 电子科技大学 | A kind of quick broadcast audio comparison method |
US9516377B1 (en) * | 2015-06-12 | 2016-12-06 | Sorenson Media, Inc. | Detecting channel change in automatic content recognition fingerprint matching |
WO2017212206A1 (en) * | 2016-06-06 | 2017-12-14 | Cirrus Logic International Semiconductor Limited | Voice user interface |
Family Cites Families (89)
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 |
US7069451B1 (en) | 1995-02-13 | 2006-06-27 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
ATE441897T1 (en) | 1995-02-13 | 2009-09-15 | Intertrust Tech Corp | SYSTEMS AND METHODS FOR MANAGING SECURED TRANSACTIONS AND PROTECTING ELECTRONIC RIGHTS |
JP3865775B2 (en) * | 1995-04-11 | 2007-01-10 | キネテック インコーポレイテッド | Data identification in data processing systems |
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 |
US6850893B2 (en) | 2000-01-14 | 2005-02-01 | Saba Software, Inc. | Method and apparatus for an improved security system mechanism in a business applications management system platform |
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 |
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 |
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 |
IL135555A0 (en) | 2000-04-09 | 2001-05-20 | Vidius Inc | Preventing unauthorized access to data sent via computer networks |
JP4690628B2 (en) | 2000-05-26 | 2011-06-01 | アカマイ テクノロジーズ インコーポレイテッド | How to determine which mirror site should receive end-user content requests |
US20020049760A1 (en) | 2000-06-16 | 2002-04-25 | Flycode, Inc. | Technique for accessing information in a peer-to-peer network |
US7155723B2 (en) | 2000-07-19 | 2006-12-26 | Akamai Technologies, Inc. | Load balancing service |
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 |
AU2002212640A1 (en) * | 2000-10-16 | 2002-04-29 | Vidius Inc. | 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 |
US7594030B2 (en) | 2000-11-22 | 2009-09-22 | Microsoft Corporation | Locator and tracking service for peer to peer resources |
US7072982B2 (en) | 2000-11-22 | 2006-07-04 | Microsoft Corporation | Universal naming scheme for peer to peer resources |
JP4162181B2 (en) | 2000-11-27 | 2008-10-08 | ヤマハ株式会社 | Program creation / playback apparatus, program creation / playback 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 |
GB0107104D0 (en) | 2001-03-21 | 2001-05-09 | Netpd Ltd | Method and apparatus for identifying electronic files |
WO2003005242A1 (en) * | 2001-03-23 | 2003-01-16 | Kent Ridge Digital Labs | Method and system of representing musical information in a digital representation for use in content-based multimedia information retrieval |
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 |
EP1490767B1 (en) | 2001-04-05 | 2014-06-11 | 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 |
US7185052B2 (en) | 2001-05-16 | 2007-02-27 | Akamai Technologies, Inc. | Meta content delivery network system |
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 |
US7203753B2 (en) | 2001-07-31 | 2007-04-10 | Sun Microsystems, Inc. | Propagating and updating trust relationships in distributed peer-to-peer networks |
US7383433B2 (en) | 2001-07-31 | 2008-06-03 | Sun Microsystems, Inc. | Trust spectrum for certificate distribution 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 |
US8041803B2 (en) * | 2001-09-26 | 2011-10-18 | Qurio Holdings, Inc. | Method and system for delivering files in digital file marketplace |
US20030095660A1 (en) | 2001-10-15 | 2003-05-22 | Overpeer, Inc. | System and method for protecting digital works on a communication network |
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 |
CA2494299C (en) | 2002-08-06 | 2013-10-08 | Privaris, Inc. | Methods for secure enrollment and backup of personal identity credentials into electronic devices |
WO2004015952A2 (en) | 2002-08-06 | 2004-02-19 | Brainshield Technologies Inc. | Device for carrying out the copy-protected distribution of electronic documents |
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 |
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 |
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 |
US7409644B2 (en) | 2003-05-16 | 2008-08-05 | Microsoft Corporation | File system shell |
US7143170B2 (en) | 2003-04-30 | 2006-11-28 | Akamai Technologies, Inc. | Automatic migration of data via a distributed computer network |
GB0315886D0 (en) | 2003-07-07 | 2003-08-13 | Way Benjamin B P | Anti-piracy 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 |
US20050108378A1 (en) * | 2003-10-25 | 2005-05-19 | Macrovision Corporation | Instrumentation system and methods for estimation of decentralized network characteristics |
US20050091167A1 (en) * | 2003-10-25 | 2005-04-28 | Macrovision Corporation | Interdiction of unauthorized copying in a decentralized network |
US20050114709A1 (en) * | 2003-10-25 | 2005-05-26 | Macrovision Corporation | Demand based method for 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 |
WO2005121950A2 (en) | 2004-06-08 | 2005-12-22 | Dartdevices Corporation | Architecture apparatus and method for seamless 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 |
-
2004
- 2004-10-12 US US10/963,306 patent/US7715934B2/en active Active
-
2005
- 2005-05-05 AU AU2005241532A patent/AU2005241532B2/en not_active Ceased
- 2005-05-05 CA CA2564162A patent/CA2564162C/en not_active Expired - Fee Related
- 2005-05-05 WO PCT/US2005/015643 patent/WO2005109179A2/en active Application Filing
- 2005-05-05 EP EP05745729A patent/EP1763793A4/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US7715934B2 (en) | 2010-05-11 |
AU2005241532B2 (en) | 2009-01-08 |
EP1763793A4 (en) | 2011-06-08 |
CA2564162C (en) | 2011-08-23 |
WO2005109179A2 (en) | 2005-11-17 |
EP1763793A2 (en) | 2007-03-21 |
AU2005241532A1 (en) | 2005-11-17 |
WO2005109179A3 (en) | 2006-03-09 |
US20050216433A1 (en) | 2005-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2564162A1 (en) | Using reference files associated with nodes of a tree | |
KR101609088B1 (en) | Media identification system with fingerprint database balanced according to search loads | |
US10303800B2 (en) | System and method for optimization of audio fingerprint search | |
Bernstein et al. | A scalable system for identifying co-derivative documents | |
CN107403075B (en) | Comparison method, device and system | |
US8731292B2 (en) | Method and apparatus for comparing videos | |
CA2566540A1 (en) | Device and method for analyzing an information signal | |
AU2016201689A1 (en) | Methods and systems for searching logical patterns | |
TW201931164A (en) | Text quality index obtaining method and apparatus | |
CN107609149B (en) | Video positioning method and device | |
CN108875062B (en) | Method and device for determining repeated video | |
CN109189840B (en) | Streaming online log analysis method | |
CN107493641B (en) | Light control method and device driven by music | |
Burred | Genetic motif discovery applied to audio analysis | |
AU2018238195A1 (en) | "processing of sequencing data streams" | |
US20130226941A1 (en) | System and method for classifying signals using the bloom filter | |
US11429616B2 (en) | Data recording and analysis system | |
CN109408727B (en) | Intelligent user attention information recommendation method and system based on multidimensional perception data | |
CN111538839A (en) | Real-time text clustering method based on Jacobsard distance | |
CN105224697A (en) | Sort method with filtercondition and the device for performing described method | |
CN107784128B (en) | Method and system for storing and retrieving digital audio fingerprint big data | |
Liu et al. | A computationally efficient algorithm for large scale near-duplicate video detection | |
CN117668527B (en) | Multi-feature recognition method and system under large-flow model | |
Yoon et al. | Content-based classification of music using VQ-multifeature clustering technique | |
CN110929002A (en) | Similar article duplicate removal method, device, terminal and computer readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |
Effective date: 20180507 |
|
MKLA | Lapsed |
Effective date: 20180507 |