KR102263897B1 - Fingerprint layouts for content fingerprinting - Google Patents

Fingerprint layouts for content fingerprinting Download PDF

Info

Publication number
KR102263897B1
KR102263897B1 KR1020207031093A KR20207031093A KR102263897B1 KR 102263897 B1 KR102263897 B1 KR 102263897B1 KR 1020207031093 A KR1020207031093 A KR 1020207031093A KR 20207031093 A KR20207031093 A KR 20207031093A KR 102263897 B1 KR102263897 B1 KR 102263897B1
Authority
KR
South Korea
Prior art keywords
video frame
fingerprint
pixel values
locations
fingerprint file
Prior art date
Application number
KR1020207031093A
Other languages
Korean (ko)
Other versions
KR20200126020A (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
Priority claimed from US15/243,658 external-priority patent/US10063917B2/en
Application filed by 더 닐슨 컴퍼니 (유에스) 엘엘씨 filed Critical 더 닐슨 컴퍼니 (유에스) 엘엘씨
Publication of KR20200126020A publication Critical patent/KR20200126020A/en
Application granted granted Critical
Publication of KR102263897B1 publication Critical patent/KR102263897B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/441Acquiring end-user identification, e.g. using personal code sent by the remote control or by inserting a card
    • H04N21/4415Acquiring end-user identification, e.g. using personal code sent by the remote control or by inserting a card using biometric characteristics of the user, e.g. by voice recognition or fingerprint scanning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4882Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • H04N21/814Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts comprising emergency warnings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates

Abstract

미디어 콘텐츠를 식별하기 위한 방법이 개시된다. 상기 방법은 콘텐츠 사업자로부터의 지문 미디어 콘텐츠를 수신하여 제1 지문 세트를 획득하는 단계를 포함하며 제1 지문 세트는 제1 지문 레이아웃의 제1 지문 서브세트 및 제2 지문 레이아웃의 제2 지문 서브세트를 포함한다. 상기 방법은 제2 지문 세트를 수신하는 단계를 포함할 수 있으며, 제2 지문 세트는 제1 지문 레이아웃의 제3 지문 서브세트 및 제2 지문 레이아웃의 제4 지문 서브세트를 포함할 수 있다. 상기 방법은 제1 지문 서브세트의 제1 지문을 제3 지문 서브세트의 제2 지문에 매칭하거나 제2 지문 서브세트의 제3 지문을 제4 지문 서브세트의 제4 지문을 매칭하여 미디어 콘텐츠를 식별할 수 있다.A method for identifying media content is disclosed. The method includes receiving fingerprint media content from a content provider to obtain a first fingerprint set, wherein the first fingerprint set includes a first fingerprint subset in a first fingerprint layout and a second fingerprint subset in a second fingerprint layout. includes The method may include receiving a second fingerprint set, wherein the second fingerprint set may include a third fingerprint subset of the first fingerprint layout and a fourth fingerprint subset of the second fingerprint layout. The method includes matching a first fingerprint in a first fingerprint subset to a second fingerprint in a third fingerprint subset or by matching a third fingerprint in a second fingerprint subset to a fourth fingerprint in a fourth fingerprint subset to access media content. can be identified.

Description

콘텐츠 지문화를 위한 지문 레이아웃{FINGERPRINT LAYOUTS FOR CONTENT FINGERPRINTING}Fingerprint layout for content fingerprinting

삭제delete

미디어 소비 장치, 가령, 스마트 텔레비전(TV)이 방송 디지털 콘텐츠를 액세스하고 데이터, 가령, 스트리밍 미디어를 데이터 네트워크로부터 수신할 수 있다. 스트리밍 미디어는 최종 사용자가 미디어 콘텐츠, 가령, 영화 또는 뉴스를 전화선, 케이블 채널, 인터넷 채널 등을 통해 요청할 수 있는 서비스를 지칭한다. 예를 들어, 사용자는 자신의 거주지를 떠나지 않고 영화를 볼 수 있다. 덧붙여, 사용자는 다양한 유형의 교육 콘텐츠, 가령, 비디오 강의를 학교나 교육 기관의 수업에 물리적으로 참석할 필요 없이 액세스할 수 있다.
미디어 소비 장치의 수가 계속 증가함에 따라, 비디오 콘텐츠 생성 및 전달이 마찬가지로 증가할 수 있다. 방송 디지털 콘텐츠 및 스트리밍 미디어를 액세스하는 미디어 소비 장치의 사용의 증가에 따라, 콘텐츠 사업자 도는 네트워크 제공자는 방송 디지털 콘텐츠 또는 스트리밍 미디어를 소비하는 시청자에게 맥락적으로 관련된 콘텐츠를 배포할 수 있다. 예를 들어, 지역 방송국이 방송 디지털 콘텐츠 또는 스트리밍 미디어와 함께 맥락적으로 관련된 광고 및 대화형 콘텐츠를 포함할 수 있다.
A media consuming device, such as a smart television (TV), may access broadcast digital content and receive data, such as streaming media, from a data network. Streaming media refers to a service through which an end user can request media content, such as a movie or news, over a telephone line, cable channel, Internet channel, or the like. For example, a user can watch a movie without leaving their residence. In addition, users can access various types of educational content, such as video lectures, without having to physically attend classes at a school or educational institution.
As the number of media consuming devices continues to increase, video content creation and delivery may likewise increase. With the increasing use of media consuming devices to access broadcast digital content and streaming media, content providers or network providers may distribute broadcast digital content or contextually relevant content to viewers consuming streaming media. For example, local broadcasters may include contextually relevant advertisements and interactive content along with broadcast digital content or streaming media.

보 발명은 이하에서 제공되는 상세한 설명 및 본 발명의 다양한 실시예의 도면으로부터 더 완전히 이해될 것이다. 그러나 도면은 본 발명을 특정 실시예로 한정하려는 것이 아니라 설명 및 이해만을 위한 것이다.
도 1은 하나의 실시예에 따르는 콘텐츠 배포 네트워크의 시스템도이다.
도 2는 하나의 실시예에 따르는 콘텐츠 오버레이 네트워크의 시스템도이다.
도 3a는 하나의 실시예에 따르는 전자 장치 상에 디스플레이될 이미지를 생성하기 위해 미디어 콘텐트 및 온스크린 디스플레이를 형성하기 위한 프레임의 합성을 도시한다.
도 3b는 하나의 실시예에 따르는 창을 포함하는 미디어 콘텐츠 및 온스크린 디스플레이의 합성을 도시한다.
도 3c는 하나의 실시예에 따르는 창을 포함하는 미디어 콘텐츠 및 온스크린 디스플레이의 합성을 도시한다.
도 3d는 하나의 실시예에 따르는 전자 장치 상에 디스플레이될 이미지를 생성하기 위한, 미디어 콘텐츠, 온스크린 디스플레이, 및 오버레이 콘텐츠의 합성을 도시한다.
도 4는 하나의 실시예에 따르는 프레임의 완전 세분된 지문 레이아웃을 도시한다.
도 5a는 하나의 실시예에 따르는 프레임의 상단 세분된 지문 레이아웃을 도시한다.
도 5b는 하나의 실시예에 따르는 복수의 블록을 갖는 도 5a에 도시된 프레임의 상단 세분된 지문 레이아웃을 도시한다.
도 5c는 하나의 실시예에 따르는 도 5a에 도시된 프레임의 하단 세분된 지문 레이아웃을 도시한다.
도 5d는 하나의 실시예에 따르는 복수의 블록을 갖는 도 5c에 도시된 프레임의 하단 세분된 지문 레이아웃을 도시한다.
도 6a는 하나의 실시예에 따르는 미디어 콘텐츠를 식별하기 위한 방법의 흐름도이다.
도 6b는 하나의 실시예에 따른 상단 세분된 지문 레이아웃을 이용해 미디어 콘텐츠를 식별하기 위한 방법의 흐름도이다.
도 7은 하나의 실시예에 따른 시스템의 블록도를 개략적으로 도시한다.
The present invention will be more fully understood from the detailed description provided hereinafter and drawings of various embodiments of the invention. However, the drawings are not intended to limit the present invention to specific embodiments, but are for explanation and understanding only.
1 is a system diagram of a content distribution network according to an embodiment.
2 is a system diagram of a content overlay network according to an embodiment.
3A illustrates compositing of frames to form media content and an on-screen display to create an image to be displayed on an electronic device according to one embodiment.
3B illustrates a composite of an on-screen display and media content comprising a window according to one embodiment.
3C illustrates a composite of an on-screen display and media content comprising a window according to one embodiment.
3D illustrates compositing of media content, on-screen display, and overlay content to create an image to be displayed on an electronic device according to one embodiment.
4 shows a fully subdivided fingerprint layout of a frame according to one embodiment.
5A illustrates a top subdivided fingerprint layout of a frame according to one embodiment.
5B illustrates a top subdivided fingerprint layout of the frame shown in FIG. 5A with a plurality of blocks, according to one embodiment.
5C illustrates a bottom subdivided fingerprint layout of the frame shown in FIG. 5A according to one embodiment.
5D illustrates a bottom subdivided fingerprint layout of the frame shown in FIG. 5C with a plurality of blocks, according to one embodiment.
6A is a flowchart of a method for identifying media content according to one embodiment.
6B is a flow diagram of a method for identifying media content using a top subdivided fingerprint layout according to one embodiment.
7 schematically shows a block diagram of a system according to one embodiment.

현재, 케이블 텔레비전(TV) 제공자 및 위성 사업자에 의해 제공되는 수 백개의 프로그램 선택이 존재한다. 덧붙여, 수 십개의 지역 텔레비전 채널을 갖는 백 개가 넘는 주 텔레비전 시장 영역이 존재한다. 콘텐츠 사업자 또는 방송국이 중앙 위치에서 콘텐츠 피드를 생성하고 콘텐츠 피드를 다양한 위치로 배포할 수 있다. 예를 들어, 콘텐츠 사업자는 텔레비전 채널을 복수의 네트워크 제공자에게 배포할 수 있다. 네트워크 제공자는 지역 방송국, 멀티-채널 네트워크, 및 그 밖의 다른 콘텐츠 소유자 또는 배포자일 수 있다. Currently, there are hundreds of program selections offered by cable television (TV) providers and satellite operators. In addition, there are over a hundred major television market segments with dozens of regional television channels. A content provider or broadcaster can create a content feed from a central location and distribute the content feed to multiple locations. For example, a content provider may distribute a television channel to a plurality of network providers. Network providers may be local broadcasters, multi-channel networks, and other content owners or distributors.

용어 "콘텐츠"는 미디어 또는 멀티미디어를 지칭할 수 있다. 용어 "콘텐츠"는 또한 미디어 자체라기보다는 미디어의 주제 내용을 의미하는 특정 용어일 수 있다. 마찬가지로, 용어 "미디어(media)"는 및 "미디어"를 포함하는 일부 합성어(가령, 멀티미디어 또는 하이퍼미디어)는 정보가 최종 사용자/청자에게 전달될 때 통과하는 채널이라고 보다는 콘텐츠를 지칭한다. 미디어의 유형으로서 흔히 지칭되는 콘텐츠의 유형의 예시로는 "영화"라고도 지칭되는 "모션 픽처"가 있다. 또 다른 예로는 "비디오"가 있으며 이는 일반적으로 비디오 프레임 및 오디오 샘플을 포함한다. "방송"은 정보(가령, 미디어 콘텐츠)를 라디오, 텔레비전, 또는 그 밖의 다른 전자 장치로 전송하는 것을 지칭할 수 있다. 예를 들어, 전자 장치는 송신기를 이용해 미디어 콘텐츠를 방송할 수 있다. 또 다른 예에서, 전자 장치는 인터넷 또는 그 밖의 다른 사설 또는 공개 네트워크를 통해 미디어 콘텐츠를 스트리밍할 수 있다. "방송"은 또한 일대다 모델에서 콘텐츠 전달 시스템, 가령, 오버 디 에어(OTA), 케이블, 위성, 또는 인터넷 기반 네트워크를 이용해 분산된 시청자에게 전달되는 미디어 콘텐츠, 가령, 비디오 및 오디오 콘텐츠를 지칭할 수도 있다. 예를 들어, 방송은 라디오 또는 텔레비전 송신기로부터 전자 장치로 수신되는 미디어 콘텐츠일 수 있다. The term “content” may refer to media or multimedia. The term “content” may also be a specific term referring to the subject matter of a media rather than the media itself. Likewise, the terms “media” and some compound words including “media” (eg, multimedia or hypermedia) refer to content rather than a channel through which information is passed when it is delivered to an end user/audience. An example of a type of content commonly referred to as a type of media is a “motion picture,” also referred to as a “movie.” Another example is "video," which typically includes video frames and audio samples. “Broadcast” may refer to the transmission of information (eg, media content) to a radio, television, or other electronic device. For example, the electronic device may broadcast media content using a transmitter. In another example, the electronic device may stream media content over the Internet or other private or public network. “Broadcast” may also refer to media content, such as video and audio content, delivered to a distributed audience using a content delivery system, such as over the air (OTA), cable, satellite, or Internet-based networks, in a one-to-many model. may be For example, a broadcast may be media content received from a radio or television transmitter to an electronic device.

TV 쇼 또는 인터넷 방송과 같은 미디어 콘텐츠 방송 또는 스트리밍은 제품 및 서비스를 광고하고, 시청자에게 정보를 제공하거나, 또는 이들을 조합할 수 있는 매력적인 장소가 될 수 있다. 다양한 프로그래밍 선택을 제공하기 위한 수익을 창출하기 위해 콘텐츠 사업자(가령, 텔레비전 네트워크)는 미디어 콘텐츠에 광고 (AD)를 삽입할 수 있다. 일반적으로 광고주는 채널의 모든 시청자에게 하나의 미디어 콘텐츠 스트림을 보내는 것을 이용했으며 지역 방송국은 시청자 분석 및 등급 제공자, 가령, The Nielsen Company®가 제공한 등급만을 기초로 시청자를 타깃팅한다. Broadcasting or streaming media content, such as TV shows or Internet broadcasts, can be an attractive place to advertise products and services, provide information to viewers, or any combination thereof. To generate revenue for providing a variety of programming choices, content providers (eg, television networks) may place advertisements (AD) in their media content. In general, advertisers have used to send one stream of media content to all viewers on a channel, and local broadcasters target viewers based solely on ratings provided by viewer analytics and rating providers, such as The Nielsen Company®.

TV 광고가 제품 또는 서비스를 광고하는 떠오르는 장소이지만, 전통적인 TV 광고에는 상이한 시청자를 위한 타깃팅되고 개인화된 AD가 없다. 자동 콘텐츠 인식(ACR: Automatic content recognition) 시스템은 미디어 콘텐츠를 식별하고 시청자에게 타깃팅 및/또는 개인화된 광고를 제공하기 위한 지문을 이용할 수 있다. 예를 들어, ACR 시스템은 콘텐츠 지문화(content fingerprinting)를 이용해 미디어 콘텐츠를 식별할 수 있다. 하나의 실시예에서, ACR 시스템은 전자 장치, 가령, 서버 또는 TV 상에서 실행되는 소프트웨어일 수 있다. 또 다른 실시예에서, ACR 시스템은 벤더 또는 서비스 제공자에 의해 호스팅되고 인터넷을 통해 전자 장치에 의해 액세스될 수 있는 서비스일 수 있다. 예를 들어, ACR 시스템은 서비스형 소프트웨어(SaaS: Software as a Service), 서비스형 플랫폼(PaaS: Platform as a Service), 또는 서비스형 인프라구조(IaaS: Infrastructure as a Service)일 수 있다. While TV advertising is an emerging place to advertise a product or service, traditional TV advertising lacks targeted and personalized AD for different viewers. Automatic content recognition (ACR) systems may use fingerprints to identify media content and present targeted and/or personalized advertisements to viewers. For example, the ACR system may identify media content using content fingerprinting. In one embodiment, the ACR system may be software running on an electronic device, such as a server or a TV. In another embodiment, the ACR system may be a service hosted by a vendor or service provider and accessed by an electronic device via the Internet. For example, the ACR system may be software as a service (SaaS), a platform as a service (PaaS), or an infrastructure as a service (IaaS).

콘텐츠 지문화는 미디어 콘텐츠의 지문 성문을 식별, 추출 및 압축하여 미디어 콘텐츠를 이의 "지문"으로 고유하게 식별하는 프로세싱 장치를 포함할 수 있다. 하나의 예를 들면, 지문 성분은 시각적 비디오 특징, 가령, 키 프레임 분석, 컬러, 및 비디오 시퀀스 동안의 모션 변화일 수 있다. ACR 시스템은 전자 장치에 의해 디스플레이되고 있는 미디어 콘텐츠로부터의 하나의 콘텐츠 지문 또는 콘텐츠 시퀀스 지문을 참조 데이터베이스에 저장된 지문과 매칭함으로써 비디오 콘텐츠를 식별할 수 있다. Content fingerprinting may include a processing device that uniquely identifies the media content as its “fingerprint” by identifying, extracting, and compressing the fingerprinting of the media content. As one example, a fingerprint component may be a visual video feature, such as key frame analysis, color, and motion change during a video sequence. The ACR system may identify video content by matching one content fingerprint or content sequence fingerprint from the media content being displayed by the electronic device with a fingerprint stored in a reference database.

그러나 전자 장치가 미디어 콘텐츠에 온 스크린 디스플레이를 오버레이 할 때, 온 스크린 디스플레이는 미디어 콘텐츠를 식별하는 ACR 시스템을 교란시킬 수 있다. 예를 들어, 전자 장치는 콘텐츠 사업자로부터 수신한 미디어 콘텐츠에 온스크린 디스플레이를 오버레이할 수 있다. 온 스크린 디스플레이는 로고, 자막 텍스트, 긴급 메시지, 볼륨 바, 채널 번호, 구성 메뉴 등일 수 있다. However, when the electronic device overlays the on-screen display on the media content, the on-screen display may disrupt the ACR system for identifying the media content. For example, the electronic device may overlay the on-screen display on the media content received from the content provider. The on-screen display may be a logo, subtitle text, emergency message, volume bar, channel number, configuration menu, and the like.

종래에는, 전자 장치가 콘텐츠 지문을 생성하고 ACR 시스템으로 이를 전송할 때 미디어 콘텐츠의 콘텐츠 지문이 온스크린 디스플레이를 포함할 수 있고, 이 온스크린 디스플레이는 저장된 지문이 포함하지 않기 때문에 ACR 시스템이 콘텐츠 지문을 미디어 콘텐츠의 저장된 지문과 매칭하는 것을 교란시킬 수 있다. 콘텐츠 지문이 온스크린 디스플레이를 포함하고 저장 지문은 포함하지 않을 때, 저장된 지문의 적어도 일부분이 콘텐츠 지문과 상이하다.Conventionally, when an electronic device generates a content fingerprint and sends it to the ACR system, the content fingerprint of the media content may include an on-screen display, and since the on-screen display does not include a stored fingerprint, the ACR system detects the content fingerprint. It can disrupt matching with stored fingerprints of media content. When the content fingerprint includes an on-screen display and no stored fingerprint, at least a portion of the stored fingerprint is different from the content fingerprint.

본 명세서에, ACR 시스템이 미디어 콘텐츠에 오버레이된 또는 내장된 온스크린 디스플레이를 포함하는 미디어 콘텐츠를 식별할 수 있도록 하는 방법, 시스템, 및 장치가 기재된다. 하나의 실시예에서, 장치가 상이한 프레임 포맷을 이용해 지문을 생성할 수 있다. 장치는 전자 장치와 통신 가능하게 연결될 수 있으며, 장치는 ACR 시스템으로 지문을 통신할 수 있다. ACR 시스템은 상기 지문을 타 지문과 비교하여 디스플레이되는 미디어 콘텐츠를 식별할 수 있다. ACR 시스템은 미디어 콘텐츠 내 온스크린 디스플레이로 인한 교란을 피하기 위해 상이한 프레임 포맷을 사용할 수 있다. 지문을 위해 상이한 프레임 포맷을 이용함으로써, 본 명세서의 실시예에 기재된 바와 같이, 지문을 매칭할 때 긍정 오류(false positive)를 피할 수 있다. 상이한 프레임 포맷을 이용함으로써 또한 지문을 매칭할 때 실제 매칭을 놓치는 것을 피할 수 있다. Described herein are methods, systems, and apparatus that allow an ACR system to identify media content including an on-screen display that is overlaid or embedded in the media content. In one embodiment, the device may generate the fingerprint using a different frame format. The device may be communicatively coupled to the electronic device, and the device may communicate a fingerprint to the ACR system. The ACR system may identify the displayed media content by comparing the fingerprint with other fingerprints. The ACR system may use different frame formats to avoid disturbances due to on-screen display within the media content. By using different frame formats for fingerprints, false positives can be avoided when matching fingerprints, as described in the embodiments herein. By using a different frame format it is also possible to avoid missing the actual match when matching the fingerprint.

도 1은 하나의 실시예에 따르는 콘텐츠 배포 네트워크(100)의 시스템도이다. 콘텐츠 배포 네트워크(100)에서, 콘텐츠 사업자(102)는 지역 사업자(106)에게 콘텐츠 피드를 방송할 수 있다. 지역 사업자(106)는 헤드엔드(headend)(104) 및 ACR 지문화 서버(105)를 포함할 수 있다. 지역 사업자(106)의 헤드엔드(104)는 콘텐츠 사업자(102)로부터 콘텐츠 피드를 수신할 수 있다. 헤드엔드(104)는 수신된 콘텐츠 피드를 기초로 지역 콘텐츠 피드를 생성할 수 있다. 예를 들어, 헤드엔드(104)는 국립 또는 전역 방송국으로부터 프로그램과 광고와 함께 네트워크 채널을 수신하는 지역 제휴 방송국일 수 있다. 예를 들어, 헤드엔드(104)는 방송 피드를 송신하는 방송 설비 전의 방송 피드의 소스일 수 있다. 또 다른 예를 들면, 헤드엔드(104)는 분배 증폭기일 수 있다. 분배 증폭기는 소스 피드를 수신하고 동일한 소스 피드로부터 상이한 장치를 위한 복수의 출력을 만들 수 있다. 출력 피드는 다양한 배포 아웃렛으로 라우팅될 수 있는데, 가령, 공중(OTA) 방송, 케이블 사업자에게 전달, 위성 사업자에게 전달, 및/또는 온라인 스트리밍 사업자에게 전달될 수 있다. 1 is a system diagram of a content distribution network 100 according to one embodiment. In the content distribution network 100 , a content provider 102 may broadcast a content feed to a local operator 106 . The local operator 106 may include a headend 104 and an ACR fingerprinting server 105 . The headend 104 of the local operator 106 may receive a content feed from the content provider 102 . The headend 104 may generate a local content feed based on the received content feed. For example, headend 104 may be a regional affiliate broadcaster that receives network channels along with programs and advertisements from national or global broadcasters. For example, the headend 104 may be the source of a broadcast feed before the broadcast facility that transmits the broadcast feed. As another example, the headend 104 may be a distribution amplifier. A distribution amplifier may receive a source feed and make multiple outputs for different devices from the same source feed. Output feeds may be routed to various distribution outlets, such as over-the-air (OTA) broadcasts, delivery to cable operators, delivery to satellite operators, and/or delivery to online streaming operators.

헤드엔드(104)는 지역 콘텐츠 피드를 ACR 지문화 서버(105), 공중(OTA) 방송국(108), 및/또는 멀티채널 비디오 프로그래밍 배포자(MVPD)(110)로 통신할 수 있다. 예를 들어, ACR 지문화 서버(105)는 방송 시설 내에 설치된 장치일 수 있다. ACR 지문화 서버(105)는 헤드엔드(104)로부터의 피드를 수신할 수 있다. ACR 지문화 서버(105)는 피드를 지문화하고 지문을 클라우드 기반 웹 서비스로 전송할 수 있다. 한 실시예에서, ACR 지문화 서버(105)는 방송 시설 내부에 설치되어 피드가 디스플레이 장치, 가령, 텔레비전(TV)으로 전달되기 전에 피드를 지문화할 수 있다. The headend 104 may communicate the local content feed to an ACR fingerprinting server 105 , an over-the-air (OTA) broadcaster 108 , and/or a multi-channel video programming distributor (MVPD) 110 . For example, the ACR fingerprinting server 105 may be a device installed in a broadcast facility. The ACR fingerprinting server 105 may receive a feed from the headend 104 . The ACR fingerprinting server 105 may fingerprint the feed and send the fingerprint to the cloud-based web service. In one embodiment, the ACR fingerprinting server 105 may be installed inside a broadcast facility to fingerprint the feed before it is delivered to a display device, such as a television (TV).

OTA 방송국(108) 및/또는 MVPD(110)는 지역 콘텐츠 피드를 전자 장치(115)로 통신할 수 있다. 전자 장치(115)의 일부 예시는 전자 장치(118 및 120), 미디어 콘텐츠를 전자 장치(118 및 120)로 스트리밍하는 셋 톱 박스(114), 및 사용자가 지역 콘텐츠 피드를 가령, 무선으로 스트리밍할 수 있도록 하는 그 밖의 다른 장치(116)를 포함한다. 예를 들어, 전자 장치(115)는 정보를 디스플레이하기 위한 디스플레이(가령, 액정 디스플레이 또는 터치스크린 디스플레이)를 포함할 수 있다.The OTA broadcast station 108 and/or the MVPD 110 may communicate the local content feed to the electronic device 115 . Some examples of electronic devices 115 include electronic devices 118 and 120 , a set top box 114 that streams media content to electronic devices 118 and 120 , and a set-top box 114 that allows users to stream local content feeds, such as wirelessly. and other devices 116 that enable it. For example, the electronic device 115 may include a display (eg, a liquid crystal display or a touch screen display) for displaying information.

예를 들어, OTA 방송국(108)은 전통적인 지역 텔레비전 채널 또는 라디오 채널을 이용해 지역 콘텐츠 피드를 방송할 수 있다. 이 예시에서, 전자 장치(118 및 120)는 지역 콘텐츠 피드를 수신하기 위한 안테나(가령, TV 안테나 또는 라디오 안테나)를 포함할 수 있다. 또 다른 예를 들면, MVPD(110)(가령, 케이블 방송국 또는 위성 방송국)가 지역 콘텐츠 피드를 셋 톱 박스(114)로 통신할 수 있다. 이 예시에서, 셋 톱 박스(114)는 전자 장치(118 및 120)를 위한 콘텐츠 피드를 포맷팅하고 포맷팅된 콘텐츠 피드를 전자 장치(118 및 120)로 통신할 수 있다. 전자 장치(118 및 120)는 지역 콘텐츠를 시청자에게 디스플레이하기 위한 디스플레이 장치, 가령, 텔레비전 스크린 또는 터치 스크린을 포함할 수 있다. For example, the OTA broadcaster 108 may broadcast a local content feed using a traditional local television channel or radio channel. In this example, electronic devices 118 and 120 may include antennas (eg, TV antennas or radio antennas) for receiving local content feeds. As another example, the MVPD 110 (eg, a cable or satellite station) may communicate a local content feed to the set top box 114 . In this example, set top box 114 may format a content feed for electronic devices 118 and 120 and communicate the formatted content feed to electronic devices 118 and 120 . Electronic devices 118 and 120 may include display devices for displaying local content to a viewer, such as a television screen or a touch screen.

콘텐츠 배포 네트워크(100)의 다양한 구성요소가 전자 장치(118 및 120)에 일체 구성되거나 이에 연결될 수 있다. 예를 들어, 전자 장치(118 및 120)는 스마트 텔레비전일 수 있다. 예를 들어, 스마트 TV는 안테나, 셋 톱 박스(114) 또는 단일 유닛으로 된 일체형 ACR 시스템 및 디스플레이 장치를 포함할 수 있다. 또 다른 예에서, 스마트 TV는 프로세싱 장치 및 라디오 주파수(RF) 회로를 포함할 수 있다. 프로세싱 장치는 운영 체제(OS) 및/또는 하나 이상의 애플리케이션, 가령, 주문형 비디오(VOD) 콘텐츠를 액세스하기 위한 애플리케이션을 실행할 수 있다. 프로세싱 장치는 라디오 주파수(RF) 회로의 안테나를 이용해 무선 로컬 영역 네트워크(WLAN) 상에서 통신할 수 있다. 예를 들어, 프로세싱 장치는 RF 회로를 이용해 인터넷으로 연결하여 온라인으로 대화형 미디어 또는 주문형 스트리밍 미디어를 액세스할 수 있다. The various components of the content distribution network 100 may be integrally configured with or connected to the electronic devices 118 and 120 . For example, the electronic devices 118 and 120 may be smart televisions. For example, a smart TV may include an antenna, a set-top box 114, or an integrated ACR system and display device as a single unit. In another example, a smart TV may include a processing device and radio frequency (RF) circuitry. The processing device may execute an operating system (OS) and/or one or more applications, such as applications for accessing video-on-demand (VOD) content. The processing device may communicate over a wireless local area network (WLAN) using an antenna in a radio frequency (RF) circuit. For example, the processing device may connect to the Internet using RF circuitry to access interactive media or streaming media on demand online.

ACR 지문화 서버(105)는 지역 콘텐츠 피드를 분석하고 지문 정보(가령, 지문)를 결정할 수 있다. ACR 지문화 서버(105)는 지문을 ACR 시스템(124 또는 126)으로 통신할 수 있다. ACR 시스템(124 및 126)은 장치 제조업체, 가령, 스마트 TV 제조업체가 선택한 상이한 ACR 시스템일 수 있다. 예를 들어, ACR 시스템(124 또는 126)은 프로세싱 로직 또는 프로세싱 장치를 포함해 명령을 실행하거나 프로세스를 수행할 수 있다. 또 다른 예를 들면, ACR 시스템(124 및 126)은 상이한 ACR 벤더를 위한 ACR 웹 서비스일 수 있다. The ACR fingerprinting server 105 may analyze the local content feed and determine fingerprint information (eg, fingerprint). The ACR fingerprinting server 105 may communicate the fingerprint to the ACR system 124 or 126 . ACR systems 124 and 126 may be different ACR systems chosen by the device manufacturer, such as a smart TV manufacturer. For example, the ACR system 124 or 126 may include processing logic or processing devices to execute instructions or perform processes. As another example, ACR systems 124 and 126 may be ACR web services for different ACR vendors.

ACR 지문화 서버(105)는 복수의 ACR 벤더로부터의 클라이언트의 인덱싱의 사용을 가능하게 할 수 있다. 예를 들어, 상이한 소비자 전자제품 제조업체(CEM), 가령, TV 제조업체가 자신의 전자 장치에 일체 구성될 ACR 벤더를 독립적으로 선택할 수 있다. 특정 CEM의 장치 상에서 ACR 기반 기능을 활성화하기 위해, ACR 시스템은 CEM이 선택하고 CEM의 텔레비전에 일체 구성된 ACR 벤더를 이용해 방송 피드를 인덱싱할 수 있다. 복수의 ACR 벤더를 ACR 지문화 서버(105)에 통합하는 하나의 이점은 광고주, 광고 에이전시 및 콘텐츠 사업자 같은 개체가 단일 플랫폼과 인터페이싱하고 복수의 CEM으로부터의 전자 장치에 진보된 광고 및 콘텐츠 경험을 전달할 수 있다는 것이다. The ACR fingerprinting server 105 may enable the use of indexing of clients from multiple ACR vendors. For example, different consumer electronics manufacturers (CEMs), such as TV manufacturers, may independently select ACR vendors to be integrated into their electronic devices. To enable ACR-based functionality on a particular CEM's device, the ACR system may index broadcast feeds using an ACR vendor selected by the CEM and integrated into the CEM's television. One advantage of integrating multiple ACR vendors into the ACR fingerprinting server 105 is that entities such as advertisers, advertising agencies and content providers can interface with a single platform and deliver advanced advertising and content experiences to electronic devices from multiple CEMs. that it can

예를 들어, ACR 시스템(124)은 참조 데이터베이스(125)에 연결될 수 있다. 또 다른 예시에서, ACR 시스템(126)은 참조 데이터베이스(127)에 연결될 수 있다. 참조 데이터베이스(125 및 127)는 지문 및 미디어 콘텐츠를 저장할 수 있다. 콘텐츠 관리 장치(122)가 ACR 시스템(124 및/또는 126)으로부터 메시지를 수신하는 서버 구성요소일 수 있다. 메시지는 전자 장치(118 또는 120)가 디스플레이하려는 또는 현재 디스플레이하고 있는 미디어 콘텐츠를 지시하는 정보를 포함할 수 있다. 예를 들어, 콘텐츠 관리 장치(122)가 메시지를 수신한 것에 응답하여, 콘텐츠 관리 장치(122)는 전자 장치(118 또는 120)와 데이터베이스(123)에 저장된 미디어 콘텐츠 간 인상(impression) 또는 연관을 기록할 수 있다. 또 다른 예시에서, 콘텐츠 관리 장치(122)가 메시지를 수신한 것에 응답하여, 콘텐츠 관리 장치(122)는 미디어 콘텐츠 위에 중첩될 이용 가능한 오버레이 콘텐츠에 대해 데이터베이스(123)의 질의를 생성 및 제출할 수 있다. For example, the ACR system 124 may be coupled to a reference database 125 . In another example, the ACR system 126 may be coupled to a reference database 127 . Reference databases 125 and 127 may store fingerprints and media content. The content management device 122 may be a server component that receives messages from the ACR systems 124 and/or 126 . The message may include information indicating the media content that the electronic device 118 or 120 is trying to display or is currently displaying. For example, in response to the content management device 122 receiving the message, the content management device 122 creates an impression or association between the electronic device 118 or 120 and the media content stored in the database 123 . can be recorded In another example, in response to the content management device 122 receiving the message, the content management device 122 may create and submit a query to the database 123 for available overlay content to be overlaid over the media content. .

하나의 실시예에서, ACR 시스템(124 또는 126)은 각각 전자 장치(118 또는 120)로 지문 요청을 전송할 수 있고, 여기서 지문 요청은 지문에 대한 프레임 포맷을 포함한다. 전자 장치(118 또는 120) 또는 상기 전자 장치(118 또는 120)에 통합된 ACR 시스템은 프레임 포맷으로 지문을 생성하고 상기 지문을 ACR 시스템(124 또는 126)으로 다시 전송할 수 있다. ACR 시스템(124 또는 126)은 미디어 콘텐츠 식별을 위해 지문을 이용할 수 있다.In one embodiment, the ACR system 124 or 126 may send a fingerprint request to the electronic device 118 or 120, respectively, where the fingerprint request includes a frame format for the fingerprint. The electronic device 118 or 120 or the ACR system integrated in the electronic device 118 or 120 may generate a fingerprint in a frame format and transmit the fingerprint back to the ACR system 124 or 126 . The ACR system 124 or 126 may use the fingerprint for media content identification.

프레임 포맷은 다음의 문단에서 더 상세히 설명될 복수의 세그먼트로 분할되는 프레임을 포함할 수 있다. 예를 들어, 프레임 포맷은 복수의 세그먼트 중 하나 이상의 세그먼트를 ACR 시스템(124 또는 126)에 의해 콘텐츠 지문을 저장된 지문에 매칭하는 데 사용되지 못하게 제외할 수 있다. 예를 들어, 하나 이상의 제외된 세그먼트는 로고, 자막 텍스트, 긴급 메시지 등을 포함할 수 있다. 또 다른 실시예에서, 전자 장치(118 또는 120)는 전체 지문을 ACR 시스템(124 또는 126)으로 전송할 수 있다. ACR 시스템(124 또는 126)은 프레임 포맷에 의해 정의된 지문의 하나 이상의 세그먼트를 제외하도록 지문을 재포맷팅할 수 있다. 예를 들어, ACR 시스템(124 또는 126)은 다양한 상이한 지문 레이아웃을 요청할 수 있다. 또 다른 예를 들면, ACR 시스템(124 또는 126)은 콘텐츠 인식을 위해 사용될 다양한 상이한 포맷으로 지문을 재포맷팅할 수 있다. A frame format may include a frame that is divided into a plurality of segments, which will be described in more detail in the following paragraphs. For example, the frame format may exclude one or more of the plurality of segments from being used by the ACR system 124 or 126 to match a content fingerprint to a stored fingerprint. For example, one or more excluded segments may include logos, subtitle text, urgent messages, and the like. In another embodiment, the electronic device 118 or 120 may transmit the entire fingerprint to the ACR system 124 or 126 . The ACR system 124 or 126 may reformat the fingerprint to exclude one or more segments of the fingerprint defined by the frame format. For example, the ACR system 124 or 126 may request a variety of different fingerprint layouts. As another example, the ACR system 124 or 126 may reformat the fingerprint into a variety of different formats to be used for content recognition.

전자 장치(115)로부터의 콘텐츠 지문과 참조 데이터베이스 내 저장된 지문 간 매칭을 찾기 위해, ACR 시스템(124 또는 126)은 콘텐츠 지문과 저장된 지문 간 1대1 비교를 수행할 수 있다. 예를 들어, ACR 시스템(124 또는 126)은 비교를 위해 O(n) 알고리즘(가령, 선형 알고리즘)을 이용할 수 있으며, 여기서 n은 참조 데이터베이스 내 요소의 개수이다. ACR 시스템이 데이터베이스 내 항목을 찾기 위해 O(n) 알고리즘을 이용할 때, ACR 시스템은 매칭을 찾기 위해 참조 데이터베이스 내 모든 또는 비교적 많은 개수의 저장된 지문에서 검색해야 할 수 있다. To find a match between the content fingerprint from the electronic device 115 and the fingerprint stored in the reference database, the ACR system 124 or 126 may perform a one-to-one comparison between the content fingerprint and the stored fingerprint. For example, the ACR system 124 or 126 may use an O(n) algorithm (eg, a linear algorithm) for comparison, where n is the number of elements in the reference database. When an ACR system uses an O(n) algorithm to find entries in a database, the ACR system may have to search all or a relatively large number of stored fingerprints in a reference database to find a match.

콘텐츠 관리 장치(122)는 전자 장치(118 또는 120)에 대한 장치 정보를 이용해 오버레이 콘텐츠를 필터링한다. 콘텐츠 관리 장치(122)는 ACR 시스템(124 또는 126)을 통해 전자 장치(118 또는 120)로 오버레이 콘텐츠를 전송할 수 있다. 하나의 실시예에서, 전자 장치(118 또는 120)는 오버레이 콘텐츠를 시청자에게 디스플레이할 수 있다. 또 다른 실시예에서, 전자 장치(118 또는 120)는 미디어 콘텐츠를 오버레이 콘텐츠로 대체하고 오버레이 콘텐츠를 시청자에게 디스플레이할 수 있다. The content management device 122 filters the overlay content using the device information for the electronic device 118 or 120 . The content management device 122 may transmit the overlay content to the electronic device 118 or 120 through the ACR system 124 or 126 . In one embodiment, the electronic device 118 or 120 may display the overlay content to the viewer. In another embodiment, the electronic device 118 or 120 may replace the media content with the overlay content and display the overlay content to the viewer.

하나의 실시예에서, ACR 시스템(124 또는 126)은 전자 장치(118 또는 120) 상에 트리거가 디스플레이되게 할 수 있다. 전자 장치(118 또는 120)는 트리거를 인식하고 콘텐츠 관리 장치(122)에게 전자 장치(118 또는 120)와 데이터베이스(123) 내 미디어 콘텐츠 간 인상 또는 연관을 기록하도록 하는 요청을 전송할 수 있다. 예를 들어, 전자 장치(118 또는 120)는 콘텐츠 관리 장치(122)에게 전자 장치(118 또는 120)가 선택 미디어 콘텐츠를 디스플레이할 때 시청자가 채널을 변경하는지 여부를 기록하도록 하는 요청을 전송할 수 있다. In one embodiment, the ACR system 124 or 126 may cause a trigger to be displayed on the electronic device 118 or 120 . The electronic device 118 or 120 may recognize the trigger and send a request to the content management device 122 to record an impression or association between the electronic device 118 or 120 and the media content in the database 123 . For example, the electronic device 118 or 120 may send a request to the content management device 122 to record whether the viewer changes channels when the electronic device 118 or 120 displays selected media content. .

본 명세서에 기재된 바와 같이 분산 아키텍처에서 자동 콘텐츠 인식이 수행될 수 있다. 하나의 실시예에서, ACR 시스템은 전자 장치(115, 118 또는 120) 중 임의의 것 상에 위치할 수 있다. 하나의 실시예에서, ACR 시스템은 자동 콘텐츠 인식을 수행할 수 있다. 또 다른 실시예에서, 지역 ACR 시스템 또는 지역 ACR 지문 매칭기가 자동 콘텐츠 인식을 수행하기 위해 전자 장치(115, 118 또는 120)에 통합된다. 또 다른 실시예에서, ACR 시스템은 본 명세서에 기재된 바와 같이 ACR 지문 매칭을 수행할 수 있다. 또 다른 실시예에서, ACR 시스템은 클라이언트 측 매칭 구성요소일 수 있다. Automatic content recognition may be performed in a distributed architecture as described herein. In one embodiment, the ACR system may be located on any of the electronic devices 115 , 118 or 120 . In one embodiment, the ACR system may perform automatic content recognition. In another embodiment, a local ACR system or local ACR fingerprint matcher is integrated into the electronic device 115 , 118 or 120 to perform automatic content recognition. In another embodiment, the ACR system may perform ACR fingerprint matching as described herein. In another embodiment, the ACR system may be a client-side matching component.

전자 장치(115, 118 또는 120)는 미디어 장치, 가령, 텔레비전, 모바일 전화기 또는 동글(dongle)일 수 있다. ACR 시스템은 전자 장치(115, 118 또는 120) 상에서 실행 또는 운영되는 소프트웨어 또는 펌웨어일 수 있다. ACR 시스템은 미디어 콘텐츠의 재생 동안 미디어 콘텐츠(가령, 오디오 콘텐츠, 비디오 콘텐츠, 자막, 긴급 메시지 등)을 지문화할 수 있다. ACR 시스템은 ACR 시스템(124 또는 126)과 통신하여 콘텐츠의 식별을 촉진하고 콘텐츠 오버레이 시스템이 동적인 광고 대체 및/또는 미디어 콘텐츠 위로 오버레이 콘텐츠 중첩을 수행하게 하는 이벤트를 트리거할 수 있다. 이하에서 ACR 시스템과 ACR 지문화 서버(105)의 상호작용을 더 상세히 기재한다.Electronic device 115 , 118 , or 120 may be a media device, such as a television, mobile phone, or dongle. The ACR system may be software or firmware that is executed or operated on the electronic device 115 , 118 , or 120 . The ACR system may fingerprint media content (eg, audio content, video content, subtitles, emergency messages, etc.) during playback of the media content. The ACR system may communicate with the ACR system 124 or 126 to trigger an event to facilitate identification of content and cause the content overlay system to perform dynamic ad replacement and/or overlay content overlay over media content. The interaction between the ACR system and the ACR fingerprinting server 105 is described in more detail below.

ACR 지문화 서버(105)는 지역 콘텐츠 피드로부터의 프레임의 정렬된 시퀀스를 포함할 수 있는 지역 콘텐츠 피드를 분석할 수 있고 지문을 캡처할 수 있다. ACR 지문화 서버(105)는 상기 지문을 ACR 시스템(124 또는 126)으로 통신할 수 있다. ACR 시스템(124 및 126)은 장치 제조업체, 가령, 스마트 TV 제조업체에 의해 선택된 상이한 ACR 시스템일 수 있다. 예를 들어 ACR 지문화 서버(105)는 상이한 ACR 시스템(124 및 126)을 위한 지문을 포맷팅할 수 있다. The ACR fingerprinting server 105 may parse the local content feed, which may include an ordered sequence of frames from the local content feed, and may capture the fingerprint. The ACR fingerprinting server 105 may communicate the fingerprint to the ACR system 124 or 126 . ACR systems 124 and 126 may be different ACR systems selected by the device manufacturer, such as a smart TV manufacturer. For example, ACR fingerprinting server 105 may format fingerprints for different ACR systems 124 and 126 .

ACR 시스템(124 및 126)은 상이한 전자 장치(115)와의 통신 연결을 확립할 수 있다. 전자 장치(115)는 지문 정보를 ACR 시스템(124 및 126)으로 각각 통신할 수 있다. ACR 시스템(124 또는 126)은 전자 장치(115)로부터 ACR 지문 정보를 수신할 때, ACR 시스템(124 또는 126)은 ACR 지문화 서버(105)에 의해 생성된 것과 수신된 지문을 매칭할 수 있다. 매칭이 발생하고 ACR 시스템(124 또는 126)이 콘텐츠를 식별할 때, ACR 시스템(124 또는 126)은 ACR 이벤트를 콘텐츠 관리 장치(122)로 통신할 수 있다. ACR systems 124 and 126 may establish communication connections with different electronic devices 115 . The electronic device 115 may communicate the fingerprint information to the ACR systems 124 and 126 , respectively. When the ACR system 124 or 126 receives the ACR fingerprint information from the electronic device 115 , the ACR system 124 or 126 may match the received fingerprint with that generated by the ACR fingerprinting server 105 . . When a match occurs and the ACR system 124 or 126 identifies the content, the ACR system 124 or 126 may communicate the ACR event to the content management device 122 .

또 다른 예를 들면, ACR 시스템(124 또는 126)은 전자 장치(115) 중 하나로부터 ACR 지문 정보를 수신하고 수신된 지문을 ACR 지문화 서버(105)에 의해 생성된 지문과 매칭할 수 있다. 매칭이 발생하고 ACR 시스템(124 또는 126)이 콘텐츠를 식별할 때, ACR 시스템(124 또는 126)은 전자 장치(115)에게 ACR 이벤트를 통지할 수 있다. 전자 장치(115)는 ACR 이벤트 정보를 콘텐츠 관리 장치(122)에게 통신할 수 있다. 대안으로 또는 추가로, ACR 시스템(124 또는 126)은 ACR 이벤트 정보를 콘텐츠 관리 장치(122)로 직접 통신할 수 있다. ACR 이벤트 정보는, 지역 콘텐츠 피드 내 광고를 지시하는 정보, 지역 콘텐츠 피드 내 선택 또는 플래깅된 콘텐츠를 지시하는 정보, 또는 전자 장치(115)에서 새로운 미디어 콘텐츠로 콘텐츠 채널의 변경을 지시하는 정보를 포함할 수 있다. As another example, the ACR system 124 or 126 may receive ACR fingerprint information from one of the electronic devices 115 and match the received fingerprint with the fingerprint generated by the ACR fingerprinting server 105 . When a match occurs and the ACR system 124 or 126 identifies the content, the ACR system 124 or 126 may notify the electronic device 115 of the ACR event. The electronic device 115 may communicate ACR event information to the content management device 122 . Alternatively or additionally, the ACR system 124 or 126 may communicate ACR event information directly to the content management device 122 . The ACR event information includes information indicating advertisement in the local content feed, information indicating selected or flagged content in the local content feed, or information indicating change of the content channel to new media content in the electronic device 115. may include

상이한 ACR 시스템(124 및 126)으로부터의 ACR 이벤트 정보는 상이한 포맷을 가질 수 있으며 콘텐츠 관리 장치(122)는 데이터를 공통 포맷으로 정규화할 수 있다. 콘텐츠 관리 장치(122)는 정규화된 데이터를 데이터베이스(123)에 저장할 수 있다. 예를 들어, 콘텐츠 관리 장치(122)는 ACR 시스템(124 및 126)으로부터 이종 데이터 세트(disparate data set)를 수신할 수 있으며, 상기 이종 데이터 세트는 유사하지만 동일하지 않은 데이터, 가령, 동일한 콘텐츠지만 상이하게 포맷팅된 데이터를 포함한다. 콘텐츠 관리 장치(122)는 이종 데이터 세트를 처리 및 재포맷팅하여 단일 데이터 모델 또는 포맷(가령, 재포맷팅된 데이터 세트)를 생성할 수 있다. 콘텐츠 관리 장치(122)는 재포맷팅된 데이터 세트를 데이터베이스(123)에 저장할 수 있다. ACR event information from different ACR systems 124 and 126 may have different formats and the content management device 122 may normalize the data into a common format. The content management device 122 may store normalized data in the database 123 . For example, the content management device 122 may receive disparate data sets from the ACR systems 124 and 126 , wherein the disparate data sets are similar but not identical data, such as identical content, but Contains differently formatted data. The content management device 122 may process and reformat the heterogeneous data set to generate a single data model or format (eg, a reformatted data set). The content management device 122 may store the reformatted data set in the database 123 .

하나의 실시예에서, ACR 시스템(124 및 126)으로부터의 이종 데이터 세트를 정규화하기 위해, 콘텐츠 관리 장치(122)는 데이터 세트에서 데이터를 제거 또는 필터링할 수 있다. 예를 들어 일부 데이터 세트는 콘텐츠 관리 장치(122)와 무관할 수 있는 필드 또는 데이터를 포함할 수 있다. 이 예시에서, 콘텐츠 관리 장치(122)는 상기 무관한 데이터를 제거 또는 필터링할 수 있다. 또 다른 실시예에서, ACR 시스템(124 및 126)으로부터의 이종 데이터 세트를 정규화하기 위해, 콘텐츠 관리 장치(122)는 데이터 세트 내 필드를 매핑할 수 있다. 예를 들어, 콘텐츠 관리 장치(122)가 ACR 시스템(124)으로부터 제1 데이터 세트를 수신하고 ACR 시스템(126)으로부터 제2 데이터 세트를 수신할 때, 제1 데이터 세트 및 제2 데이터 세트의 데이터 필드 중 적어도 일부가 제1 데이터 세트와 제2 데이터 세트 모두에게 공통될 수 있다. 그러나 공통 데이터 필드가 제1 데이터 세트 및 제2 데이터 세트 내 상이한 곳에 위치할 수 있다. 이 예시에서, 콘텐츠 관리 장치(122)는 제1 데이터 세트 및 제2 데이터 세트의 상이한 데이터 필드를 정규화된 필드로 매핑할 수 있다. 콘텐츠 관리 장치(122)가 데이터 필드를 매핑할 때, 동일한 데이터 필드가 데이터베이스(123) 내 동일한 데이터 필드 위치에 매핑된다.In one embodiment, to normalize heterogeneous data sets from the ACR systems 124 and 126 , the content management device 122 may remove or filter data from the data sets. For example, some data sets may include fields or data that may be irrelevant to the content management device 122 . In this example, the content management device 122 may remove or filter the irrelevant data. In another embodiment, to normalize heterogeneous data sets from ACR systems 124 and 126 , content management device 122 may map fields within the data sets. For example, when the content management device 122 receives the first data set from the ACR system 124 and receives the second data set from the ACR system 126 , the data of the first data set and the second data set At least some of the fields may be common to both the first data set and the second data set. However, the common data field may be located in different places in the first data set and the second data set. In this example, the content management device 122 may map different data fields of the first data set and the second data set to normalized fields. When the content management device 122 maps the data field, the same data field is mapped to the same data field location in the database 123 .

또 다른 실시예에서, ACR 시스템(124 및 126)으로부터의 이종 데이터 세트를 정규화하기 위해, 콘텐츠 관리 장치(122)가 데이터 세트로부터 데이터를 도출할 수 있다. 예를 들어, ACR 시스템(124 및 126)으로부터의 데이터가 데이터베이스 내 데이터 필드를 채우기 위해 필요한 모든 필드를 포함하는 것은 아닐 수 있다. 그러나 콘텐츠 관리 장치(122)는 ACR 시스템(124 및 126)으로부터의 데이터 세트 내 다른 필드를 이용해 이들 데이터 필드에 대한 데이터를 도출할 수 있다. In another embodiment, to normalize heterogeneous data sets from ACR systems 124 and 126 , content management device 122 may derive data from the data sets. For example, data from ACR systems 124 and 126 may not include all fields necessary to populate data fields in the database. However, the content management device 122 may use other fields in the data set from the ACR systems 124 and 126 to derive data for these data fields.

예를 들어, 데이터베이스(123)는 국가 내 주(state) 필드, 지정 시장 영역(DMA) 필드, 및 국가 및/또는 도시 필드를 위한 데이터 필드를 포함할 수 있지만, ACR 시스템(124 및 126)으로부터의 데이터 세트는 우편번호(ZIP) 코드만 포함할 수 있다. 이 예시에서, 콘텐츠 관리 장치(122)는 ZIP 코드를 이용해 데이터베이스 내 필드를 위한 데이터를 도출할 수 있다. 또 다른 예시에서, 데이터 세트는 어떠한 지리적 위치 정보도 포함하지 않고 ACR 시스템(124 및 126)의 인터넷 프로토콜(IP) 주소를 포함할 수 있다. 이 예시에서, 콘텐츠 관리 장치(122)는 지역-IP 검색 서비스(geo-IP lookup service)를 이용해 주, DMA, 국가, 도시 및 ZIP 코드 정보를 도출할 수 있다. For example, database 123 may include data fields for state fields within a country, designated market area (DMA) fields, and country and/or city fields, but from ACR systems 124 and 126 . The data set of can contain only zip code (ZIP) codes. In this example, the content management device 122 may derive data for a field in the database using the ZIP code. In another example, the data set may include Internet Protocol (IP) addresses of ACR systems 124 and 126 without including any geographic location information. In this example, the content management device 122 may derive state, DMA, country, city and ZIP code information using a geo-IP lookup service.

또 다른 예를 들면, 데이터베이스(123)는 인구통계적 필드, 가령, 연령 필드, 성별 필드, 가계 소득 필드 등을 포함할 수 있다. 그러나 ACR 시스템(124 및 126)으로부터의 데이터 세트가 인구통계적 필드 또는 인구통계적 데이트를 포함하지 않을 수 있다. 이 예시에서, ACR 시스템(124 및 126)은 콘텐츠 관리 장치(122)에게 전자 장치(115)의 IP주소를 제공할 수 있다. 콘텐츠 관리 장치(122)는 IP 주소를 이용해 데이터베이스의 데이터 필드를 채우기 위한 인구통계적 데이터를 결정할 수 있다. As another example, the database 123 may include demographic fields, such as an age field, a gender field, a household income field, and the like. However, data sets from ACR systems 124 and 126 may not contain demographic fields or demographic data. In this example, the ACR systems 124 and 126 may provide the IP address of the electronic device 115 to the content management device 122 . The content management device 122 may determine demographic data for filling the data field of the database by using the IP address.

또 다른 예에서, ACR 시스템(124)으로부터의 제1 데이터 세트 내 필드가 현지 시각 존 정보, 가령, 산악 여름 시각(MDT) 존을 포함하고 ACR 시스템(126)으로부터의 제2 데이터 세트가 또 다른 시각 존으로부터의 정보, 가령, 협정 세계 시(UTC) 존을 포함할 수 있다. 데이터베이스는 UTC를 이용해 모든 데이터를 저장할 수 있고 콘텐츠 관리 장치(122)는 데이터베이스(123)에 데이터를 저장하기 전에 현지 시각을 UTC로 변환할 수 있다. In another example, the fields in the first data set from the ACR system 124 include local time zone information, such as a mountain summer time (MDT) zone and the second data set from the ACR system 126 is another information from time zones, such as Coordinated Universal Time (UTC) zones. The database may store all data using UTC, and the content management device 122 may convert the local time into UTC before storing the data in the database 123 .

또 다른 실시예에서, 콘텐츠 관리 장치(122)가 정규화된 데이터를 이용해 상이한 ACR 기술 벤더 및 스마트 TV 또는 그 밖의 다른 인터넷 연결 비디오 장치에 걸친 사용자의 시청 행동(시청 데이터)에 대한 보고서 또는 데이터를 생성할 수 있다. 콘텐츠 관리 장치(122) 및 전자 장치(115)는 정보, 가령, 오버레이 콘텐츠를 전자 장치(115)와 콘텐츠 관리 장치(122) 간에 정보를 통신하기 위한 통신 인터페이스를 포함할 수 있다. 예를 들어, 통신 인터페이스는 셀룰러 네트워크 및/또는 무선 네트워크를 이용해 정보를 통신할 수 있다. 예를 들어, 통신 네트워크가 3GPP(third generation partnership project) 릴리즈 8, 9, 10, 11, 또는 12 또는 IEEE®(Institute of Electronics and Electrical Engineers, Inc.) 802.16p, 802.16n, 802.16m-2011, 802.16h-2010, 802.16j-2009, 802.16-2009를 채용하는 셀룰러 네트워크일 수 있다. 또 다른 실시예에서, 통신 네트워크는 전기 전자 학회(Institute of Electronics and Electrical Engineers, Inc.)에 의해 개발된 IEEE® 표준, 가령, IEEE 802.11-2012, IEEE 802.11ac, 또는 IEEE 802.11ad 표준을 따를 수 있는 무선 네트워크(가령, Wi-Fi 연합에 의해 개발된 Wi-Fi® 기법을 이용한 네트워크)일 수 있다. 또 다른 실시예에서, 통신 네트워크는 Bluetooth SIG(Special Interest Group)에 의해 개발된 Bluetooth® 연결, 가령, Bluetooth v1.0, Bluetooth v2.0, Bluetooth v3.0, 또는 Bluetooth v4.0을 전개할 수 있다. 또 다른 실시예에서, 통신 네트워크는 ZigBee 연합에 의해 개발된 Zigbee® 연결, 가령, IEEE 802.15.4-2003 (Zigbee 2003), IEEE 802.15.4-2006 (Zigbee 2006), IEEE 802.15.4-2007 (Zigbee Pro)일 수 있다. In another embodiment, the content management device 122 uses the normalized data to generate reports or data on the user's viewing behavior (viewing data) across different ACR technology vendors and smart TVs or other internet-connected video devices. can do. The content management device 122 and the electronic device 115 may include a communication interface for communicating information, for example, overlay content between the electronic device 115 and the content management device 122 . For example, the communication interface may communicate information using a cellular network and/or a wireless network. For example, if the communications network has a third generation partnership project (3GPP) release 8, 9, 10, 11, or 12 or IEEE® (Institute of Electronics and Electrical Engineers, Inc.) 802.16p, 802.16n, 802.16m-2011, It may be a cellular network employing 802.16h-2010, 802.16j-2009, 802.16-2009. In another embodiment, the communication network may conform to IEEE® standards developed by the Institute of Electronics and Electrical Engineers, Inc., such as IEEE 802.11-2012, IEEE 802.11ac, or IEEE 802.11ad standards. It may be a wireless network (eg, a network using the Wi-Fi® technique developed by the Wi-Fi Alliance). In another embodiment, the communication network may deploy a Bluetooth® connection developed by the Bluetooth Special Interest Group (SIG), such as Bluetooth v1.0, Bluetooth v2.0, Bluetooth v3.0, or Bluetooth v4.0. have. In another embodiment, the communication network comprises Zigbee® connections developed by the ZigBee Alliance, such as IEEE 802.15.4-2003 (Zigbee 2003), IEEE 802.15.4-2006 (Zigbee 2006), IEEE 802.15.4-2007 ( Zigbee Pro).

예를 들어, 콘텐츠 관리 장치(122)는 전자 장치(115)에게 OTA 방송국(108) 또는 MVPD(110)로부터 수신된 지역 콘텐츠 피드의 세그먼트를 오버레이 콘텐츠로 대체할 것을 명령할 수 있다. 또 다른 예시에서, 콘텐츠 관리 장치(122)는 전자 장치(115)에게 지역 콘텐츠 피드의 세그먼트 상에 오버레이 콘텐츠를 오버레이 또는 중첩할 것을 명령할 수 있다. 콘텐츠 관리 장치(122)는 복수의 ACR 시스템(124 및 126)에 걸쳐 ACR 이벤트 정보를 모을 수 있고, 오버레이 콘텐츠를 상이한 전자 장치(115)(가령, 상이한 장치 제조업체의 전자 장치)로 통신할 수 있다. For example, the content management device 122 may instruct the electronic device 115 to replace the segment of the local content feed received from the OTA broadcasting station 108 or the MVPD 110 with the overlay content. In another example, the content management device 122 may instruct the electronic device 115 to overlay or superimpose the overlay content on a segment of the local content feed. Content management device 122 may aggregate ACR event information across multiple ACR systems 124 and 126 and communicate overlay content to different electronic devices 115 (eg, electronic devices from different device manufacturers). .

콘텐츠 관리 장치(122)는 또한 그 밖의 다른 장치(116)와의 통신 연결을 확립할 수 있다. 예를 들어 그 밖의 다른 장치(116)는 전자 장치(118 및 120)와 통신하고 추가 스크린(가령, 제2 스크린)을 제공하여 오버레이 콘텐츠를 디스플레이할 수 있다. 예를 들어, 전자 장치(118 및 120)는 OTA 방송국(108) 또는 MVPD(110)로부터 지역 콘텐츠 피드를 수신하고 상기 지역 콘텐츠 피드를 시청자에게 디스플레이할 수 있다. 그 밖의 다른 장치(116)도 역시 ACR 이벤트가 발생할 때, 앞서 언급한 바와 같이, ACR 이벤트 정보를 ACR 시스템(124 및 126)으로 통신할 수 있다. 콘텐츠 관리 장치(122)가 ACR 이벤트 정보를 수신할 때, 콘텐츠 관리 장치(122)는 그 밖의 다른 장치(116)로 오버레이 콘텐츠를 통신할 수 있다. The content management device 122 may also establish communication connections with other devices 116 . For example, other devices 116 may communicate with electronic devices 118 and 120 and provide an additional screen (eg, a second screen) to display overlay content. For example, the electronic devices 118 and 120 may receive a local content feed from the OTA broadcasting station 108 or the MVPD 110 and display the local content feed to a viewer. Other devices 116 may also communicate ACR event information to the ACR systems 124 and 126, as mentioned above, when an ACR event occurs. When the content management device 122 receives the ACR event information, the content management device 122 may communicate the overlay content to other devices 116 .

예를 들어, 전자 장치(118 및 120)는 그 밖의 다른 장치(116)가 오버레이 콘텐츠를 디스플레이하는 동안 지역 콘텐츠를 계속 디스플레이할 수 있다. 또 다른 예시에서, 전자 장치(118 및 120) 및 그 밖의 다른 장치(116)는 모두 오버레이 콘텐츠를 디스플레이할 수 있다. 또 다른 예시에서, 전자 장치(118 및 120) 및 그 밖의 다른 장치(116)는 오버레이 콘텐츠의 세그먼트 및 지역 콘텐츠 피드의 세그먼트를 디스플레이할 수 있다. 또 다른 예시에서, 전자 장치(118 및 120) 및 그 밖의 다른 장치(116)는 상이한 지역 콘텐츠 피드 및 상이한 오버레이 콘텐츠를 디스플레이할 수 있다. For example, electronic devices 118 and 120 may continue to display local content while other devices 116 display overlay content. In another example, both electronic devices 118 and 120 and other devices 116 may display overlay content. In another example, electronic devices 118 and 120 and other devices 116 may display segments of overlay content and segments of local content feeds. In another example, electronic devices 118 and 120 and other devices 116 may display different local content feeds and different overlay content.

예를 들어, 전자 장치(118 및 120) 및/또는 그 밖의 다른 장치(116)는 전자 장치(118 및 120) 및/또는 그 밖의 다른 장치(116)가 오버레이 콘텐츠를 수신할 때 오버레이 콘텐츠를 디스플레이할 수 있다. 또 다른 예시에서, 전자 장치(118 및 120) 및/또는 그 밖의 다른 장치(116)는 임계 시간 주기 동안 오버레이 콘텐츠를 디스플레이하는 것을 지연시킬 수 있다. 하나의 실시예에서 임계 시간 주기는 지정 시간 주기일 수 있다. 또 다른 실시예에서, 콘텐츠 관리 장치(122)는 전자 장치(118 및 120) 및 그 밖의 다른 장치(116)가 오버레이 콘텐츠를 디스플레이하는 것을 지연시키기 위한 시간 주기를 선택할 수 있다. For example, electronic devices 118 and 120 and/or other devices 116 display overlay content when electronic devices 118 and 120 and/or other devices 116 receive overlay content. can do. In another example, electronic devices 118 and 120 and/or other devices 116 may delay displaying the overlay content for a threshold period of time. In one embodiment, the threshold time period may be a specified time period. In another embodiment, the content management device 122 may select a time period for delaying the electronic devices 118 and 120 and other devices 116 from displaying the overlay content.

도 2는 하나의 실시예에 따른 콘텐츠 오버레이 네트워크(200)의 시스템도이다. 콘텐츠 오버레이 네트워크(200)는 전자 장치(210), 제1 ACR 시스템(220), 콘텐츠 데이터베이스(230), 오버레이 콘텐츠 서버(240), 기록 데이터베이스(250) 및 오버레이 콘텐츠 관리 시스템(260)을 포함할 수 있다. ACR 시스템(220)은 방송 디지털 콘텐츠를 전자 장치(210)로 제공한다. 방송 디지털 콘텐츠는 ACR 시스템(220)이 전자 장치(210)가 시청자에게 디스플레이하기 위한 미디어 세그먼트 위에 중첩 또는 오버레이하는 오버레이 콘텐츠를 포함할 수 있다. 미디어 세그먼트는 미디어 콘텐츠의 세그먼트 또는 부분일 수 있다. 예를 들어, 미디어 세그먼트는 TV 프로그램 또는 영화를 위한 미디어 콘텐츠, 가령, TV 쇼 클립 또는 영화 클립의 세그먼트 또는 부분일 수 있다. 또 다른 예시에서, 미디어 콘텐츠의 미디어 세그먼트는 TV 쇼 또는 영화를 위한 미디어 콘텐츠의 일부인 광고일 수 있다. 2 is a system diagram of a content overlay network 200 according to one embodiment. The content overlay network 200 may include an electronic device 210 , a first ACR system 220 , a content database 230 , an overlay content server 240 , a record database 250 and an overlay content management system 260 . can The ACR system 220 provides broadcast digital content to the electronic device 210 . The broadcast digital content may include overlay content that the ACR system 220 superimposes or overlays on a media segment for the electronic device 210 to display to a viewer. A media segment may be a segment or a portion of media content. For example, a media segment may be a segment or portion of media content for a TV program or movie, such as a TV show clip or movie clip. In another example, the media segment of the media content may be an advertisement that is part of the media content for a TV show or movie.

하나의 실시예에서, ACR 시스템(220)은 전자 장치(210)에 통합된다. 또 다른 실시예에서, ACR 시스템(220)은 전자 장치(210)에 연결된다. 예를 들어, ACR 시스템(220)은 전자 장치(210)의 입력 포트를 이용해 전자 장치(210)에 직접 연결될 수 있다. 예를 들어, ACR 시스템(220)은 전자 장치(210)의 HDMI(High-Definition Media Interface) 입력 단자로 플러깅되는 HDMI 동글이다. 이 예시에서, ACR 시스템(220)은 HDMI 입력 포트, HDMI 출력 포트, 및 콘텐츠 사업자로부터 방송 콘텐츠 또는 미디어 세그먼트를 수신하기 위한 네트워크 인터페이스를 포함할 수 있다. 또 다른 예에서, ACR 시스템(220)은 전자 장치(210)에 연결된 또 다른 장치, 가령, 오디오 및/또는 비디오(A/V) 장치를 통해 전자 장치(210)로 간접적으로 연결될 수 있다.In one embodiment, the ACR system 220 is integrated into the electronic device 210 . In another embodiment, the ACR system 220 is coupled to the electronic device 210 . For example, the ACR system 220 may be directly connected to the electronic device 210 using an input port of the electronic device 210 . For example, the ACR system 220 is an HDMI dongle that is plugged into a High-Definition Media Interface (HDMI) input terminal of the electronic device 210 . In this example, the ACR system 220 may include an HDMI input port, an HDMI output port, and a network interface for receiving broadcast content or media segments from a content provider. In another example, the ACR system 220 may be indirectly connected to the electronic device 210 via another device connected to the electronic device 210 , for example, an audio and/or video (A/V) device.

전자 장치(210)는 ACR 시스템(220)을 이용해 타깃팅된 또는 개인화된 오버레이 콘텐츠 세그먼트를 시청자에게 디스플레이할 수 있다. 오버레이 콘텐츠 세그먼트는 콘텐츠의 오디오 세그먼트, 비디오 세그먼트, 및/또는 그래픽 세그먼트일 수 있다. 예를 들어, 오버레이 콘텐츠 세그먼트는 대체 AD인 콘텐츠의 오디오 세그먼트 또는 비디오 세그먼트를 포함하는 미디어 객체 또는 파일일 수 있다. 또 다른 예에서, 오버레이 콘텐츠 세그먼트는 그 밖의 다른 오버레이 콘텐츠 세그먼트를 포함하는 더 큰 오디오 객체 또는 더 큰 비디오 객체의 오디오 세그먼트 또는 비디오 세그먼트이다. The electronic device 210 may display the targeted or personalized overlay content segment to the viewer using the ACR system 220 . The overlay content segment may be an audio segment, a video segment, and/or a graphics segment of the content. For example, an overlay content segment may be a media object or file containing an audio segment or a video segment of content that is an alternate AD. In another example, the overlay content segment is an audio segment or video segment of a larger audio object or larger video object that includes other overlay content segments.

하나의 실시예에서, ACR 시스템(220)은 ACR 방송 콘텐츠를 디지털 워커마킹하는 것을 이용할 수 있다. 디지털 워터마킹을 위해, 콘텐츠 사업자 또는 방송국은 방송 콘텐츠를 처리하여 콘텐츠 신호를 방송하기 전에 워터마크 데이터를 콘텐츠 신호 내에 삽입할 수 있다. 전자 장치(210) 또는 ACR 시스템(220)은 워터마크 데이터를 검출하여 미디어 세그먼트를 식별하고 방송 콘텐츠와 동기화할 수 있다. In one embodiment, the ACR system 220 may utilize digital workmarking of ACR broadcast content. For digital watermarking, a content provider or broadcasting station may process the broadcast content and insert the watermark data into the content signal before broadcasting the content signal. The electronic device 210 or the ACR system 220 may detect the watermark data to identify the media segment and synchronize it with the broadcast content.

또 다른 실시예에서, ACR 시스템(220)은 전자 장치가 미디어 콘텐츠를 디스플레이할 때 콘텐츠 지문화를 이용해 방송 콘텐츠의 미디어 콘텐츠를 식별할 수 있다. 콘텐츠 지문화는 ACR 시스템(220)이 전자 장치(210)가 디스플레이 중인 미디어 콘텐츠에 대한 콘텐츠 지문의 시퀀스를 참조 데이터베이스에 저장된 지문과 매칭하는 것을 포함할 수 있다. 콘텐츠 지문화의 이점은 미디어 세그먼트가 방송 중인 동안 미디어 세그먼트를 처리(가령, 실시간 처리)하거나 미디어 세그먼트가 방송된 후 임계 시간 주기, 가령, 수초 내에 미디어 세그먼트를 처리(가령, 실질적으로 실시간 처리)할 수 있다는 것이다. 콘텐츠 오버레이 네트워크(200)는 전자 장치(210)가 콘텐츠를 디스플레이할 때 콘텐츠 방송 동안 시청자 행동을 기초로 오버레이 콘텐츠 세그먼트를 조절할 수 있다(가령, 실시간 또는 실질적으로 실시간 조정). 예를 들어, 시청자 행동은 전자 장치(210)가 사용자 장치로부터 채널을 변경하라는 명령어 또는 미디어 콘텐츠의 디스플레이를 중단하라는 명령어를 수신하는 것을 포함할 수 있다. 또 다른 예시에서, 시청자 행동은 전자 장치(210)가 사용자 장치로부터 시간-편이된 콘텐츠(time-shifted content)를 디스플레이하라는 명령어를 수신하는 것을 포함할 수 있다. 시청자가 콘텐츠를 선택하거나 변경할 때, 콘텐츠 오버레이 네트워크(200)는 미디어 콘텐츠 상에 중첩되는 오버레이 콘텐츠를 스위칭할 수 있다. In another embodiment, the ACR system 220 may identify the media content of the broadcast content using content fingerprinting when the electronic device displays the media content. Fingerprinting the content may include the ACR system 220 matching the sequence of the content fingerprint for the media content being displayed by the electronic device 210 with the fingerprint stored in the reference database. An advantage of content fingerprinting is that a media segment may be processed (eg, real-time processing) while the media segment is being broadcast (eg, processed in real-time) or processed (eg, substantially real-time processing) of a media segment within a threshold period of time, eg, seconds, after the media segment is broadcast. that it can The content overlay network 200 may adjust the overlay content segment (eg, real-time or substantially real-time adjustment) based on viewer behavior during content broadcast when the electronic device 210 displays the content. For example, the viewer action may include the electronic device 210 receiving a command to change a channel or a command to stop displaying the media content from the user device. In another example, the viewer action may include the electronic device 210 receiving an instruction from the user device to display time-shifted content. When a viewer selects or changes content, the content overlay network 200 may switch overlay content overlaid on the media content.

오버레이 콘텐츠 서버(240)는 ACR 시스템(220)에 연결된다. 오버레이 콘텐츠 서버(240)는 콘텐츠 사업자 또는 광고주로부터 오버레이 콘텐츠를 수신할 수 있다. 오버레이 콘텐츠 서버(240)는 미디어 세그먼트, 오버레이 콘텐츠 세그먼트, 및 미디어 세그먼트 및 오버레이 콘텐츠 세그먼트를 위한 포맷 정보를 저장할 수 있다. 오버레이 콘텐츠 서버(240)는 오버레이 포맷의 선택 오버레이 포맷으로 미디어 세그먼트를 전자 장치(210)로 전송할 수 있다. The overlay content server 240 is connected to the ACR system 220 . The overlay content server 240 may receive overlay content from a content provider or advertiser. The overlay content server 240 may store a media segment, an overlay content segment, and format information for the media segment and the overlay content segment. The overlay content server 240 may transmit the media segment to the electronic device 210 in an overlay format selected from the overlay format.

기록 데이터베이스(250)는 오버레이 콘텐츠 서버(240)에 연결된다. 기록 데이터베이스(250)는 전자 장치(210)가 디스플레이하는 미디어 세그먼트 또는 오버레이 콘텐츠 세그먼트의 기록을 유지할 수 있다. 하나의 실시예에서, 전자 장치(210)는 전자 장치(210)를 고유하게 식별하는 이와 연관된 고유 식별자(UID)를 가진다. 상기 UID는 또한 미디어 세그먼트 또는 오버레이 콘텐츠 세그먼트와 연관되어 전자 장치(210)가 디스플레이한 미디어 세그먼트 또는 오버레이 콘텐츠 세그먼트를 지시할 수 있다. The records database 250 is coupled to the overlay content server 240 . The records database 250 may maintain a record of the media segment or the overlay content segment displayed by the electronic device 210 . In one embodiment, the electronic device 210 has a unique identifier (UID) associated therewith that uniquely identifies the electronic device 210 . The UID may also be associated with a media segment or an overlay content segment to indicate a media segment or an overlay content segment displayed by the electronic device 210 .

또 다른 실시예에서, 기록 데이터베이스(250)는 오버레이 콘텐츠 서버(240)로부터 메시지를 수신할 수 있다. 예를 들어, 메시지는 미디어 세그먼트를 식별하는 미디어 세그먼트 ID 및 미디어 세그먼트 ID와 연관된 UID를 포함할 수 있다. 또 다른 예를 들면, 메시지는 오버레이 콘텐츠 세그먼트를 식별하는 오버레이 콘텐츠 세그먼트 ID 및 오버레이 콘텐츠 세그먼트 ID와 연관된 UID를 포함할 수 있다. 기록 데이터베이스(250)는 오버레이 콘텐츠 서버(240)에 의한 다음 검색을 위해 다양한 미디어 세그먼트 ID 및 오버레이 콘텐츠 세그먼트 ID를 이들의 연관된 UID와 함께 저장할 수 있다. 오버레이 콘텐츠 서버(240)는 기록 데이터베이스(250)를 검색하여 각자의 미디어 세그먼트 ID 또는 오버레이 콘텐츠 세그먼트 ID와 연관된 미디어 세그먼트 또는 오버레이 콘텐츠 세그먼트가 UID와 함께 전자 장치(210) 상에 디스플레이됐던 때를 결정할 수 있다. In another embodiment, the history database 250 may receive messages from the overlay content server 240 . For example, the message may include a media segment ID identifying the media segment and a UID associated with the media segment ID. As another example, the message may include an overlay content segment ID identifying the overlay content segment and a UID associated with the overlay content segment ID. History database 250 may store various media segment IDs and overlay content segment IDs along with their associated UIDs for subsequent retrieval by overlay content server 240 . The overlay content server 240 may search the history database 250 to determine when the respective media segment ID or media segment or overlay content segment associated with the overlay content segment ID was displayed on the electronic device 210 along with the UID. have.

하나의 실시예에서, 오버레이 콘텐츠 관리 시스템(260)은 미디어 세그먼트 및 오버레이 콘텐츠 세그먼트의 시퀀스에 대한 설정 정보를 수신하기 위한 입력 장치를 포함할 수 있다. 예를 들어, 입력 장치는 전자 장치 상의 소프트웨어 인터페이스(가령, 웹 포털)일 수 있으며, 여기서 사용자는 설정 정보를 입력하여 오버레이 콘텐츠 서버(240)에서 미디어 세그먼트 및 오버레이 콘텐츠 세그먼트의 시퀀스를 설정할 수 있다. 예를 들어, 오버레이 콘텐츠 관리 시스템(260)은 오버레이 콘텐츠 및 대체 비디오를 생성, 시청, 업데이트 및 삭제하기 위해 최종 사용자가 액세스 가능한 웹사이트일 수 있다. In one embodiment, the overlay content management system 260 may include an input device for receiving configuration information for the media segment and the sequence of the overlay content segment. For example, the input device may be a software interface (eg, a web portal) on the electronic device, where a user may input setting information to set a sequence of media segments and overlay content segments in the overlay content server 240 . For example, overlay content management system 260 may be a website accessible to end users to create, view, update, and delete overlay content and replacement video.

예를 들어, 사용자는 입력 장치를 이용해, 오버레이 콘텐츠 서버(240)가 오버레이 콘텐츠 세트 중 한 오버레이 콘텐츠 세그먼트를 선택하는 데 사용하기 위한 규칙 또는 기준을 설정할 수 있다. 하나의 실시예에서, 규칙 또는 기준은 오버레이 콘텐츠 세트 내 아이템, 가령, 미디어 콘텐츠 및 오버레이 콘텐츠 세그먼트를 디스플레이하기 위한 시퀀스를 포함할 수 있다. 또 다른 실시예에서, 규칙 또는 기준은 사용자의 인구통계적 정보를 고려하여 상이한 오버레이 콘텐츠 세그먼트를 포함할 수 있다. 예를 들어, 사용자가 남성인 때, 전자 장치(210)는 선택된 오버레이 콘텐츠 세그먼트를 디스플레이할 수 있다. 또 다른 예시에서, 사용자가 여성인 때, 그 밖의 다른 오버레이 콘텐츠 세그먼트가 디스플레이될 수 있다. 또 다른 실시예에서, 규칙 또는 기준은 시간대를 고려하여 상이한 오버레이 콘텐츠 세그먼트를 디스플레이하는 것을 포함할 수 있다. 예를 들어, 오전에, 전자 장치(210)는 아침식사와 관련된 오버레이 콘텐츠 세그먼트를 디스플레이할 수 있고, 저녁에, 전자 장치(210)는 저녁식사와 관련된 오버레이 콘텐츠 세그먼트를 디스플레이할 수 있으며, 밤에는 전자 장치(210)가 성인 테마와 관련된 오버레이 콘텐츠 세그먼트를 디스플레이할 수 있다. 또 다른 실시예에서, 오버레이 콘텐츠 서버(240)는 미디어 콘텐츠 및 오버레이 콘텐츠 세그먼트를 선형 시퀀스로 정렬하기 위한 설정 정보를 수신하기 위한 입력 장치를 포함할 수 있다. 예를 들어, 사용자는 그래픽 사용자 인터페이스(GUI)를 이용해 설정 정보를 오버레이 콘텐츠 서버(240)로 전송하여 미디어 세그먼트 및 오버레이 콘텐츠 세그먼트의 시퀀스를 정렬할 수 있다. For example, a user may use an input device to set rules or criteria for overlay content server 240 to use to select an overlay content segment from a set of overlay content. In one embodiment, a rule or criterion may include a sequence for displaying items in an overlay content set, such as media content and overlay content segments. In another embodiment, the rules or criteria may include different overlay content segments taking into account the user's demographic information. For example, when the user is a male, the electronic device 210 may display the selected overlay content segment. In another example, when the user is a woman, other overlay content segments may be displayed. In another embodiment, the rules or criteria may include displaying different segments of the overlay content taking into account time of day. For example, in the morning, the electronic device 210 may display an overlay content segment related to breakfast, in the evening, the electronic device 210 may display an overlay content segment related to dinner, and at night The electronic device 210 may display an overlay content segment related to the adult theme. In another embodiment, the overlay content server 240 may include an input device for receiving media content and configuration information for arranging the overlay content segments in a linear sequence. For example, the user may send setting information to the overlay content server 240 using a graphical user interface (GUI) to align the sequence of the media segment and the overlay content segment.

도 3a는 하나의 실시예에 따라, 전다 장치 상에 디스플레이될 이미지를 생성하기 위해, 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)를 포함하는 프레임의 하나의 합성(compositing)을 도시한다. 합성은 복수의 트랙 상의 둘 이상의 비디오 또는 그래픽, 가령, 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)를 적층함으로써 디스플레이 이미지를 생성하는 기법일 수 있다. 프로세싱 장치, 가령, 스마트 TV 또는 ACR 시스템에 통합되는 프로세싱 장치가 비디오 또는 그래픽을 하나의 이미지로 혼합할 수 있다. 하나의 실시예에서, 각각의 트랙이 하나의 레이어일 수 있다. 예를 들어, 최상위 레이어 또는 탑 레이어, 가령, 온스크린 디스플레이(304)가 주 레이어(dominant layer)일 수 있다. 주 레이어는 미디어 콘텐츠(302) 앞에 디스플레이될 수 있다. 예를 들어, 온스크린 디스플레이(304)는 미디어 콘텐츠(302)의 적어도 일부분(가령, 최하위 레이어 또는 바텀 레이어)을 덮을 수 있다. 3A illustrates one compositing of a frame comprising media content 302 and an on-screen display 304 to create an image to be displayed on the entire device, according to one embodiment. Compositing may be a technique for creating a display image by stacking two or more videos or graphics on multiple tracks, such as media content 302 and on-screen display 304 . A processing device, such as a processing device integrated into a smart TV or ACR system, may mix video or graphics into one image. In one embodiment, each track may be one layer. For example, the top layer or top layer, such as the on-screen display 304 , may be the dominant layer. The main layer may be displayed before the media content 302 . For example, the on-screen display 304 may cover at least a portion of the media content 302 (eg, a bottom layer or a bottom layer).

이미지의 레이어는 하나 이상의 장치에서 수신되고 합성될 수 있다. 하나의 실시예에서, 미디어 콘텐츠(302)는 제1 장치 상에 저장되거나 존재할 수 있고 인터페이스, 가령, HMDI(high definition multimedia interface) 연결을 통해 제2 장치로 전송될 수 있다. 제2 장치는 수신된 미디어 콘텐츠(302)를 온스크린 디스플레이(304)와 합성하여 최종 합성 이미지를 디스플레이할 수 있다. Layers of images may be received and composited on one or more devices. In one embodiment, the media content 302 may be stored or reside on a first device and may be transmitted to a second device via an interface, such as a high definition multimedia interface (HMDI) connection. The second device may synthesize the received media content 302 with the on-screen display 304 to display the final composite image.

또 다른 실시예에서, 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)는 제1 장치 상에 저장되거나 존재할 수 있다. 제1 장치는 수신된 미디어 콘텐츠(302)를 온스크린 디스플레이(304)와 합성하여 최종 합성 이미지로서 디스플레이할 수 있다. 그 후 제1 장치는 최종 합성 이미지를 인터페이스를 통해 제2 장치로 전송할 수 있다. 또 다른 실시예에서, 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)는 단일 장치 상에 저장되거나 존재할 수 있고, 여기서 단일 장치는 미디어 콘텐츠(302)와 온스크린 디스플레이(304)를 합성하고 합성 이미지를 디스플레이할 수 있다. In another embodiment, the media content 302 and the on-screen display 304 may be stored or reside on the first device. The first device may synthesize the received media content 302 with the on-screen display 304 and display it as a final composite image. Thereafter, the first device may transmit the final composite image to the second device through the interface. In another embodiment, the media content 302 and the on-screen display 304 may be stored or present on a single device, where the single device composites the media content 302 and the on-screen display 304 and combines the composite image. can be displayed.

미디어 콘텐츠(302) 또는 온스크린 디스플레이(304)를 합성하는 프로세싱 장치는 미디어 콘텐츠(302) 또는 온스크린 디스플레이(304)의 적어도 세그먼트의 불투명도 또는 투명도를 변경하는 것을 포함할 수 있다. 예를 들어, 합성은 시청자가 미디어 콘텐츠(302)의 일부를 볼 수 있도록 온스크린 디스플레이(304)(가령, 주 레이어)의 세그먼트의 불투명도 레벨을 변경하는 것을 포함할 수 있다. 예를 들어, 프로세싱 장치는 온스크린 디스플레이(304)의 하단의 위치에 대응하는 창(306)을 온스크린 디스플레이(304) 내에 형성할 수 있다. 상기 창(306)은 미디어 콘텐츠(302)위에 중첩될 수 있는 정보(가령, 텍스트, 그래픽 또는 비디오)를 포함할 수 있다. 예를 들어, 창(306) 내 정보는 자막 텍스트를 포함할 수 있다. 프로세싱 장치는 창(306)의 불투명도 레벨을 불투명 또는 솔리드(solid)이도록 설정될 수 있고 온스크린 디스플레이(304)의 나머지 부분(308)의 불투명도 레벨을 투명이도록 설정할 수 있다. 나머지 부분(308)의 불투명도 레벨이 투명일 때, 미디어 콘텐츠(302)가 시청자에게 보여질 수 있다. The processing device that composes the media content 302 or the on-screen display 304 may include changing the opacity or transparency of at least a segment of the media content 302 or the on-screen display 304 . For example, compositing may include changing the opacity level of a segment of an on-screen display 304 (eg, a main layer) so that a viewer can view a portion of the media content 302 . For example, the processing device may form a window 306 within the on-screen display 304 corresponding to a location of the bottom of the on-screen display 304 . The window 306 may include information (eg, text, graphics or video) that may be superimposed on the media content 302 . For example, the information in window 306 may include subtitle text. The processing device may set the opacity level of the window 306 to be opaque or solid and may set the opacity level of the remaining portion 308 of the on-screen display 304 to be transparent. When the opacity level of the remaining portion 308 is transparent, the media content 302 may be visible to the viewer.

도 3b는 하나의 실시예에 따라 창(310)을 포함하는 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)의 합성을 도시한다. 달리 언급이 없는 한, 동일한 도면 부호로 표시될 때 도 3b의 특징 중 일부가 도 3a의 특징의 일부와 동일하거나 유사하다. 프로세싱 장치는 온스크린 디스플레이(304)의 상단의 위치에 대응하는 창(310)을 온스크린 디스플레이(304) 내에 형성할 수 있다. 상기 창(310)은 미디어 콘텐츠(302) 위에 중첩될 수 있는 정보(가령, 텍스트, 그래픽 또는 비디오)를 포함할 수 있다. 예를 들어, 창(310) 내 정보가 긴급 메시지를 위한 텍스트를 포함할 수 있다. 온스크린 디스플레이(304)의 나머지 부분(308)은 투명해져서, 미디어 콘텐츠(302)의 적어도 일부분이 상기 나머지 부분(308)을 통해 보여질 수 있다. 3B illustrates a composite of media content 302 including window 310 and on-screen display 304 , according to one embodiment. Unless otherwise noted, some of the features of FIG. 3B are the same as or similar to some of the features of FIG. 3A when indicated by the same reference numerals. The processing device may form a window 310 in the on-screen display 304 that corresponds to a location on top of the on-screen display 304 . The pane 310 may include information (eg, text, graphics, or video) that may be superimposed on the media content 302 . For example, the information in the window 310 may include text for an emergency message. The remaining portion 308 of the on-screen display 304 is made transparent so that at least a portion of the media content 302 can be viewed through the remaining portion 308 .

도 3c는 하나의 실시예에 따른 창(312-318)을 포함하는 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)의 합성을 도시한다. 달리 언급이 없는 한, 동일한 도면 부호로 표시될 때 도 3c의 특징 중 일부가 도 3a의 특징의 일부와 동일하거나 유사하다. 프로세싱 장치는 온스크린 디스플레이(304)의 모서리의 위치에 대응하는 창(312-318)을 온스크린 디스플레이(304) 내에 형성할 수 있다. 상기 창(312-318)은 미디어 콘텐츠(302)의 하나 이상의 모서리 상에 중첩될 수 있는 정보(가령, 텍스트, 그래픽 또는 비디오)를 포함할 수 있다. 예를 들어, 창(312-318) 중 하나 이상의 정보가 로고를 위한 텍스트 및/또는 그래픽을 포함할 수 있다. 온스크린 디스플레이(304)의 나머지 부분(308)이 투명해져서, 미디어 콘텐츠(302)의 적어도 일부분이 상기 나머지 부분(308)을 통해 보여질 수 있다. 3C illustrates a composite of media content 302 including windows 312 - 318 and on-screen display 304 , according to one embodiment. Unless otherwise noted, some of the features of FIG. 3C are the same as or similar to some of the features of FIG. 3A when denoted by the same reference numerals. The processing device may form windows 312 - 318 in the on-screen display 304 corresponding to the locations of the corners of the on-screen display 304 . The panes 312 - 318 may include information (eg, text, graphics or video) that may be overlaid on one or more corners of the media content 302 . For example, information in one or more of windows 312 - 318 may include text and/or graphics for a logo. The remaining portion 308 of the on-screen display 304 is made transparent so that at least a portion of the media content 302 can be viewed through the remaining portion 308 .

도 3d는 하나의 실시예에 따라 전자 장치 상에 디스플레이될 이미지를 생성하기 위한 미디어 콘텐츠(302), 온스크린 디스플레이(304), 및 오버레이 콘텐츠(318)의 합성을 도시한다. 예를 들어, 탑 레이어 또는 주 레이어가 오버레이 콘텐츠(318)일 수 있다. 예를 들어, 오버레이 콘텐츠(318)는 미디어 콘텐츠(302)(가령, 최하위 레이어 또는 바텀 레이어) 및 온스크린 디스플레이(304)(가령, 중간 레이어)를 덮거나 마스킹할 수 있다. 이 예시에서, 온스크린 디스플레이(304)는 미디어 콘텐츠(302)를 커버하거나 마스킹할 수 있다. 3D illustrates the compositing of media content 302 , on-screen display 304 , and overlay content 318 to create an image to be displayed on an electronic device according to one embodiment. For example, the top layer or main layer may be the overlay content 318 . For example, the overlay content 318 may cover or mask the media content 302 (eg, the bottom layer or bottom layer) and the on-screen display 304 (eg, the middle layer). In this example, the on-screen display 304 may cover or mask the media content 302 .

예를 들어, 프로세싱 장치는 시청자가 오버레이 콘텐츠(318) 아래 또는 뒤에 있는 온스크린 디스플레이(304)의 부분을 볼 수 있도록 오버레이 콘텐츠(318)의 일부분의 불투명도 레벨을 조절할 수 있다. 또 다른 예시에서, 프로세싱 장치는 시청자가 오버레이 콘텐츠(318), 온스크린 디스플레이(304) 및 미디어 콘텐츠(302)의 일부분을 볼 수 있도록, 오버레이 콘텐츠(318) 및 온스크린 디스플레이(304)의 일부분의 불투명도 레벨을 조절할 수 있다. For example, the processing device may adjust the opacity level of a portion of the overlay content 318 such that a viewer may view the portion of the on-screen display 304 below or behind the overlay content 318 . In yet another example, the processing device may configure the overlay content 318 and the portion of the on-screen display 304 such that a viewer may view the overlay content 318 , the on-screen display 304 and the portion of the media content 302 . You can adjust the opacity level.

도 4는 하나의 실시예에 따라 프레임(400)의 완전 세분된 지문 레이아웃을 도시한다. 프레임(400)은 미디어 콘텐츠(302) 및 온스크린 디스플레이(304)의 합성일 수 있다(도 3a-3d). 세분된 지문 레이아웃은 ACR 시스템이 완전 세분된 지문 레이아웃을 이용해 프레임(400)을 복수의 블록(410-440)으로 세분하는 것을 포함할 수 있다. 블록(410-440) 각각은 프레임(400) 내 형성된 상이한 세그먼트 또는 위치를 나타낼 수 있다. 예를 들어, 블록(410-440)은 직사각형 또는 정사각형일 수 있다. 또 다른 예를 들면, 블록(410-440)은 다각형, 원형, 타원형 등일 수 있다. 또 다른 예시에서, 블록(410-440) 각각은 대략 동일한 크기일 수 있다. 또 다른 예시에서, 블록(410-440) 중 하나 이상이 상이한 크기일 수 있다. 하나의 프레임 내 블록의 수 및 형태 및 크기는 한정 사항이 아니며 블록의 개수 및 블록의 형태와 크기는 달라질 수 있다. 4 shows a fully subdivided fingerprint layout of a frame 400 according to one embodiment. Frame 400 may be a composite of media content 302 and on-screen display 304 ( FIGS. 3A-3D ). The subdivided fingerprint layout may include the ACR system subdividing the frame 400 into a plurality of blocks 410 - 440 using the fully subdivided fingerprint layout. Each of blocks 410 - 440 may represent a different segment or location formed within frame 400 . For example, blocks 410-440 may be rectangular or square. As another example, blocks 410-440 may be polygonal, circular, oval, and the like. In another example, each of blocks 410 - 440 may be approximately the same size. In another example, one or more of blocks 410 - 440 may be of different sizes. The number, shape, and size of blocks in one frame are not limited, and the number and shape and size of blocks may vary.

하나의 실시예에서, 프레임(400)은 16개의 블록(410-440)을 갖는 4×4 격자로 세분될 수 있다. 모서리 블록(434, 436, 438, 및/또는 440)은 온스크린 디스플레이, 가령, 로고를 포함할 수 있다. 예를 들어, 온스크린 디스플레이(304)의 모서리는 로고를 디스플레이하기 위해 이용 가능한 위치로 정의될 수 있다. In one embodiment, frame 400 may be subdivided into a 4x4 grid with 16 blocks 410-440. Corner blocks 434 , 436 , 438 , and/or 440 may include an on-screen display, such as a logo. For example, a corner of the on-screen display 304 may be defined as an available location for displaying a logo.

예를 들어, 전자 장치(118)(도 1)가 완전 세분된 지문 레이아웃을 이용하는 프레임(400)을 위한 지문을 형성하기 위한 요청을 ACR 시스템(124)으로부터 수신할 때, 전자 장치(118)는 블록(410-440)을 포함하는 완전 지문을 생성할 수 있다. 이 예시에서, 전자 장치(118)는 모서리 블록(434, 436, 438, 및/또는 440) 중 하나 이상을 지문으로부터 제거하고 지문을 ACR 시스템(124)으로 전송할 수 있다. 또 다른 예시에서 전자 장치(118)가 완전 세분된 지문 레이아웃을 이용해 프레임(400)에 대한 지문을 생성하라는 요청을 ACR 시스템(124)으로부터 수신한 때, 전자 장치(118)는 지문으로부터 모서리 블록(434, 436, 438, 및/또는 440) 중 하나 이상을 제외한 지문을 생성할 수 있다. 전자 장치(118)는 지문을 ACR 시스템(124)으로 전송할 수 있다. For example, when electronic device 118 ( FIG. 1 ) receives a request from ACR system 124 to form a fingerprint for frame 400 using a fully subdivided fingerprint layout, electronic device 118 may A complete fingerprint including blocks 410-440 may be generated. In this example, the electronic device 118 may remove one or more of the edge blocks 434 , 436 , 438 , and/or 440 from the fingerprint and send the fingerprint to the ACR system 124 . In another example, when the electronic device 118 receives a request from the ACR system 124 to generate a fingerprint for the frame 400 using a fully subdivided fingerprint layout, the electronic device 118 generates a corner block ( 434 , 436 , 438 , and/or 440 ). The electronic device 118 may transmit the fingerprint to the ACR system 124 .

예를 들어, 프레임(400)이 16개의 블록(410-440)을 갖는 4×4 격자로 분할되고 블록(434, 436, 438, 및 440)이 제거된 때, 완전 세분된 지문 레이아웃에 총 12개의 블록이 존재한다. 이 예시에서, 완전 세분된 지문 레이아웃이 12!의 상이한 순열(즉, 12!=479001600개의 순열)을 갖는 12 블록 순위를 가진다. 하나의 실시예에서, ACR 시스템은 미디어 콘텐츠는 초당 30 프레임을 가진다고 가정하면 지문화를 위해 7일치 미디어 콘텐츠를 저장할 수 있다. 예를 들어, 7일치 비디오에 대해 프레임의 최대 총 개수는: 7일 * 24시간 * 60분 * 60초 * 30프레임 = 18144000개 프레임이며, 이때 479001600개의 순열/18144000개 프레임 = 26.4회이다. 또 다른 예시에서, 3×3 블록의 경우, 지문은 9!의 서로 다른 순열을 가질 수 있다. 또 다른 예시에서, 5×5 블록의 경우 지문은 25!의 서로 다른 순열을 가질 수 있다.For example, when frame 400 is divided into a 4x4 grid with 16 blocks 410-440 and blocks 434, 436, 438, and 440 are removed, there is a total of 12 in a fully subdivided fingerprint layout. There are two blocks. In this example, the fully subdivided fingerprint layout has 12 block ranks with 12! different permutations (ie, 12!=479001600 permutations). In one embodiment, the ACR system may store 7 days of media content for fingerprinting, assuming that the media content has 30 frames per second. For example, for a 7-match video, the maximum total number of frames is: 7 days * 24 hours * 60 minutes * 60 seconds * 30 frames = 18144000 frames, where 479001600 permutations/18144000 frames = 26.4 times. In another example, for a 3x3 block, the fingerprint may have different permutations of 9!. In another example, for a 5×5 block, the fingerprint may have 25! different permutations.

세분된 지문 레이아웃 내 블록의 개수는 한정 사항으로 의도된 것이 아니다. 블록의 개수는 2개의 블록에서 수십만개의 블록까지 다양할 수 있다. 예를 들어, ACR 시스템(124) 또는 전자 장치(118)는 참조 데이터베이스(125) 내 복수의 지문이 프레임(400)에 대한 지문과 매칭되는 임계 충돌 횟수를 피하기에 충분한 개수의 순열을 제공하도록 완전 세분된 지문 레이아웃에 대해 사용될 블록의 개수를 선택할 수 있다. 하나의 실시예에서, 블록의 3×3 격자는 임계 충돌 횟수를 초과하는 충돌 횟수를 야기할 수 있는 불충분한 개수의 순열을 가질 수 있다. The number of blocks in the subdivided fingerprint layout is not intended to be limiting. The number of blocks can vary from two blocks to hundreds of thousands of blocks. For example, ACR system 124 or electronic device 118 may be completely configured to provide a sufficient number of permutations to avoid a threshold number of collisions in which a plurality of fingerprints in reference database 125 match fingerprints for frame 400 . The number of blocks to be used for the subdivided fingerprint layout can be selected. In one embodiment, a 3x3 grid of blocks may have an insufficient number of permutations that may result in a number of collisions exceeding a threshold number of collisions.

또 다른 실시예에서, ACR 시스템(124) 또는 전자 장치(118)는 각각의 블록이 작은 수의 픽셀을 포함하는 것을 피하기 위해 완전 세분된 지문 레이아웃에 대해 사용될 블록의 개수를 선택할 수 있다. 예를 들어 ACR 시스템(124) 또는 전자 장치(118)는 지문으로부터 모서리 블록(434, 436, 438, 및/또는 440)을 제거하고, 블록(410-432)이 그레이스케일 블록이도록 재포맷팅될 수 있다. 예를 들어, 그레이스케일 블록 각각은 평균 값을 가질 수 있다. In another embodiment, the ACR system 124 or the electronic device 118 may select the number of blocks to be used for a fully subdivided fingerprint layout to avoid each block containing a small number of pixels. For example, ACR system 124 or electronic device 118 may be reformatted to remove edge blocks 434, 436, 438, and/or 440 from the fingerprint, and blocks 410-432 to be grayscale blocks. have. For example, each grayscale block may have an average value.

그레이스케일 블록의 평균 값은 그레이스케일 블록의 명도(luminosity) 또는 밝기 레벨을 기초로 증가되거나 감소될 수 있다. 예를 들어, 백색 그레이스케일 블록은 0의 평균 값을 가지고 흑색 그레이스케일 블록은 455의 평균 값을 가질 수 있다. 이 예시에서, 그레이스케일 블록의 평균 값은 컬러 블록보다 더 작은 데이터량을 이용할 수 있다. 그레이스케일 블록의 평균 값은 또한 지문화를 위한 더 많은 양의 명도 정보의 유지할 수 있다. 예를 들어 그레이스케일 블록에 대한 명도 정보가 프레임(400)의 컬러 지문을 위한 명도 정보와 실질적으로 유사할 수 있다. 작은 블록 영역(가령, 작은 수의 픽셀)을 갖는 블록에 대한 평균 그레이스케일 값의 사소한 변동이 지문을 변화시킬 수 있으며 참조 데이터베이스에 저장된 지문과의 매칭이 부정확해지게 할 수 있다. The average value of the grayscale block may be increased or decreased based on the luminosity or brightness level of the grayscale block. For example, a white grayscale block may have an average value of 0 and a black grayscale block may have an average value of 455. In this example, the average value of the grayscale block may use a smaller amount of data than the color block. The average value of the grayscale block can also retain a larger amount of lightness information for fingerprinting. For example, the brightness information for the grayscale block may be substantially similar to the brightness information for the color fingerprint of the frame 400 . Minor variations in average grayscale values for blocks with small block areas (eg, small number of pixels) can change the fingerprint and cause incorrect matching with the fingerprint stored in the reference database.

블록(410-432)과 연관된 평균 값이 순위화되거나 가중될 수 있다. 예를 들어, 블록(410-432)은 서수 순위(서수 ranking)를 이용해 순위화될 수 있다. 서수 순위화는 각각의 평균 값이 각자의 그레이스케일 평균 값의 서수 순위일 수 있는 평균 값의 시퀀스이다. 예를 들어 값의 시퀀스는 서수 순위가 1 2 4 3인 10, 20, 40, 30일 수 있다. 또 다른 예를 들면, 값의 시퀀스는 서수 순위가 1 2 4 3인 12 28 43 33일 수 있다. The average values associated with blocks 410 - 432 may be ranked or weighted. For example, blocks 410-432 may be ranked using an ordinal ranking. An ordinal ranking is a sequence of mean values, where each mean value may be an ordinal rank of a respective grayscale mean value. For example, the sequence of values may be 10, 20, 40, 30 with an ordinal rank of 1 2 4 3 . As another example, the sequence of values may be 12 28 43 33 with an ordinal rank of 1 2 4 3 .

또 다른 예를 들면, 연관된 블록(410-432)의 평균 값이 오름차순 또는 내림차순으로 순위화될 수 있다. 블록(410-432)과 연관된 12개의 그레이스케일 평균 s값의 순위가 시퀀스로, 가령, 16진수 문자열(hex string)로 연결(concatenate)될 수 있다. 16진수 문자열은 프레임(400)에 대한 지문 값일 수 있다. As another example, the average values of the associated blocks 410 - 432 may be ranked in ascending or descending order. The ranks of the twelve grayscale mean s values associated with blocks 410-432 may be concatenated into a sequence, such as a hex string. The hexadecimal string may be a fingerprint value for frame 400 .

도 5a는 하나의 실시예에 따라 프레임(500)의 상단 세분된 지문 레이아웃을 도시한다. 상단 세분된 지문 레이아웃은 복수의 블록(510-526)으로 세분된 프레임(500)을 포함할 수 있다. 상단 세분된 지문 레이아웃은 블록(510-524)을 갖는 상부 세그먼트(528) 및 블록(526)을 갖는 하부 세그먼트(530)를 포함할 수 있다. 5A illustrates a top subdivided fingerprint layout of a frame 500 according to one embodiment. The top subdivided fingerprint layout may include a frame 500 subdivided into a plurality of blocks 510 - 526 . The top subdivided fingerprint layout may include an upper segment 528 with blocks 510 - 524 and a lower segment 530 with blocks 526 .

예를 들어, 프레임(500)의 상부 세그먼트(528)는 8개의 세그먼트(510-524)를 갖는 2×4 격자로 세분될 수 있다. 블록(526)은 온스크린 디스플레이, 가령, 로고, 긴급 메시지, 또는 자막을 포함할 가능성이 더 높을 수 있다. 예를 들어, 전자 장치(118)가 ACR 시스템(124)으로부터 상단 세분된 지문 레이아웃을 이용해 프레임(500)의 지문을 생성하라는 요청을 수신할 때, 전자 장치(118)는 지문으로부터 블록(526)을 제거 또는 제외할 수 있다. For example, upper segment 528 of frame 500 may be subdivided into a 2x4 grid having eight segments 510 - 524 . Block 526 may more likely include an on-screen display, such as a logo, emergency message, or caption. For example, when the electronic device 118 receives a request from the ACR system 124 to generate a fingerprint of the frame 500 using the top subdivided fingerprint layout, the electronic device 118 may block 526 from the fingerprint. can be removed or excluded.

예를 들어, 복수의 블록(510-526)이 직사각형 또는 정사각형일 수 있다. 또 다른 예시에서, 블록(510-526)은 다각형, 원형, 타원형 등일 수 있다. 또 다른 예시에서, 복수의 블록(510-524 및 526) 각각은 대략 동일한 크기일 수 있다. 또 다른 예시에서, 복수의 블록(510-524 및 526) 중 하나 이상이 상이한 크기일 수 있다. 복수의 블록(510-524 및 526)의 개수 및 복수의 블록(510-524 및 526)의 형태 및 크기는 한정 사항이 아니며 변경될 수 있다. For example, the plurality of blocks 510 - 526 may be rectangular or square. In another example, blocks 510-526 may be polygonal, circular, elliptical, or the like. In another example, each of the plurality of blocks 510 - 524 and 526 may be approximately the same size. In another example, one or more of the plurality of blocks 510 - 524 and 526 may be of different sizes. The number of the plurality of blocks 510-524 and 526 and the shape and size of the plurality of blocks 510-524 and 526 are not limited and may be changed.

도 5b는 하나의 실시예에 따르는 블록(532-554)을 갖는 도 5a에 도시된 프레임(500)의 상단 세분된 지문 레이아웃을 도시한다. 달리 언급되지 않는 한, 동일한 도면 부호로 표시될 때 도 5b의 특징 중 일부는 도 5a의 특징 중 일부와 동일하거나 유사하다. 블록(532-554)은 도 5a의 블록(510-524)의 격자 분할과 비교할 때 수직으로 분할될 수 있다. 도 5b의 상단 세분된 지문 레이아웃은 그 밖의 다른 모든 면에서, 도 5a와 실질적으로 동일하다. 5B shows a top subdivided fingerprint layout of frame 500 shown in FIG. 5A with blocks 532-554 according to one embodiment. Unless otherwise noted, some of the features of FIG. 5B are the same as or similar to some of the features of FIG. 5A when indicated by the same reference numerals. Blocks 532-554 may be partitioned vertically as compared to the lattice partitioning of blocks 510-524 of FIG. 5A. The top subdivided fingerprint layout of FIG. 5B is substantially the same as FIG. 5A in all other respects.

도 5c는 하나의 실시예에 따라 블록(510-524)을 갖는 도 5a에 도시된 바와 같은 프레임(500)에 대한 하단 세분된 지문 레이아웃을 도시한다. 달리 언급되지 않는 한, 동일한 도면 부호로 표시될 때 도 5c의 특징 중 일부는 도 5a의 특징 중 일부와 동일하거나 유사하다. 하단 세분된 지문 레이아웃의 경우, 블록(510-524)이 도 5a의 상부 세그먼트(528) 상에 위치하는 블록(510-524)과 비교해서 하부 세그먼트(530)에 위치할 수 있다. 도 5c의 하단 세분된 지문 레이아웃은 그 밖의 다른 모든 면에서, 도 5a와 실질적으로 동일하다.5C shows a bottom subdivided fingerprint layout for frame 500 as shown in FIG. 5A with blocks 510-524 according to one embodiment. Unless otherwise noted, some of the features of FIG. 5C are the same as or similar to some of the features of FIG. 5A when indicated by the same reference numerals. For a bottom subdivided fingerprint layout, blocks 510 - 524 may be located in the lower segment 530 compared to blocks 510 - 524 located on the upper segment 528 of FIG. 5A . The bottom subdivided fingerprint layout of FIG. 5C is substantially identical to FIG. 5A in all other respects.

도 5d는 하나의 실시예에 따라 블록(532-554)을 갖는 도 5c에 도시된 프레임(500)에 대한 하단 세분된 지문 레이아웃을 도시한다. 달리 언급되지 않는 한, 동일한 도면 부호로 표시될 때 도 5d의 특징 중 일부는 도 5c의 특징 중 일부와 동일하거나 유사하다. 블록(532-554)은 도 5c의 블록(510-524)의 격자 분할에 비교해서 수직으로 분할될 수 있다. 블록(532-554)은 도 5b의 상부 세그먼트(528) 상에 위치하는 블록(510-524)에 비교해서 하부 세그먼트(530) 상에 위치할 수 있다. 도 5d의 하단 세분된 지문 레이아웃은 그 밖의 다른 모든 면에서, 도 5c와 실질적으로 동일하다.5D shows a bottom subdivided fingerprint layout for frame 500 shown in FIG. 5C with blocks 532-554 according to one embodiment. Unless otherwise noted, some of the features of FIG. 5D are the same as or similar to some of the features of FIG. 5C when denoted by the same reference numerals. Blocks 532-554 may be partitioned vertically compared to the lattice partitioning of blocks 510-524 of FIG. 5C. Blocks 532-554 may be located on lower segment 530 compared to blocks 510-524 located on upper segment 528 of FIG. 5B . The bottom subdivided fingerprint layout of FIG. 5D is substantially the same as FIG. 5C in all other respects.

도 6은 하나의 실시예에 따르는 미디어 콘텐츠를 식별하기 위한 방법(600)의 흐름도를 도시한다. 방법(600)은 하드웨어(가령, 회로, 전용 로직, 프로그램 가능 로직, 마이크로코드 등), 소프트웨어(가령, 프로세싱 장치에 의해 실행되는 명령), 펌웨어 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 적어도 부분적으로 수행될 수 있다. 방법(600)은 도 1의 콘텐츠 배포 네트워크(100)의 전체 또는 부분에 의해 수행될 수 있다. 예를 들어 방법(600)은 전자 장치(118 또는 120), ACR 시스템(124 또는 126), 또는 참조 데이터베이스(125 또는 127)(도 1)의 프로세싱 로직의 전체 또는 부분에 의해 수행될 수 있다. 달리 언급되지 않는 한, 동일한 도면 부호로 표시될 때 도 6a의 특징 중 일부는 도 1의 특징 중 일부와 동일하거나 유사하다.6 shows a flow diagram of a method 600 for identifying media content according to one embodiment. Method 600 may be at least in part by processing logic, including hardware (eg, circuitry, dedicated logic, programmable logic, microcode, etc.), software (eg, instructions executed by a processing device), firmware, or a combination thereof. can be performed with Method 600 may be performed by all or part of content distribution network 100 of FIG. 1 . For example, method 600 may be performed by all or part of the processing logic of electronic device 118 or 120 , ACR system 124 or 126 , or reference database 125 or 127 ( FIG. 1 ). Unless otherwise noted, some of the features of FIG. 6A are the same as or similar to some of the features of FIG. 1 when denoted by the same reference numerals.

도 6a를 참조하여, 방법(600)은 콘텐츠 사업자(102) 또는 지역 사업자(106)에 의해 ACR 시스템(124) 또는 전자 장치(118)로 미디어 콘텐츠를 방송하는 단계(블록(610))로 시작한다. 상기 방법은 ACR 시스템(124)이 미디어 콘텐츠를 수신할 수 있는 단계(블록(612))를 포함한다. 방법은 ACR 시스템(124)이 미디어 콘텐츠를 지문화하여 제1 지문 세트를 획득하는 단계(블록(614))를 포함할 수 있다. ACR 시스템(124)은 완전 세분된 지문 레이아웃을 이용해 제1 지문을 생성하고 상단 세분된 지문 레이아웃을 이용해 제2 지문을 생성하며 상단 세분된 지문 레이아웃을 이용해 제3 지문을 생성할 수 있다. 제1 지문 세트는 제1 지문, 제2 지문, 및 제3 지문을 포함할 수 있다. Referring to FIG. 6A , method 600 begins with broadcasting media content (block 610 ) by content operator 102 or local operator 106 to ACR system 124 or electronic device 118 . do. The method includes enabling the ACR system 124 to receive media content (block 612). The method may include the ACR system 124 fingerprinting the media content to obtain a first set of fingerprints (block 614 ). The ACR system 124 may generate a first fingerprint using the fully subdivided fingerprint layout, generate a second fingerprint using the upper subdivided fingerprint layout, and generate a third fingerprint using the upper subdivided fingerprint layout. The first fingerprint set may include a first fingerprint, a second fingerprint, and a third fingerprint.

방법은 ACR 시스템(124)이 제1 지문 세트 및 미디어 콘텐츠와 연관된 메타데이터를 참조 데이터베이스(125)에 저장하는 단계(블록(616))를 포함할 수 있다. 상기 방법은 전자 장치(118)가 미디어 콘텐츠를 수신하는 단계(블록(618))를 포함할 수 있다. 상기 방법은 전자 장치(118)가 미디어 콘텐츠를 지문화하여 제2 지문 세트를 획득하는 단계(블록(620))를 포함할 수 있다. 전자 장치(118)는 완전 세분된 지문 레이아웃을 이용해 제4 지문을 생성하고 상단 세분된 지문 레이아웃을 이용해 제5 지문을 생성하며 상단 세분된 지문 레이아웃을 이용해 제6 지문을 생성할 수 있다. 제2 지문 세트는 제4 지문, 제5 지문, 및 제6 지문을 포함할 수 있다. The method may include the ACR system 124 storing the first set of fingerprints and metadata associated with the media content in the reference database 125 (block 616 ). The method may include the electronic device 118 receiving the media content (block 618 ). The method may include the electronic device 118 fingerprinting the media content to obtain a second set of fingerprints (block 620). The electronic device 118 may generate a fourth fingerprint using the fully subdivided fingerprint layout, generate a fifth fingerprint using the upper subdivided fingerprint layout, and generate a sixth fingerprint using the upper subdivided fingerprint layout. The second fingerprint set may include a fourth fingerprint, a fifth fingerprint, and a sixth fingerprint.

방법은 전자 장치(118)가 제2 지문 세트와 미디어 콘텐츠와 연관된 메타데이터를 ACR 시스템(124)으로 전송하는 단계(블록(622))를 포함할 수 있다. 상기 메타데이터는 제1 지문 세트, 제2 지문 세트, 또는 미디어 콘텐츠와 연관된 스케줄 데이터를 포함할 수 있다. 상기 스케줄 데이터는 미디어 콘텐츠 또는 광고의 방영 시간의 스케줄을 포함할 수 있다. 또 다른 예를 들면, 스케줄 데이터는 제3자 서버 또는 데이터베이스로부터 획득된 데이터를 포함할 수 있다. 또 다른 예를 들면, 스케줄 데이터는 내부 스케줄링 시스템을 통해 방송 시스템으로부터 직접 획득된 데이터를 포함할 수 있다. 또 다른 실시예에서, 메타데이터는 전자 장치(118)에서 발생하는 이벤트, 가령, 전자 장치(118)가 입력 장치로부터, 미디어 콘텐츠의 일시 멈춤, 미디어 콘텐츠 빨리 감기, 미디어 콘텐츠 되감기 등의 명령어를 수신한 것을 포함할 수 있다. The method may include the electronic device 118 sending the second set of fingerprints and metadata associated with the media content to the ACR system 124 (block 622 ). The metadata may include a first fingerprint set, a second fingerprint set, or schedule data associated with media content. The schedule data may include a schedule of airing times of media content or advertisements. As another example, the schedule data may include data obtained from a third-party server or database. As another example, the schedule data may include data obtained directly from a broadcasting system through an internal scheduling system. In another embodiment, the metadata is an event that occurs on the electronic device 118 , such as when the electronic device 118 receives a command from an input device, such as pausing media content, fast forwarding media content, rewinding media content, etc. may include one.

방법은 ACR 시스템(124)이 앞서 기재된 바와 같이, 세분된 지문 레이아웃, 상단 세분된 지문 레이아웃, 하단 세분된 지문 레이아웃, 또는 이들의 조합을 이용해 전자 장치(118) 상에 디스플레이된 미디어 콘텐츠를 식별하는 단계(블록(624))를 포함할 수 있다. 하나의 실시예에서, ACR 시스템(124)은 상단 세분된 지문 레이아웃을 이용해 제2 지문의 블록(510-524)을 참조 데이터베이스(125) 내 모든 상단 세분된 지문 레이아웃 지문과 비교할 수 있다. 제5 지문의 블록(510-524)이 제2 지문의 대응하는 블록(510-524)과 매칭할 때, ACR 시스템(124)은 제2 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. 또 다른 실시예에서, ACR 시스템(124)은 세분된 지문 레이아웃을 유사하게 사용하여 제1 지문 내 블록(410-432)을 참조 데이터베이스(125) 내 모든 세분된 지문 레이아웃 지문과 비교할 수 있다. 제4 지문의 블록(410-432)이 제1 지문의 대응하는 블록(510-524)과 매칭될 때, ACR 시스템(124)은 제1 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. 또 다른 실시예에서, ACR 시스템(124)은 하단 세분된 지문 레이아웃을 유사하게 이용해 제3 지문의 블록(510-524)을 참조 데이터베이스(125) 내 모든 하단 세분된 지문 레이아웃 지문과 비교할 수 있다. 제6 지문의 블록(510-524)이 제3 지문의 대응하는 블록(510-524)과 매칭할 때, ACR 시스템(124)은 제3 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. The method includes the ACR system 124 identifying media content displayed on the electronic device 118 using a subdivided fingerprint layout, a top subdivided fingerprint layout, a bottom subdivided fingerprint layout, or a combination thereof, as described above. step (block 624). In one embodiment, the ACR system 124 may compare blocks 510 - 524 of the second fingerprint using the top subdivided fingerprint layout to all top subdivided fingerprint layout fingerprints in the reference database 125 . When blocks 510-524 of the fifth fingerprint match corresponding blocks 510-524 of the second fingerprint, the ACR system 124 may identify the media content associated with the second fingerprint. In another embodiment, the ACR system 124 may similarly use the subdivided fingerprint layout to compare blocks 410 - 432 in the first fingerprint with all subdivided fingerprint layout fingerprints in the reference database 125 . When blocks 410-432 of the fourth fingerprint match corresponding blocks 510-524 of the first fingerprint, the ACR system 124 may identify media content associated with the first fingerprint. In yet another embodiment, the ACR system 124 may similarly use the lower subdivided fingerprint layout to compare blocks 510 - 524 of the third fingerprint to all lower subdivided fingerprint layout fingerprints in the reference database 125 . When blocks 510-524 of the sixth fingerprint match corresponding blocks 510-524 of the third fingerprint, the ACR system 124 may identify the media content associated with the third fingerprint.

하나의 실시예에서, ACR 시스템(124)은 지문 매칭을 검색할 때 참조 데이터베이스(125)에서 각각의 유형의 지문 레이아웃을 순차적으로 질의할 수 있다. 예를 들어 ACR 시스템(124)은 세분된 지문 레이아웃을 갖는 참조 데이터베이스(125) 내 모든 지문에 대한 제1 질의를 수행하여 임의의 세분된 지문 레이아웃 지문이 제4 지문과 매칭될 수 있는지 여부를 결정할 수 있다. ACR 시스템(124)이 지문 매칭을 식별할 때, ACR 시스템(124)은 질의를 중단하고 매칭 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. ACR 시스템(124)이 지문 매칭을 식별하지 않는다면, ACR 시스템(124)은 상단 세분된 지문 레이아웃을 갖는 참조 데이터베이스(125) 내 모든 지문에 대한 제2 질의를 수행하여 임의의 상단 세분된 지문 레이아웃 지문이 제5 지문과 매칭되는지 여부를 결정할 수 있다. ACR 시스템(124)이 지문 매칭을 식별하면, ACR 시스템(124)은 질의를 중단하고 매칭 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. ACR 시스템(124)이 지문 매칭을 식별하지 않는다면, ACR 시스템(124)은 하단 세분된 지문 레이아웃을 갖는 참조 데이터베이스(125) 내 모든 지문에 대한 제3 질의를 수행하여 임의의 하단 세분된 지문 레이아웃 지문이 제6 지문에 매칭되는지 여부를 결정할 수 있다. ACR 시스템(124)이 지문 매칭을 식별할 때 ACR 시스템(124)은 질의를 중단하고 매칭 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. 제1 질의, 제2 질의, 및 제3 질의에서 사용되는 지문 레이아웃은 한정 사항이 아니며 지문 레이아웃은 어떠한 순서로도 사용될 수 있다. In one embodiment, the ACR system 124 may sequentially query each type of fingerprint layout from the reference database 125 when searching for a fingerprint match. For example, the ACR system 124 may perform a first query on all fingerprints in the reference database 125 having a subdivided fingerprint layout to determine whether any subdivided fingerprint layout fingerprint can match a fourth fingerprint. can When the ACR system 124 identifies a fingerprint match, the ACR system 124 may stop querying and identify the media content associated with the matching fingerprint. If the ACR system 124 does not identify a fingerprint match, the ACR system 124 performs a second query for all fingerprints in the reference database 125 with the top subdivided fingerprint layout to perform a second query for any top subdivided fingerprint layout fingerprint. It may be determined whether the fifth fingerprint is matched. If the ACR system 124 identifies a fingerprint match, the ACR system 124 may stop the query and identify the media content associated with the matching fingerprint. If the ACR system 124 does not identify a fingerprint match, the ACR system 124 performs a third query for all fingerprints in the reference database 125 with the bottom subdivided fingerprint layout fingerprint to any bottom subdivided fingerprint layout fingerprint. It may be determined whether the sixth fingerprint is matched. When the ACR system 124 identifies a fingerprint match, the ACR system 124 may stop the query and identify the media content associated with the matching fingerprint. The fingerprint layouts used in the first query, the second query, and the third query are not limited, and the fingerprint layouts may be used in any order.

또 다른 실시예에서, ACR 시스템(124)은 지문 매칭을 검색할 때 참조 데이터베이스(125)에서 각각의 유형의 지문 레이아웃에 대해 병렬 질의를 수행할 수 있다. 예를 들어, ACR 시스템(124)은 제1 질의, 제2 질의, 및 제3 질의를 동시에 수행할 수 있다. ACR 시스템(124)이 제1 질의, 제2 질의, 또는 제3 질의에 대한 지문 매칭을 식별하면, ACR 시스템은 질의를 중단하고 매칭 지문과 연관된 미디어 콘텐츠를 식별할 수 있다. In another embodiment, the ACR system 124 may perform parallel queries for each type of fingerprint layout in the reference database 125 when searching for a fingerprint match. For example, the ACR system 124 may simultaneously perform the first query, the second query, and the third query. Once the ACR system 124 identifies a fingerprint match for the first query, the second query, or the third query, the ACR system may stop the query and identify the media content associated with the matching fingerprint.

방법은 ACR 시스템(124)이 미디어 콘텐츠 상으로 중첩할 오버레이 콘텐츠를 식별하는 단계(블록(626))을 포함할 수 있다. 예를 들어, 오버레이 콘텐츠는 참조 데이터베이스(125)에 또는 ACR 시스템(124)에 연결된 메모리 장치에 저장될 수 있다. 오버레이 콘텐츠는 식별된 미디어 콘텐츠와 상관될 수 있다. 방법은 오버레이 콘텐츠를 전자 장치(118)로 전송하는 단계(블록(628))를 포함할 수 있다. 방법은 전자 장치(118)가 미디어 콘텐츠의 적어도 하나의 세그먼트 위에 오버레이 콘텐츠를 중첩하는 단계(630)를 포함할 수 있다. The method may include the ACR system 124 identifying overlay content to overlay onto the media content (block 626 ). For example, the overlay content may be stored in a reference database 125 or in a memory device coupled to the ACR system 124 . The overlay content may be correlated with the identified media content. The method may include transmitting the overlay content to the electronic device 118 (block 628 ). The method may include the electronic device 118 superimposing the overlay content over at least one segment of the media content ( 630 ).

도 6a의 ACR 시스템(124), 참조 데이터베이스(125), 및 전자 장치(118)의 사용은 한정 사항이 아니며 그 밖의 다른 구성요소(가령, 도 1의 구성요소)가 도 6의 하나 이상의 단계를 구현할 수 있다. 예를 들어, ACR 시스템(124)은 ACR 시스템(126)으로 치환될 수 있으며, 전자 장치(118)는 전자 장치(120)로 치환될 수 있고 참조 데이터베이스(125)는 참조 데이터베이스(127)로 치환될 수 있다. Use of the ACR system 124 , reference database 125 , and electronic device 118 of FIG. 6A is not limiting and other components (eg, components of FIG. 1 ) may perform one or more steps of FIG. 6 . can be implemented For example, the ACR system 124 may be replaced with the ACR system 126 , the electronic device 118 may be replaced with the electronic device 120 , and the reference database 125 may be replaced with the reference database 127 . can be

도 6b는 하나의 실시예에 따르는 상단 세분된 지문 레이아웃을 이용해 미디어 콘텐츠를 식별하기 위한 방법(640)의 흐름도이다. 방법(640)은 하드웨어(가령, 회로, 전용 로직, 프로그램 가능 로직, 마이크로코드 등), 소프트웨어(가령, 프로세싱 장치에 의해 실행되는 명령), 펌웨어 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 적어도 부분적으로 수행될 수 있다. 방법(640)은 도 1의 콘텐츠 배포 네트워크(100)의 전체 또는 부분에 의해 수행될 수 있다. 예를 들어 방법(640)은 전자 장치(118 또는 120), ACR 시스템(124 또는 126), 또는 참조 데이터베이스(125 또는 127)(도 1)의 프로세싱 로직의 전체 또는 부분에 의해 수행될 수 있다. 달리 언급되지 않는 한, 동일한 도면 부호로 표시될 때 도 6b의 특징 중 일부는 도 1의 특징 중 일부와 동일하거나 유사하다. 6B is a flow diagram of a method 640 for identifying media content using a top subdivided fingerprint layout according to one embodiment. Method 640 may be at least in part by processing logic, including hardware (eg, circuitry, dedicated logic, programmable logic, microcode, etc.), software (eg, instructions executed by a processing device), firmware, or a combination thereof. can be performed with Method 640 may be performed by all or part of content distribution network 100 of FIG. 1 . For example, method 640 may be performed by all or part of the processing logic of electronic device 118 or 120 , ACR system 124 or 126 , or reference database 125 or 127 ( FIG. 1 ). Unless otherwise noted, some of the features of FIG. 6B are the same as or similar to some of the features of FIG. 1 when denoted by the same reference numerals.

도 6b를 참조하면, 방법(640)은 ACR 시스템(124)이 상단 세분된 지문 레이아웃으로 제1 지문을 수신하는 단계(블록(642))로 시작한다. 상기 방법은 ACR 시스템(124)이 제1 지문과 매칭되는 제2 지문에 대해 참조 데이터베이스(125)에 질의하는 단계를 포함하며 여기서 제2 지문은 상단 세분된 레이아웃을 가진다(블록(644)). 방법은 또한 ACR 시스템(124)이 제2 지문에 상관된 오버레이 콘텐츠를 식별하는 단계(블록(646))를 포함할 수 있다. 예를 들어, 참조 데이터베이스(125)는 복수의 지문을 저장할 수 있다. 지문은 상이한 오버레이 콘텐츠와 상관될 수 있다. 오버레이 콘텐츠는 참조 데이터베이스(125) 또는 또 다른 메모리 장치에 저장될 수 있다. 방법은 ACR 시스템(124)이 전자 장치(118)로 오버레이 콘텐츠를 전송하는 단계(블록(648))를 포함할 수 있다. 제1 지문 및 제2 지문의 포맷은 한정 사항이 아니다. 제1 지문 및 제2 지문의 포맷은 완전 세분된 지문 레이아웃, 상단 세분된 지문 레이아웃, 하단 세분된 지문 레이아웃, 또는 그 밖의 다른 지문 레이아웃일 수 있다. Referring to FIG. 6B , method 640 begins with ACR system 124 receiving a first fingerprint in a top subdivided fingerprint layout (block 642 ). The method includes the ACR system 124 querying the reference database 125 for a second fingerprint that matches the first fingerprint, wherein the second fingerprint has a top subdivided layout (block 644). The method may also include the ACR system 124 identifying the overlay content correlated to the second fingerprint (block 646 ). For example, the reference database 125 may store a plurality of fingerprints. The fingerprint may be correlated with different overlay content. The overlay content may be stored in a reference database 125 or another memory device. The method may include the ACR system 124 transmitting the overlay content to the electronic device 118 (block 648 ). The format of the first fingerprint and the second fingerprint is not limited. The format of the first fingerprint and the second fingerprint may be a full subdivided fingerprint layout, a top subdivided fingerprint layout, a bottom subdivided fingerprint layout, or some other fingerprint layout.

도 7은 기계로 하여금 본 명세서에 기재된 방법들 중 하나 이상을 수행하게 하도록 하는 명령의 세트가 실행될 수 있는 컴퓨터 시스템(700)의 예시적 형태로 된 기계의 개략적인 표현을 도시한다. 대안적 실시예에서, 기계는 LAN, 인트라넷, 익스트라넷, 또는 인터넷의 타 기계에 연결(가령, 네트워킹)될 수 있다. 기계는 클라이언트-서버 네트워크 환경에서 서버 또는 전자 장치로서 또는 피어-투-피어(또는 분산) 네트워크 환경에서 피어 기계로서 동작할 수 있다. 기계는 개인 컴퓨터(PC), 태블릿 PC, 셋-톱 박스(STB), 개인 디지털 어시스턴트(PDA), 셀룰러 전화기, 스마트폰, 웹 어플라이언스, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 기계에 의해 수행될 동작을 특정하는 명령의 세트(순차 또는 그 밖의 다른 방식으로)를 실행할 수 있는 임의의 기계일 수 있다. 또한 단일 기계로 도시되었지만, 용어 "기계"는 또한 본 명세서의 방법 중 임의의 하나 이상을 수행하도록 명령의 세트(또는 복수의 세트)를 개별적으로 또는 공동으로 실행하는 기계의 임의의 모음을 포함하는 것으로도 여겨져야 한다. 7 shows a schematic representation of a machine in an exemplary form of a computer system 700 upon which a set of instructions may be executed to cause the machine to perform one or more of the methods described herein. In alternative embodiments, the machine may be connected (eg, networked) to another machine on a LAN, intranet, extranet, or Internet. A machine may operate as a server or electronic device in a client-server network environment or as a peer machine in a peer-to-peer (or distributed) network environment. A machine may be a personal computer (PC), tablet PC, set-top box (STB), personal digital assistant (PDA), cellular phone, smartphone, web appliance, server, network router, switch or bridge, or to be performed by the machine. It may be any machine capable of executing a set of instructions (sequentially or otherwise) specifying an operation. Also shown as a single machine, the term "machine" also includes any collection of machines that individually or jointly execute a set (or a plurality of sets) of instructions to perform any one or more of the methods herein. should also be considered

컴퓨터 시스템(700)은 도 1의 ACR 지문화 서버(105)에 대응할 수 있다. 컴퓨터 시스템(700)은 클라우드-기반 컴퓨터 시스템의 적어도 한 세그먼트에 대응할 수 있다. 컴퓨터 시스템(700)은 프로세싱 장치(702), 메인 메모리(704)(가령, 리드-온리 메모리(ROM), 플래시 메모리, 동적 랜덤 액세스 메모리(DRAM)(가령, 동기식 DRAM(SDRAM) 또는 DRAM(RDRAM) 등), 정적 메모리(706)(가령, 플래시 메모리, 정적 랜덤 액세스 메모리(SRAM) 등), 및 데이터 저장 장치(718)를 포함하며, 이들은 버스(730)를 통해 서로 통신한다. The computer system 700 may correspond to the ACR fingerprinting server 105 of FIG. 1 . Computer system 700 may correspond to at least one segment of a cloud-based computer system. Computer system 700 includes processing device 702 , main memory 704 (eg, read-only memory (ROM), flash memory, dynamic random access memory (DRAM) (eg, synchronous DRAM (SDRAM) or DRAM (RDRAM)). ), static memory 706 (eg, flash memory, static random access memory (SRAM), etc.), and data storage device 718 , which communicate with each other via bus 730 .

프로세싱 장치(702)는 하나 이상의 프로세싱 장치, 가령, 마이크로프로세서, 중앙 처리 장치 등을 나타낸다. 더 구체적으로 프로세싱 장치는 복잡 명령 세트 컴퓨팅(CISC) 마이크로프로세서, 간소 명령 세트 컴퓨터(RISC) 마이크로프로세서, VLIW(very long instruction word) 마이크로프로세서, 또는 그 밖의 다른 명령 세트를 구현하는 프로세서 또는 명령 세트의 조합을 구현하는 프로세서일 수 있다. 프로세싱 장치(702)는 하나 이상의 특수 목적 프로세싱 장치, 가령, 주문형 집적 회로(ASIC), 필드 프로그램 가능 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP), 네트워크 프로세서 등일 수 있다. 하나의 실시예에서, 프로세싱 장치(702)는 하나 이상의 프로세싱 코어를 포함할 수 있다. 프로세싱 장치(702)는 본 명세서에 기재된 동작들을 수행하기 위해 메인 메모리(704)에 저장된 미러링 로직의 명령(726)을 실행하도록 구성된다. Processing unit 702 represents one or more processing units, such as a microprocessor, central processing unit, and the like. More specifically, the processing device may include a complex instruction set computing (CISC) microprocessor, a simplified instruction set computer (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or any other processor or instruction set implementing the instruction set. It may be a processor that implements the combination. The processing device 702 may be one or more special purpose processing devices, such as application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs), network processors, and the like. In one embodiment, processing apparatus 702 may include one or more processing cores. The processing device 702 is configured to execute instructions 726 of mirroring logic stored in the main memory 704 to perform the operations described herein.

컴퓨터 시스템(700)은 네트워크(720)에 통신 가능하게 연결된 네트워크 인터페이스 장치(708)를 더 포함할 수 있다. 컴퓨터 시스템(700)은 또한 비디오 디스플레이 유닛(710)(가령, 액정 디스플레이(LCD) 또는 음극선관(CRT)), 문숫자 입력 장치(712)(가령, 키보드), 커서 제어 장치(714)(가령, 마우스), 신호 생성 장치(716)(가령, 스피커), 또는 그 밖의 다른 주변 장치를 포함할 수 있다. 또한, 컴퓨터 시스템(700)은 그래픽 처리 장치(722), 비디오 처리 장치(728), 및 오디오 처리 장치(732)를 포함할 수 있다. 또 다른 실시예에서, 컴퓨터 시스템(700)은 프로세싱 장치(702)와 작업하도록 설계되고 프로세싱 장치(702)와 외부 장치 간 통신을 제어하도록 설계된 집적 회로 또는 칩의 그룹을 지칭하는 칩셋(도시되지 않음)을 포함할 수 있다. 예를 들어, 칩셋은 프로세싱 장치(702)를 초고속 장치, 가령, 메인 메모리(704) 및 그래픽 제어기로 연결하고 프로세싱 장치(702)를 주변장치의 저속 주변장치 버스, 가령, USB, PCI 또는 ISA 버스로 연결하는 마더보드 상의 칩들의 세트일 수 있다. Computer system 700 may further include a network interface device 708 communicatively coupled to network 720 . Computer system 700 may also include a video display unit 710 (eg, a liquid crystal display (LCD) or cathode ray tube (CRT)), an alphanumeric input device 712 (eg, a keyboard), a cursor control device 714 (eg, , a mouse), a signal generating device 716 (eg, a speaker), or other peripheral device. Computer system 700 may also include a graphics processing unit 722 , a video processing unit 728 , and an audio processing unit 732 . In another embodiment, computer system 700 is a chipset (not shown), which refers to an integrated circuit or group of chips designed to work with processing device 702 and designed to control communications between processing device 702 and external devices. ) may be included. For example, the chipset connects the processing device 702 to a high-speed device, such as main memory 704 and a graphics controller, and connects the processing device 702 to the peripheral's low-speed peripheral bus, such as a USB, PCI or ISA bus. It can be a set of chips on the motherboard that connect to

데이터 저장 장치(718)는 본 명세서에 기재된 기능의 방법 중 임의의 하나 이상을 구현하는 저장된 명령(726)을 갖는 컴퓨터 판독형 저장 매체(725)를 포함할 수 있다. 명령(726)은 또한 컴퓨터 시스템(700)에 의해 실행되는 동안 메인 메모리(704) 및/또는 프로세싱 장치(702) 내에 완전히 또는 적어도 부분적으로 상주할 수 있고, 메인 메모리(704) 및 프로세싱 장치(702)는 또한 컴퓨터 판독형 저장 매체가 될 수 있다. Data storage device 718 may include computer-readable storage medium 725 having stored instructions 726 implementing any one or more of the methods of functionality described herein. Instructions 726 may also reside completely or at least partially within main memory 704 and/or processing unit 702 while being executed by computer system 700 , and may also reside in main memory 704 and processing unit 702 . ) may also be a computer-readable storage medium.

컴퓨터 판독형 저장 매체(725)는 로직 및/또는 애플리케이션을 호출하는 메소드를 포함하는 소프트웨어 라이브러리를 이용하는 명령(726)을 저장하는 데 사용될 수 있다. 컴퓨터 판독형 저장 매체(725)는 예시적 실시예에서 단일 매체로 나타나지만, 용어 "컴퓨터 판독형 저장 매체" 또는 "컴퓨터 판독형 매체"는 하나 이상의 명령 세트를 저장하는 단일 매체 또는 복수의 매체(가령, 중앙집중형 또는 분산된 데이터베이스 및/또는 연관된 캐시 및 서버)를 포함하는 것으로 이해되어야 한다. 또한 "컴퓨터 판독형 저장 매체"는 기계에 의해 실행되어 기계로 하여금 본 발명의 실시예의 방법 중 임의의 하나 이상을 수행하게 하는 명령의 세트를 저장, 인코딩, 또는 운송할 수 있는 임의의 매체를 포함하는 것으로 이해되어야 한다. 용어 "컴퓨터 판독형 저장 매체"는 솔리드-스테이트 메모리, 광학 및 자기 매체를 포함하는 것으로 이해될 것이나, 이에 한정되어서는 안 된다. The computer-readable storage medium 725 may be used to store instructions 726 using a software library including methods for calling logic and/or applications. Although computer readable storage medium 725 is referred to as a single medium in the illustrative embodiments, the term "computer readable storage medium" or "computer readable medium" refers to a single medium or a plurality of media (eg, , centralized or distributed databases and/or associated caches and servers). "Computer-readable storage medium" also includes any medium that can store, encode, or transport a set of instructions that are executed by a machine to cause the machine to perform any one or more of the methods of the embodiments of the present invention. should be understood as The term "computer-readable storage medium" will be understood to include, but is not limited to, solid-state memory, optical and magnetic media.

상기 기재로부터, 많은 세부사항이 제공되었다. 그러나 해당 분야의 통상의 기술자라면 실시예가 이들 특정 세부사항 없이도 실시될 수 있음을 알 것이다. 일부 경우, 공지된 구조 및 장치는 기재를 모호하게 하는 것을 피하기 위해 상세히보다는 블록도 형태로 도시되었다. From the above description, many details have been provided. However, it will be apparent to one of ordinary skill in the art that the embodiments may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form rather than in detail in order to avoid obscuring the description.

실시예가 특정 집적 회로, 가령, 컴퓨팅 플랫폼 또는 마이크로프로세서를 참조하여 기재될 수 있지만, 그 밖의 다른 실시예가 그 밖의 다른 유형의 집적 회로 및 로직 장치에 적용될 수 있다. 본 명세서에 기재된 실시예의 유사한 기법 및 설명이 그 밖의 다른 유형의 회로 또는 반도체 장치에 적용될 수 있다. 예를 들어 개시된 실시예는 데스크톱 컴퓨터 시스템 또는 Ultrabooks™에 한정되지 않으며 그 밖의 다른 장치, 가령, 핸드헬드 장치, 태블릿, 그 밖의 다른 씬 노트북, 시스템 온 칩(SOC) 장치 및 임베디드 응용예에서도 사용될 수 있다. 핸드헬드 장치의 일부 예시로는 셀룰러 폰, 인터넷 프로토콜 장치, 스마트폰, 디지털 카메라, 개인 디지털 어시스턴트(PDA), 및 핸드헬드 PC가 있다. 임베디드 응용예는 일반적으로 마이크로제어기, 디지털 신호 프로세서(DSP), 시스템 온 칩, 네트워크 컴퓨터(NetPC), 셋-톱 박스, 네트워크 허브, 광역 네트워크(WAN) 스위치, 또는 이하에서 설명되는 기능 및 동작을 수행할 수 있는 그 밖의 다른 임의의 시스템을 포함한다. Although embodiments may be described with reference to specific integrated circuits, such as computing platforms or microprocessors, other embodiments may be applied to other types of integrated circuits and logic devices. Similar techniques and descriptions of the embodiments described herein may be applied to other types of circuits or semiconductor devices. For example, the disclosed embodiments are not limited to desktop computer systems or Ultrabooks™, but may also be used in other devices such as handheld devices, tablets, other thin notebooks, system-on-a-chip (SOC) devices, and embedded applications. have. Some examples of handheld devices include cellular phones, Internet Protocol devices, smartphones, digital cameras, personal digital assistants (PDAs), and handheld PCs. Embedded applications typically include microcontrollers, digital signal processors (DSPs), system-on-chips, network computers (NetPCs), set-top boxes, network hubs, wide area network (WAN) switches, or the functions and operations described below. any other system capable of performing.

실시예가 본 명세서에서 프로세서 또는 프로세싱 장치를 참조하여 기재되었지만, 그 밖의 다른 실시예가 그 밖의 다른 유형의 집적 회로 및 로직 장치에 적용될 수 있다. 본 발명의 실시예의 유사한 기법 및 설명이 더 높은 파이프라인 처리율 및 개선된 성능으로부터 혜택을 받을 수 있는 그 밖의 다른 유형의 회로 또는 반도체 장치에 적용될 수 있다. 본 발명의 실시예의 설명은 데이터 조작을 수행하는 임의의 프로세서 또는 기계에 적용될 수 있다. 그러나 본 발명은 512 비트, 256 비트, 128 비트, 64 비트, 32 비트, 및/또는 16 비트 데이터 동작을 수행하는 프로세서 또는 기계에 한정되지 않으며 데이터의 조작 또는 관리가 수행되는 임의의 프로세서 및 기계에 적용될 수 있다. 덧붙여, 다음의 기재가 예시를 제공하며 이하의 도면이 설명 목적으로 다양한 예시를 보여준다. 그러나 이들 예시는 본 발명의 모든 가능한 구현의 전체 목록을 제공하려는 것이기보다는 본 발명의 실시예를 제공하려는 의도를 갖기 때문에 한정으로 해석되어서는 안 된다. Although embodiments have been described herein with reference to processors or processing devices, other embodiments may be applied to other types of integrated circuits and logic devices. Similar techniques and descriptions of embodiments of the present invention may be applied to other types of circuits or semiconductor devices that may benefit from higher pipeline throughput and improved performance. The description of embodiments of the present invention may apply to any processor or machine that performs data manipulation. However, the present invention is not limited to processors or machines performing 512-bit, 256-bit, 128-bit, 64-bit, 32-bit, and/or 16-bit data operations, but may be applied to any processor and machine in which manipulation or management of data is performed. can be applied. In addition, the following description provides examples and the following drawings show various examples for illustrative purposes. These examples, however, should not be construed as limiting as they are intended to provide embodiments of the invention rather than to provide an exhaustive list of all possible implementations of the invention.

상세한 설명의 일부 부분이 컴퓨터 메모리 내 데이터 비트에 대한 연산의 알고리즘 및 부호 표현으로 제공된다. 이들 알고리즘 기재 및 표현은 해당 분야의 통상의 기술자가 자신의 작업의 의미를 또 다른 통상의 기술자에게 가장 효과적으로 전달하기 위해 사용되는 수단이다. 알고리즘은 여기서 그리고 일반적으로, 원하는 결과를 이끄는 일관된 동작 시퀀스로 여겨진다. 동작은 물리량의 물리적 조작을 요구하는 것이다. 일반적으로 반드시는 아니더라도, 이들 양은 저장, 전달, 조합, 비교, 또는 그 밖의 다른 방식으로 조작될 수 있는 전기 또는 자기 신호의 형태를 취한다. 이들 신호를 비트, 값, 요소, 심볼, 문자, 용어, 숫자 등으로 지칭하는 것이 공통 사용의 이유로 때때로 편리함이 증명되었다. 본 명세서에 기재된 블록은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합일 수 있다. Some portions of the detailed description are presented as algorithms and symbolic representations of operations on bits of data in a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the art to most effectively convey the meaning of their work to another person skilled in the art. An algorithm is here and generally conceived as a coherent sequence of actions leading to a desired result. An operation is one that requires physical manipulation of a physical quantity. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, or otherwise manipulated. It has proven convenient at times, for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. The blocks described herein may be hardware, software, firmware, or a combination thereof.

그러나 이들 및 유사한 용어 모두 적절한 물리적 양과 연관되어야 하며 이들 양에 적용되는 편리한 라벨에 불과함을 알아야 한다. 앞서 설명에서 자명하듯이, 달리 특정하게 언급되지 않는 한, 기재 전체에서, "감지", "개시", "결정", "계속", "중단", "수신", "기록" 등의 용어를 사용한 기재는, 컴퓨팅 시스템의 레지스터 및 메모리 내 물리적(가령, 전자) 양으로 표현되는 데이터를 컴퓨팅 시스템 메모리 또는 레지스터 또는 그 밖의 다른 이러한 정보 저장 전송 또는 전자 장치 내 그 밖의 다른 데이터로 조작하고 변환하는 컴퓨팅 시스템 또는 유사한 전자 컴퓨팅 장치의 동작 및 프로세스를 지칭하는 것임을 알 것이다. It should be understood, however, that all of these and similar terms should be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. As is apparent from the preceding description, the terms "sensing", "initiating", "determining", "continue", "interrupt", "receive", "record", etc. are used throughout the description, unless specifically stated otherwise. The description used is computing that manipulates and transforms data expressed in physical (eg, electronic) quantities in registers and memories of the computing system into computing system memory or registers or other such information storage transfers or other data in electronic devices. It will be understood that reference to the operations and processes of a system or similar electronic computing device.

단어 "예" 또는 "예시적"은 본 명세서에서 예, 사례, 또는 예시로서 역할 함을 의미하도록 사용된다. "예" 또는 "예시"라고 본 명세서에서 기재된 임의의 양태 또는 설계는 타 양태 또는 설계보다 반드시 선호되거나 바람직하다고 해석되지는 않는다. 오히려 단어 "예" 또는 "예시"는 본 발명을 명확한 방식으로 제공하려는 의도를 가진다. 본 명세서에서 사용될 때, 용어 "또는"은 배타적 "또는"이 아니라 포괄적 "또는"을 의미한다. 즉, 달리 특정되거나 문맥으로부터 자명하지 않는 한, "X가 A 또는 B를 포함한다"는 임의의 자연적 포함 순열을 포함하는 것을 의도한다. 즉, X가 A를 포함, X가 B를 포함, 또는 X가 A와 B 모두를 포함하는 경우, "X가 A 또는 B를 포함한다"는 상기 사례 중 임의의 것 하에서 만족된다. 덧붙여, 부정관사("a" 및 "an")가 본 출원 및 청구항에서 사용될 때, 단수 형태라고 달리 특정되거나 문맥으로부터 자명하지 않는 한 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다. 덧붙여, 전체에서 용어 "실시예" 또는 "하나의 실시예" 또는 "구현예" 또는 "하나의 구현예"라는 용어의 사용은 그렇다고 기재되지 않는 한 동일한 실시예 또는 구현예를 의미하는 것이 아니다. 또한 용어 "제1", "제2", "제3", "제4" 등은 본 명세서에서 사용될 때 상이한 요소들을 구별하기 위한 라벨로서 의미하며, 반드시 이들 숫자 지정에 따른 순서적 의미를 갖는 것이 아닐 수 있다. The word “example” or “exemplary” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as "example" or "exemplary" is not necessarily to be construed as preferred or preferred over other aspects or designs. Rather, the words "example" or "example" are intended to present the invention in a clear manner. As used herein, the term “or” means an inclusive “or” rather than an exclusive “or.” That is, "X comprises A or B" is intended to include any natural inclusive permutation, unless otherwise specified or clear from context. That is, if X includes A, X includes B, or X includes both A and B, then “X includes A or B” is satisfied under any of the preceding instances. In addition, when the indefinite articles "a" and "an" are used in this application and in the claims, they should generally be construed to mean "one or more" unless otherwise specified in the singular form or clear from the context. In addition, the use of the terms "an embodiment" or "an embodiment" or "an embodiment" or "an embodiment" throughout does not mean the same embodiment or embodiment unless otherwise stated. Also, the terms "first", "second", "third", "fourth", etc., when used herein, are meant as labels for distinguishing different elements, and must have an ordinal meaning according to these numerical designations. it may not be

본 명세서에 기재된 실시예는 또한 본 명세서의 동작을 수행하기 위한 장치와도 관련될 수 있다. 이 장치는 특히 요구되는 목적을 위해 구성될 수 있거나 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화 또는 재구성되는 컴퓨터를 포함할 수 있다. 이러한 컴퓨터 프로그램은 비-일시적(non-transitory ) 컴퓨터 판독형 저장 매체, 비제한적 예를 들면, 임의의 유형의 디스크, 가령, 플로피 디스크, 광학 디스크, CD-ROM, 및 자기-광학 디스크, 리드-온리 메모리(ROM), 랜덤 액세스 메모리(RAM), EPROM, EEPROM, 자기 또는 광학 카드, 플래시 메모리 또는 전자 명령을 저장하기에 적합한 임의의 유형의 매체에 저장될 수 있다. 용어 "컴퓨터 판독형 저장 매체"는 하나 이상의 명령 세트를 저장하는 단일 매체 또는 복수의 매체(가령, 중앙집중형 또는 분산된 데이터베이스 및/또는 연관된 캐시 및 서버)를 포함하는 것으로 이해되어야 한다. 또한 "컴퓨터 판독형 매체"는 기계에 의해 실행되어 기계로 하여금 본 발명의 실시예의 방법 중 임의의 하나 이상을 수행하게 하는 명령의 세트를 저장, 인코딩, 또는 운송할 수 있는 임의의 매체를 포함하는 것으로 이해되어야 한다. 용어 "컴퓨터 판독형 저장 매체"는 솔리드-스테이트 메모리, 광학 매체, 자기 매체 및 기계에 의해 실행될 때 기계로 하여금 본 발명의 실시예의 방법들 중 임의의 하나 이상을 수행하게 하는 명령의 세트를 저장할 수 있는 임의의 매체를 포함하는 것으로 이해될 것이나, 이에 한정되어서는 안 된다.Embodiments described herein may also relate to apparatus for performing the operations herein. The apparatus may be specially constructed for the required purpose or it may comprise a computer selectively activated or reconfigured by a computer program stored on the computer. Such computer programs may include non-transitory computer readable storage media including, but not limited to, disks of any type, such as floppy disks, optical disks, CD-ROMs, and magneto-optical disks, read- It may be stored in only memory (ROM), random access memory (RAM), EPROM, EEPROM, magnetic or optical card, flash memory, or any tangible medium suitable for storing electronic instructions. The term “computer-readable storage medium” should be understood to include a single medium or a plurality of media (eg, centralized or distributed databases and/or associated caches and servers) that store one or more sets of instructions. "Computer-readable medium" also includes any medium that can store, encode, or transport a set of instructions that is executed by a machine to cause the machine to perform any one or more of the methods of embodiments of the present invention. should be understood as The term "computer-readable storage medium" is capable of storing solid-state memory, optical media, magnetic media and a set of instructions that, when executed by a machine, cause the machine to perform any one or more of the methods of the embodiments of the present invention. It will be understood to include, but not be limited to, any medium in which

본 명세서에서 제공되는 알고리즘 및 디스플레이는 임의의 특정 컴퓨터 또는 그 밖의 다른 장치와 본질적으로는 관련된 것은 아니다. 다양한 컴퓨팅 시스템이 본 명세서의 설명에 따르는 프로그램과 함께 사용될 수 있거나 동작을 수행하도록 더 특수화된 장치를 구성하는 것이 편리함이 증명될 수 있다. 다양한 이들 시스템을 위한 요구되는 구조는 이하의 기재로부터 자명할 것이다. 덧붙여, 본 발명의 실시예는 임의의 특정 프로그래밍 언어를 참조하여 기재되지 않는다. 다양한 프로그래밍 언어가 본 명세서에 기재된 실시예의 설명을 구현하는 데 사용될 수 있음을 알 것이다. The algorithms and displays provided herein are not inherently related to any particular computer or other device. Various computing systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the operations. The required structure for a variety of these systems will be apparent from the description below. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the description of the embodiments described herein.

상기의 기재는 몇몇 실시예의 우수한 이해를 제공하기 위해, 특정 세부사항, 가령, 특정 시스템, 구성요소, 방법 등의 예시를 제공한다. 그러나 해당 분야의 통상의 기술자라면 적어도 일부 실시예는 이들 특정 세수사항 없이 실시될 수 있음을 알 것이다. 또 다른 경우, 잘 알려진 구성요소 또는 방법은 본 발명의 실시예를 불필요하게 모호하게 하지 않도록 상세히 기재되지 않으며 단순한 블록도 포맷으로 제공된다. 따라서 앞서 제공된 특정 세부사항은 단지 예시에 불과하다. 특정 구현예는 이들 예시적 세부사항과 달라질 수 있으며 본 발명의 범위 내에 있는 것으로 여전히 간주될 수 있다. The foregoing description provides examples of specific details, such as specific systems, components, methods, and the like, in order to provide a good understanding of some embodiments. However, one of ordinary skill in the art will recognize that at least some embodiments may be practiced without these specific details. In other instances, well-known components or methods have not been described in detail in order not to unnecessarily obscure the embodiments of the present invention and are presented in simple block diagram format. Accordingly, the specific details provided above are by way of example only. Certain embodiments may vary from these exemplary details and are still considered to be within the scope of the present invention.

상기의 기재는 설명을 위한 것이며 한정을 위한 것이 아님이 이해될 것이다. 그 밖의 다른 많은 실시예가 본 기재를 읽고 이해한 후 해당 분양의 통상의 기술자에게 자명할 것이다. 따라서 본 실시예의 범위는 이하의 청구범위와 이러한 청구범위가 동반하는 균등예의 전체 범위를 참조하여 결정되어야 한다.It is to be understood that the foregoing description is for the purpose of explanation and not limitation. Many other embodiments will be apparent to those skilled in the art after reading and understanding this description. Accordingly, the scope of the present embodiment should be determined with reference to the following claims and the full scope of equivalents accompanying these claims.

Claims (19)

컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 제1 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능,
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능,
제3 위치들을 식별하는 제2 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제3 위치들에 각각 대응하는 제3 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제3 픽셀 값들 및 상기 제3 픽셀 값들에 포함되지 않은 적어도 하나의 추가 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제3 위치들 및 (a) 상기 제3 위치들에 포함되지 않고 (b) 적어도 하나의 추가 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제3 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제3 지문 파일을 생성하는 기능, 및
상기 제3 지문 파일이 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 기능을 포함하고,
상기 제1 지문 파일을 생성하는 기능은 상기 제3 지문 파일이 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 것에 응답하여 상기 제1 지문 파일을 생성하는 기능을 포함하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values respectively corresponding to second locations within the first video frame based on a first fingerprint layout identifying second locations, wherein the first pixel values include the second pixel values and the second location. at least one pixel value not included in the two pixel values, wherein the first locations correspond to the second locations and (a) not included in the second locations and (b) the at least one pixel value contains at least one position where -
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame;
a function of storing data indicating that the first video frame matches the second video frame;
the function of selecting third pixel values respectively corresponding to third positions in the first video frame based on a second fingerprint layout identifying third positions, the first pixel values being the third pixel values and the second at least one additional pixel value not included in the three pixel values, wherein the first positions are at the third positions and (a) not included in the third positions and (b) at least one additional pixel value. contains at least one corresponding position —
generating a third fingerprint file identifying the first video frame by processing the third pixel values; and
a function of determining that the third fingerprint file does not match any fingerprint file stored in a database;
and generating the first fingerprint file comprises generating the first fingerprint file in response to determining that the third fingerprint file does not match any fingerprint file stored in a database.
제1항에 있어서,
상기 제1 비디오 프레임에 액세스하는 기능은 미디어 장치로부터 상기 제1 비디오 프레임을 수신하는 기능을 포함하는, 컴퓨팅 시스템.
According to claim 1,
wherein the function of accessing the first video frame comprises the function of receiving the first video frame from a media device.
제2항에 있어서,
상기 기능들은,
미디어 콘텐츠와 상기 제1 비디오 프레임 사이의 연관에 근거하여 상기 미디어 콘텐츠를 선택하는 기능, 및
상기 미디어 콘텐츠를 재생하도록 명령을 상기 미디어 장치에 송신하는 기능을 더 포함하는, 컴퓨팅 시스템.
3. The method of claim 2,
The functions are
selecting the media content based on an association between the media content and the first video frame; and
and sending instructions to the media device to play the media content.
제1항에 있어서,
상기 제2 픽셀 값들은 밝기 값들을 포함하고, 상기 제2 픽셀 값들을 처리함으로써 상기 제1 지문 파일을 생성하는 기능은 상기 밝기 값들을 처리함으로써 상기 제1 지문 파일을 생성하는 기능을 포함하는, 컴퓨팅 시스템.
According to claim 1,
wherein the second pixel values include brightness values, and the function of generating the first fingerprint file by processing the second pixel values comprises the function of generating the first fingerprint file by processing the brightness values. system.
제4항에 있어서,
상기 밝기 값들을 처리하는 것은,
상기 밝기 값들의 제1 밝기 값이 상기 밝기 값들의 제2 밝기 값보다 크거나 작은지의 여부를 결정하는 것, 및
상기 결정에 근거하여 상기 제1 지문 파일을 생성하는 것을 포함하는, 컴퓨팅 시스템.
5. The method of claim 4,
Processing the brightness values is:
determining whether a first brightness value of the brightness values is greater than or less than a second brightness value of the brightness values; and
and generating the first fingerprint file based on the determination.
제1항에 있어서,
상기 기능들은, 상기 제1 지문 파일이 상기 제2 지문 파일과 매칭됨을 결정하기에 앞서, 상기 제2 지문 파일을 생성하는 기능을 더 포함하는, 컴퓨팅 시스템.
According to claim 1,
The functions further include generating the second fingerprint file prior to determining that the first fingerprint file matches the second fingerprint file.
제1항에 있어서,
상기 제1 비디오 프레임은 4개의 모서리 영역들을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 4개의 모서리 영역들 중 하나 이상을 포함하는, 컴퓨팅 시스템.
According to claim 1,
wherein the first video frame is a rectangular video frame comprising four corner regions, and wherein at least one position not included in the second positions comprises one or more of the four corner regions.
제1항에 있어서,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 하부 영역을 포함하는, 컴퓨팅 시스템.
According to claim 1,
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; and at least one location not included in the second locations includes the sub-region.
제1항에 있어서,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 상부 영역을 포함하는, 컴퓨팅 시스템.
According to claim 1,
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; and at least one location not included in the second locations comprises the upper region.
컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능, 및
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능을 포함하고,
상기 제2 픽셀 값들은 밝기 값들을 포함하고, 상기 제2 픽셀 값들을 처리함으로써 상기 제1 지문 파일을 생성하는 기능은 상기 밝기 값들을 처리함으로써 상기 제1 지문 파일을 생성하는 기능을 포함하고,
상기 밝기 값들을 처리하는 것은,
상기 밝기 값들의 제1 그룹에 대한 제1 평균 밝기 값 및 상기 밝기 값들의 제2 그룹에 대한 제2 평균 밝기 값을 계산하는 것,
상기 제1 평균 밝기 값이 상기 제2 평균 밝기 값보다 크거나 작은지의 여부를 결정하는 것, 및
상기 결정에 근거하여 상기 제1 지문 파일을 생성하는 것을 포함하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a fingerprint layout identifying second locations, wherein the first pixel values are the second pixel values and the second pixel at least one pixel value not included in the values, wherein the first locations are at least corresponding to the second locations and (a) not included in the second locations and (b) the at least one pixel value. contains one location ― ,
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame, and
a function of storing data indicating that the first video frame matches the second video frame;
the second pixel values include brightness values, and the function of generating the first fingerprint file by processing the second pixel values includes the function of generating the first fingerprint file by processing the brightness values;
Processing the brightness values is:
calculating a first average brightness value for the first group of brightness values and a second average brightness value for the second group of brightness values;
determining whether the first average brightness value is greater than or less than the second average brightness value; and
and generating the first fingerprint file based on the determination.
제10항에 있어서,
상기 제1 지문 파일은 상기 제1 평균 밝기 값이 상기 제2 평균 밝기 값보다 크거나 작은지의 여부를 지시하는 수들의 시퀀스를 포함하는, 컴퓨팅 시스템.
11. The method of claim 10,
wherein the first fingerprint file comprises a sequence of numbers indicating whether the first average brightness value is greater than or less than the second average brightness value.
컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능, 및
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능을 포함하고,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 하부 영역을 포함하고,
상기 제2 픽셀 값들은 상기 상부 영역의 제1 행의 부분들 및 상기 하부 영역과 상기 제1 행 사이인 상기 상부 영역의 제2 행의 부분들에 각각 대응하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a fingerprint layout identifying second locations, wherein the first pixel values are the second pixel values and the second pixel at least one pixel value not included in the values, wherein the first locations are at least corresponding to the second locations and (a) not included in the second locations and (b) the at least one pixel value. contains one location ― ,
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame, and
a function of storing data indicating that the first video frame matches the second video frame;
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; At least one location not included in the second locations includes the lower region,
and the second pixel values correspond to portions of the first row of the upper region and portions of the second row of the upper region that are between the lower region and the first row, respectively.
컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능, 및
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능을 포함하고,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 하부 영역을 포함하고,
상기 제2 픽셀 값들은 상기 직사각형 비디오 프레임의 상부 에지로부터 상기 하부 영역에 이르는 상부 영역의 일 행의 부분들에 각각 대응하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a fingerprint layout identifying second locations, wherein the first pixel values are the second pixel values and the second pixel at least one pixel value not included in the values, wherein the first locations are at least corresponding to the second locations and (a) not included in the second locations and (b) the at least one pixel value. contains one location ― ,
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame, and
a function of storing data indicating that the first video frame matches the second video frame;
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; At least one location not included in the second locations includes the lower region,
and the second pixel values each correspond to portions of a row of an upper region extending from an upper edge of the rectangular video frame to the lower region.
컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능, 및
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능을 포함하고,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상부 영역을 포함하고,
상기 제2 픽셀 값들은 상기 하부 영역의 제1 행의 부분들 및 상기 상부 영역과 제1 행 사이인 상기 하부 영역의 제2 행의 부분들에 각각 대응하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a fingerprint layout identifying second locations, wherein the first pixel values are the second pixel values and the second pixel at least one pixel value not included in the values, wherein the first locations are at least corresponding to the second locations and (a) not included in the second locations and (b) the at least one pixel value. contains one location ― ,
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame, and
a function of storing data indicating that the first video frame matches the second video frame;
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; At least one location not included in the second locations includes an upper region,
and the second pixel values correspond to portions of a first row of the lower region and portions of a second row of the lower region between the upper region and the first row, respectively.
컴퓨팅 시스템으로서,
하나 이상의 프로세서, 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 컴퓨터 판독형 매체를 포함하고,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능, 및
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능을 포함하고,
상기 제1 비디오 프레임은 (i) 직사각형 비디오 프레임의 좌측 에지로부터 상기 직사각형 비디오 프레임의 우측 에지에 이르는 상부 영역 및 (ii) 상기 좌측 에지로부터 상기 우측 에지에 이르는 하부 영역을 포함하는 직사각형 비디오 프레임이고, 상기 제2 위치들에 포함되지 않은 적어도 하나의 위치는 상기 상부 영역을 포함하고,
상기 제2 픽셀 값들은 상기 직사각형 비디오 프레임의 하부 에지로부터 상기 상부 영역에 이르는 상기 하부 영역의 일 행의 부분들에 각각 대응하는, 컴퓨팅 시스템.
A computing system comprising:
one or more processors, and
a computer-readable medium storing instructions that, when executed by the one or more processors, cause the computing system to perform functions;
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a fingerprint layout identifying second locations, wherein the first pixel values are the second pixel values and the second pixel at least one pixel value not included in the values, wherein the first locations are at least corresponding to the second locations and (a) not included in the second locations and (b) the at least one pixel value. contains one location ― ,
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame, and
a function of storing data indicating that the first video frame matches the second video frame;
wherein the first video frame is a rectangular video frame comprising (i) an upper region from a left edge of the rectangular video frame to a right edge of the rectangular video frame and (ii) a lower region from the left edge to the right edge; At least one location not included in the second locations includes the upper region,
and the second pixel values respectively correspond to portions of a row of the lower region extending from the lower edge of the rectangular video frame to the upper region.
방법으로서,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 단계,
제2 위치들을 식별하는 제1 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 단계 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 단계,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 단계,
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 단계,
제3 위치들을 식별하는 제2 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제3 위치들에 각각 대응하는 제3 픽셀 값들을 선택하는 단계 ― 상기 제1 픽셀 값들은 상기 제3 픽셀 값들 및 상기 제3 픽셀 값들에 포함되지 않은 적어도 하나의 추가 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제3 위치들 및 (a) 상기 제3 위치들에 포함되지 않고 (b) 상기 적어도 하나의 추가 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제3 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제3 지문 파일을 생성하는 단계, 및
상기 제3 지문 파일이 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 단계를 포함하고,
상기 제1 지문 파일을 생성하는 단계는 상기 제3 지문 파일이 상기 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 것에 응답하여 상기 제1 지문 파일을 생성하는 단계를 포함하는, 방법.
As a method,
accessing a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values each corresponding to second locations within the first video frame based on a first fingerprint layout identifying second locations, wherein the first pixel values include the second pixel values and the second location. at least one pixel value not included in the two pixel values, wherein the first locations correspond to the second locations and (a) not included in the second locations and (b) the at least one pixel value contains at least one position where -
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame;
storing data indicating that the first video frame matches the second video frame;
selecting third pixel values each corresponding to third positions in the first video frame based on a second fingerprint layout identifying third positions, the first pixel values being the third pixel values and the second pixel values at least one additional pixel value not included in the three pixel values, wherein the first positions are not included in the third positions and (a) the third positions and (b) the at least one additional pixel value contains at least one position corresponding to − ,
generating a third fingerprint file identifying the first video frame by processing the third pixel values; and
determining that the third fingerprint file does not match any fingerprint file stored in a database;
wherein generating the first fingerprint file comprises generating the first fingerprint file in response to determining that the third fingerprint file does not match any fingerprint file stored in the database.
제16항에 있어서,
상기 제2 픽셀 값들은 밝기 값들을 포함하고, 상기 제2 픽셀 값들을 처리함으로써 제1 지문 파일을 생성하는 단계는 상기 밝기 값들을 처리함으로써 상기 제1 지문 파일을 생성하는 단계를 포함하는, 방법.
17. The method of claim 16,
wherein the second pixel values include brightness values, and generating the first fingerprint file by processing the second pixel values comprises generating the first fingerprint file by processing the brightness values.
제17항에 있어서,
상기 밝기 값들을 처리하는 것은,
상기 밝기 값들의 제1 밝기 값이 상기 밝기 값들의 제2 밝기 값보다 크거나 작은지의 여부를 결정하는 것, 및
상기 결정에 근거하여 상기 제1 지문 파일을 생성하는 것을 포함하는, 방법.
18. The method of claim 17,
Processing the brightness values is:
determining whether a first brightness value of the brightness values is greater than or less than a second brightness value of the brightness values; and
and generating the first fingerprint file based on the determination.
컴퓨팅 시스템에 의한 실행 시, 상기 컴퓨팅 시스템으로 하여금 기능들을 행하게 하는 명령을 저장하는 비-일시적 컴퓨터 판독형 매체로서,
상기 기능들은,
제1 비디오 프레임 내의 제1 위치들에 각각 대응하는 제1 픽셀 값들을 포함하는 제1 비디오 프레임에 액세스하는 기능,
제2 위치들을 식별하는 제1 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제2 위치들에 각각 대응하는 제2 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제2 픽셀 값들 및 상기 제2 픽셀 값들에 포함되지 않은 적어도 하나의 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제2 위치들 및 (a) 상기 제2 위치들에 포함되지 않고 (b) 상기 적어도 하나의 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제2 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제1 지문 파일을 생성하는 기능,
상기 제1 지문 파일이 제2 비디오 프레임을 식별하는 제2 지문 파일과 매칭됨을 결정하는 기능,
상기 제1 비디오 프레임이 상기 제2 비디오 프레임과 매칭됨을 지시하는 데이터를 저장하는 기능,
제3 위치들을 식별하는 제2 지문 레이아웃에 근거하여 상기 제1 비디오 프레임 내의 제3 위치들에 각각 대응하는 제3 픽셀 값들을 선택하는 기능 ― 상기 제1 픽셀 값들은 상기 제3 픽셀 값들 및 상기 제3 픽셀 값들에 포함되지 않은 적어도 하나의 추가 픽셀 값을 포함하고, 상기 제1 위치들은 상기 제3 위치들 및 (a) 상기 제3 위치들에 포함되지 않고 (b) 상기 적어도 하나의 추가 픽셀 값에 대응하는 적어도 하나의 위치를 포함함 ― ,
상기 제3 픽셀 값들을 처리함으로써 상기 제1 비디오 프레임을 식별하는 제3 지문 파일을 생성하는 기능, 및
상기 제3 지문 파일이 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 기능을 포함하고,
상기 제1 지문 파일을 생성하는 기능은 상기 제3 지문 파일이 상기 데이터베이스에 저장된 어떠한 지문 파일과도 매칭되지 않음을 결정하는 것에 응답하여 상기 제1 지문 파일을 생성하는 기능을 포함하는, 비-일시적 컴퓨터 판독형 매체.
A non-transitory computer-readable medium storing instructions that, when executed by a computing system, cause the computing system to perform functions, comprising:
The functions are
the ability to access a first video frame comprising first pixel values each corresponding to first positions within the first video frame;
selecting second pixel values respectively corresponding to second locations within the first video frame based on a first fingerprint layout identifying second locations, wherein the first pixel values include the second pixel values and the second location. at least one pixel value not included in the two pixel values, wherein the first locations correspond to the second locations and (a) not included in the second locations and (b) the at least one pixel value contains at least one position where -
generating a first fingerprint file identifying the first video frame by processing the second pixel values;
determining that the first fingerprint file matches a second fingerprint file identifying a second video frame;
a function of storing data indicating that the first video frame matches the second video frame;
the function of selecting third pixel values respectively corresponding to third positions in the first video frame based on a second fingerprint layout identifying third positions, the first pixel values being the third pixel values and the second at least one additional pixel value not included in the three pixel values, wherein the first positions are not included in the third positions and (a) the third positions and (b) the at least one additional pixel value contains at least one position corresponding to − ,
generating a third fingerprint file identifying the first video frame by processing the third pixel values; and
a function of determining that the third fingerprint file does not match any fingerprint file stored in a database;
wherein the function of generating the first fingerprint file comprises generating the first fingerprint file in response to determining that the third fingerprint file does not match any fingerprint file stored in the database. computer readable media.
KR1020207031093A 2016-03-16 2017-03-09 Fingerprint layouts for content fingerprinting KR102263897B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662309366P 2016-03-16 2016-03-16
US15/243,658 2016-08-22
US15/243,658 US10063917B2 (en) 2016-03-16 2016-08-22 Fingerprint layouts for content fingerprinting
PCT/US2017/021690 WO2018038766A1 (en) 2016-03-16 2017-03-09 Fingerprint layouts for content fingerprinting
KR1020197007862A KR102173417B1 (en) 2016-03-16 2017-03-09 Fingerprint layout for content intellectual culture

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197007862A Division KR102173417B1 (en) 2016-03-16 2017-03-09 Fingerprint layout for content intellectual culture

Publications (2)

Publication Number Publication Date
KR20200126020A KR20200126020A (en) 2020-11-05
KR102263897B1 true KR102263897B1 (en) 2021-06-15

Family

ID=76432811

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207031093A KR102263897B1 (en) 2016-03-16 2017-03-09 Fingerprint layouts for content fingerprinting

Country Status (1)

Country Link
KR (1) KR102263897B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117584A1 (en) 2010-11-01 2012-05-10 Gordon Donald F Method and System for Presenting Additional Content at a Media System
US20140236988A1 (en) 2013-01-07 2014-08-21 Gracenote, Inc. Video fingerprinting

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117584A1 (en) 2010-11-01 2012-05-10 Gordon Donald F Method and System for Presenting Additional Content at a Media System
US20140236988A1 (en) 2013-01-07 2014-08-21 Gracenote, Inc. Video fingerprinting

Also Published As

Publication number Publication date
KR20200126020A (en) 2020-11-05

Similar Documents

Publication Publication Date Title
KR102258407B1 (en) Fingerprint layouts for content fingerprinting
US11064238B2 (en) Sequentially overlaying media content
KR101993913B1 (en) Frequency capping for media content
US9906831B2 (en) Fingerprinting media content using hashing
US20190387266A1 (en) Content Comparison Testing on Linear Media Streams
KR102263897B1 (en) Fingerprint layouts for content fingerprinting

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant