KR20140024434A - 수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 - Google Patents
수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 Download PDFInfo
- Publication number
- KR20140024434A KR20140024434A KR1020137034328A KR20137034328A KR20140024434A KR 20140024434 A KR20140024434 A KR 20140024434A KR 1020137034328 A KR1020137034328 A KR 1020137034328A KR 20137034328 A KR20137034328 A KR 20137034328A KR 20140024434 A KR20140024434 A KR 20140024434A
- Authority
- KR
- South Korea
- Prior art keywords
- content
- data stream
- sample
- environment
- information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 230000004044 response Effects 0.000 claims abstract description 12
- 230000006855 networking Effects 0.000 claims abstract description 9
- 238000009877 rendering Methods 0.000 claims description 48
- 239000000872 buffer Substances 0.000 claims description 18
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims 1
- 230000006870 function Effects 0.000 abstract description 26
- 238000003860 storage Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000003595 spectral effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000005314 correlation function Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/432—Query formulation
- G06F16/433—Query formulation using audio data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/37—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying segments of broadcast information, e.g. scenes or extracting programme ID
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Multimedia (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Computing Systems (AREA)
- Primary Health Care (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- Operations Research (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
수신된 데이터의 비교를 수행하고 이 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템이 제공된다. 일 실시예에서, 공연자는 행사장의 주변 환경으로부터 콘텐트 데이터 스트림을 기록하기 위해 마이크로폰을 포함하는 휴대형 장치를 이용할 수 있다. 사용자는 주변 환경으로부터 콘텐트 샘플을 기록하고 그 샘플을 서버에 송신하기 위해 마이크로폰을 포함하는 또 하나의 휴대형 장치를 이용할 수 있다. 서버는 샘플의 특성과 데이터 스트림의 특성의 비교를 수행하고, 메타데이터를 가지고 사용자에게 응답을 제공하는 것이 가능하다. 서버는 콘텐트 식별 기능의 결과에 기초하여 소셜 네트워킹 기능들을 수행할 수 있다.
Description
본 발명은 데이터 스트림 내 콘텐트 또는 데이터 스트림의 콘텐트에 대한 매칭 콘텐트 식별하고, 식별 또는 매치(match)에 응답하여 기능들을 수행하는 것에 관한 것이다. 예를 들면, 본 발명은 수신된 데이터의 비교를 수행하고, 이 비교에 기초하여, 장치의 참석(presence)을 등록하는 것과 같은 후속 서비스를 제공하는 것이다. 어떤 실시예에 있어서는, 상기 비교는 실시간으로 또는 실질적으로 실시간으로 수행될 수 있다.
오디오 또는 비디오와 같은 다양한 데이터 타입을 위한 콘텐트 식별 시스템은 많은 상이한 방법을 사용한다. 클라이언트 장치는 미디어 스트림(예컨대, 라디오)의 미디어 샘플 레코딩을 캡처한 후, 상기 미디어 스트림을 식별하기 위해 미디어 레코딩("미디어 트랙(media track)"이라고도 함) 데이터베이스(DB)에서 매치(match)의 검색을 수행하도록 서버에 요청할 수 있다. 예를 들면, 상기 샘플 레코딩은 콘텐트 식별 서버 모듈에 전달될 수 있으며, 이 콘텐트 식별 서버 모듈은 상기 샘플의 콘텐트 식별을 수행하고 상기 식별의 결과를 클라이언트 장치에 반환할 수 있다.
인식 결과는 사용자의 클라이언트 장치에 디스플레이되거나 다양한 후속 서비스를 위해 사용될 수 있다. 예를 들면, 인식 결과에 기초하여, 서버는, 사용자가 노래를 들어본 후, 클라이언트 장치에서 그 노래의 사본을 태그(tag)(즉, 식별)하고 나중에 구매할 수 있도록, 식별된 노래들을 구매를 위해 클라이언트 장치의 사용자에게 제공할 수 있다. 다른 서비스들도 제공될 수 있는데, 예를 들면, 오디오 노래의 아티스트에 관한 정보를 제공하거나, 아티스트의 투어 정보를 제공하거나, 상기 노래의 아티스트에 대한 인터넷상의 정보에 대한 링크를 송신하는 것과 같은 것이다.
또한, 콘텐트 식별은 예를 들면 방송 모니터링 또는 콘텐트-민감형 광고를 포함하는 다른 응용을 위해 사용될 수도 있다.
본 발명에 의하면 특히, 콘텐트 식별 기능들을 수행하는 시스템 및 방법과, 상기 콘텐트 식별 기능에 기초하여 소셜 네트워킹 기능을 수행하는 시스템 및 방법을 제공하는 것이 가능하다.
여기서 설명된 모든 방법들은, 컴퓨터 장치에 의해 실행될 때 상기 방법의 기능들을 수행하는 명령들의 형태로서 비-일시적이고 컴퓨터로 읽을 수 있는 기록매체에 저장되어 제공될 수 있다. 추가의 실시예들은 또한 컴퓨터로 읽을 수 있는 부호화된 명령들을 가진 유형의 컴퓨터로 읽을 수 있는 기록매체를 포함하는 제조 물품들을 포함할 수도 있으며, 상기 명령들은 여기서 설명된 상기 방법들의 기능들을 수행하기 위한 명령들을 포함할 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 예를 들면 레지스터 메모리, 프로세서 캐시 및 RAM과 같은 짧은 기간 동안 짧은 데이터를 저장하는 컴퓨터로 읽을 수 있는 기록매체와 같은 비 일시적 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 또한 예를 들면, ROM(read only memory), 광 또는 자기 디스크, CD-ROM과 같이, 보조의 또는 영구적인 저장장치와 같은 비-일시적인 기록매체를 포함할 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 또한 어떤 다른 휘발성 또는 비휘발성 저장 시스템일 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 예를 들면 유형의 컴퓨터로 읽을 수 있는 저장 매체 또는 유형의 저장 매체로 간주될 수 있다.
또한, 여기서에 설명된 프로세스들 또는 방법들의 논리적 기능들을 수행하도록 배선된 회로가 제공될 수도 있다.
전술한 요약은 단지 설명을 위한 것이며 본 발명을 한정하려는 의도는 없다. 전술한 측면들, 실시예들, 및 특징들에 추가하여, 추가의 측면들, 실시예들, 및 특징들이 도면들과 아래의 상세한 설명을 참조함으로써 더욱 명백해질 것이다.
도 1은 미디어 또는 데이터 스트림 내 콘텐트 또는 콘텐트에 대한 정보를 식별하는 시스템의 일 실시예를 도시하고,
도 2는 콘텐트 식별 방법의 또 다른 실시예를 도시하고,
도 3은 콘텐트 데이터 스트림과 콘텐트 샘플 사이의 매치를 결정하기 위해 일 실시예 콘텐트 식별 방법에 따라 동작하도록 설정될 수 있는 일 실시예 시스템을 도시하고,
도 4는 데이터 스트림 내 콘텐트 또는 콘텐트에 대한 정보를 식별하고 후속 서비스를 제공하는 일 실시예 방법의 흐름도를 도시하고,
도 5는 콘텐트 인식 엔진과 채널을 형성하는 일 실시예 시스템을 도시하고,
도 6은 도 5의 요소들 사이의 메시지 흐름도의 일 실시예를 도시한다.
도 2는 콘텐트 식별 방법의 또 다른 실시예를 도시하고,
도 3은 콘텐트 데이터 스트림과 콘텐트 샘플 사이의 매치를 결정하기 위해 일 실시예 콘텐트 식별 방법에 따라 동작하도록 설정될 수 있는 일 실시예 시스템을 도시하고,
도 4는 데이터 스트림 내 콘텐트 또는 콘텐트에 대한 정보를 식별하고 후속 서비스를 제공하는 일 실시예 방법의 흐름도를 도시하고,
도 5는 콘텐트 인식 엔진과 채널을 형성하는 일 실시예 시스템을 도시하고,
도 6은 도 5의 요소들 사이의 메시지 흐름도의 일 실시예를 도시한다.
이하의 상세한 설명에서, 본 명세서의 일부를 구성하는 첨부 도면들을 참조한다. 도면에서, 유사한 부호들은 문맥이 달리 지시하지 않는 한 통상 유사한 구성요소를 식별한다. 상세한 설명, 도면 및 청구항들에서 기술된 실시예는 한정하는 것을 의도하지 않는다. 다른 실시예들이 이용될 수 있으며, 본 명세서에서 제시된 주제의 범위 또는 사상을 벗어나지 않으면서 다른 변경이 이루어질 수 있다. 본 명세서와 도면에서 일반적으로 기술되는 본 발명의 측면들은 본 명세서에서 명시적으로 고려된 다양한 상이한 구성들로 배열, 치환, 결합, 분리 및 설계될 수 있다.
본 발명은 특히 콘텐트 식별 기능들을 수행하기 위한, 및 상기 콘텐트 식별 기능들에 기초한 소셜 네트워킹(social networking) 기능들을 수행하기 위한 방법 및 시스템에 관한 것이다. 예를 들면, 콘텐트 식별 또는 콘텐트 매치에 기초하여, 어떤 장소에의 참석을 등록하거나(예컨대, "체크-인(check-in)"), 콘텐트/아티스트/행사장(venue)에 대한 선호를 표시하거나, 소셜 네트워킹 사이트(예컨대, "Twitter® 또는 Facebook®)에 메시지를 제공하는 등을 포함하는 소셜 네트워크 기능이 수행될 수 있다. 일 실시예 응용으로서, 사용자는 콘서트에서 노래를 태그할 수 있으며, 이것은 그 노래의 샘플을 콘텐트 인식/식별 서버에 송신하고 응답을 수신하는 것을 포함하고, 이어서 그 노래의 성공적인 식별에 기초하여 콘서트에의 참석을 등록할 수 있다.
또 다른 실시예에서, 콘서트 행사장을 고려하면, 공연자는 콘서트 행사장의 주변 환경으로부터의 콘텐트 데이터 스트림을 기록하기 위한 마이크로폰을 포함하는 휴대형 장치를 이용할 수 있으며, 상기 콘텐트 데이터 스트림을 서버에 제공할 수 있다. 상기 콘텐트 데이터 스트림은 공연자의 노래들의 레코딩 등이 될 수 있다. 콘서트 군중 속의 한 사용자는 주변 환경으로부터의 콘텐트 샘플을 기록하기 위한 마이크로폰을 포함하는 또 다른 휴대형 장치를 이용할 수 있으며, 상기 샘플 데이터를 서버에 송신할 수 있다. 서버는 상기 콘텐트 샘플의 특성과 상기 콘텐트 데이터 스트림의 특성을 실시간 비교할 수 있으며, 상기 샘플 내 콘텐트의 정체(identity), 상기 공연자의 정체 등을 나타내는 응답을 사용자에게 제공하는 것이 가능하다. 예를 들어, 만일 상기 사용자가 상기 환경에서의 콘텐트의 샘플과 상기 환경에서의 콘텐트 데이터 스트림 사이의 매치를 나타내는 응답을 서버로부터 수신하면, 사용자는 상기 환경 내 사용자의 참석을 등록하도록 서버에 요청할 수 있다.
어떤 실시예들에서는, 주변 환경의 미디어를 기록하기 위해 제1 휴대형 장치가 사용되어 상기 미디어를 서버에 제공할 수 있다. 미디어의 샘플을 기록하기 위해 상기 주변 환경에서 제2 휴대형 장치가 사용될 수도 있다. 대안으로, 제1 및/또는 제2 휴대형 장치는 상기 미디어 레코딩 대신에 콘텐트 패턴 또는 피처(features)-추출된 시그너처(signatures)를 제공할 수 있다. 이와 관련하여, 제1 휴대형 장치는 서버에 시그너처 스트림을 공급하는 것이 고려될 수 있고, 제2 휴대형 장치는 시그너처 스트림과의 비교를 위해 미디어의 샘플들을 서버에 송신한다. 서버는 제2 휴대형 장치로부터의 주변 미디어의 샘플이 제1 휴대형 장치에 의해 제공된 주변 미디어에 매치하는지 결정하도록 설정될 수 있다. 미디어 샘플과 상기 시그너처 스트림의 일부 사이의 매치(또는 실질적인 매치)는, 상기 2개의 휴대형 장치가 서로 근접해 있고 각 장치는 동일한 주변 미디어를 수신하고(예를 들면, 기록하고) 있을 수 있음을 나타낼 수 있다.
여기서 설명된 실시예들을 사용할 때, 임의의 행사장 또는 주변 환경은 태그 가능한(taggable) 이벤트로 생각될 수 있으며, 사용자는 장치를 사용하여 상기 환경의 주변 미디어를 캡처하고 그 미디어를 사용될 서버에 제공하거나 콘텐트 식별/인식 프로세스 동안에 액세스되는 미디어 DB에 추가할 수 있다. 하나의 이용 예로서, 강의 동안에 교수가 스마트폰을 테이블에 올려놓고 스마트폰의 마이크로폰을 사용하여 실시간으로 강의 레코딩을 서버에 제공할 수 있다. 학생은 콘텐트 식별/인식 서비스를 사용하여 강의를 "태깅(tagging)"함으로써 "체크-인"(예컨대, 교실 내 출석을 등록)할 수 있다. 상기 강의의 샘플을 기록하고, 상기 샘플을 서버에 송신하기 위해 학생의 스마트폰이 사용될 수 있을 것이며, 상기 서버는 상기 샘플을 교수의 스마트폰으로부터 수신된 강의 스트림에 매치하도록 설정될 수 있다. 만일 매치가 존재한다면, 학생의 스마트폰은 Facebook®, Twitter® 등을 통해 교실 내 출석을 등록할 수 있다.
콘텐트
식별 시스템 및 방법의
실시예
이제 도면들을 참조하면, 도 1은 미디어/ 데이터 스트림 내 콘텐트 또는 콘텐트에 대한 정보를 식별하는 시스템의 일 실시예를 도시한다. 도 1은 소정의 구성을 가진 시스템을 도시하지만, 시스템 내 구성요소들은 다른 방식으로 배치될 수 있다. 상기 시스템은 임의의 알려진 방식으로 데이터 스트림으로부터의 데이터 콘텐트를 제공하는 미디어/ 데이터 렌더링 소스(102)를 포함한다. 데이터 스트림은 미디어 렌더링 소스(102)에 저장되거나, 아날로그 또는 디지털 방송과 같은 외부 소스로부터 수신될 수 있다. 일 실시예에서, 미디어 렌더링 소스(102)는 미디어 스트림(예컨대, 오디오 및/또는 비디오) 및/또는 다른 정보를 방송하는 라디오 방송국 또는 TV 콘텐트 제공자일 수 있다. 미디어 렌더링 소스(102)는 또한 오디오 또는 비디오 미디어를 녹화된 형식으로 또는 실시간 형식으로 재생하는 임의의 타입의 장치일 수 있다. 대안적인 실시예에서, 미디어 렌더링 소스(102)는 예를 들면 오디오 소스 및/또는 비디오 소스로서 라이브 공연을 포함할 수 있다. 미디어 렌더링 소스(102)는 예를 들면, 그래픽 디스플레이, 오디오 스피커, MIDI 악기, 로봇 인형(animatronic puppet) 등을 통해, 또는 미디어 렌더링 소스(102)에 의해 제공되는 임의의 다른 종류의 제시를 통해, 상기 미디어 스트림을 제공할 수 있다.
시스템(100)은 입력 인터페이스를 통해 미디어 렌더링 소스(102)로부터 미디어 스트림의 렌더링(rendering)을 수신하도록 설정되는 클라이언트 장치(104)를 추가로 포함하며, 상기 입력 인터페이스는 안테나, 마이크로폰, 비디오 카메라, 진동 센서, 무선 수신기, 케이블, 네트워크 인터페이스 등을 포함할 수 있다. 구체적인 예로서, 미디어 렌더링 소스(102)는 음악을 재생할 수 있으며, 클라이언트 장치(104)는 상기 음악의 샘플을 수신하고 기록하기 위한 마이크로폰을 포함할 수 있다. 또 다른 실시예에서, 클라이언트 장치(104)는 증폭기, 믹싱 콘솔, 또는 미디어 렌더링 소스의 다른 출력 장치와 같은 미디어 렌더링 소스(102)의 출력에 직접 연결될 수도 있다.
어떤 실시예들에서는, 클라이언트 장치(104)는 미디어 스트림의 렌더링을 수신하기 위한 것 외에는, 미디어 렌더링 소스(102)에 동작상 접속되지 않을 수도 있다. 이 방식에서, 클라이언트 장치(104)는 미디어 렌더링 소스(102)에 의해 제어되지 않으며, 미디어 렌더링 소스(102)의 일체 부분이 아닐 수도 있다. 도 1에 도시된 실시예에서, 클라이언트 장치(104)는 미디어 렌더링 소스(102)와 독립된 개체이다.
클라이언트 장치(104)는 휴대전화(cell phone), 무선 휴대전화(wireless cell phone), PDA(personal data assistance), PMP(personal media player) 장치, 무선 웹-검색(web-watch) 장치, 개인용 헤드셋 장치, 애플리케이션 전용장치, 또는 전술한 기능들 중 하나 이상을 포함하는 하이브리드 장치와 같은 소형 폼 팩터(small-form factor) 휴대형(또는 모바일) 전자장치의 일부로서 구현될 수 있다. 클라이언트 장치(104)는 또한 랩탑 컴퓨터와 그 이외의 컴퓨터 구성 둘 다를 포함하는 개인용 컴퓨터로서 구현될 수 있다. 클라이언트 장치(104)는 또한 더 큰 장치 또는 시스템의 구성요소일 수도 있고 비 휴대형 장치일 수도 있다.
클라이언트 장치(104)는 미디어 렌더링 소스(102)에 의해 제공되는 데이터 스트림을 기록하고, 상기 기록된 데이터 스트림을 서버(106)에 제공하도록 구성될 수 있다. 클라이언트 장치(104)는 네트워크(108)를 통해 서버(106)와 통신할 수 있으며, 클라이언트 장치(104), 네트워크(108), 및 서버(106) 사이의 접속은 유선 또는 무선(예컨대, Wi-Fi, 셀룰러 통신 등) 통신일 수 있다. 클라이언트 장치(104)는 미디어 렌더링 소스(102)에 의해 제공되는 데이터 스트림의 연속 레코딩/캡처를 서버(106)에 제공하도록 설정될 수 있다. 이 방식에서, 서버(106)는 미디어 렌더링 소스(102)에 의해 제공되는 콘텐트의 연속 데이터 스트림을 클라이언트 장치(104)를 통해 수신할 수 있다.
시스템(100)은 미디어 렌더링 소스(102)에 의해 제공된 데이터 스트림을 기록하도록 역시 설정될 수 있는 제2 클라이언트 장치(110)를 추가로 포함한다. 제2 클라이언트 장치(110)는 클라이언트 장치(104)에 관하여 설명된 것과 유사하거나 동일한 타입의 장치일 수 있다. 제2 클라이언트 장치(110)는 미디어 렌더링 소스(102)에 의해 제공된 콘텐트 샘플을 기록하고, 상기 기록된 콘텐트 샘플을 서버(106)에 (예컨대, 네트워크(108)을 통해) 제공하며, 상기 콘텐트 샘플에 대한 정보를 요청하도록 설정될 수 있다. 상기 정보는 상기 콘텐트의 정체, 상기 콘텐트의 공연자의 정체, 상기 콘텐트의 정체와 관련된 정보 등을 포함할 수 있다.
일 실시예에서, 도 1의 시스템(100)을 사용할 때, 클라이언트 장치(104) 및 제2 클라이언트 장치(110) 각각은 미디어 렌더링 소스(102)에 의해 제공된 콘텐트를 기록할 수 있도록 미디어 렌더링 소스(102)를 포함하는 환경(112) 내에 위치될 수 있다( 또는 미디어 렌더링 소스(102)에 아주 가까이 있을 수 있다). 환경(112)의 예는 콘서트 행사장, 카페, 레스토랑, 실내, 강의실, 운동장, 빌딩을 포함하거나, 환경(112)은 시내 중심지역, 시 자체, 또는 시의 일부와 같은 더 큰 지역을 포함할 수도 있다. 환경(112)의 형태에 따라서, 미디어 렌더링 소스(102)는 라디오 방송국, 라디오, TV, 라이브 공연자 또는 밴드, 연설자, 대화, 주변 환경 사운드 등을 포함할 수도 있다.
시스템(100)은 환경(112) 내 미디어 렌더링 소스(102)로부터 기록된 데이터 스트림의 연속적인 (또는 실질적으로 연속적인) 레코딩을 클라이언트 장치(104)로 하여금 서버(106)에 제공하도록 구성될 수 있다. 제2 클라이언트 장치(110)는 데이터 스트림의 콘텐트 샘플을 기록하고, 상기 샘플을 서버(106)에 제공하고, 상기 샘플에 대한 정보를 요청할 수 있다. 서버(106)는 제2 클라이언트 장치(110)로부터 수신된 샘플을 클라이언트 장치(104)로부터 수신된 연속 데이터 스트림과 비교하고, 상기 샘플이 상기 연속 데이터 스트림의 일부와 매치하는지 또는 실질적으로 매치하는지 결정할 수 있다. 서버(106)는 상기 결정에 기초하여 제2 클라이언트 장치(110)에 정보를 반환할 수 있으며, 또한 상기 콘텐트에 대한 추가 정보를 제공하거나 환경(112) 내 또는 근처에 제2 클라이언트 장치(110)의 참석을 등록하는 것과 같은 1개 이상의 후속 서비스를 수행할 수도 있다.
일 실시예에서, 시스템(100)은 소정의 클라이언트가 콘텐트 샘플을 태그할 수 있도록 설정될 수 있으며, 만일 서버(106)가 상기 소정의 클라이언트가 위치하는 환경으로부터 수신된 데이터 스트림에 기초하여 매치를 발견하면, 서버(106)는 상기 환경 내에 상기 소정의 클라이언트 장치의 참석을 등록하는 것이 가능하다.
서버(106)는 콘텐트 인식 또는 실시간 식별을 수행하기 위한 1개 이상의 구성요소들을 포함할 수 있다. 예를 들면, 서버(106)는 클라이언트 장치(104)로부터 미디어/데이터 스트림을 수신하고, 클라이언트 장치(110)로부터 샘플을 수신하는 버퍼(114)를 포함할 수 있다. 버퍼(114)는 식별 모듈(116)에 접속된다. 버퍼(114)는, 예를 들면 선입선출(first in first out) 기준으로 임의의 소정 시간에 10~30초의 콘텐트를 저장하는 것과 같이, 소정의 시간 동안 미디어 스트림을 수신 및 저장하도록 롤링 버퍼(rolling buffer)로서 설정될 수 있다. 버퍼(114)는 또한 미디어 스트림의 다소간의 양을 저장할 수 있다.
버퍼(114)는 복수의 논리 버퍼로 설정될 수 있으며, 버퍼(114)의 일부는 데이터 스트림을 저장하고 또 다른 부분은 샘플을 저장한다. 대안으로, 버퍼(114)는 데이터 스트림을 저장하고 수신하는 반면, 식별 모듈(116)은 제2 클라이언트 장치(110)로부터 샘플을 수신할 수 있다.
식별 모듈(116)은 데이터 스트림 및/또는 미디어 샘플을 수신하기 위해 버퍼(114)에 접속될 수 있으며, 상기 샘플이 버퍼(114) 내 미디어 스트림의 일부와 매치하는지 식별하도록 설정될 수 있다. 이 방식에서, 식별 모듈(116)은 버퍼(114) 내에 저장된 데이터 스트림과 상기 샘플을 비교할 수 있으며, 버퍼(114)가 짧은 양의 데이터 스트림(예컨대, 10~30 초)을 저장할 때, 식별 모듈(116)은 상기 샘플이 이전 30초 동안 수신된 데이터 스트림의 일부에 대응하는지 여부를 결정하도록 설정된다. 이와 관련하여, 식별 모듈(116)은 상기 샘플이 현재 제공되고 있는 미디어에 대응하는지 결정하기 위해 실시간 비교를 수행한다. 버퍼(114)에 저장된 데이터 스트림의 양은 식별될 샘플 대응을 위한 유효 창(window of validity)을 제공하며, 따라서 어떤 실시예에서는, 정확한 매치가 일어날 확률을 증가시킨다.
또한, 식별 모듈(116)은 데이터 스트림에서 상기 샘플의 시간 오프셋을 지시하는 대응하는 추정된 시간 위치(Ts)를 식별할 수 있다. 시간 위치(Ts)는 또한, 어떤 실시예에서는, 상기 데이터 스트림의 시작에서부터 또는 UTC 기준 시간으로부터 경과된 시간의 양일 수 있다. 식별 모듈(116)은 이와 같이 샘플과 데이터 스트림 사이의 매치를 식별하기 위해 콘텐트 샘플의 특성과 콘텐트 데이터 스트림의 특성의 시간적 비교를 수행할 수 있다. 예를 들면, 시간 위치(Ts)가 상기 미디어 샘플의 타임스탬프(timestamp)에 실질적으로 유사할 때 실시간 식별이 플래그(flag)될 수 있다.
식별 모듈(116)은 미디어 샘플과 데이터(미디어) 스트림을 수신하고 수신된 미디어 샘플 또는 미디어 스트림에 대해 콘텐트 식별을 수행하도록 추가로 설정될 수 있다. 상기 콘텐트 식별은, 미디어 샘플과 미디어 스트림 또는 다른 저장된 데이터와의 비교에 기초하여, 미디어 샘플을 식별하거나 미디어 샘플에 대한 또는 관련된 정보를 식별한다. 식별 모듈(116)은 예를 들면, 영국 런던의 샤잠 엔터테인먼트(Shazam Entertainment), 미국 캘리포니아주 에머리빌의 그레이스노트(Gracenote), 또는 미국 캘리포니아주 새너제이의 멜로디스(Melodis)에 의해 제공된 것과 같은 미디어 샘플 정보 검색 서비스의 임의의 실시예에 사용되거나 또는 포함될 수 있다. 이 서비스들은 환경 오디오의 샘플들을 수신하고, 상기 오디오 샘플의 음악 콘텐트를 식별하고, 및 사용자에게 트랙 이름, 아티스트(artist), 앨범, 아트워크(artwork), 바이오그래피(biography), 디스코그래피(discography), 콘서트 티켓 등을 포함하는 음악에 대한 정보를 제공한다.
이와 관련하여, 식별 모듈(116)은 미디어 서치 엔진을 포함할 수 있고 또한, 상기 수신된 미디어 샘플과 상기 저장된 정보를 비교하여 상기 수신된 미디어 샘플에 대한 정보를 식별하기 위해, 예컨대 기준 미디어 스트림들을 인덱싱하는 데이터베이스(118)를 포함하거나 DB(118)에 접속될 수 있다. 미디어 샘플에 대한 정보가 일단 식별되면, 트랙 정체 또는 다른 정보가 제2 클라이언트 장치(110)에 반환될 수 있다. DB(118)는 또한 예를 들면 클라이언트 장치(104)로부터 수신된 것과 같은 데이터 스트림을 저장할 수 있다.
DB(118)는 콘텐트 조각들을 식별하기 위한 정보를 포함하는 콘텐트 패턴을 저장할 수 있다. 콘텐트 패턴들은 미디어 레코딩을 포함할 수 있으며 각 레코딩은 고유 식별자(예컨대, sound_ID)에 의해 식별될 수 있다. 대안으로, DB(118)는 각 레코딩을 위한 오디오 또는 비디오 파일을 반드시 저장하지 않을 수도 있는데, 이는 다른 곳으로부터 오디오 파일을 검색하는데 sound_ID가 사용될 수 있기 때문이다. 콘텐트 패턴들은 예컨대, 미디어 레코딩의 타임라인(timeline)에 대응하는 시간 차원을 가진 상기 미디어 레코딩의 콘텐트를 기술하는 시간 매핑된 피처들의 모음을 포함하는 기준 시그너처 파일과 같은, 다른 정보를 포함할 수 있으며, 각 피처는 각 매핑된 시점의 근처에서의 콘텐트의 기술일 수 있다. 콘텐트 패턴들은 또한 미디어 파일의 추출된 피처들과 관련된 정보를 포함할 수도 있다. DB(118)는 또한, 아티스트 이름, 노래의 길이, 노래의 가사, 가사의 라인 또는 단어들에 대한 시간 인덱스, 앨범 아트워크, 또는 파일 대한 다른 식별 또는 관련 정보와 같은 콘텐트 패턴에 대한 정보를 표시하는 메타데이터와 같은, 각 저장된 콘텐트 패턴에 대한 정보를 포함할 수 있다.
도 1은 서버(106)가 식별 모듈(116)을 포함하는 것으로 도시하고 있지만 식별 모듈(116)은 예를 들면 서버(106)로부터 분리될 수도 있다. 또한, 식별 모듈(116)은 예를 들면 네트워크(108)를 통해 서버(106)에 접속된 원격 서버에 있을 수도 있다.
또한, 식별 모듈(116)의 기능들은 클라이언트 장치(104) 또는 제2 클라이언트 장치(110)에 의해 수행될 수도 있다. 예를 들면, 클라이언트 장치(104)는 미디어 렌더링 소스(102)로부터의 미디어 스트림의 샘플을 캡처하고, 상기 미디어 샘플의 지문을 생성하기 위해 상기 샘플에 대한 최초 처리를 수행할 수 있다. 제2 클라이언트 장치(110)는 그 다음에 상기 지문 정보를 서버(106)에 송신하며, 서버(106)는 상기 지문 정보만을 기초로 상기 샘플에 관한 정보를 식별한다. 이 방식에서, 더 많은 연산 또는 식별 처리가 예를 들면 서버(106)가 아닌 제2 클라이언트 장치(110)에서 수행되는 것이 가능하다.
미디어 트랙들의 DB를 사용하여 미디어 샘플 및 미디어 샘플의 피처들의 컴퓨터 콘텐트 식별을 수행하는 다양한 콘텐트 식별 기법들이 당해 기술분야에서 알려져 있다. 다음 미국 특허 및 공개 문헌은 미디어 인식 기법에 대한 가능한 예를 설명하며, 각각은 참조에 의해 본 명세서에 포함된다: 미국 특허 제4,843,562호(발명의 명칭: Broadcast Information Classification System and Method); 미국 특허 제4,450,531호(발명의 명칭: Broadcast Signal Recognition System and Method); 미국 특허출원 공개 제2008/0263360호(발명의 명칭: Generating and Matching Hashes of Multimedia Content); 미국 특허 제7,627,477호(발명의 명칭: Robust and Invariant Audio Pattern Matching); 미국 특허출원 공개 제2007/0143777호(발명의 명칭: Method and Apparatus for Identification of Broadcast Source); 미국 특허 제6,990,453호(발명의 명칭: System and Methods for Recognizing Sound and Music Signals in High Noise and Distortion); 미국 특허 제5,918,223호(발명의 명칭: Method and Article of Manufacture for Content-Based Analysis, Storage, Retrieval, and Segmentation of Audio Information).
요약하면, (클라이언트 장치(104), 제2 클라이언트 장치(110), 또는 서버(106) 내의) 콘텐트 식별 모듈은 미디어 샘플을 수신하고, 각각의 합성 상관 세그먼트(resulant correlation segment)에 대한 상관 함수 피크를 획득하기 위해 상기 샘플을 디지털 정규화 기준 신호 세그먼트와 상관시키고, 상기 상관 함수 피크들 사이의 간격이 미리 결정된 한계 내에 있을 때 인식 신호를 제공하도록 설정될 수 있다. 상기 상관 함수 피크들과 일치하는 RMS 파워 값들의 패턴은, 예를 들면 미국 특허 제4,450,531호에 언급된 것과 같이, 상기 디지털 기준 신호 세그먼트들로부터 상기 RMS 파워 값들의 패턴의 미리 결정된 한계 내에서 매치할 수 있다. 매칭 미디어 콘텐트는 이와 같이 식별될 수 있다. 또한, 매칭 미디어 콘텐트 내 샘플의 매칭 위치는, 예를 들면 상기 상관 피크들의 오프셋뿐만 아니라 상기 매칭 상관 세그먼트의 위치에 의해 주어질 수 있다.
도 2는 또 다른 콘텐트 식별 방법의 실시예를 도시한다. 일반적으로, 미디어 콘텐트는 미디어 샘플의 특성 또는 지문을 식별하거나 연산하고(computing) 상기 지문들을 기준 미디어 파일의 미리 식별된 지문들과 비교함으로써 식별 가능하다. 지문이 연산되는 샘플 내 특정 위치들은 샘플 내 재생성 가능한 지점들에 종속한다. 그와 같은 재생성 가능하게 연산할 수 있는 위치들은 "랜드마크(landmarks)"로 지칭될 수 있다. 랜드마크들의 샘플 내 위치는 샘플 자체에 의해 결정 가능하다. 즉, 샘플 품질에 좌우되고 재생성 가능하다. 다시 말해서, 프로세스가 반복될 때마다 동일한 신호에 대해 동일하거나 유사한 랜드마크들이 연산될 수 있다. 랜드마킹 스킴은 사운드 레코딩의 초당 약 5 내지 10개의 랜드마크를 표시할 수 있다; 그러나 랜드마킹 밀도는 미디어 레코딩 내 활동(activity) 양에 좌우될 수 있다. 파워 놈(Power Norm)으로 알려진 랜드마킹 기법은 레코딩 내 다수의 시점에서 순간 파워를 계산하고 국소 최대(local maxima)를 선택하는 것이다. 이것을 행하는 한 방법은 파형을 직접 정류하고 여과함으로써 엔벨로프(envelope)를 계산하는 것이다. 또 다른 방법은 신호의 힐버트(Hilbert) 변환(쿼드러처(quadrature))을 계산하고 원래 신호와 힐버트 변환의 제곱 크기들의 합을 사용하는 것이다. 랜드마크를 계산하는 다른 방법들 역시 사용될 수 있다.
도 2는 시간에 대한 샘플의 크기(dB)를 예시하는 그래프이다. 그래프는 다수의 식별된 랜드마크 위치(L1 내지 L8)를 도시한다. 일단 랜드마크가 결정되면, 미디어 내 각 랜드마크 시점에서 또는 근처에서 지문이 계산된다. 랜드마크에 대한 어떤 피처의 근접은 사용된 지문채취(fingerprinting) 방법에 의해 정해진다. 어떤 경우에 있어서는, 피처가 랜드마크에 명확히 대응하고 이전의 또는 후속의 랜드마크에 대응하지 않으면, 상기 피처는 랜드마크에 근접한 것으로 간주된다. 다른 경우에 있어서, 피처들은 다수의 인접한 랜드마크들에 대응한다. 지문은 일반적으로 상기 랜드마크 시점에서 또는 부근에서 미디어 내 한 세트의 피처들을 요약하는 값 또는 한 세트의 값들이다. 일 실시예에서, 각 지문은 다수 피처들의 해시함수인 단일 수치이다. 지문의 다른 예는 스펙트럼 슬라이스(spectral slice) 지문, 멀티-슬라이스 지문, LPC 계수, 셉스트럴(cepstral) 계수, 및 스펙트로그램 피크의 주파수 성분들을 포함한다.
지문은 미디어 신호의 임의의 타입의 디지털 신호 처리 또는 주파수 해석에 의해 연산될 수 있다. 일 실시예에서, 스펙트럼 슬라이스(slice) 지문을 생성하기 위해, 주파수 해석이 각 랜드마크 시점의 주위에서 수행되어 몇 개의 상위 스펙트럼 피크들을 추출한다. 지문 값은 그러면 가장 강한 스펙트럼 피크의 단일 주파수 값이 될 것이다. 오디오 샘플의 특성 또는 지문을 연산하는 것에 대한 더 많은 정보를 원한다면, 미국 특허 제6,990,453호(발명의 명칭: System and Methods for Recognizing Sound and Music Signals in High Noise and Distortion)을 참조할 수 있으며, 이 특허문헌의 전체 내용은 참조를 위해 본 명세서에 포함된다.
따라서, 도 1을 다시 참조하면, 클라이언트 장치(104), 제2 클라이언트 장치(110) 또는 서버(106)는 레코딩(예컨대, 미디어/데이터 샘플)을 수신하고 상기 레코딩의 지문을 연산할 수 있다. 일 실시예에서, 레코딩에 대한 정보를 식별하기 위해, 서버(106)는 그 다음, 가장 큰 수의 선형적으로 관련된 대응을 갖거나, 또는 특성 지문들의 상대적 위치가 상기 레코딩의 동일한 지문들의 상대적인 위치와 가장 밀접하게 매칭하는 파일을 찾기(locate) 위해, DB(118) 내 파일들과 대등한 지문들 사이의 대응을 생성함으로써, 알려진 미디어(예컨대, 알려진 오디오 트랙)의 지문과 상기 레코딩의 지문을 매칭하기 위해, DB(118)에 액세스하는 것이 가능하다.
도 2를 참조하면, 지문들이 매치하는(또는 실질적으로 매치하는), 기준 파일과 상기 샘플의 랜드마크들의 산포도가 도시되어 있다. 상기 샘플은 다수의 산포도를 생성하기 위해 다수의 기준 파일들에 비교될 수 있다. 산포도를 생성한 후, 랜드마크 쌍들 사이의 선형 대응이 식별될 수 있으며, 선형적으로 관련 있는 쌍들의 개수에 따라 세트들에 스코어(score)가 부여될 수 있다. 선형 대응은, 통계적으로 의미 있는 수의 대응하는 샘플 위치들과 기준 파일 위치들이 실질적으로 동일한 1차 방정식으로, 예를 들면 허용된 오차한계 내에서 기술될 수 있을 때, 일어날 수 있다. 통계적으로 의미 있는 가장 높은 스코어를 갖는, 즉 가장 큰 수의 선형 관계 대응을 가진 세트의 파일이 승리 파일(winning file)이며, 상기 샘플에 대한 매칭 미디어 파일로서 간주될 수 있다. 이와 같이 샘플의 콘텐트가 식별될 수 있다.
일 실시예에서, 파일에 대한 스코어를 생성하기 위해, 오프셋 값들의 히스토그램이 생성될 수 있다. 상기 오프셋 값들은 지문이 매치하는 기준 파일과 상기 샘플 사이에 랜드마크 시간 위치들에서의 차이일 수 있다. 도 2는 오프셋 값들의 히스토그램의 예를 도시한다. 상기 기준 파일에는 히스토그램의 피크에 해당하는 스코어(예를 들면, 도 2에서 스코어 = 28)가 주어질 수 있다. 각 기준 파일은 스코어를 생성하기 위해 이런 방식으로 처리될 수 있으며, 가장 높은 스코어를 가진 기준 파일이 상기 샘플에 대한 매치로서 결정될 수 있다.
미디어 스트림 내 콘텐트를 식별하기 위한 기술의 또 다른 실시예에로서, 국지화된 매칭 기술을 사용하여 그 콘텐트를 식별하기 위해 미디어 샘플이 분석될 수 있다. 예를 들면, 일반적으로 2개의 미디어 레코딩 사이의 관계는 각각의 샘플들로부터 도출된 어떤 제1 매칭 지문 오브젝트에 의해 규정될 수 있다. 각각 특정 위치에서 발생하는 한 세트의 지문 오브젝트들이 각 미디어 샘플에 대해 발생된다. 각 위치는 각각의 미디어 샘플의 콘텐트에 따라 결정되며 각 지문 오브젝트는 상기 각각의 특정 위치에서 또는 근처에서 1개 이상의 로컬 피처(local feature)를 규정한다. 매칭된 지문 오브젝트의 각 쌍에 대해 상대 값이 그 다음 결정된다. 상기 상대 값들의 히스토그램이 그 다음 생성된다. 만일 통계적으로 유의미한 피크가 발견되면, 상기 2개의 피크 샘플은 실질적으로 매칭하는 것으로 규정될 수 있다. 또한, 오디오 샘플이 원시/기준 오디오 트랙과 비교하여 얼마나 감속 또는 가속되었는지를 표시하는 타임 스트레치 비율(time stretch ratio)이 결정될 수 있다. 이 방법의 더 상세한 설명에 대해서는, 미국 특허 제7,627,477호("Robust and Invariant Audio Pattern Matching")를 참조할 수 있으며, 이 문헌의 전체 내용은 본 명세서에 전부 기재된 것처럼 참조에 의해 여기에 포함된다.
또한, 전술한 공개문헌에서 설명된 시스템 및 방법들은 미디어 샘플의 정체 이상의 것을 반환할 수 있다. 예를 들면, 미국 특허 제6,990,453호에 기재된 방법을 사용하는 것은, 식별된 오디오 트랙과 관련된 메타데이터에 추가하여, 식별된 미디어 레코딩의 샘플의 시작으로부터 미디어 샘플의 상대 시간 오프셋(RTO: relative time offset)을 반환할 수 있다. 상기 샘플의 RTO를 결정하기 위해, 상기 샘플의 지문은 지문들이 매치하는 상기 실별된 레코딩의 지문들과 비교될 수 있다. 각각의 지문은 주어진 시간에 일어나며, 따라서 샘플을 식별하기 위해 지문을 매칭한 후, (상기 샘플 내 매칭 지문의) 제1 지문과 상기 저장되고 식별된 (원시) 파일의 제1 지문과의 사이의 시간 차이가 상기 샘플의 시간 오프셋, 예를 들면 노래에서 시간 양이 될 것이다. 이와 같이, 샘플이 취해진 상대 시간 오프셋(예컨대, 노래에서 67초)이 결정될 수 있다. RTO를 결정하기 위해 다른 정보가 사용될 수도 있다. 예를 들면, 히스토그램 피크의 위치가 기준 레코딩의 시작으로부터 상기 샘플 레코딩의 시작까지의 시간 오프셋으로 간주될 수 있다.
다른 형태의 콘텐츠 식별 역시 미디어 샘플의 타입에 따라 수행될 수 있다. 예를 들면, 비디오 스트림(예컨대, 영화) 내 위치 및 비디오 콘텐트를 식별하기 위해 비디오 식별 알고리즘이 사용될 수 있다. 비디오 식별 알고리즘의 예는 Oostveen, J.등의 Lecture Notes in Computer Science, 2314 (2002, 3. 11)의 117-128 페이지에 기재된 "Feature Extraction and a Database Strategy for Video Fingerprinting"을 참조할 수 있으며, 그 전체 내용은 참조를 위해 본 명세서에 포함된다. 예를 들면, 비디오 내에서 비디오 샘플의 위치는 어느 비디오 프레임이 식별되었는지 결정함으로써 도출될 수 있다. 비디오 스트림을 식별하기 위해, 미디어 샘플의 프레임들은 행과 열의 그리드(grid)로 분할될 수 있으며, 그리드의 각 블록에 대해서, 픽셀들의 휘도 값들(luminance values)의 평균이 계산된다. 그리드의 각 블록에 대해 지문 비트들을 도출하기 위해 상기 연산된 평균 휘도 값들에 공간 필터가 적용될 수 있다. 상기 지문 비트들은 프레임을 유일하게 식별하기 위해 사용될 수 있으며, 알려진 미디어를 포함하는 DB의 지문 비트들에 비교 또는 매칭될 수 있다. 한 프레임으로부터 추출된 지문 비트들은 서브-지문으로 지칭될 것이며, 한 지문 블록은 연속 프레임들로부터의 고정된 수의 서브-지문들이다. 서브-지문들과 지문 블록들을 사용하면, 비디오 샘플들의 식별이 수행될 수 있다. 미디어 샘플이 어느 프레임을 포함했는지에 기초하여, 비디오에서의 위치(예컨대, 시간 오프셋)가 결정될 수 있다.
또한, 워터마킹(watermarking) 방법을 사용하는 것과 같이, 다른 형태의 콘텐트 식별이 역시 수행될 수 있다. 미디어 스트림이 임베디드 워터마크들을 간간이(at intervals) 가지고 또한, 각각의 워터마크가 워터마크의 시간 또는 위치를 직접, 또는 예를 들면 DB 탐색을 통해 간접으로 지정할 수 있도록, 시간 오프셋을 결정하기 위해 식별 모듈(116)에 의해 워터마킹 방법이 사용될 수 있다.
식별 모듈(116)의 기능들을 구현하는 전술한 실시예 콘텐트 식별 방법들 중 어떤 경우에 있어서, 식별 프로세스의 부차적 결과는 미디어 스트림 내 미디어 샘플의 시간 오프셋일 수 있다.
어떤 실시예들에서, 서버(106)는 상기 미디어 샘플에 대응하는 미디어 스트림을 선택하기 위해 미디어 스트림 라이브러리 DB(120)에 추가로 액세스할 수 있으며, 그것은 그 다음 클라이언트 장치(104)에 반환되어 클라이언트 장치(104)에 의해 공급된다. 미디어 스트림 라이브러리 DB(120) 내의 정보, 또는 미디어 스트림 라이브러리 DB(120) 그 자체는 DB(118) 내에 포함될 수도 있다.
상기 미디어 샘플에 대응하는 미디어 스트림은 예를 들면, 클라이언트 장치(110)의 사용자에 의해 수동으로 선택되거나, 클라이언트 장치(110)에 의해 프로그램적으로 선택되거나, 미디어 샘플의 정체에 기초하여 서버(106)에 의해 선택될 수 있다. 상기 선택된 미디어 스트림은 미디어 샘플과 상이한 종류의 미디어일 수도 있고, 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어에 동기화될 수도 있다. 예를 들면, 미디어 샘플은 음악일 수 있고, 선택된 미디어 스트림은 음악에 동기화될 수 있는, 가사(lyrics), 음악 악보(musical score), 기타 태블러추어(guitar tablature), 음악 반주(musical accompaniment), 비디오, 로봇인형 춤(animatronic puppet dance), 애니메이션 시퀀스 등이 될 수 있다. 클라이언트 장치(110)는 미디어 샘플에 대응하는 상기 선택된 미디어 스트림을 수신할 수도 있고, 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어에 동기하여 상기 선택된 미디어 스트림을 제공할 수도 있다.
미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어의 추정된 시간 위치는 식별 모듈(116)에 의해 결정 가능하고 상기 선택된 미디어 스트림을 제공할, 선택된 미디어 스트림 내의 대응하는 위치를 결정하기 위해 사용될 수 있다. 클라이언트 장치(110)가 미디어 샘플을 캡처하도록 기동되는 때, 클라이언트 장치(110)의 기준 클록(reference clock)으로부터 타임스탬프(timestamp)(T0)가 기록된다. 임의의 시간 t에서, 추정된 실시간 미디어 스트림 위치(Tr(t))는 식별된 미디어 스트림의 추정 위치(Ts)와 상기 타임스탬프의 시간 이후 경과시간의 합으로부터 결정된다. 즉,
상기 식에서, Tr(t)는 미디어 스트림의 시작부터 현재 공급되고 있는 미디어 스트림의 실시간 위치까지의 경과된 시간의 양이다. 따라서, Ts(즉, 미디어 스트림의 시작부터 상기 기록된 샘플에 기초한 미디어 스트림의 위치까지의 추정 경과 시간의 양)을 사용하면, Tr(t)가 계산될 수 있다. Tr(t)는 그 다음에 미디어 렌더링 소스(102)에 의해 공급되고 있는 미디어에 동기하여 상기 선택된 미디어 스트림을 제공하기 위해 클라이언트 장치(104)에 의해 사용될 수 있다. 예를 들면, 클라이언트 장치(104)는 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어에 동기하여 상기 선택된 미디어 스트림을 제공 또는 제시하기 위해, 시간 위치(Tr(t))에서, 또는 Tr(t) 시간 양이 경과한 위치에서, 상기 선택된 미디어 스트림의 제공을 시작할 수 있다.
어떤 실시예에서는, 상기 선택된 미디어 스트림이 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어와의 동기를 상실하는 것을 완화하거나 방지하기 위해, 상기 추정된 위치 Tr(t)가 속도 조정 비율(R)에 따라 조정될 수 있다. 예를 들면, 미국 특허 제7,627,477호(발명의 명칭: Robust and invariant audio pattern matching)에 기재된 방법들이, 미디어 샘플, 식별된 미디어 스트림의 추정 위치(TS), 및 속도 비율(R)을 식별하기 위해 수행될 수 있으며, 상기 문헌의 전체 내용은 참조를 위해 본 명세서에 포함된다. 속도 비율(R)을 추정하기 위해, 매칭 지문들의 가변 부분들의 크로스-주파수 비율(cross-frequency ratio)이 계산되며, 주파수는 시간에 반비례하므로, 크로스-시간 비율은 크로스-주파수 비율의 역수이다. 크로스-속도 비율(R)은 크로스-주파수 비율이다(예컨대, 크로스-시간 비율의 역수).
더욱 구체적으로는, 전술한 방법들을 사용할 때, 2개의 오디오 샘플 사이의 관계는, 상기 샘플들의 시간-주파수 스펙트로그램을 생성하고(예컨대, 각 프레임 내에 주파수 빈(bins)을 생성하기 위해 푸리에 변환을 연산하고), 및 상기 스펙트로그램의 로컬 에너지 피크를 식별함으로써, 규정될 수 있다. 상기 로컬 에너지 피크에 관련된 정보는 추출되어 지문 오브젝트의 목록으로 요약되며, 그 각각은 선택사항으로 위치 필드, 변형 성분(variant component), 및 불변형 성분(invaraint component)을 포함한다. 각각의 오디오 샘플들의 스펙트로그램으로부터 도출된 특정 지문 오브젝트들은 그 다음 매칭될 수 있다. 매칭된 지문 오브젝트들의 각 쌍에 대한 상대 값이 결정되며, 그것은 예를 들면 상기 각각의 오디오 샘플들의 파라미터 값(parametric values)들의 대수의 몫 또는 차이일 것이다.
일 실시예에서, 미디어 샘플의 스펙트로그램으로부터 스펙트럼 피크들의 로컬 쌍들이 선택되며, 로컬 쌍들 각각은 지문을 포함한다. 마찬가지로, 알려진 미디어 스트림의 스펙트로그램으로부터 스펙트럼 피크의 로컬 쌍들이 선택되며, 로컬 쌍들 각각은 지문을 포함한다. 상기 샘플과 상기 알려진 미디어 스트림 사이의 매칭 지문들이 결정될 수 있고, 상기 샘플과 상기 알려진 미디어 스트림의 각각에 대한 스펙트럼 피크들 사이의 시간 차이가 계산될 수 있다. 예를 들어, 상기 샘플의 2개의 피크 사이의 시간 차이가 결정되고 상기 알려진 미디어 스트림의 2개의 피크 사이의 시간 차이와 비교된다. 이들 2개의 시간 차이의 비율이 비교되고 (지문들의 매칭 쌍들로부터 추출된) 그와 같은 다수의 비율을 포함하는 히스토그램이 생성될 수 있다. 히스토그램의 피크는 실제 속도 비율(예컨대, 기준 미디어 파일에서 미디어가 제공되고 있는 속도와 비교하여 미디어 렌더링 소스(102)가 상기 미디어를 재생하고 있는 속도 사이의 차이)인 것으로 결정될 수 있다. 따라서, 상기 속도 비율(R)의 추정은 예를 들면 히스토그램에서 피크를 발견함으로써 획득될 수 있으며, 히스토그램 내 상기 피크는 2개의 오디오 샘플 사이의 관계를 상대적인 피치(pitch)로서, 또는 선형 스트레치(linear stretch)의 경우에는 상대적인 재생 속도로서 규정한다.
이와 같이, 상기 글로벌 상대 값(예컨대, 속도 비율(R))은 상기 2개의 오디오 샘플로부터의 대응하는 변형 성분을 사용하여 매칭된 지문 오브젝트로부터 계산될 수 있다. 상기 변형 성분은 각 지문 오브젝트의 위치에 근접한 로컬 피처로부터 결정된 주파수 값일 수 있다. 상기 속도 비율(R)은 주파수들 또는 시간 변화(delta times)의 비율이거나, 또는 상기 2개의 오디오 샘플 사이의 매핑을 기술하기 위해 사용된 글로벌 파라미터의 추정을 결과로서 제공하는 어떤 다른 함수일 수 있다. 상기 속도 비율(R)은 예를 들면 상대적인 재생 속도의 추정으로 간주될 수도 있다.
상기 속도 비율(R)은 또한 다른 방법들을 사용하여 추정될 수 있다. 예를 들면, 미디어의 복수의 샘플들이 캡처될 수 있으며, k번째 샘플에 대해 기준 클럭 시간 T0(k)에서 복수의 추정된 미디어 스트림 위치 Ts(k)를 얻기 위해 각 샘플에 대해 콘텐츠 식별이 수행될 수 있다. 그러면, R은 다음 식으로 추정될 수 있다:
R을 시변하는 것으로 나타내기 위해, 다음 식이 사용될 수 있다:
따라서, 속도 비율(R)은, 미디어가 미디어 렌더링 소스(102)에 의해 렌더링되고 있는 속도를 결정하기 위해 일정 시간(a span of time) 동안 추정 시간 위치(Ts)들을 사용하여 계산될 수 있다.
속도 비율(R)을 사용하면, 실시간 미디어 스트림 위치의 추정치가 다음식에 의해 계산될 수 있다:
상기 실시간 미디어 스트림 위치는 미디어 샘플의 시간 위치를 표시한다. 예를 들어, 만일 미디어 샘플이 4분의 길이를 갖는 노래의 샘플이라면, 그리고 Tr(t)가 1분이라면, 그것은 상기 노래의 1분이 경과된 것을 표시한다.
일 실시예에서, 전술한 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어에 미디어 파일들을 동기화시키는 방법을 사용하면, 클라이언트 장치(104)는 미디어를 (직접, 또는 네트워크(108) 또는 서버(106)를 통해) 클라이언트 장치(110)에 제공할 수 있으며, 클라이언트 장치(110)는 미디어 렌더링 소스(102)에 의해 제공되고 있는 미디어와 동기하여 상기 수신된 미디어를 제공할 수 있다.
도 3은 콘텐트의 데이터 스트림과 콘텐트 샘플 사이의 매치를 결정하기 위해 전술한 실시예 콘텐트 식별 방법들에 따라 동작하도록 설정될 수 있는 일 실시예 시스템을 도시하는 블록도이다. 상기 시스템은 각각의 환경(304a-n) 내에서 각각 미디어를 제공하는 다수의 미디어/데이터 렌더링 소스(302a-n)를 포함한다. 시스템은 또한 각각의 환경(304a-n) 중 하나에 각각 위치된 클라이언트 장치(306a-n)를 포함한다. 환경(304a-n)은 예를 들면 중첩할 수도 있고 독립적인 환경일 수도 있다.
상기 시스템은 또한 (유선 또는 무선 접속을 사용하여) 클라이언트 장치(306a-n)의 각각으로부터 데이터 스트림을 수신하도록 구성되는 서버(308)를 포함한다. 상기 데이터 스트림은 미디어/데이터 렌더링 소스(302a-n)에 의해 제공된 것과 같은 콘텐트 표현(rendition)을 포함한다. 일 실시예에서, 클라이언트 장치(306a-n)는 각각 서버(308)에 접속을 개시하고 마이크로폰을 통해 미디어 렌더링 소스(302a-n)로부터 수신되는 콘텐트를 서버(308)에 스트림 처리한다. 또 다른 실시예에서, 클라이언트 장치(306a-n)는 미디어 렌더링 소스(302a-n)로부터의 콘텐트 데이터 스트림을 기록하고 그 레코딩을 서버(308)에 제공한다. 클라이언트 장치(306a-n)는 서버(308)가 소정의 클라이언트 장치로부터의 레코딩을 결합하여 콘텐트의 데이터 스트림을 생성하도록 미디어 렌더링 소스(302a-n)로부터 수신된 콘텐트의 레코딩들을 연속적인 (또는 실질적으로 연속적인) 방식으로 제공할 수 있다.
서버(308)는 클라이언트 장치(306a-n)로부터 데이터 스트림을 수신하고 상기 데이터 스트림을 채널 샘플러(312)에 제공하는 다중채널 입력 인터페이스(310)를 포함한다. 각 채널 샘플러(312)는, 전술한 임의의 방법을 사용하여, 상기 데이터 스트림의 지문을 결정하기 위한 채널 지문 추출기(314)를 포함한다. 서버(308)는 지문 블록 분류기(316) 내에서 특정 시간 동안 각 데이터 스트림에 대한 지문을 분류하고 저장하도록 설정될 수 있다. 서버(308)는 또한, 지문이 언제 생성되었는지 또는 수신되었는지에 기초하여 저장소에 지문을 로그(log)하기 위해 실시간 또는 클럭(clock)에 기준을 두거나 기준을 두지 않는 타임스탬프를 상기 지문들과 관련시킬 수 있다. 소정의 시간 이후, 서버(308)는 예를 들면 저장된 지문을 겹쳐 쓸 수 있다. 최근의 지문 이력을 저장하기 위해 소정의 길이를 가진 롤링 버퍼가 사용될 수 있다.
서버(308)는 추가의 인식 엔진을 접촉함으로써 지문을 연산하는 것이 가능하다. 서버(308)는 수신된 샘플들과 비교하기 위해 사용될 수 있는 데이터 스트림의 타임스팸프된 지문 토큰을 결정할 수 있다. 이와 관련하여, 서버(308)는 비교 기능을 수행할 프로세서(318)를 포함한다.
상기 시스템은 환경(322) 내에 위치된 또 하나의 클라이언트 장치(320)를 포함한다. 클라이언트 장치(320)는 주변 환경(322)으로부터 수신된 콘텐트 샘플을 기록하고, 상기 콘텐트 샘플을 서버(308)에 (무선 또는 유선 접속을 사용하여)제공하도록 설정될 수 있다. 클라이언트 장치(320)는 상기 콘텐트 샘플에 대한 정보를 결정하기 위한 질의와 함께 상기 콘텐트 샘플을 서버(308)에 제공할 수 있다. 클라이언트 장치(320)로부터 상기 질의를 수신한 때, 서버(308)는 지문들의 저장된 데이터 스트림 내에서 선형 대응하는 지문들을 검색하도록 설정될 수 있다. 특히, 프로세서(318)는 클라이언트 장치(320)로부터 수신된 샘플의 샘플 시간에 또는 근처에서 서버(308)에 기록된 또는 서버(308)에서 수신된 데이터 스트림 지문이 상기 샘플의 지문과 매치하는지 결정하기 위해 먼저 채널을 선택할 수 있다. 만일 매치하지 않으면, 프로세서(318)는 다음 채널을 선택하고 매치의 검색을 계속한다.
클라이언트 장치(320)로부터의 샘플과 상기 데이터 스트림의 지문은, 샘플 랜드마크와 상기 랜드마크에서 연산된 지문들을 포함하는 대응 쌍들을 생성함으로써, 매치될 수 있다. 랜드마크/지문의 각 세트는 데이터 스트림과 샘플 사이의 정렬을 위해 스캐닝될 수 있다. 즉, 상기 쌍들 내 선형 대응이 식별될 수 있으며, 상기 세트는 선형적으로 관계있는 쌍들의 수에 따라 스코어가 부여될 수 있다. 스코어가 가장 높은, 즉 가장 많은 수의 선형 관련 대응을 가진 세트가 승리 파일이며, 매치로서 결정된다. 만일 매치가 식별되면, 프로세서(318)는 상기 콘텐트 샘플의 정보, 또는 상기 콘텐트 샘플의 추가 정보를 식별하는 것을 포함하는 응답을 클라이언트 장치(320)에 제공한다.
일 실시예에서, 도 3의 시스템은 클라이언트 장치(320)로 하여금 주변 환경(322)으로부터의 콘텐트 샘플에 태그할 수 있도록 설정되며, 만일 서버(308)가 클라이언트 장치(306a-n) 중의 하나로부터 수신된 데이터 스트림에 기초하여 매치를 발견하면, 서버(308)는 임의의 개수의 후속 서비스(follow-on services)를 수행하는 것이 가능하다. 서버(308)는 클라이언트 장치(320)가 환경(304a-n)들 중 하나에 위치하는 경우에 매치를 발견할 수도 있다. 도 3에서, 일 실시예에서, 환경(322)은, 클라이언트 장치(320)에 의해 기록되고 서버(308)에 제공된 콘텐트 샘플이 미디어 렌더링 소스(320a-n)들 중 하나로부터 수신되도록, 환경(304a-n)들 중 어느 것과 겹치거나 그 내부에 포함될 수 있다.
실시예
후속 서비스
도 4는 데이터 스트림 내 콘텐트 또는 콘텐트에 대한 정보를 식별하고 후속 서비스를 수행하는 일 실시예 방법(400)의 흐름도를 도시한다.
여기서 개시된 또는 다른 프로세스들 및 방법들에 대해서, 상기 흐름도는 본 실시예의 하나의 가능한 구현의 기능 및 동작을 보여준다는 것을 이해하여야 한다. 이와 관련하여, 각 블록은, 프로세스의 특정한 논리 기능들 또는 단계들을 구현하기 위해 프로세서에 의해 실행 가능한 하나 이상의 명령들을 포함하는 프로그램 코드의 일부, 모듈, 또는 세그먼트를 나타낼 수 있다. 프로그램 코드는, 예를 들면, 디스크 또는 하드 드라이브를 포함하는 저장장치와 같은 임의 타입의 컴퓨터로 읽을 수 있는 매체 또는 데이터 저장장치에 저장될 수 있다. 컴퓨터로 읽을 수 있는 매체는, 예를 들면 레지스터 메모리, 프로세서 캐시 및 RAM(random access memory)과 같이 단기간 동안 데이터를 저장하는 컴퓨터로 읽을 수 있는 매체와 같은, 비- 일시적인(non-transitory) 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다. 컴퓨터로 읽을 수 있는 매체는 또한, 예를 들면, ROM(read only memory), 광 또는 자기 디스크, CD-ROM과 같이, 보조의 또는 영구적인 저장장치와 같은 비일시적인 기록매체를 포함할 수 있다. 컴퓨터로 읽을 수 있는 매체는 또한 어떤 다른 휘발성 또는 비휘발성 저장 시스템일 수 있다. 컴퓨터로 읽을 수 있는 매체는 예를 들면 유형의 컴퓨터 판독 가능한 저장 매체로 간주될 수 있다.
또한, 도 4의 각 블록은 상기 프로세스에서 특정한 논리 기능들을 수행하도록 배선된 회로를 나타낼 수 있다. 당해 기술분야의 숙련 기술자에 의해 이해될 수 있는 것과 같이, 수반된 기능에 따라 실질적으로 동시의 또는 역의 순서를 포함하는, 도시되거나 설명된 것과 다른 순서로 기능들이 실행될 수 있는 대안적인 구현들은 본 발명의 실시예들의 범위 내에 포함된다.
방법(400)은 블록 402에서 제1 장치의 환경으로부터의 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계를 포함한다. 예를 들면, 제1 장치는 휴대폰(portable phone)일 수 있고, 상기 제1 장치의 주변 환경으로부터의 콘텐트(예컨대, 연속적인 또는 실질적으로 연속적인 데이터 콘텐트)의 데이터 스트림을 기록할 수 있으며, 상기 데이터 스트림을 서버에 전송할 수 있다. 제1 장치는 서버에 연속 데이터 스트림을 제공할 수 있으며, 따라서 제1 장치가 서버와 접속을 유지하거나, 제1 장치가 상기 데이터 스트림의 레코딩을 또한 제공할 수도 있다. 구체적인 예로서, 교수는 강의실에서 테이블 위에 휴대폰을 놓고, 강의 동안 자신이 말한 것을 기록하고, 상기 레코딩을 서버에 제공할 수 있다. 콘텐트의 데이터 스트림은 오디오, 비디오, 또는 두 유형의 콘텐트 모두를 포함할 수 있다.
일 실시예에서, 복수의 장치들이 각각의 환경에 각각 참석할 수 있으며 각 장치는 각각의 환경으로부터 수신된 콘텐트의 데이터 스트림을 서버에 제공할 수 있다. 방법(400)에 따라 추가 처리를 위해 서버에서 임의의 수의 데이터 스트림이 수신될 수 있다.
방법(400)은 블록 404에서, 주변 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계를 포함한다. 예를 들면, 제2 장치는 제1 장치의 환경 내에 있을 수 있고 상기 주변 환경의 샘플을 기록할 수 있으며, 상기 샘플을 서버에 송신할 수 있다. 서버는 제1 장치로부터의 콘텐트 데이터 스트림과 제2 장치로부터의 콘텐트 샘플을 동시에 수신할 수 있다. 전술한 구체적인 예를 가지고 계속하면, 학생이 강의실 안에 있을 수 있고, 휴대폰을 사용하여 강의 샘플을 기록하고 그 샘플을 서버에 송신할 수 있다.
방법(400)의 블록 406에서, 상기 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교를 수행하는 단계를 포함한다. 예를 들면, 서버는, 상기 콘텐트의 지문을 결정하기 위한 것과 같이, 전술한 방법들 중 어느 것을 사용하여 상기 콘텐트 샘플과 상기 콘텐트 데이터 스트림 각각의 특성을 결정할 수 있다. 서버는 그 다음에 상기 샘플의 지문들과 상기 콘텐트 데이터 스트림의 지문을 비교한다. 이 실시예에서, 콘텐트 자체보다는 콘텐트의 특성이 비교될 수 있다. 또한, 상기 비교는, 상기 콘텐트 샘플의 콘텐트를 식별하기 위한 것과 같이, 완전한 콘텐트 식별을 수행하는 것을 포함하지 않을 수 있다. 오히려, 상기 비교는 상기 콘텐트 샘플이 콘텐트 데이터 스트림과 동일한 주변 환경으로부터 얻어진 것인지 여부를 상기 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 매칭 타임스탬프에서 매칭 지문에 기초하여 결정하는 것을 포함할 수 있다.
일 실시예에서, 상기 콘텐트 샘플은 샘플이 언제 기록되었는지의 샘플 시간을 나타내는 샘플 타임스탬프를 포함할 수 있다(예를 들면, 시계로부터의 실시간 또는 기준 시간). 상기 샘플의 지문은 상기 타임스탬프에 대응하는 시간에 또는 그 근처에서 상기 콘텐트 데이터 스트림의 지문과 비교될 수 있다. 만일 상기 지문들의 특성(예컨대, 크기, 주파수 등)이 서로의 어떤 허용한계 내에 있으면, 서버는 매치를 식별하며, 콘텐트 샘플이 상기 콘텐트 데이터 스트림과 동일한 소스로부터 기록된 것으로 결정할 수 있다.
다른 실시예들에서는, 타임스탬프가 필요하지 않을 수도 있다. 예를 들면, 소량의 데이터 스트림이 임의의 소정 시간(예컨대, 약 10~30 초, 1분, 수 분 등) 유지되는 실시예에서, 상기 샘플은 소량의 데이터에 비교되며 부정확한 매치의 확률을 낮출 수 있다. 만일 샘플과 데이터 스트림 사이에 매치가 발견되면, 상기 매치는 데이터 스트림 내 어디에서 매치가 일어났는지에 관계없이 유효한 것으로 결정될 수 있다.
상기 비교는 매치가 존재하는지를 결정하기 위해 상기 샘플과 상기 데이터 스트림의 시간적 비교(temporal comparison)로서 생각될 수 있다. 상기 시간적 비교는 상기 샘플과 데이터 스트림의 특성들 사이의 선형 대응을 식별하는 것을 포함할 수 있다. 다른 실시예에서는, 상기 비교는 실시간으로 수행될 수 있으며, 상기 샘플과 동일한 시간에 또는 실질적으로 동일한 시간에 수신된 데이터 스트림의 일부와 상기 샘플의 실시간 비교일 수도 있다. 상기 실시간 비교는 현재 수신되어 버퍼링되고 있는 데이터 스트림 (또는 현재 수신된 데이터 스트림의 부분들, 예컨대, 이전 30초 가량)과 샘플을 비교할 수 있다. 이와 같이 비교는, 데이터 스트림이 수신되고 있을 때 그리고 데이터 스트림의 콘텐트가 현재 소스에 의해 제공되고 있는 상태에서, 실시간으로 일어난다.
방법(400)는 블록 408에서, 상기 비교에 기초하여, 상기 환경 내 제2 장치의 참석의 등록 요청을 수신하는 단계를 포함한다. 예를 들어, 만일 상기 비교가 성공적이었고 그리하여 제2 장치로부터 수신된 콘텐트 샘플이 제1 장치로부터 수신된 콘텐트의 데이터 스트림의 적어도 일부와 매치되면(또는 실질적으로 매치되면), 서버는 제1 장치와 제2 장치가 동일한 환경 내에 있고 동일한 주변 콘텐트를 기록하고 있는 것으로 결정할 수 있다. 서버는 상기 환경 내 제2 장치의 참석을 등록하거나, 대안으로 블록 408에서와 같이, 서버는 상기 환경 내 제2 장치의 참석 등록 요청을 (또 다른 서버로부터, 제2 장치로부터, 또는 네트워크의 어떤 개체로부터) 수신할 수 있다.
전술한 실시예를 계속하면, 학생은 자신의 휴대폰에서 상기 콘텐트 샘플에 대한 정보를 나타내는 응답을 서버로부터 수신할 수 있다. 만일 상기 응답이 상기 콘텐트의 정체, 또는 상기 콘텐트의 공연자 등을 나타내면, 학생은 상기 콘텐트가 인식/식별된 것으로 결정하고, 상기 환경 내 제2 장치의 참석을 등록하도록 서버에 요청하기 위해 휴대폰상의 애플리케이션을 이용할 수 있다. 상기 애플리케이션은, 상기 환경 내 제2 장치의 참석의 등록 요청을 참석 서버(presence server)에 휴대폰이 송신하도록 하기 위해 실행될 수 있으며, 상기 참석 서버는 상기 요청을 콘텐트 식별 서버에 전달한다. 또는 콘텐트 식별 서버는 상기 요청을 수신하고 상기 요청을 참석 서버에 전달할 수 있다.
일 실시예에서, 어떤 장소에서의 참석을 등록하는 것은 제2 장치의 위치를 로그 또는 표시하거나, 또는 제2 장치의 사용자에 의한 활동에의 참여를 표시하는 것일 수 있다. 상기 참석은 예를 들면 Facebook®을 통해 "체크-인(check-in)"을 실행하는 것과 같이 소셜 네트워킹 웹사이트에서 등록될 수 있다. 일 실시예로서, 참석을 등록하는 것은 콘서트에 제2 장치의 참석을 표시하거나, 또는 상기 콘서트에 후원자로서 제2 장치의 사용자의 참여를 표시할 수 있다.
참석을 등록하는 것에 추가하여 또는 대신에, 제2 장치는 콘텐트/아티스트/행사장에 대한 선호를 표시하거나(예컨대, Facebook®을 통한 활동 등을 "좋아함"), 또는 소셜 네트워킹 웹사이트 상에 메시지를 제공하는 것(예컨대, Twitter® 상의 "tweet®", 또는 Weblog 상의 "블로그(blog)")을 포함하여 다른 후속 서비스가 수행되도록 요청할 수 있다.
다수의 데이터 스트림을 수신하는 서버에 기초한, 어떤 실시예에서는, 상기 서버는 콘텐트 샘플과 다수의 콘텐트 데이터 스트림들 중 1개 이상의 복수의 비교를 수행할 수 있다. 상기 비교에 기초하여, 상기 콘텐트 샘플과 상기 데이터 스트림들 중 하나의 일부 사이에 매치가 발견될 수 있다. 따라서 서버는 제2 장치가 상기 매칭 데이터 스트림이 수신된 장치의 각각의 환경에 위치하는 것으로 결론을 내릴 수 있다.
방법(400)을 사용하면, 서버는 또한 제1 및 제2 장치가 서로 근접해 있거나, 또는 동일한 환경 내에 또는 근처에 위치하는 것으로 결정하도록 설정될 수 있다.
또 다른 실시예에서, 방법(400)은 제2 장치로부터 등록 요청을 수신하지 않고 상기 비교에 기초하여 상기 환경에 제2 장치의 참석의 등록을 수행하는 것과 같이 더 적은 단계들을 포함할 수도 있다. 이 실시예에서, 서버는 제2 장치로부터 콘텐트 샘플을 수신할 수 있고, 상기 콘텐트 샘플의 특성과 상기 콘텐트 데이터 스트림의 특성을 비교함으로써, 서버는 상기 환경 내에 제2 장치의 참석을 등록하는 기능을 수행할 수 있다. 상기 콘텐트 샘플은 예를 들면 콘텐트 식별 요청 내에 서버로 제공될 수 있다.
또 다른 실시예에서, 방법(400)은 예를 들면, 복수의 장치의 각각의 환경으로부터 수신된 복수의 콘텐트 데이터 스트림을 상기 복수의 장치로부터 수신하고, 콘텐트 샘플의 특성과 상기 복수의 콘텐트 데이터 스트림의 특성의 비교를 수행하는 것과 같은 추가의 단계를 포함할 수 있다. 상기 비교에 기초하여, 제2 장치는 상기 각각의 환경들 중 하나에 위치하는 것으로 결정될 수 있다.
방법(400)은, 서버가 추가의 정보를 제2 장치에 제공하도록 설정되는 것과 같은, 추가의 기능을 포함할 수도 있다. 일 실시예에서, 서버는 제1 장치의 식별을 제2 장치에 제공할 수 있다. 이 경우에, 서버는 상기 데이터 스트림을 제공한 제1 장치의 사용자를 제2 장치의 사용자에게 통지하도록 구성될 수 있다. 상기 서버는 제1 장치의 사용자를 식별하는 정보(또는 제1 장치의 사용자를 결정하기 위해 사용될 수 있는 제1 장치 그 자체)를 상기 콘텐트 데이터 스트림으로 수신할 수 있으며, 이 정보를 제2 장치에 제공할 수 있다.
방법(400)에 의하면 어떤 사용자라도 콘텐트 데이터 스트림을 인식 서버에 제공함으로써 콘텐트 인식 엔진과 채널을 형성하는 것이 가능하다. 사용자들은 그 다음에 인식 서버에 콘텐트 샘플들을 제공할 수 있으며, 상기 인식 서버는 상기 샘플들을 수신된 데이터 스트림 채널뿐만 아니라 기존 DB와 비교하도록 설정될 수 있다. 어떤 실시예들에 있어서, 제1 장치는 데이터 스트림을 서버에 전송하고, 제2 장치는 제1 장치와의 비교 및 인식을 위해 샘플을 서버에 전송한다. 상기 데이터 스트림 및 샘플은 각각 소정의 미디어 렌더링 소스로부터 기록될 수 있다.
도 5는 콘텐트 인식 엔진과 채널을 형성하는 일 실시예 시스템을 도시하고, 도 6은 도 5의 구성요소들 사이에 교환되는 메시지들의 실시예 흐름도이다. 도 5는 미디어 소스(504)를 구비한 콘서트 행사장(502)을 포함하는 실시예 환경을 도시하며, 상기 미디어 소스(504)는 라이브 공연자를 포함할 수도 있다. 상기 공연자는 가까이에 클라이언트 장치(506)를 가질 수 있으며 공연자의 콘텐트 데이터 스트림을 서버(508)에 제공하기 위해 클라이언트 장치를 사용할 수도 있다. 클라이언트 장치(506)는 도시된 것과 같은 휴대폰이거나, 대안으로 다른 장치들을 포함하거나 다른 장치들일 수도 있다. 일 실시예에서, 클라이언트 장치는 공연 중에 공연자에 의해 사용되는 마이크로폰이거나 그것을 포함할 수 있다. 다른 실시예들도 역시 있을 수 있다.
콘서트 행사장(502)에는 다수의 손님들이 있을 수 있다. 한 사용자가 클라이언트 장치(510)를 가질 수 있고 상기 공연자의 샘플을 기록할 수 있으며, 상기 샘플은 나중에 서버(508)에 제공되는 것이 가능하다. 상기 샘플을 수신한 때, 서버(508)는 샘플이 임의의 수신된 데이터 스트림들 중 어느 일부와 매치하는지 결정할 수 있다. 만일 매치가 발견되면, 서버(508)는 메타데이터(metadata)를 포함하는 응답을 클라이언트 장치(510)에 제공할 수 있다.
이어서, 클라이언트 장치(510)는 콘서트 행사장(502)에 클라이언트 장치(510)의 참석을 등록하라는 요청을 서버(508)에 송신할 수 있다. 서버(508)는 그 다음에, 예를 들면 참석 서버(512)에 참석 메시지를 송신하는 것과 같이, 콘서트 행사장(502) 내에 클라이언트 장치(510)의 참석을 등록하는 기능을 수행할 수 있다.
대안적인 일 실시예에서, 서버(508)는, 클라이언트(510)에 의해 참석 등록 요청을 먼저 수신하지 않고 상기 샘플에 대한 매치를 발견한 후, 콘서트 행사장(502) 내에 클라이언트 장치(510)의 참석을 등록하는 기능을 수행할 수 있다. 이 실시예에서, 클라이언트 장치(510)는 서버(508)에 샘플을 송신할 수 있으며, 만일 상기 데이터 스트림에 대해 매치가 발견되면, 콘서트 행사장(502) 내에 클라이언트 장치(510)의 참석이 등록된다.
관객의 구성원들은 미디어를 태그하고, 이벤트에의 참석을 등록하고, 공연자에 대해 "더 많은 것을 알아내기(Find out more)" 위해, 또는 콘서트 행사장에 대해 "좋아하기(Like)" 또는 "트윗하기(Tweet)" 등을 위해 공연자의 메타데이터를 수신하는 것을 포함하는 기능을 수행하기 위해 클라이언트 장치를 이용하는 것이 가능하며, 이 모든 것은 상기 콘텐트 샘플이 데이터 스트림의 일부와 매치하는지 여부에 기초한다.
클라이언트 장치(510)에 제공되는 메타데이터는 콘텐트 샘플의 정체, 공연자의 정체, URL 정보, 아트워크, 이미지, 콘텐트 구매를 위한 링크, 독점 콘텐트에 대한 링크, 클라이언트 장치(506)의 사용자으로부터 수신된 전유적 정보(proprietary information)(콘서트에서 공연자의 연주곡 목록, 가사) 등과 같은 임의의 유형의 정보를 포함할 수 있다.
또 다른 실시예에서, 클라이언트 장치(510)에 제공되는 메타데이터는 슬라이드 쇼, 프레젠테이션, PDF 파일, 스프레드쉬트, 웹 페이지, HTML5 문서 등과 같은 파일을 포함할 수도 있으며, 이것들은 공연 또는 강의의 상이한 부분들에 대응하는 다양한 순차 멀티미디어를 포함할 수 있다. 공연 도중에, 공연자는 상기 파일의 정보를 어떻게 진행시킬지(progress through) 지시하는 명령을 서버(508)에 제공할 수 있다. 예를 들어, 만일 상기 파일이 슬라이드 쇼를 포함한다면, 클라이언트 장치(506) 또는 보조 단말기(514)가 다음 슬라이드로 전환을 지시하는 명령을 서버(508)에 송신하기 위해 사용될 수 있다. 공연자는 클라이언트 장치(506) 상의 버튼을 살짝 누르거나 좌우 스와이핑(swiping) 동작을 만들어(터치패드 또는 터치스크린을 사용하여), 도 6에 도시된 것과 같이, 슬라이드 쇼를 진행하도록 서버(508)에 명령을 송신할 수 있다(예컨대, 서버(508)에 추가의 메타데이터를 송신함). 서버(508)는 클라이언트 장치(510)가 부응해서 슬라이드 쇼의 디스플레이를 갱신할 수 있도록 클라이언트 장치(510)에 상기 명령을 전달할 수 있다.
일 실시예에서, 서버(508)는 클라이언트 장치(506)로부터 상기 명령을 수신고 그 다음 클라이언트 장치(510)에 클라이언트 장치(506)의 정보를 디스플레이하도록 명령할 수 있다. 서버(508)는, 상기 메타데이터를 진행시키라는 명령뿐만 아니라 클라이언트 장치(506)로부터 수신된 메타데이터를, 콘서트 행사장(502)에 "체크-인"을 한(예컨대, 콘서트 행사장(502)에 참석을 등록한) 장치(예컨대, 모든 장치들)에 제공할 수 있다. 추가의 실시예에서, 상기 메타데이터는 공연 중 언제/어떻게 메타데이터를 진행시킬지 지시하는 주석을 포함할 수 있으며, 서버(508)는 주석 달린 메타데이터를 수신하고 그것을 클라이언트 장치(510)에 제공할 수 있다. 이와 같이, 콘서트 행사장(502)에 체크-인을 한 장치들에 제공된 메타데이터는 사용자 또는 공연자에 의해 실시간으로 제공되거나 작동될 수 있다. 데이터는 모든 체크-인 장치들에 푸시(push)될 수 있고, 동적으로 갱신되는 것도 가능하다.
또 다른 실시예로서, 클라이언트 장치(506)에 의해 제공된 메타데이터는 RSS 피드(feed), HTML5 페이지, (또는 다른 대화식 메타데이터)를 포함할 수 있으며, 이 경우 클라이언트 장치(506)는 공연자/강의자/밴드가 제공한 메타데이터의 갱신을 수신할 수 있다.
다른 실시예들에서, 상기 공연자는 다양한 수단에 의해 동적으로 상기 응답 메타데이터를 갱신할 수 있다. 한 경우에 있어서, 공연자는 다음에 연주될 가능성이 있는 노래에 대한 메타데이터의 준비된 세트 목록을 포함하는 메뉴로부터 항목을 선택함으로써 갱신을 수행할 수 있다. 상기 메뉴는 클라이언트 장치(506)에 제공되거나 보조 단말기(514), 예컨대 랩탑에 제공될 수 있다. 상기 메뉴 선택은 공연자에 의해 또는 보조 단말기를 동작하는 보조자에 의해 선택될 수 있다. 상기 메타데이터는 또한, 계획되지 않은 앙코르나 즉흥적인 공연을 지원하기 위하여 현재 공연에 주석을 달기 위해 데이터베이스에 실시간으로 공연자 또는 보조자에 의해 입력될 수 있다.
전술한 바와 같이, 데이터는 모든 체크-인 장치들에 제공될 수 있고, 동적으로 갱신되는 것이 가능하다. 체크-인 상태의 장치들에 기초하여, 서버(508)는 공연자에 대한 추가 정보를 수신하기 위해 상기 장치가 추가 등록해야 할 추가의 옵션을 제공할 수 있다. 예를 들자면, 서버(508)는 공연자의 메일링 리스트(mailing list)에 등록하기 위한 옵션, 소셜 네트워킹 웹사이트(예컨대, Twitter® 또는 공연자의 Facebook® 가입)의 공연자를 추종하기 위한 옵션, 또는 이메일 리스트 또는 RDD 피드에 가입하기 위한 옵션을 제공할 수 있다. 서버(508)는 상기 장치의 설정에 기초하여 (상기 장치로부터의 선택을 수신하지 않고서) 소정의 체크-인 장치를 추가로 등록하도록 설정될 수도 있다.
추가의 실시예에서, 데이터가 체크-인 장치로부터 수신되거나 상기 체크-인 장치의 사용자에 대한 정보가 수신될 수 있다(반드시 상기 체크-인 장치로부터는 아님). 예를 들면, 서버(508)는 상기 체크-인 장치로부터의 정보 또는 상기 체크-인 장치의 사용자에 대한 어떤 정보를 수신할 수 있다. 그와 같은 정보의 예는 연락처 정보, 이미지, 인구통계학적 정보(demographic information), 서비스 또는 메일링 리스트에 대한 가입 요청, 및 푸시 알림(push notifications)에 대한 등록 요청을 포함한다. 그와 같은 정보는 사용자 프로파일과 관련된 메모리 또는 서버에 저장 또는 캐시(cached)될 수 있으며, 클라이언트 장치(506) 또는 서버(508)에 의한 요청에 응답하여 서버(508)에 검색 제공되거나 프로그램적으로 검색되어 제공될 수 있다. 대안적으로 그와 같은 정보는 체크-인 장치의 사용자를 통해 실시간으로 입력될 수도 있다. 이 실시예에서, 공연자 또는 공연자의 에이전트는 관객에 대한 더 많은 정보를 알기 위해 사용자로부터의 정보 또는 사용자에 대한 정보를 수신할 수 있다.
이와 같이, 여기 설명된 실시예들에서, 정보는 체크-인 장치와 클라이언트 장치(506) 또는 서버(508) 사이에서 양 방향으로 흐를 수 있다. 정보의 교환이 일어날 수 있으며 수동적이거나(예컨대, 참석 등록시 제공됨), 능동적일 수 있다(예컨대, 사용자가 사용자/관객 구성원들에 대한 마케팅을 위해 유용한 정보를 제공하기로 선택함).
추가의 실시예에서, 여기서 설명된 방법들 및 시스템들은 2개의 장치, 따라서 2명의 사용자 사이의 근접(proximity)을 결정하기 위해 사용될 수 있다. 한 가지 경우에 있어서, 도 5를 참조하면, 클라이언트 장치(510)의 사용자와 클라이언트 장치(516)의 사용자는 둘 다 콘서트 행사장(502)에 있을 수 있다. 각 장치는 주변 환경의 샘플들을 서버(508)에 송신할 수 있으며, 서버(508)는 전술한 바와 같이 식별을 수행할 수 있다. 서버(508)는 다수의 장치들이 동일한 데이터 스트림에 매치하는 샘플들을 언제 제공했는지 결정하도록 설정될 수 있으며, 그와 같은 결정을 상기 장치들에 통지하도록 추가로 설정될 수 있다. 이 경우에 있어서, 서버(508)는 클라이언트 장치(510) 및 클라이언트 장치(516)에 메시지를 송신하여 콘서트 행사장(502)에 서로의 참석을 각 장치에 통지하는 것이 가능하다. 또한, 서버(508)는 콘텐트 식별을 기초로 상기 장치들의 근접을 결정했으며, (예컨대, 장치들의 등록된 참석의 매칭에 기초하여 근접을 결정하는 것과 같이) 근접을 결정하기 위해 참석 서버에 추가로 액세스할 필요가 없다.
또 다른 실시예에서, 2개의 장치들 사이의 근접은 각 장치로부터 수신된 샘플들을 비교함으로써 결정될 수 있다. 이 실시예에서, 서버(508)는 클라이언트 장치(510)로부터 한 샘플을 수신하고 클라이어트 장치(516)로부터 또 다른 샘플을 수신할 수 있으며, 두 샘플을 직접 비교할 수 있다. 매치에 기초하여, 서버(508)는 클라이언트 장치(510)와 클라이언트 장치(516)가 서로 근접하여 위치하는(예컨대, 동일한 미디어가 제공되고 있는 환경에 위치하는) 것으로 결정할 수 있다.
추가의 대안적인 실시예로서, 서버(508)는 클라이언트 장치(510)와 클라이언트 장치(516)로부터 상기 장치들의 지리적 정보(예컨대, GPS 데이터)에 관련된 정보를 추가로 수신할 수 있으며, 콘텐트 식별과 장치들의 근접을 검증하기 위한 추가의 방법으로서 상기 지리적 정보를 사용할 수 있다. 예를 들어, 만일 클라이언트 장치(510)가, 식별을 수행했고 이어서 콘서트 행사장(502) 내 클라이언트 장치(510)의 참석 등록을 가능하게 한 서버(508)에, 샘플 송신했다면, 서버(508)는 클라이언트 장치(510)의 GPS 좌표를 수신하여 기록할 수 있다. 그 다음, 상기 샘플 데이터 스트림에 대해 발견된 후속 매치에 대해, 또는 동일한 콘서트 행사장(502) 내 다른 장치들의 후속 등록 요청에 대해, 서버(508)는 상기 장치들이 근접해서 위치하는지 추가로 검증하기 위해 또는 상기 콘텐트 식별을 추가로 검증하기 위해 상기 다른 장치들의 GPS 좌표와 클라이언트 장치(510)의 상기 저장된 GPS 좌표를 비교할 수 있다.
지금까지 본 발명의 다양한 측면들과 실시예들이 개시되었지만, 다른 측면들과 실시예들이 당업자에게 명백할 것이다. 전술한 다양한 측면들과 실시예들은 단지 설명을 위한 것이고 한정하려는 의도는 없으며 본 발명의 진정한 범위 및 사상은 첨부된 특허청구범위의 청구항들에 의해 표시된다. 다수의 수정 및 변경이 본 발명의 범위와 사상을 벗어나지 않으면서 이루어질 수 있음은 당업자에게 명백할 것이다. 상기 열거한 것들 외에, 본 발명의 범위에 속하는 기능적으로 균등한 방법 및 장치들이 전술한 설명으로부터 당업자에게 명백할 것이다. 그와 같은 수정 및 변경은 첨부된 청구항들의 범위 내에 속하는 것으로 해석되어야 한다.
전술한 실시예들에 대해서 다양한 수정, 변형 및 변경이 이루어질 수 있기 때문에, 전술한 설명과 첨부한 도면에 개시된 모든 사항들은 한정하려는 의도가 아닌 예를 들어 설명하는 것으로 해석되어야 한다.
Claims (47)
- 제1 장치의 환경으로부터 수신된 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계;
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계;
상기 콘텐트 샘플과 상기 콘텐트 데이터 스트림의 비교를 수행하는 단계; 및
상기 비교에 기초하여, 상기 환경 내 상기 제2 장치의 참석의 등록 요청을 수신하는 단계를 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치는 상기 콘텐트 데이터 스트림의 콘텐트가 제공되는 환경에 위치하고,
상기 제1 장치의 환경으로부터 수신된 콘텐트 데이터 스트림을 제1 장치로부터 수신하는 단계는 상기 제1 장치의 환경으로부터의 콘텐트 데이터 스트림의 레코딩을 상기 제1 장치로부터 수신하는 것을 포함하는, 방법. - 제 2 항에 있어서,
상기 제1 장치는 휴대형 장치이고 상기 제1 장치가 주변 오디오를 기록하는 환경 내에 위치하는, 방법. - 제 1 항에 있어서,
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계는 상기 콘텐트 샘플의 레코딩을 수신하는 것을 포함하는, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계는 상기 제1 장치의 주변 환경으로부터 수신된 오디오의 주변 오디오 데이터 스트림을 수신하는 것을 포함하고,
상기 환경으로부터의 상기 콘텐트의 샘플을 상기 제2 장치로부터 수신하는 단계는 주변 오디오의 샘플을 수신하는 것을 포함하고,
상기 주변 오디오의 샘플을 상기 주변 오디오 데이터 스트림과 매칭하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림은 오디오 데이터 스트림이고,
상기 콘텐트 샘플은 오디오 콘텐트의 샘플을 포함하는, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림은 비디오 데이터 스트림이고,
상기 콘텐트 샘플은 비디오 콘텐트 샘플을 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치의 환경으로부터 수신된 콘텐트의 연속 데이터 흐름을 상기 제1 장치로부터 수신하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 비교에 기초하여, 상기 제2 장치가 상기 제1 장치에 근접한 것으로 결정하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 비교에 기초하여, 상기 제2 장치가 상기 제1 장치의 환경 내에 위치하는 것으로 결정하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치와 제2 장치 중 하나는 콘텐트를 기록하기 위한 마이크로폰을 포함하는 휴대형 장치인, 방법. - 제 1 항에 있어서,
소셜 네트워킹 애플리케이션을 통해 상기 환경 내 제2 장치의 존재를 등록하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치는 마이크로폰인, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계는 상기 콘텐트 데이터 스트림을 무선으로 수신하는 것을 포함하는, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교를 수행하는 단계는 샘플링 시간에 관하여 관련 시점에서의 콘텐트 샘플의 특성을 대략 매칭하는 시점에서의 콘텐트 데이터 스트림의 특성과 비교하는 것을 포함하는, 방법. - 제 1 항에 있어서,
상기 제2 장치에 정보를 송신하는 단계를 추가로 포함하고,
상기 정보는 상기 콘텐트의 정체(identity) 또는 상기 콘텐트의 공연자의 정체 중 하나와 관련되는, 방법. - 제 16 항에 있어서,
상기 정보를 진행시키라는(progress through) 명령을 상기 제1 장치로부터 수신하는 단계; 및
상기 정보를 진행시키라고 지시하는 명령을 상기 제2 장치에 송신하는 단계를 추가로 포함하는, 방법. - 제 17 항에 있어서,
상기 정보를 진행시키라고 지시하는 명령을 상기 제2 장치에 송신하는 단계는 상기 제2 장치상에서 상기 정보의 디스플레이를 갱신하라는 명령을 상기 제2 장치에 송신하는 것을 포함하는, 방법. - 제 17 항에 있어서,
상기 콘텐트 데이터 스트림의 콘텐트는 퍼포먼스에 의해 제공되고,
상기 퍼포먼스 동안에 상기 정보를 진행시키라는 명령을 수신하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 환경 내 존재를 등록한 장치들에 정보를 송신하는 단계; 및
상기 환경 내 존재를 등록한 장치들에 상기 정보를 진행시키라고 지시하는 명령을 송신하는 단계를 포함하고,
상기 정보는 상기 콘텐트의 정체, 상기 콘텐트의 공연자의 정체, 상기 콘텐트를 위한 아트워크, 상기 콘텐트를 위한 프레젠테이션, 상기 콘텐트의 구매 정보, 상기 공연자의 순회공연 정보, 상기 콘텐트에 관련된 미디어 스트림에 대한 동기화 정보, 또는 상기 콘텐트에 대한 URL 정보 중 하나와 관련되는, 방법. - 제 1 항에 있어서,
상기 제2 장치에 대화식 메타데이터를 송신하는 단계; 및
상기 대화식 메타데이터를 진행시키라고 지시하는 명령을 상기 제2 장치에 제공하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치는 상기 데이터 스트림을 제공하는 미디어 렌더링 소스의 출력에 접속되는, 방법. - 제 1 항에 있어서,
상기 데이터 스트림을 연속해서 수신하는 단계; 및
저장된 데이터 스트림의 일부가 상기 데이터 스트림의 최근에 수신된 콘텐트에 대응하도록, 상기 데이터 스트림의 미리 결정된 양을 버퍼에 저장하는 단계를 추가로 포함하고,
상기 콘텐트 데이터 스트림과 콘텐트 샘플의 비교를 수행하는 단계는 상기 데이터 스트림의 최근에 수신된 콘텐트와 상기 콘텐트 샘플의 실시간 비교를 수행하는 것을 포함하는, 방법. - 제 1 항에 있어서,
상기 데이터 스트림은 미디어 렌더링 소스에 의해 제공되고,
상기 방법은,
저장된 데이터 스트림의 일부가 상기 미디어 렌더링 소스에 의해 실질적으로 현재 제공되고 있는 데이터 스트림의 콘텐트에 대응하도록, 상기 데이터 스트림의 미리 결정된 양을 버퍼에 저장하는 단계를 추가로 포함하고,
상기 콘텐트 데이터 스트림과 콘텐트 샘플의 비교를 수행하는 단계는 상기 미디어 렌더링 소스에 의해 실질적으로 현재 제공되고 있는 콘텐트와 상기 콘텐트 샘플의 실시간 비교를 수행하는 것을 포함하는, 방법. - 제 1 항에 있어서,
상기 데이터 스트림의 미리 결정된 양을 버퍼에 저장하는 단계를 추가로 포함하고,
상기 미리 결정된 양은 상기 콘텐트 샘플에 대한 유효성 윈도우와 관련 있는, 방법. - 제 1 항에 있어서,
상기 환경 내 존재를 등록한 장치들에 정보를 송신하는 단계를 추가로 포함하고,
상기 정보는 상기 데이터 스트림의 콘텐트와 관련 있는, 방법. - 제 1 항에 있어서,
상기 콘텐트 데이터 스트림과 콘텐트 샘플의 비교는 제1 비교이고,
상기 방법은,
상기 환경으로부터의 소정의 콘텐트 샘플을 제3 장치로부터 수신하는 단계;
상기 콘텐트 데이터 스트림과 상기 소정의 콘텐트 샘플의 제2 비교를 수행하는 단계; 및
상기 데이터 스트림의 콘텐트에 포지티브 매칭하는 제1 비교 및 제2 비교에 기초하여, 상기 제2 장치와 상기 제3 장치 사이의 위치의 근접을 결정하는 단계를 추가로 포함하는, 방법 - 제 27 항에 있어서,
상기 제2 장치와 제3 장치 사이의 위치의 근접을 결정하는 단계는 상기 제2 장치와 상기 제3 장치 둘 다 상기 제1 장치의 환경 내에 위치하는 것으로 결정하는 것을 포함하는, 방법. - 제 27 항에 있어서,
서로에 대한 근접을 나타내는 통지를 상기 제2 장치와 상기 제3 장치 중 1개 이상에 제공하는 단계를 추가로 포함하는, 방법. - 제 27 항에 있어서,
상기 제2 장치의 위치를 나타내는 지리적 정보를 상기 제2 장치로부터 수신하는 단계; 및
상기 지리적 정보에 기초하여, 상기 콘텐트 데이터 스트림과 콘텐트 샘플의 비교와 상기 제2 장치와 제3 장치 사이의 근접 결정 중 1개 이상을 검증하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제2 장치의 사용자에 대한 정보를 상기 제2 장치로부터 수신하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제2 장치의 사용자에 대한 정보를 사용자 프로파일 서버로부터 수신하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
상기 제2 장치의 사용자에 대한 정보를 수신하는 단계를 추가로 포함하고,
상기 제2 장치의 사용자에 대한 정보는 1개 이상의 연락처 정보, 1개 이상의 이미지, 인구통계학적 정보, 서비스 또는 메일링 리스트에의 가입 요청, 및 푸시 알림에의 등록 요청을 포함하는, 방법. - 제 1 항에 있어서,
상기 제1 장치의 요청에 응답하여 상기 제2 장치의 사용자에 대한 정보를 수신하는 단계를 추가로 포함하는, 방법. - 제 1 항에 있어서,
복수의 장치들 각각의 환경으로부터 수신된 복수의 콘텐트 데이터 스트림을 상기 복수의 장치들로부터 수신하는 단계;
상기 복수의 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교를 수행하는 단계; 및
상기 비교에 기초하여, 상기 제2 장치가 상기 각각의 환경들 중 하나에 위치하는 것으로 결정하는 단계를 포함하는, 방법. - 컴퓨터에 의해 실행 가능한 명령을 저장하고 컴퓨터에서 읽을 수 있는 비-일시적 기록매체에 있어서,
제1 장치의 환경으로부터 수신된 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계;
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계;
상기 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교를 수행하는 단계; 및
상기 비교에 기초하여, 상기 환경 내 제2 장치의 존재에 대한 등록 요청을 수신하는 단계를 상기 컴퓨터에 수행시키는 명령을 저장한, 비-일시적 기록매체. - 제 36 항에 있어서,
상기 콘텐트 데이터 스트림을 제1 장치로부터 수신하는 단계는 상기 제1 장치의 주변 환경으로부터 수신된 오디오의 주변 오디오 데이터 스트림을 수신하는 것을 포함하고,
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계는 주변 오디오 샘플을 수신하는 것을 포함하고,
상기 주변 오디오 샘플을 상기 주변 오디오 데이터 스트림과 매칭하는 단계를 상기 컴퓨터에 추가로 수행시키는 명령을 저장한, 비-일시적 기록매체. - 제 36 항에 있어서,
상기 콘텐트의 정체와 상기 콘텐트의 공연자의 정체 중 하나와 관련 있는 정보를 상기 제2 장치에 송신하는 단계;
상기 정보를 진행시키라는 명령을 상기 제1 장치로부터 수신하는 단계; 및
상기 정보를 진행시키라고 지시하는 명령을 상기 제2 장치에 송신하는 단계를 상기 컴퓨터에 추가로 수행시키는 명령을 저장한, 비-일시적 기록매체. - 명령이 저장된 메모리; 및
상기 메모리에 접속된 1개 이상의 프로세서를 포함하고,
상기 프로세서는,
제1 장치의 환경으로부터 수신된 콘텐트 데이터 스트림을 상기 제1 장치로부터 수신하는 단계;
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계;
상기 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교를 수행하는 단계; 및
상기 비교에 기초하여, 상기 환경 내 상기 제2 장치의 존재를 등록하는 단계를 수행하기 위한 명령들을 실행하는, 서버. - 제 39 항에 있어서,
상기 콘텐트 데이터 스트림을 제1 장치로부터 수신하는 단계는 상기 제1 장치의 주변 환경으로부터 수신된 오디오의 주변 오디오 데이터 스트림을 수신하는 것을 포함하고,
상기 환경으로부터의 콘텐트 샘플을 제2 장치로부터 수신하는 단계는 주변 오디오 샘플을 수신하는 것을 포함하고,
상기 명령은, 상기 주변 오디오 샘플을 상기 주변 오디오 데이터 스트림과 매칭하는 단계를 추가로 실행하는, 서버. - 제 39 항에 있어서,
상기 명령은,
상기 콘텐트의 정체와 상기 콘텐트의 공연자의 정체 중 하나와 관련 있는 정보를 상기 제2 장치에 송신하는 단계;
상기 정보를 진행시키라는 명령을 상기 제1 장치로부터 수신하는 단계; 및
상기 정보를 진행시키라고 지시하는 명령을 상기 제2 장치에 송신하는 단계를 추가로 수행하는, 서버. - 장치의 환경으로부터 취득한 콘텐트 샘플의 식별 요청을 상기 장치로부터 수신하는 단계; 및
상기 환경으로부터 수신된 콘텐트 데이터 스트림과 상기 콘텐트 샘플의 비교에 기초하여, 상기 환경 내 상기 장치의 존재를 등록하는 단계를 포함하는, 방법. - 제 42 항에 있어서,
상기 환경으로부터의 콘텐트 샘플을 상기 장치로부터 수신하는 단계는 상기 콘텐트 샘플의 레코딩을 수신하는 것을 포함하는, 방법. - 제 42 항에 있어서,
상기 장치는 휴대형 장치이고 상기 장치가 주변 오디오를 기록하는 환경 내에 위치하는, 방법. - 제 42 항에 있어서,
상기 장치는 콘텐트를 기록하기 위한 마이크로폰을 포함하는 휴대형 장치인, 방법. - 제 42 항에 있어서,
상기 환경 내 상기 장치의 존재를 소셜 네트워킹 애플리케이션을 통해 등록하는 단계를 추가로 포함하는, 방법. - 제 42 항에 있어서,
상기 콘텐트의 정체와 상기 콘텐트의 공연자의 정체 중 하나와 관련 있는 정보를 상기 장치에 송신하는 단계; 및
상기 정보를 진행시키라고 지시하는 명령을 상기 장치에 송신하는 단계를 추가로 포함하고,
상기 명령은 상기 장치상의 정보 디스플레이의 갱신을 지시하는, 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161494577P | 2011-06-08 | 2011-06-08 | |
US61/494,577 | 2011-06-08 | ||
PCT/US2012/040969 WO2012170451A1 (en) | 2011-06-08 | 2012-06-06 | Methods and systems for performing comparisons of received data and providing a follow-on service based on the comparisons |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157025758A Division KR20150113991A (ko) | 2011-06-08 | 2012-06-06 | 수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20140024434A true KR20140024434A (ko) | 2014-02-28 |
Family
ID=46246288
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157025758A KR20150113991A (ko) | 2011-06-08 | 2012-06-06 | 수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 |
KR1020137034328A KR20140024434A (ko) | 2011-06-08 | 2012-06-06 | 수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157025758A KR20150113991A (ko) | 2011-06-08 | 2012-06-06 | 수신된 데이터의 비교를 수행하고 비교에 기초하여 후속 서비스를 제공하는 방법 및 시스템 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20120317241A1 (ko) |
EP (1) | EP2718850A1 (ko) |
JP (1) | JP6060155B2 (ko) |
KR (2) | KR20150113991A (ko) |
CN (1) | CN103797482A (ko) |
BR (1) | BR112013031576A2 (ko) |
CA (1) | CA2837741A1 (ko) |
MX (1) | MX341124B (ko) |
WO (1) | WO2012170451A1 (ko) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9449090B2 (en) | 2009-05-29 | 2016-09-20 | Vizio Inscape Technologies, Llc | Systems and methods for addressing a media database using distance associative hashing |
US10949458B2 (en) | 2009-05-29 | 2021-03-16 | Inscape Data, Inc. | System and method for improving work load management in ACR television monitoring system |
US10375451B2 (en) | 2009-05-29 | 2019-08-06 | Inscape Data, Inc. | Detection of common media segments |
US8595781B2 (en) | 2009-05-29 | 2013-11-26 | Cognitive Media Networks, Inc. | Methods for identifying video segments and displaying contextual targeted content on a connected television |
US9094714B2 (en) | 2009-05-29 | 2015-07-28 | Cognitive Networks, Inc. | Systems and methods for on-screen graphics detection |
US10116972B2 (en) | 2009-05-29 | 2018-10-30 | Inscape Data, Inc. | Methods for identifying video segments and displaying option to view from an alternative source and/or on an alternative device |
US10192138B2 (en) | 2010-05-27 | 2019-01-29 | Inscape Data, Inc. | Systems and methods for reducing data density in large datasets |
US9838753B2 (en) | 2013-12-23 | 2017-12-05 | Inscape Data, Inc. | Monitoring individual viewing of television events using tracking pixels and cookies |
GB2483370B (en) * | 2010-09-05 | 2015-03-25 | Mobile Res Labs Ltd | A system and method for engaging a person in the presence of ambient audio |
US20120151320A1 (en) * | 2010-12-10 | 2012-06-14 | Mcclements Iv James Burns | Associating comments with playback of media content |
CA2837725C (en) * | 2011-06-10 | 2017-07-11 | Shazam Entertainment Ltd. | Methods and systems for identifying content in a data stream |
US9208225B1 (en) * | 2012-02-24 | 2015-12-08 | Google Inc. | Incentive-based check-in |
US20140095333A1 (en) * | 2012-09-28 | 2014-04-03 | Stubhub, Inc. | System and Method for Purchasing a Playlist Linked to an Event |
US9390719B1 (en) * | 2012-10-09 | 2016-07-12 | Google Inc. | Interest points density control for audio matching |
US10339936B2 (en) | 2012-11-27 | 2019-07-02 | Roland Storti | Method, device and system of encoding a digital interactive response action in an analog broadcasting message |
US10366419B2 (en) | 2012-11-27 | 2019-07-30 | Roland Storti | Enhanced digital media platform with user control of application data thereon |
US20140192200A1 (en) * | 2013-01-08 | 2014-07-10 | Hii Media Llc | Media streams synchronization |
US20140201368A1 (en) * | 2013-01-15 | 2014-07-17 | Samsung Electronics Co., Ltd. | Method and apparatus for enforcing behavior of dash or other clients |
US9317872B2 (en) | 2013-02-06 | 2016-04-19 | Muzak Llc | Encoding and decoding an audio watermark using key sequences comprising of more than two frequency components |
DE102013103453A1 (de) * | 2013-04-08 | 2014-10-09 | QRMobiTec GmbH Innovationszentrum IZE | Verfahren mit einer Ereignismanagementvorrichtung |
FR3009103A1 (fr) * | 2013-07-29 | 2015-01-30 | Orange | Generation de listes de reproduction de contenus personnalisees |
US9628837B2 (en) | 2013-08-07 | 2017-04-18 | AudioStreamTV Inc. | Systems and methods for providing synchronized content |
US9955192B2 (en) | 2013-12-23 | 2018-04-24 | Inscape Data, Inc. | Monitoring individual viewing of television events using tracking pixels and cookies |
US20150281756A1 (en) * | 2014-03-26 | 2015-10-01 | Nantx Technologies Ltd | Data session management method and system including content recognition of broadcast data and remote device feedback |
US20160381436A1 (en) * | 2014-05-08 | 2016-12-29 | Lei Yu | System and method for auto content recognition |
US10078703B2 (en) * | 2014-08-29 | 2018-09-18 | Microsoft Technology Licensing, Llc | Location-based media searching and sharing |
CN111757189B (zh) | 2014-12-01 | 2022-07-15 | 构造数据有限责任公司 | 用于连续介质片段识别的***和方法 |
JP2018505442A (ja) * | 2014-12-31 | 2018-02-22 | ピーシーエムエス ホールディングス インコーポレイテッド | 聴取ログおよび音楽ライブラリの生成のためのシステムおよび方法 |
CA2973740C (en) | 2015-01-30 | 2021-06-08 | Inscape Data, Inc. | Methods for identifying video segments and displaying option to view from an alternative source and/or on an alternative device |
MX2017013128A (es) | 2015-04-17 | 2018-01-26 | Inscape Data Inc | Sistemas y metodos para reducir densidad de los datos en grandes conjuntos de datos. |
US10080062B2 (en) | 2015-07-16 | 2018-09-18 | Inscape Data, Inc. | Optimizing media fingerprint retention to improve system resource utilization |
CA2992319C (en) | 2015-07-16 | 2023-11-21 | Inscape Data, Inc. | Detection of common media segments |
EP3323054A1 (en) | 2015-07-16 | 2018-05-23 | Inscape Data, Inc. | Prediction of future views of video segments to optimize system resource utilization |
BR112018000801A2 (pt) | 2015-07-16 | 2018-09-04 | Inscape Data Inc | sistema, e método |
US20170044636A1 (en) | 2015-08-12 | 2017-02-16 | Kia Motors Corporation | Carburized steel and method of manufacturing the same |
US10983984B2 (en) | 2017-04-06 | 2021-04-20 | Inscape Data, Inc. | Systems and methods for improving accuracy of device maps using media viewing data |
US10129575B1 (en) * | 2017-10-25 | 2018-11-13 | Shazam Entertainment Limited | Methods and systems for determining a latency between a source and an alternative feed of the source |
CN108667566B (zh) * | 2018-04-24 | 2020-12-01 | 天津芯海创科技有限公司 | Tcp流数据匹配装置 |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450531A (en) | 1982-09-10 | 1984-05-22 | Ensco, Inc. | Broadcast signal recognition system and method |
US4843562A (en) | 1987-06-24 | 1989-06-27 | Broadcast Data Systems Limited Partnership | Broadcast information classification system and method |
US7562392B1 (en) * | 1999-05-19 | 2009-07-14 | Digimarc Corporation | Methods of interacting with audio and ambient music |
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 |
US6359656B1 (en) * | 1996-12-20 | 2002-03-19 | Intel Corporation | In-band synchronization of data streams with audio/video streams |
US7174293B2 (en) * | 1999-09-21 | 2007-02-06 | Iceberg Industries Llc | Audio identification system and method |
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 |
US7155508B2 (en) * | 2000-09-01 | 2006-12-26 | Yodlee.Com, Inc. | Target information generation and ad server |
US7379760B2 (en) * | 2000-11-10 | 2008-05-27 | Sony Corporation | Data transmission-reception system and data transmission-reception method |
US20020072982A1 (en) * | 2000-12-12 | 2002-06-13 | Shazam Entertainment Ltd. | Method and system for interacting with a user in an experiential environment |
ATE405101T1 (de) | 2001-02-12 | 2008-08-15 | Gracenote Inc | Verfahren zum erzeugen einer identifikations hash vom inhalt einer multimedia datei |
WO2003091990A1 (en) | 2002-04-25 | 2003-11-06 | Shazam Entertainment, Ltd. | Robust and invariant audio pattern matching |
EP1574093B1 (en) * | 2002-12-20 | 2009-04-01 | Nokia Corporation | Method and device for organizing user provided information with meta-information |
US7936872B2 (en) * | 2003-05-19 | 2011-05-03 | Microsoft Corporation | Client proximity detection method and system |
CA2556552C (en) | 2004-02-19 | 2015-02-17 | Landmark Digital Services Llc | Method and apparatus for identification of broadcast source |
US7451078B2 (en) * | 2004-12-30 | 2008-11-11 | All Media Guide, Llc | Methods and apparatus for identifying media objects |
ITMI20050907A1 (it) * | 2005-05-18 | 2006-11-20 | Euriski Nop World S R L | Metodo e sistema per la comparazione di segnali audio e l'identificazione di una sorgente sonora |
US20070298791A1 (en) * | 2006-06-23 | 2007-12-27 | Sierra Wireless Inc., A Canada Corporation | Method and apparatus for event confirmation using personal area network |
US20080049704A1 (en) * | 2006-08-25 | 2008-02-28 | Skyclix, Inc. | Phone-based broadcast audio identification |
JP2008262271A (ja) * | 2007-04-10 | 2008-10-30 | Matsushita Electric Ind Co Ltd | 出欠確認方法及び出欠確認システム |
US20090013263A1 (en) * | 2007-06-21 | 2009-01-08 | Matthew Jonathan Fortnow | Method and apparatus for selecting events to be displayed at virtual venues and social networking |
US8050690B2 (en) * | 2007-08-14 | 2011-11-01 | Mpanion, Inc. | Location based presence and privacy management |
US20090215469A1 (en) * | 2008-02-27 | 2009-08-27 | Amit Fisher | Device, System, and Method of Generating Location-Based Social Networks |
US8151179B1 (en) * | 2008-05-23 | 2012-04-03 | Google Inc. | Method and system for providing linked video and slides from a presentation |
US20100205628A1 (en) * | 2009-02-12 | 2010-08-12 | Davis Bruce L | Media processing methods and arrangements |
US20100225811A1 (en) * | 2009-03-05 | 2010-09-09 | Nokia Corporation | Synchronization of Content from Multiple Content Sources |
US20100281108A1 (en) * | 2009-05-01 | 2010-11-04 | Cohen Ronald H | Provision of Content Correlated with Events |
US9760943B2 (en) * | 2010-09-17 | 2017-09-12 | Mastercard International Incorporated | Methods, systems, and computer readable media for preparing and delivering an ordered product upon detecting a customer presence |
US8606293B2 (en) * | 2010-10-05 | 2013-12-10 | Qualcomm Incorporated | Mobile device location estimation using environmental information |
US8886128B2 (en) * | 2010-12-10 | 2014-11-11 | Verizon Patent And Licensing Inc. | Method and system for providing proximity-relationship group creation |
US9298362B2 (en) * | 2011-02-11 | 2016-03-29 | Nokia Technologies Oy | Method and apparatus for sharing media in a multi-device environment |
US8918463B2 (en) * | 2011-04-29 | 2014-12-23 | Facebook, Inc. | Automated event tagging |
US8521180B2 (en) * | 2011-08-12 | 2013-08-27 | Disney Enterprises, Inc. | Location-based automated check-in to a social network recognized location using a token |
-
2012
- 2012-06-06 BR BR112013031576A patent/BR112013031576A2/pt not_active IP Right Cessation
- 2012-06-06 KR KR1020157025758A patent/KR20150113991A/ko not_active Application Discontinuation
- 2012-06-06 WO PCT/US2012/040969 patent/WO2012170451A1/en active Application Filing
- 2012-06-06 KR KR1020137034328A patent/KR20140024434A/ko active Application Filing
- 2012-06-06 JP JP2014514567A patent/JP6060155B2/ja active Active
- 2012-06-06 CN CN201280028132.4A patent/CN103797482A/zh active Pending
- 2012-06-06 MX MX2013014380A patent/MX341124B/es active IP Right Grant
- 2012-06-06 CA CA2837741A patent/CA2837741A1/en not_active Abandoned
- 2012-06-06 US US13/489,487 patent/US20120317241A1/en not_active Abandoned
- 2012-06-06 EP EP12727054.4A patent/EP2718850A1/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
BR112013031576A2 (pt) | 2017-03-21 |
CA2837741A1 (en) | 2012-12-13 |
JP2014516189A (ja) | 2014-07-07 |
MX2013014380A (es) | 2014-08-01 |
US20120317241A1 (en) | 2012-12-13 |
JP6060155B2 (ja) | 2017-01-11 |
EP2718850A1 (en) | 2014-04-16 |
CN103797482A (zh) | 2014-05-14 |
KR20150113991A (ko) | 2015-10-08 |
MX341124B (es) | 2016-08-09 |
WO2012170451A1 (en) | 2012-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6060155B2 (ja) | 受信データの比較を実行しその比較に基づいて後続サービスを提供する方法及びシステム | |
KR101578279B1 (ko) | 데이터 스트림 내 콘텐트를 식별하는 방법 및 시스템 | |
US9251796B2 (en) | Methods and systems for disambiguation of an identification of a sample of a media stream | |
US9451048B2 (en) | Methods and systems for identifying information of a broadcast station and information of broadcasted content | |
US20120191231A1 (en) | Methods and Systems for Identifying Content in Data Stream by a Client Device | |
KR20140038374A (ko) | 클라이언트 장치에 의해 데이터 스트림 내 콘텐트를 식별하는 방법 및 시스템 | |
US11599915B1 (en) | Apparatus, system, and method for audio based browser cookies | |
CN118044206A (zh) | 事件源内容和远程内容同步 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
A107 | Divisional application of patent |