KR101740271B1 - Method and device for constructing on-line real-time updating of massive audio fingerprint database - Google Patents

Method and device for constructing on-line real-time updating of massive audio fingerprint database Download PDF

Info

Publication number
KR101740271B1
KR101740271B1 KR1020160004208A KR20160004208A KR101740271B1 KR 101740271 B1 KR101740271 B1 KR 101740271B1 KR 1020160004208 A KR1020160004208 A KR 1020160004208A KR 20160004208 A KR20160004208 A KR 20160004208A KR 101740271 B1 KR101740271 B1 KR 101740271B1
Authority
KR
South Korea
Prior art keywords
audio fingerprints
key value
audio
key
same
Prior art date
Application number
KR1020160004208A
Other languages
Korean (ko)
Other versions
KR20160100226A (en
Inventor
레이 왕
Original Assignee
레이 왕
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
Application filed by 레이 왕 filed Critical 레이 왕
Publication of KR20160100226A publication Critical patent/KR20160100226A/en
Application granted granted Critical
Publication of KR101740271B1 publication Critical patent/KR101740271B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • G06F17/30778
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • G06F16/2386Bulk updating operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/61Indexing; Data structures therefor; Storage structures
    • G06F17/30377
    • G06F17/30743
    • G06F17/30755
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Library & Information Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스의 구축 방법에 있어서, 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계; 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계, 상기 인덱스 리스트 내 상기 키 값 각각을 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)시키는 단계; 및 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 계속적으로 저장하는 단계를 포함하는, 오디오 핑거프린트 데이터베이스 구축 방법이 개시된다.A method of constructing an audio fingerprint database updated on-line in real time, comprising: establishing correspondence between audio fingerprints having the same key value and the key value; Establishing an index list including audio fingerprints corresponding to the key value and the key value, pointing each of the key values in the index list to audio fingerprints corresponding to each of the key values in a pointer manner pointing; And continuously storing the audio fingerprints having the same key value.

Description

온라인 상에서 실시간으로 업데이트되는 대규모 오디오 핑거프린트 데이터베이스의 구축 방법 및 장치{METHOD AND DEVICE FOR CONSTRUCTING ON-LINE REAL-TIME UPDATING OF MASSIVE AUDIO FINGERPRINT DATABASE}METHOD AND DEVICE FOR CONSTRUCTION ON-LINE REAL-TIME UPDATING OF MASSIVE AUDIO FINGERPRINT DATABASE < RTI ID = 0.0 >

본 발명은 오디오 핑거프린트 인식 기술 분야에 관한 것으로서, 상세하게는 온라인 상에서 실시간으로 업데이트되는 대규모 오디오 핑거프린트 데이터베이스의 구축 방법 및 장치에 관한 것이다.
Field of the Invention [0002] The present invention relates to an audio fingerprint recognition technology, and more particularly, to a method and apparatus for constructing a large scale audio fingerprint database that is updated on-line in real time.

대규모 오디오 핑거프린트 데이터베이스의 업데이트 방법에 있어서, 인덱스 데이터가 메모리 일부에 계속적으로 저장되기 때문에, 종래의 기술에 따라 온라인 상에서 오디오 핑거프린트 인덱스 데이터를 추가, 삭제하는 것은 매우 어려우며, 모든 업데이트는 서버를 재시작해야 한다. 도 1에 도시된 바와 같이, 종래 기술에 따르면, 대규모 오디오 핑거프린트 인덱스 데이터베이스는 일반적으로 복수의 고정된 소형 오디오 핑거프린트 데이터베이스(piece 1, piece 2, …, piece n)로 분할되며, 일정 수만큼의 새로운 데이터가 축적된 이후, 오프라인 상에서 꽉 차지 않은 마지막 오디오 핑거프린트 데이터베이스(piece n)를 재구축하고, 서비스를 재시작(서비스를 재시작하고 piece n을 업데이트) 하고, 온라인 상의 최신 오디오 핑거프린트 데이터베이스를 대체하여야 한다. 그러므로, 오프라인 상에서 데이터베이스를 구축하고 서비스를 재시작하는 인덱스 데이터 업데이트 방법은 작업이 번거롭다는 특유의 결점을 가지고 있으며, 제 시간에 업데이트되지 않고, 새로운 노래 검색 서비스를 제 시간에 제공할 수 없음을 알 수 있다.
In the method of updating a large-scale audio fingerprint database, it is very difficult to add and delete audio fingerprint index data on-line according to the conventional technique because the index data is continuously stored in a part of the memory, Should be. As shown in Figure 1, according to the prior art, a large-scale audio fingerprint index database is generally divided into a plurality of fixed miniature audio fingerprint databases (piece 1, piece 2, ..., piece n) After restarting the service (restarting the service and updating the piece n), the latest audio fingerprint database on-line is rebuilt, Should be replaced. Therefore, the method of updating the index data to build the database offline and restart the service has its own drawbacks that it is cumbersome and does not update on time and can not provide a new song search service on time .

이러한 목적을 위해, 본 발명은, 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 방법 및 장치를 제안하여, 종래 기술에 따른 불편한, 온라인 상에서 실시간으로 업데이트되는 대규모 오디오 핑거프린트 데이터베이스의 기술적 문제를 해결할 수 있도록 한다.
For this purpose, the present invention proposes a method and an apparatus for constructing an audio fingerprint database that is updated on-line in real time, and solves the technical problem of a large-scale audio fingerprint database that is inconvenient and is updated on- .

본 발명은 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스의 구축 방법에 있어서, 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계; 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계, 상기 인덱스 리스트 내 상기 키 값 각각을 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)시키는 단계; 및 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 계속적으로 저장하는 단계를 포함하며, 상기 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계는, 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 동일한 어레이로 분류하는 단계를 포함하며, 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계는, 상기 인덱스 리스트에 상기 키 값들과 동일한 숫자를 가지는 어레이를 포함시키는 단계를 포함하는, 오디오 핑거프린트 데이터베이스 구축 방법을 제공한다.
The present invention provides a method of constructing an audio fingerprint database updated on-line in real time, comprising: establishing a correspondence relationship between audio fingerprints having the same key value and the key value; Establishing an index list including audio fingerprints corresponding to the key value and the key value, pointing each of the key values in the index list to audio fingerprints corresponding to each of the key values in a pointer manner pointing; And continuously storing the audio fingerprints having the same key value, wherein the step of establishing a correspondence relation between the audio fingerprints having the same key value and the key value comprises: Wherein the step of classifying the audio fingerprints into the same array comprises establishing an index list including audio fingerprints corresponding to the key value and the key value, The method comprising the steps of: providing an audio fingerprint database;

본 발명은 온라인 서비스 엔진이 노래 핑거프린트의 실시간 추가, 삭제를 지원하여 검색 서비스에 지장 없이 1초 이내에 완료될 수 있도록 하여, 오프라인 데이터베이스 구축 및 서비스 재시작에 의해 초래되는 시간을 소모하는 번거로운 작업을 회피하고, 대규모 오디오 핑거프린트 데이터베이스의 데이터의 시기적절함을 보장하며; 제2 단계의 데이터 업데이트 시 요구되는 응답성을 실현하고, 오디오 데이터의 검색 서비스, 즉 온라인 서비스로서 의미를 가지는 온라인 상의 서비스에서 최신 노래들을 추가할 수 있고, 시기가 지난 의심스러운 노래들을 삭제할 수 있다.
The present invention enables online service engine to add and delete song fingerprints in real time so that it can be completed within one second without interfering with the search service, thereby avoiding troublesome work that consumes time caused by offline database construction and service restart And ensures timeliness of data in a large scale audio fingerprint database; It is possible to realize the responsiveness required when updating the data in the second step, to add the latest songs in the online service, which is a search service of audio data, that is, as an online service, and to delete suspicious songs .

도 1은 종래 기술에 따른 업데이트되는 대규모 오디오 핑거프린트 데이터베이스 구축 방법을 나타낸 구조도
도 2는 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 방법을 설명하기 위한 흐름도
도 3은 동일한 키 값을 가지는 오디오 핑거프린트들과 키 값 사이의 대응 관계를 나타내는 구조도
도 4는 인덱스 리스트 단계의 실시예를 나타내는 구조도
도 5는 인덱스 리스트를 나타낸 구조도
도 6은 키 값 및 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트의 구축 단계의 구체적인 작업을 나타낸 흐름도
도 7은 온라인 상에서 실시간으로 오디오 핑거프린트 데이터베이스를 추가하는 작업을 나타낸 흐름도
도 8은 온라인 상에서 오디오 핑거프린트들을 삭제하는 작업을 나타낸 흐름도
도 9는 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 장치를 나타낸 구조도
도 10은 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 장치를 나타낸 구조도
도 11은 온라인 상에서 오디오 핑거프린트들을 삭제하는 장치를 나타낸 구조도
도 12는 온라인 상에서 실시간으로 업데이트를 지원하는 대규모 오디오 핑거프린트 데이터베이스를 나타낸 구조도
도 13은 온라인 상에서 실시간으로 오디오 핑거프린트를 추가하는 방법을 나타낸 구조도
도 14는 온라인 상에서 실시간으로 오디오 핑거프린트를 삭제하는 방법을 나타낸 구조도
FIG. 1 is a structural diagram illustrating a method for constructing an updated large-scale audio fingerprint database according to the prior art
2 is a flowchart for explaining a method of constructing an audio fingerprint database updated on-line in real time
FIG. 3 is a schematic diagram showing a correspondence relationship between audio fingerprints and key values having the same key value.
4 is a schematic diagram illustrating an embodiment of an index list step
5 is a schematic diagram showing an index list
6 is a flowchart showing a specific operation of the step of constructing an index list including audio fingerprints corresponding to key values and key values, respectively
7 is a flowchart showing an operation of adding an audio fingerprint database on-line in real time
8 is a flowchart showing an operation for deleting audio fingerprints on-line
9 is a structural diagram showing an apparatus for constructing an audio fingerprint database updated on-line in real time
10 is a structural diagram showing an apparatus for constructing an audio fingerprint database updated on-line in real time
11 is a structural diagram showing an apparatus for deleting audio fingerprints on-line
12 is a schematic diagram showing a large-scale audio fingerprint database supporting online updating in real time
13 is a structural diagram showing a method of adding an audio fingerprint in real time on-line
14 is a structural diagram showing a method of deleting an audio fingerprint on-line in real time

본 발명에 포함된 용어들: "계속적 저장(continuous storage)"이라는 용어는, 기존의 파일 정보 이후에 새롭게 추가된 파일 컨텐츠 정보를 계속적으로 보충하고 추가하는 것을 의미하며, 이는 일련번호를 통해 차기 절차를 계속적으로 추가하는 단계 또는 앞서 저장된 파일 유형의 동일한 파일 주소를 가지는 파일을 병렬 저장하는 단계와 유사하며, 순차적으로 병렬 저장하는 것을 의미한다. "딜레이-삭제(delay-deleting)"라는 용어는, 일정 시간 간격만큼 지연시킨 후에 삭제 대상 파일을 삭제하는 것을 의미하며, 삭제 전에 상기 삭제 대상 파일이 정상적으로 액세싱 되거나 브라우징될 수 있고, 상기 파일은 실행중인 액세싱이 완료된 후 삭제되며; 본 발명의 바람직한 삭제 솔루션은, 지연 후, 현재 스레드(thread)의 정상적인 사용에 지장없이, 백그라운드 스레드(background thread)를 통해 동시 삭제를 수행하는 것이다.Terms included in the present invention: The term "continuous storage" means continually supplementing and adding newly added file content information after existing file information, Or storing files having the same file address of the previously stored file type in parallel, and sequentially storing the files in parallel. The term " delay-deleting "means deleting a file to be deleted after a predetermined time interval, and before deletion, the file to be deleted can be normally accessed or browsed, Deleted after the running access is completed; A preferred deletion solution of the present invention is to perform concurrent deletion via a background thread after a delay, without interfering with the normal use of the current thread.

실시예 1:Example 1:

보편성을 저하시키지 않고, 도 2에 도시된 바와 같이, 종래 기술에 따라 불편하게 온라인 상에서 실시간으로 업데이트되는 대규모 오디오 핑거프린트 데이터베이스의 기술적인 문제를 해결하기 위해, 본 발명은 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 방법을 제공하며, 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 방법은, In order to solve the technical problem of a large-scale audio fingerprint database which is updated in real time on-line uncomfortably according to the related art, as shown in Fig. 2 without deteriorating the universality, A method of establishing a fingerprint database, the method comprising:

동일한 키 값(key value)을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계 (S1000); Establishing a correspondence relationship between audio fingerprints having the same key value and the key value (S1000);

상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계, 상기 인덱스 리스트 내 상기 키 값 각각을 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)시키는 단계 (S2000); 및 Establishing an index list including audio fingerprints corresponding to the key value and the key value, pointing each of the key values in the index list to audio fingerprints corresponding to each of the key values in a pointer manner pointing (S2000); And

상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 계속적으로 저장하는 단계 (S3000)를 포함한다.And continuously storing the audio fingerprints having the same key value (S3000).

한편 종래의 기술에 따르면, 노래는 복수의 오디오 핑거프린트들을 가질 수 있으며, 상기 오디오 핑거프린트 각각은 하나의 키 값을 가질 수 있고, 동일한 키 값은 복수의 상이한 노래들에서 반복적으로 등장할 것이다. 그러므로, 복수의 상이한 노래들에는 동일한 값을 가지는 복수의 오디오 핑거프린트들이 존재하며, 이에 따라, 도 3에 도시된 바와 같이, 본 발명의 단계 S1000, 즉 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계가 수행되어야 한다.On the other hand, according to the prior art, a song can have multiple audio fingerprints, each of which can have a key value, and the same key value will appear repeatedly in a plurality of different songs. Therefore, there are a plurality of audio fingerprints having the same value in a plurality of different songs, and thus, as shown in FIG. 3, the audio fingerprints having the same key value in step S1000 of the present invention, A step of establishing a correspondence relationship of key values should be performed.

위치해야 할 업데이트 대상 오디오 핑거프린트를 신속하게 검색하기 위해서, 본 발명의 단계 S2000은 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계, 상기 인덱스 리스트 내 상기 키 값 각각을 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅시키는 단계를 포함하며; 단계 S3000은 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 계속적으로 저장하는 단계(S3000)를 포함한다.In order to quickly search for an update target audio fingerprint to be located, step S2000 of the present invention includes establishing an index list including audio fingerprints corresponding to the key value and the key value, Pointing each of the key values to audio fingerprints corresponding to each of the key values in a pointer manner; Step S3000 includes continuously storing the audio fingerprints having the same key value (S3000).

상기 인덱스 리스트에서, 상기 키 값은 상기 키 값 각각에 대응되는 복수의 오디오 핑거프린트들을 순차적으로 가리키도록"key1, key2, …"와 같은 형태로 어레이에 순차적으로 저장하며; 이후 value1 및 value4가 동일한 키 값, 즉 key1 값을 가지는 경우 value1 및 value4가 key1와 함께 저장되는 것과 마찬가지로, 동일한 키 값을 가지는 오디오 핑거프린트들(value)은 대응되는 키 값과 함께 계속적으로 저장된다.In the index list, the key value sequentially stores in a form such as "key 1 , key 2 , ... ", such that a plurality of audio fingerprints corresponding to each of the key values are sequentially pointed to; After value 1 and the value 4 with the same key value, that is, having a key 1 value value 1 and the value 4 is just like that is stored with the key 1, the audio fingers printed with the same key value (value) is the corresponding key value ≪ / RTI >

실시예 2:Example 2:

바람직하게는, 본 발명의 상술한 인덱스 리스트는 순차적으로 배열되는 복수의 어레이들을 수립함으로써 구현될 수 있다. 더 나아가, 도 4에 도시된 바와 같이, 단계 S1000는, Preferably, the above-described index list of the present invention can be implemented by establishing a plurality of arrays arranged in sequence. Further, as shown in FIG. 4, in step S1000,

상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 동일한 어레이로 분류하는 단계(S1100)를 더 포함한다.And classifying the audio fingerprints having the same key value into the same array (S1100).

예를 들어, 도 5에 도시된 바와 같이, key1, value1 및 value4는 제1 어레이로 분류되고, 나머지는 순차적으로 배열된다.For example, as shown in FIG. 5, key 1 , value 1 and value 4 are classified into a first array, and the rest are sequentially arranged.

나아가, 도 6에 도시된 바와 같이, 단계 S2000에서, 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계는, Further, as shown in FIG. 6, in step S2000, establishing an index list including audio fingerprints corresponding to the key value and the key value, respectively,

상기 인덱스 리스트에 상기 키 값들과 동일한 숫자를 가지는 어레이를 포함시키는 단계(S2100)를 더 포함한다.(S2100) including an array having the same number as the key values in the index list.

도 5에 도시된 바와 같이, 키 값과 동일한 숫자를 가지는 대응되는 어레이들이 세로(longitudinal) 컬럼에 존재하며, 상이한 어레이들 내 키 값은 복수의 오디오 핑거프린트들(value)에 대응될 수 있다.As shown in FIG. 5, corresponding arrays having the same number as the key value are in a longitudinal column, and key values in different arrays may correspond to a plurality of audio fingerprints.

실시예 3;Example 3:

바람직하게는, 시기가 지난 오디오 파일을 제 시간에 제거하기 위해, 도 11에 도시된 바와 같이, 본 발명은,Preferably, as shown in FIG. 11, in order to remove an out-of-date audio file in time,

오디오 핑거프린트들을 온라인 상에서 삭제하는 단계(S5000)를 더 포함한다.And deleting the audio fingerprints on-line (S5000).

나아가, 도 8에 도시된 바와 같이, 단계 S5000은Further, as shown in FIG. 8, step S5000

모든 삭제 대상 오디오 파일들의 오디오 핑거프린트들에 따라, 모든 삭제 대상 오디오 핑거프린트들을 요약하는 단계(S5100);Summing all audio fingerprints to be deleted according to the audio fingerprints of all the audio files to be deleted (S5100);

상기 키 값들에 따라 삭제 대상 오디오 핑거프린트들을 그룹핑하여 각 그룹 내 상기 삭제 대상 오디오 핑거프린트들이 동일한 대응 키 값을 갖도록 하고, 그룹을 유닛으로서 위치시키고 삭제하는 단계(S5200);Grouping the audio fingerprints to be deleted according to the key values so that the deletion object audio fingerprints in each group have the same corresponding key value, and locating and deleting the group as a unit (S5200);

인덱스 리스트에서 상기 대응 키 값에 기초하여 동일한 키 값을 검색하여 삭제 대상 오디오 핑거프린트들을 위치시키는 단계(S5300);Searching for the same key value based on the corresponding key value in the index list to locate audio fingerprints to be deleted (S5300);

추가하는 작업과 유사한, 삭제 대상 오디오 핑거프린트들을 복사하는 단계로서, 모든 이어지는 삭제 작업들을 텍스트 형식으로 구현하여 온라인 액세싱에 지장 없이 복사하는 단계(S5400); 및Copying the audio fingerprints to be deleted, similar to the operation of adding all the deletion audio fingerprints (S5400); And

상기 그룹들 내 동일한 오디오 핑거프린트들인, 상기 삭제 대상 오디오 핑거프린트들 내, 복사된 상기 오디오 핑거프린트들을 삭제하여 새로운 오디오 핑거프린트들을 획득하는 단계, 삭제하는 작업을 완료하며, 오직 포인터들의 위치를 순차적으로 변경할 것을 요구하는 단계(S5500)를 더 포함한다.Deleting the copied audio fingerprints in the deletion subject audio fingerprints, which are the same audio fingerprints in the groups, to obtain new audio fingerprints, completing the task of deleting, and only locating pointers in sequence (Step S5500).

상기 인덱스 리스트 내 포인터들이 상기 삭제 대상 오디오 핑거프린트들의 키 값들을 포인팅하도록 함으로써 상기 새로운 오디오 핑거프린트들에 포인팅시키는 단계(S5600)로서, 상기 삭제 대상 오디오 핑거프린트들은 대응되는 키 값들에 따라 액세스된 오디오 핑거프린트들에 포함되지 않는다.(S5600) pointing to the new audio fingerprints by causing pointers in the index list to point to key values of the audio fingerprints to be deleted, wherein the deletion target audio fingerprints include audio Are not included in the fingerprints.

삭제 대상 오디오 핑거프린트들이 현재 액세스 중인 프로세스에 지장을 주지 않는 경우, 본 발명은 삭제 대상 오디오 핑거프린트들을 딜레이-삭제할 것인지를 선택할 수 있다(S5700).If the deletion target audio fingerprints do not interfere with the currently accessing process, the present invention may select whether to delete the deletion target audio fingerprints (S5700).

바람직하게는, 단계 S5700에서, 서버의 부하를 완화시키는 동안 공간을 제공하는 서버가 동작 중이지 않은 경우, 삭제 작업을 수행하기 위해 다른 백그라운드 스레드가 초기화될 수 있다.Preferably, in step S5700, if the server providing the space while the server is relieved of load is not in operation, another background thread may be initialized to perform the deletion operation.

실시예 4:Example 4:

본 발명의 기술 분야의 통상의 기술자가 더 편리하게 본 기술적 솔루션을 적용하기 위해, 도 9에 도시된 바와 같이, 본 발명은 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 장치를 더 제공하며, In order to apply the present technical solution more conveniently to the technical field of the present invention, as shown in FIG. 9, the present invention further provides an apparatus for constructing an audio fingerprint database updated on-line in real time,

온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 장치는, 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 대응 관계 수립부(100); 상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 인덱스 리스트 수립부로서, 상기 인덱스 리스트 내 상기 키 값 각각은 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)되는, 인덱스 리스트 수립부(200); 및 상기 동일한 키 값을 가지는 오디오 핑거프린트들을 계속적으로 저장하는 핑거프린트 저장부 (300)를 포함한다.An apparatus for constructing an audio fingerprint database updated on-line in real time includes: a correspondence relation establishing unit (100) for establishing a correspondence relationship between audio fingerprints having the same key value and the key value; An index list setting unit for setting an index list including audio fingerprints corresponding to each of the key value and the key value, wherein each of the key values in the index list is an audio fingerprint corresponding to each of the key values in a pointer manner, An index-list-setting unit 200 that points to the index-list-setting unit 200; And a fingerprint storage unit 300 for continuously storing audio fingerprints having the same key value.

실시예 5:Example 5:

나아가, 본 발명의 기술적 솔루션을 더 쉽게 구현하기 위해, 도 10에 도시된 바와 같이, 본 발명의 온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스 구축 장치는 오디오 핑거프린트 온라인 삭제부(500)를 더 포함한다.In order to further realize the technical solution of the present invention, as shown in FIG. 10, an apparatus for constructing an audio fingerprint database updated in real time on-line in the present invention further includes an audio fingerprint on- do.

나아가, 도 11에 도시된 바와 같이, 오디오 핑거프린트 온라인 삭제부(500)는 대응되는 키 값들에 기초하여, 각 그룹 내 동일한 대응 키 값을 가지는 삭제 대상 오디오 핑거프린트들로 삭제 대상 오디오 핑거프린트들을 그룹핑하는 그룹핑부(510); 인덱스 리스트에서, 대응되는 키 값으로서 동일한 대응 키 값을 검색하여 상기 삭제 대상 오디오 핑거프린트들을 위치시키는 검색부(520); 상기 삭제 대상 오디오 핑거프린트들을 복사하는 복사부(530); 상기 그룹들 내 동일한 오디오 핑거프린트들인, 삭제 대상 오디오 핑거프린트들 내, 복사된 상기 오디오 핑거프린트들을 삭제하여 새로운 오디오 핑거프린트들을 획득하도록 하는 삭제부(540); 인덱스 리스트 내 포인터가 삭제 대상 오디오 핑거프린트들의 키 값을 포인팅하도록 하는 포인팅부(550); 및 삭제 대상 오디오 핑거프린트들을 딜레이-삭제하는 딜레이-삭제부(560)를 포함한다.11, the audio fingerprint on-line deletion unit 500 deletes the deletion target audio fingerprints as deletion target audio fingerprints having the same corresponding key value in each group, based on the corresponding key values A grouping unit 510 for grouping; A search unit 520 for searching the index list for a corresponding key value as a corresponding key value to locate the deletion target audio fingerprints; A copying unit 530 for copying the audio fingerprints to be deleted; A deletion unit 540 for deleting the copied audio fingerprints in the deletion target audio fingerprints, which are the same audio fingerprints in the groups, to obtain new audio fingerprints; A pointing unit 550 for causing the pointer in the index list to point to a key value of the audio fingerprints to be deleted; And a delay-deletion unit 560 that delays-deletes the audio fingerprints to be deleted.

상술한 기술적 솔루션에 따라, 구체적인 실시예는 아래와 같이 구현된다.According to the above-described technical solution, a specific embodiment is implemented as follows.

(1) 모든 오디오 데이터의 오디오 핑거프린트 데이터를 이용하여 세계적인 대규모 오디오 핑거프린트 데이터베이스를 구축하고, 키 값들에 따라 분류하며, 하드디스크에 저장하여 키 값 각각이, 특정 규칙에 따른 구체화된 카탈로그에 저장된 하나의 파일에 대응되도록 하며; 구체화된 구조도는 도 12에 도시된다;(1) building a worldwide large-scale audio fingerprint database using audio fingerprint data of all audio data, classifying it according to key values, storing the key fingerprint data on a hard disk, and storing each key value in a specified catalog To correspond to one file; The detailed structure is shown in Fig. 12;

(2) 메모리에 어레이를 구축하고, 상기 어레이의 서브스크립트(subscript)를 유지하면 키 리스트로서 저장하여 키 값과 부합하도록 하며, 널(null) 포인터로서 어레이의 엘리먼트를 초기화하며, 이후 각 키의 파일을 계속적인 부분 메모리에 각각 업로드하고, 값을 저장하며, 상기 어레이 내 서브스크립트 위치에 대응되는 데이터를 업데이트하여 포인터가 대응되는 값들을 포인팅하도록 한다;(2) constructing an array in a memory, storing subscripts of the array as a key list, matching the key values, initializing elements of the array as null pointers, Upload each file into a continuous partial memory, store the value, and update the data corresponding to the subscript position in the array to cause the pointer to point to the corresponding values;

(3) 검색에 있어서, 먼저 키 값에 따라 키 리스트의 값들을 찾으며, 상기 값들의 조건을 만족하는 데이터를 필터링한다.(3) In the search, first, values of the key list are searched according to the key value, and data satisfying the conditions of the values are filtered.

도 13에 도시된 바와 같이, 온라인 상에서 노래 핑거프린트들이 추가되어야 하는 경우, 노래 핑거프린트들(n개의 페어(key, value)로 구성된다)은 추가되고, 본 발명의 실시예들이 아래와 같이 구현된다.As shown in FIG. 13, when song fingerprints are to be added online, song fingerprints (consisting of n pairs of keys, values) are added and embodiments of the present invention are implemented as follows .

그룹핑하는 단계: 키 값들에 기초하여 노래 핑거프린트들을 그룹핑하고, 그룹핑된 그룹을 유닛으로 취급하여 삽입 방식으로 동일한 키 값을 가지는 노래 핑거프린트들을 추가한다; Grouping song fingerprints based on key values and treating grouped groups as units to add song fingerprints with the same key value in an insert manner;

위치시키는 단계: 각 그룹의 키 값에 따라, 인덱스 리스트 내 업데이트 대상 오디오 핑거프린트들(values)을 검색하고, 기존-값들(values-old)로서 저장하며; 인덱스 리스트 내에, 온라인 어플리케이션 내 오디오 핑거프린트의 모든 키 값들 및 모든 오디오 핑거프린트들과 모든 키 값들 중 대응되는 키 값들 사이의 대응 관계가 포함되며, 상기 대응 관계는 바람직하게는 포인터 방식으로실현된다. Locating : Updating target audio fingerprints in the index list according to the key value of each group and storing them as existing-values; In the index list, a correspondence between all the key values of the audio fingerprints in the online application and all of the audio fingerprints and corresponding key values among all the key values is included, and the correspondence is preferably realized in a pointer manner.

복사하고 삽입하는 단계: 컨텐츠를 기존-값들로 복사하고, 기존-값들을 가지는 키 그룹 내 모든 값들을 결합하며, 키 리스트 내 키 위치가 신규-값들을 포인팅하도록 신규-값들(values-new)을 재구축한다. Copying and inserting : copying the content into existing-values, combining all the values in the key group having the existing-values, and adding the new-values (values-new) so that the key position in the keylist points to the new- Rebuild.

포인터를 오프셋하는 단계: 키 리스트 내 키 위치의 포인터들이 신규-값들을 포인팅하도록 한다; Offsetting pointers : pointers to key locations in the key list cause the new-values to point;

대체함과 동시에 오래된 데이터를 삭제하는 단계: 기존-값들의 포인터들이 사용되는 것을 피하기 위해, 기존-값들의 포인터들을 큐(queue)에 추가하고, 백그라운드 스레드(background thread)를 통해 기존-값들을 딜레이-삭제한다. Deleting old data at the same time as replacing : To avoid pointers of existing-values, add pointers to existing-values to the queue, and delay existing values through a background thread - Delete.

동시에 파일들을 업데이트하는 단계: 신규-값들로서 키에 대응되는 하드디스크 내 파일의 컨텐츠를 동시에 업데이트한다. Updating Files at the Same Time: Simultaneously updates the contents of files in the hard disk corresponding to keys as new-values.

주목해야 할 단계들은: 포인터를 삭제하는 단계 및 대체함과 동시에 오래된 데이터를 삭제하는 단계로서, 이는 듀얼-스레디드(dual-threaded) 병렬 작업이며 시간순으로 발생하는 것은 아니다.The steps to note are: the step of deleting the pointer and the step of deleting old data at the same time as replacing it, which is a dual-threaded parallel operation and does not occur in chronological order.

도 14에 따르면, 온라인 상에서 노래 핑거프린트들을 삭제하는 단계가 수행되어야 하고 노래 핑거프린트들(n개의 페어(키, 값)로 구성되며, 이때 n의 단위는 보통 몇 천이다)이 삭제되는 경우, 종래 기술에 따른 방법에 의하면, 온라인 액세싱은 지장을 받고, 삭제 작업은 지나치게 번거로우며, 불필요한 작업이 반복되고; 본 발명의 개선된 실시예는 아래와 같이 구현된다:According to Fig. 14, a step of deleting song fingerprints must be performed on-line and when song fingerprints (consisting of n pairs (key, value), where n is usually several thousand) According to the method according to the prior art, on-line accessing is hindered, deletion work is excessively cumbersome, and unnecessary work is repeated; An improved embodiment of the present invention is implemented as follows:

그룹핑하는 단계: 삭제 대상 오디오 핑거프린트 리스트에 따라 삭제 대상 오디오 핑거프린트들에 대한 통계를 내고, 키 값들에 기초하여 삭제 대상 오디오 핑거프린트들을 그룹핑한다; Grouping audio fingerprints for deletion according to an audio fingerprint list to be deleted and grouping audio fingerprints to be deleted based on key values;

위치시키는 단계: 각 그룹의 키 값에 따라, 인덱스 리스트(키 리스트) 내 업데이트 대상 값들을 검색하고, 기존-값들로서 저장한다; Positioning : Retrieving update target values in the index list (key list) according to the key value of each group and storing them as existing-values;

복사하고 삭제하는 단계: 기존-값들 내 컨텐츠를 복사하고, 검색하며 값들 내 타겟 값을 삭제하며, 남아있는 데이터를 신규-값들로 재구성한다; Copying and deleting content in existing-values, retrieving, deleting target values in the values, and reconstructing the remaining data into new-values;

포인터를 오프셋하는 단계: 키 리스트 내 신규-키 위치들의 포인터들이 신규-값들을 포인팅하도록 한다; Offsetting the pointers : pointers to the new-key positions in the key list cause them to point to the new-values;

대체함과 동시에 오래된 데이터를 삭제하는 단계: 기존-값들의 포인터들이 사용되는 것을 피하기 위해, 기존-값들의 포인터들을 큐(queue)에 추가하고, 백그라운드 스레드를 통해 기존 값들을 딜레이-삭제한다; Deleting old data at the same time as replacing : Add pointers of existing-values to the queue and delay-delete existing values through the background thread to avoid using pointers to existing-values;

동시에 파일들을 업데이트하는 단계: 신규-값들인 키에 대응되는 하드디스크 내 파일의 컨텐츠를 동시에 업데이트한다. Updating Files at the Same Time: Simultaneously updates the contents of the files in the hard disk corresponding to the new-values keys.

상술한 설명은 오직 본 발명의 바람직한 실시예를 나타내며; 주목해야 할 것은: 본 기술 분야의 통상의 기술자들이, 본 발명의 기술적인 원리들로부터 벗어나지 않는 몇몇 변경 및 변형들이 수행될 수 있고, 그러한 변경 및 변형들 또한 본 발명의 범위 내로 여겨질 것이라는 점이다.
The foregoing description shows only preferred embodiments of the present invention; It should be noted that several modifications and variations may be made by those of ordinary skill in the art without departing from the technical principles of the present invention and such variations and modifications are also considered to be within the scope of the present invention .

100: 대응 관계 수립부
200: 인덱스 리스트 수립부
300: 핑거프린트 저장부
500: 오디오 핑거프린트 온라인 삭제부
510: 그룹핑부
520: 검색부
530: 복사부
540: 삭제부
550: 포인팅부
560: 딜레이-삭제부
100: correspondence establishment section
200: Index list establishing unit
300: Fingerprint storage unit
500: Audio fingerprint on-line deletion unit
510:
520:
530:
540:
550: pointing part
560: Delay-

Claims (4)

온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스의 구축 방법에 있어서,
동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계;
상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계, 상기 인덱스 리스트 내 상기 키 값 각각을 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)시키는 단계; 및
상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 계속적으로 저장하는 단계를 포함하며,
상기 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 단계는, 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 동일한 어레이로 분류하는 단계를 포함하며,
상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 단계는, 상기 인덱스 리스트에 상기 키 값들과 동일한 숫자를 가지는 어레이를 포함시키는 단계를 포함하는, 오디오 핑거프린트 데이터베이스 구축 방법.
A method of constructing an audio fingerprint database updated on-line in real time,
Establishing a correspondence relationship between the key fingerprint and the audio fingerprints having the same key value;
Establishing an index list including audio fingerprints corresponding to the key value and the key value, pointing each of the key values in the index list to audio fingerprints corresponding to each of the key values in a pointer manner pointing; And
And continuously storing the audio fingerprints having the same key value,
Wherein establishing a correspondence relationship between the audio fingerprints having the same key value and the key value comprises classifying the audio fingerprints having the same key value into the same array,
Wherein establishing an index list comprising audio fingerprints corresponding to each of the key value and the key value comprises including an array having the same number as the key values in the index list, How to build.
청구항 1에 있어서,
오디오 핑거프린트들을 온라인 상에서 삭제하는 단계를 더 포함하며,
상기 삭제하는 단계는,
상기 키 값들에 따라 삭제 대상 오디오 핑거프린트들을 그룹핑하여 각 그룹 내 상기 삭제 대상 오디오 핑거프린트들이 동일한 대응 키 값을 갖도록 하는 단계;
상기 인덱스 리스트에서 상기 대응 키 값과 동일한 키 값을 검색하여 상기 삭제 대상 오디오 핑거프린트들을 위치시키는 단계;
상기 삭제 대상 오디오 핑거프린트들을 복사하는 단계;
상기 그룹들 내 동일한 오디오 핑거프린트들인, 상기 삭제 대상 오디오 핑거프린트들 내, 복사된 상기 오디오 핑거프린트들을 삭제하여 새로운 오디오 핑거프린트들을 획득하는 단계;
상기 인덱스 리스트 내 포인터들이 상기 삭제 대상 오디오 핑거프린트들의 키 값들을 포인팅하도록 함으로써 상기 새로운 오디오 핑거프린트들에 포인팅시키는 단계; 및
상기 삭제 대상 오디오 핑거프린트들을 딜레이-삭제(delay-deleting)하는 단계를 포함하는, 오디오 핑거프린트 데이터베이스 구축 방법.
The method according to claim 1,
Further comprising deleting audio fingerprints on-line,
Wherein the deleting comprises:
Grouping the audio fingerprints to be deleted according to the key values so that the deletion object audio fingerprints in each group have the same corresponding key value;
Retrieving a key value equal to the corresponding key value in the index list and locating the deletion target audio fingerprints;
Copying the audio fingerprints to be deleted;
Deleting the copied audio fingerprints in the deletion subject audio fingerprints, which are the same audio fingerprints in the groups, to obtain new audio fingerprints;
Pointing to the new audio fingerprints by causing pointers in the index list to point to key values of the audio fingerprints to be deleted; And
And delay-deleting the audio fingerprints to be deleted. ≪ Desc / Clms Page number 19 >
청구항 2에 있어서,
상기 딜레이-삭제하는 단계는, 백그라운드 스레드(background thread)에 의해 실현되는, 오디오 핑거프린트 데이터베이스 구축 방법.
The method of claim 2,
Wherein the delay-deleting step is implemented by a background thread.
온라인 상에서 실시간으로 업데이트되는 오디오 핑거프린트 데이터베이스의 구축 장치에 있어서,
동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 대응 관계 수립부;
상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트를 수립하는 인덱스 리스트 수립부로서, 상기 인덱스 리스트 내 상기 키 값 각각은 포인터 방식으로 상기 키 값 각각에 대응되는 오디오 핑거프린트들에 포인팅(pointing)되는, 인덱스 리스트 수립부; 및
상기 동일한 키 값을 가지는 오디오 핑거프린트들을 계속적으로 저장하는 핑거프린트 저장부를 포함하며,
상기 동일한 키 값을 가지는 오디오 핑거프린트들과 상기 키 값의 대응 관계를 수립하는 상기 대응 관계 수립부는, 상기 동일한 키 값을 가지는 상기 오디오 핑거프린트들을 동일한 어레이로 분류하는 분류부를 포함하며,
상기 키 값 및 상기 키 값 각각에 대응되는 오디오 핑거프린트들을 포함하는 인덱스 리스트 수립부는, 상기 인덱스 리스트에 상기 키 값들과 동일한 숫자를 가지는 어레이를 포함시키는 어레이 설정부를 포함하는, 오디오 핑거프린트 데이터베이스 구축 장치.
An apparatus for constructing an audio fingerprint database updated on-line in real time,
A correspondence relation establishing unit for establishing a correspondence relationship between the audio fingerprints having the same key value and the key value;
An index list setting unit for setting an index list including audio fingerprints corresponding to each of the key value and the key value, wherein each of the key values in the index list is an audio fingerprint corresponding to each of the key values in a pointer manner, An index-list-establishing unit, which is pointed to the index-list creation unit; And
And a fingerprint storage unit for continuously storing audio fingerprints having the same key value,
Wherein the correspondence relation establishing unit for establishing a correspondence relationship between the audio fingerprints having the same key value and the key value includes a classification unit for classifying the audio fingerprints having the same key value into the same array,
And an index setting unit including audio fingerprints corresponding to the key value and the key value includes an array setting unit including an array having the same number as the key values in the index list, .
KR1020160004208A 2015-02-13 2016-01-13 Method and device for constructing on-line real-time updating of massive audio fingerprint database KR101740271B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510079627.5 2015-02-13
CN201510079627.5A CN104679847B (en) 2015-02-13 2015-02-13 A kind of method and apparatus constructing online real-time update magnanimity audio-frequency fingerprint library

Publications (2)

Publication Number Publication Date
KR20160100226A KR20160100226A (en) 2016-08-23
KR101740271B1 true KR101740271B1 (en) 2017-05-26

Family

ID=53314889

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020150162353A KR20160100211A (en) 2015-02-13 2015-11-19 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150170033A KR102431806B1 (en) 2015-02-13 2015-12-01 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150181165A KR20160100219A (en) 2015-02-13 2015-12-17 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020160004208A KR101740271B1 (en) 2015-02-13 2016-01-13 Method and device for constructing on-line real-time updating of massive audio fingerprint database

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020150162353A KR20160100211A (en) 2015-02-13 2015-11-19 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150170033A KR102431806B1 (en) 2015-02-13 2015-12-01 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150181165A KR20160100219A (en) 2015-02-13 2015-12-17 Method and device for constructing on-line real-time updating of massive audio fingerprint database

Country Status (3)

Country Link
KR (4) KR20160100211A (en)
CN (1) CN104679847B (en)
DE (1) DE102016001035A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11302101B2 (en) 2018-09-18 2022-04-12 Samsung Electronics Co., Ltd. Electronic apparatus for constructing a fingerprint database, control method thereof and electronic system

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334514B (en) * 2017-01-20 2020-11-03 北京京东尚科信息技术有限公司 Data indexing method and device
CN107066861B (en) * 2017-03-20 2020-01-14 Oppo广东移动通信有限公司 Fingerprint event processing method and mobile terminal
CN106970813A (en) * 2017-03-31 2017-07-21 广东欧珀移动通信有限公司 Software updating control method, device and electronic equipment
CN107731220B (en) 2017-10-18 2019-01-22 北京达佳互联信息技术有限公司 Audio identification methods, device and server
CN109597024B (en) * 2018-11-19 2020-05-12 南京财经大学 Indoor area positioning method and system based on asynchronous sensing data
CN109657093A (en) * 2018-11-27 2019-04-19 腾讯音乐娱乐科技(深圳)有限公司 Audio search method, device and storage medium
CN109726307A (en) * 2018-12-26 2019-05-07 合肥凯捷技术有限公司 A kind of inter-network interconnected audio big data memory search method
CN109871463B (en) * 2019-03-06 2024-04-09 腾讯音乐娱乐科技(深圳)有限公司 Audio processing method, device, electronic equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102289518A (en) 2011-09-13 2011-12-21 盛乐信息技术(上海)有限公司 Method and system for updating audio fingerprint search library
CN103995890A (en) 2014-05-30 2014-08-20 杭州智屏软件有限公司 Method for updating and searching for data of real-time audio fingerprint search library

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101777075B (en) * 2010-02-05 2015-02-11 上海全土豆网络科技有限公司 Method for searching parallel audio fingerprint
CN103870516B (en) * 2012-12-18 2019-10-25 北京三星通信技术研究有限公司 Retrieve the method for image, paint in real time reminding method and its device
CN104123300B (en) * 2013-04-26 2017-10-13 上海云人信息科技有限公司 Data distribution formula storage system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102289518A (en) 2011-09-13 2011-12-21 盛乐信息技术(上海)有限公司 Method and system for updating audio fingerprint search library
CN103995890A (en) 2014-05-30 2014-08-20 杭州智屏软件有限公司 Method for updating and searching for data of real-time audio fingerprint search library

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11302101B2 (en) 2018-09-18 2022-04-12 Samsung Electronics Co., Ltd. Electronic apparatus for constructing a fingerprint database, control method thereof and electronic system

Also Published As

Publication number Publication date
CN104679847A (en) 2015-06-03
CN104679847B (en) 2019-03-15
KR20160100226A (en) 2016-08-23
KR20160100219A (en) 2016-08-23
DE102016001035A1 (en) 2016-08-18
KR20160100211A (en) 2016-08-23
KR20160100216A (en) 2016-08-23
KR102431806B1 (en) 2022-08-12

Similar Documents

Publication Publication Date Title
KR101740271B1 (en) Method and device for constructing on-line real-time updating of massive audio fingerprint database
US11907244B2 (en) Modifying field definitions to include post-processing instructions
CN100458779C (en) Index and its extending and searching method
CN110362727B (en) Third party search application for search system
US20200183959A1 (en) Systems and methods for generating and using aggregated search indices and non-aggregated value storage
US10108649B2 (en) Early exit from table scans of loosely ordered and/or grouped relations using nearly ordered maps
US6546394B1 (en) Database system having logical row identifiers
US20080228783A1 (en) Data Partitioning Systems
US8527556B2 (en) Systems and methods to update a content store associated with a search index
CN108255958A (en) Data query method, apparatus and storage medium
CN110109910A (en) Data processing method and system, electronic equipment and computer readable storage medium
JP6365195B2 (en) Instruction history analysis program, instruction history analysis apparatus, and instruction history analysis method
JP2005122702A5 (en)
CN106649412B (en) Data processing method and equipment
CN105956123A (en) Local updating software-based data processing method and apparatus
CN103186622B (en) The update method of index information and device in a kind of text retrieval system
CN110321383A (en) Big data platform method of data synchronization, device, computer equipment and storage medium
CN106970958A (en) A kind of inquiry of stream file and storage method and device
CN101136027A (en) System and method for database indexing, searching and data retrieval
CN107209768A (en) Method and apparatus for the expansible sequence of data set
CN107330024A (en) The storage method and device of tag system data
CN108038253B (en) Log query processing method and device
US20170270149A1 (en) Database systems with re-ordered replicas and methods of accessing and backing up databases
CN114281855A (en) Data request method, data request device, computer equipment, storage medium and program product
CN111666302A (en) User ranking query method, device, equipment and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant