KR102523387B1 - 제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정 - Google Patents

제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정 Download PDF

Info

Publication number
KR102523387B1
KR102523387B1 KR1020217004197A KR20217004197A KR102523387B1 KR 102523387 B1 KR102523387 B1 KR 102523387B1 KR 1020217004197 A KR1020217004197 A KR 1020217004197A KR 20217004197 A KR20217004197 A KR 20217004197A KR 102523387 B1 KR102523387 B1 KR 102523387B1
Authority
KR
South Korea
Prior art keywords
media
playback
command
media content
media device
Prior art date
Application number
KR1020217004197A
Other languages
English (en)
Other versions
KR20210024186A (ko
Inventor
커트 알. 티엘렌
피터 던커
마르쿠스 케이. 크리머
스티븐 디. 셔프
샤샹크 머찬트
Original Assignee
로쿠, 인코퍼레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로쿠, 인코퍼레이티드 filed Critical 로쿠, 인코퍼레이티드
Publication of KR20210024186A publication Critical patent/KR20210024186A/ko
Application granted granted Critical
Publication of KR102523387B1 publication Critical patent/KR102523387B1/ko

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/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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • 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/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • 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/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
    • H04N21/4316Generation 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 for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • 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/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • H04N21/43635HDMI
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44231Monitoring of peripheral device or external card, e.g. to detect processing problems in a handheld device or the failure of an external recording device
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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/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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

일 태양에서, 예시적 방법은, (i) 재생 디바이스에 의해, 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것 ― 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ; (ii) 재생 디바이스에 의해, 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것; (iii) 재생 디바이스에 의해, 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정하는 것; (iv) 재생 디바이스에 의해, 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 것; 및 (v) 재생 디바이스에 의해, 재생-수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정하는 것을 포함한다.

Description

제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정
본 출원은 2019년 11월 6일에 출원된 미국 특허출원 16/182,201 및 2018년 7월 19일에 출원된 미국 가특허출원 62/700,410에 대한 우선권을 주장하고, 각각의 전체가 참조에 의해 본원에 포함된다.
본 개시에서, 달리 명시되지 않은 한 및/또는 특정 문맥이 달리 명확하게 지시하지 않는 한, 단수 표현(용어들 "a" 또는 "an")은 적어도 하나를 의미하고, 상기(용어 "the")는 적어도 하나를 의미한다.
본 개시에서, 용어 "연결 메커니즘"은 2개의 이상 컴포넌트들, 디바이스들, 시스템들, 또는 다른 엔티티들 사이의 통신을 용이하게 하는 메커니즘을 의미한다. 연결 메커니즘은 케이블 또는 시스템 버스와 같은 상대적으로 간단한 메커니즘, 또는 패킷 기반 통신 네트워크와 같은 상대적으로 복잡한 메커니즘(예를 들면 인터넷)일 수 있다. 일부 예에서 연결 메커니즘은 무형의 매체를 포함할 수 있다(예를 들면 연결이 무선인 경우).
본 개시에서, 용어 "컴퓨팅 시스템"은 적어도 하나의 컴퓨팅 디바이스를 포함하는 시스템을 의미한다. 일부 예에서 컴퓨팅 시스템은 하나 이상의 다른 컴퓨팅 시스템들을 포함할 수 있다.
향후, 미디어 콘텐츠의 광고들을 타겟 광고들로 대체하는 것이 점점 중요한 광고 방법이 될 것으로 예상된다. 예를 들어, DAI(dynamic advertisement insertion) 시스템에서, 콘텐츠 프로바이더는 라이브 또는 사전 녹화된 콘텐츠와 같은 미디어 콘텐츠의 시퀀스들을 중단하는 광고 시간들에 일반 광고들을 삽입할 수 있다. 각각의 광고 시간은 미리 정해진 순서로 배치된 광고들의 세트를 포함할 수 있다. 또한, 광고들 중 특정 광고는, 타겟 광고와 같은 대체 미디어 콘텐츠로 대체되도록 설계되거나 또는 동적으로 선택될 수 있다.
이 배치로, 특정 광고를 표시하기에 앞서, 재생 디바이스는 대체 미디어 콘텐츠를 얻어서, 특정 광고 대신에 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 수 있다. 예를 들면 대체될 특정 광고 직전에 재생 디바이스가 콘텐츠를 재생하거나 재생하려고 한다고 결정하는 것에 응답하여, 재생 디바이스는 데이터베이스로부터 타겟 광고를 검색해서, 적절한 시간에 특정 광고 대신에 디스플레이를 위한 타겟 광고를 제공할 수 있다.
일 태양에서, 예시적 방법이 개시된다. 방법은, (i) 재생 디바이스에 의해, 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것 ― 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ; (ii) 재생 디바이스에 의해, 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것; (iii) 재생 디바이스에 의해, 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정하는 것; (iv) 재생 디바이스에 의해, 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 것; 및 (v) 재생 디바이스에 의해, 재생-수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정하는 것을 포함한다.
다른 태양에서, 예시적 비일시적인 컴퓨터-판독 가능한 매체가 개시된다. 컴퓨터-판독 가능한 매체는, 프로세서에 의한 실행 시 동작들의 세트가 수행되게 하는 프로그램 명령들이 저장되고, 상기 동작들의 세트는, (i) 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것 ― 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ; (ii) 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것; (iii) 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정하는 것; (iv) 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 것; 및 (v) 재생-수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정하는 것을 포함한다.
다른 태양에서, 예시적 컴퓨팅 시스템이 개시된다. 컴퓨팅 시스템은 동작들의 세트를 행하기 위해 구성되고, 상기 동작들의 세트는, (i) 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것 ― 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ; (ii) 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것; (iii) 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정하는 것; (iv) 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 것; 및 (v) 재생-수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정하는 것을 포함한다.
도 1은 예시적 컴퓨팅 디바이스의 단순화된 블록도.
도 2는 예시적 DAI(dynamic advertisement insertion) 시스템의 단순화된 블록도.
도 3은, 예시적 실시형태에 따른 레퍼런스 핑거프린트 생성기, 쿼리 핑거프린트 생성기, 및 비디오 식별 시스템의 컴포넌트들을 나타내는 단순화된 블록도.
도 4는 예시적 실시형태에 따른 재생 디바이스 및 대체 콘텐츠 서버의 컴포넌트들을 나타내는 단순화된 블록도.
도 5는 예시적 실시형태에 따른 재생-수정 액션을 나타내는 디스플레이 도면.
도 6은 예시적 실시형태에 따른 재생-수정 액션을 나타내는 또 다른 디스플레이 도면.
도 7은 예시적 실시형태에 따른 재생 수정 액션을 나타내는 또 다른 디스플레이 도면.
도 8은 예시적 실시형태에 따른 재생 수정 액션을 나타내는 또 다른 디스플레이 도면.
도 9는 예시적 방법의 흐름도.
도 10은 도 9에 나타난 방법과 함께 수행될 수 있는 추가적 동작들을 나타내는 흐름도.
I. 개요
일부 미디어 시스템들에서, 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공하고, 이어서 재생 디바이스는 디스플레이를 위한 미디어 콘텐츠를 제공한다. 예를 들어, 디바이스는 셋톱 박스, 광학 디스크 플레이어, 스트리밍 미디어 플레이어, 비디오 게임 시스템 등과 같은 미디어 디바이스일 수 있고, 재생 디바이스는 텔레비전일 수 있다.
디바이스가 재생 디바이스에 미디어 콘텐츠를 제공하는 미디어 시스템들에서, 재생 디바이스의 시청자는 원격 제어를 사용하여 재생 디바이스에 미디어 콘텐츠를 제공하는 디바이스의 작동을 수정할 수 있다. 예를 들면 유저는 원격 제어를 사용하여 채널을 변경하거나, 메뉴(예를 들면 전자 프로그램 가이드)에 액세스하거나, 위젯에 액세스하거나, 미디어 콘텐츠의 재생 속도를 변경할 수 있다.
시청자가 원격 제어를 이용하여 미디어 디바이스를 제어할 경우, 미디어 디바이스는 재생 디바이스에 제공되는 미디어 콘텐츠 내에 오버레이를 삽입할 수 있다. 이 오버레이는 유저에게 피드백을 제공하거나 및/또는 다양한 정보를 표시할 수 있다. 오버레이는 디스플레이를 위해 재생 디바이스에 제공된 미디어 콘텐츠를 오버레이하는 그래픽의 형태를 취할 수 있다.
일부 DAI 시스템들에서, 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있고 시청자가 원격 제어를 사용하여 미디어 디바이스를 제어할 경우, 재생 디바이스는 이에 대응하여 응답하지 못 할 수 있다. 예를 들면 재생 디바이스가 미디어 파일들을 재생하도록 구성된 미디어 플레이어를 이용하여 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 경우, 재생 디바이스는 채널-변경 작동을 행하거나 또는 오버레이를 표시하는 것을 못 할 수 있다. 이는 시청자에게 열악하거나 실망스러운 유저-경험으로 이어질 수 있다. 예를 들면 시청자는 미디어 디바이스에게 원격 제어에 의해 전송된 명령을 수신했는지의 여부가 확실하지 않을 수 있다.
이 문제 및 잠재적으로 다른 문제를 해결하기 위한 방법 및 시스템들이 본원에 개시되어 있다. 예시적 방법에서, 재생 디바이스는 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별할 수 있다. 또한, 재생 디바이스는 디스플레이를 위한 대체 미디어 콘텐츠를 제공하고, 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안, 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정할 수 있다. 또한, 재생 디바이스는 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하고, 재생 수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정할 수 있다.
II. 예시적 아키텍처
A. 컴퓨팅 디바이스
도 1은 예시적 컴퓨팅 디바이스(100)의 단순화된 블록도이다. 컴퓨팅 디바이스(100)는 본 개시에 기재된 것과 같은 다양한 동작들 및/또는 기능들을 행할 수 있다. 컴퓨팅 디바이스(100)는, 프로세서(102), 데이터 스토리지 유닛(104), 통신 인터페이스(106), 및/또는 유저 인터페이스(108)와 같은 다양한 컴포넌트들을 포함할 수 있다. 이들 컴포넌트들은 연결 메커니즘(110)을 통해 서로(또는 또 다른 디바이스, 시스템, 또는 다른 엔티티에) 연결될 수 있다.
프로세서(102)는 범용 프로세서(예를 들면 마이크로프로세서) 및/또는 특수-목적 프로세서(예를 들면 디지털 신호 프로세서(DSP))를 포함할 수 있다.
데이터 스토리지 유닛(104)은 자기, 광학, 또는 플래시 스토리지와 같은 하나 이상의 휘발성, 비휘발성, 탈착 가능, 및/또는 탈착 불가능 스토리지 컴포넌트들을 포함하거나, 및/또는 프로세서(102)와 전체적으로 또는 부분적으로 통합될 수 있다. 또한, 데이터 스토리지 유닛(104)은, 프로세서(102)에 의한 실행 시, 컴퓨팅 디바이스(100)로 하여금 본 개시에 기재된 것과 같은 하나 이상의 동작들 및/또는 기능들을 행하게 하는 프로그램 명령들(예를 들면 컴파일된 또는 비컴파일된 프로그램 로직 및/또는 머신 코드)이 저장된 비일시적인 컴퓨터-판독 가능한 스토리지 매체의 형태를 취할 수 있다. 이와 같이, 컴퓨팅 디바이스(100)는 본 개시에 기재된 것과 같은 하나 이상의 동작들 및/또는 기능들을 행하도록 구성될 수 있다. 이러한 프로그램 명령들은 이산 소프트웨어 애플리케이션의 일부를 정의하거나 및/또는 이산 소프트웨어 애플리케이션의 일부일 수 있다. 일부 예에서 컴퓨팅 디바이스(100)는 통신 인터페이스(106) 및/또는 유저 인터페이스(108) 등으로부터 입력을 수신하는 것에 응답하여 프로그램 명령들을 실행할 수 있다. 데이터 스토리지 유닛(104)은 또한 본 개시에 기재된 해당 타입들과 같은 다른 타입의 데이터를 저장할 수 있다.
통신 인터페이스(106)는 컴퓨팅 디바이스(100)가 하나 이상의 프로토콜들에 따라 또 다른 엔티티에 연결하거나 및/또는 그와 통신하는 것을 가능하게 할 수 있다. 하나의 예에서, 통신 인터페이스(106)는 이더넷 인터페이스 또는 HD-SDI(high-definition serial-digital-interface)와 같은 유선 인터페이스일 수 있다. 또 다른 예에서, 통신 인터페이스(106)는 셀룰러 또는 WI-FI 인터페이스와 같은 무선 인터페이스일 수 있다. 본 개시에서, 연결은 직접 연결 또는 간접 연결일 수 있고, 후자는, 라우터, 스위처, 또는 다른 네트워크 디바이스와 같은 하나 이상의 엔티티들을 통과하거나 및/또는 횡단하는 연결일 수 있다. 마찬가지로, 본 개시에서, 전송은 직접 전송 또는 간접 전송일 수 있다.
유저 인터페이스(108)는 컴퓨팅 디바이스(100)와 컴퓨팅 디바이스(100)의 유저 사이의 상호작용을 용이하게 할 수 있다(적용 가능할 경우). 이와 같이, 유저 인터페이스(108)는 키보드, 키패드, 마우스, 터치 감응 패널, 마이크, 및/또는 카메라와 같은 입력 컴포넌트들, 및/또는 디스플레이 디바이스(예를 들면, 터치 감응 패널과 결합될 수 있음), 사운드 스피커, 및/또는 햅틱 피드백 시스템과 같은 출력 컴포넌트들을 포함할 수 있다. 보다 일반적으로, 유저 인터페이스(108)는, 컴퓨팅 디바이스(100)와 컴퓨팅 디바이스(100)의 유저 사이의 상호작용을 용이하게 하는 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수 있다.
컴퓨팅 디바이스(100)는, 워크스테이션 단말, 데스크톱 컴퓨터, 랩톱, 태블릿, 모바일 폰, 또는 텔레비전과 같은 다양한 형태를 취할 수 있다.
B. DAI(dynamic advertisement insertion) 시스템
도 2는 예시적 DAI 시스템(200)의 단순화된 블록도이다. DAI 시스템(200)은 미디어 콘텐츠(예를 들면 오디오 콘텐츠 및/또는 비디오 콘텐츠)의 전달 및/또는 프레젠테이션에 관련된 다양한 동작들 및/또는 기능들을 행할 수 있고, 컴퓨팅 시스템으로서 구현될 수 있다.
DAI 시스템(200)은, 와칭 스테이션(210), 콘텐츠 소스(220), 미디어 디바이스(230), 재생 디바이스(240), 비디오 식별 시스템(250), 및 대체 콘텐츠 서버(260)와 같은 다양한 컴포넌트들을 포함할 수 있고, 그 각각은 컴퓨팅 시스템으로서 구현될 수 있다. 와칭 스테이션(210)은, 브로드캐스터, 웹 서버, 또는 케이블 텔레비전(TV) 스테이션과 같은 콘텐츠 소스(220)로부터 비디오 및 다른 멀티미디어 콘텐츠를 수신할 수 있다. 예를 들면 콘텐츠 소스(220)는, TV 채널을 통해 와칭 스테이션(210)에 미디어를 스트리밍 또는 전송하는 TV 스테이션 또는 TV 네트워크와 같은 브로드캐스터, 및/또는 네트워크(270)를 통해 와칭 스테이션(210)에 미디어를 스트리밍 또는 전송하는 웹사이트와 같은 웹 서비스일 수 있다. 와칭 스테이션(210)은 콘텐츠 소스(220)로부터 수신된 비디오 콘텐츠의 레퍼런스 핑거프린트들을 생성하는 레퍼런스 핑거프린트 생성기(212)를 포함한다.
미디어 디바이스(230)는 콘텐츠 소스(220)로부터, 예를 들면 브로드캐스트 채널을 통해 및/또는 네트워크(270)를 통해 비디오 및 다른 멀티미디어 콘텐츠를 수신할 수 있다. 미디어 디바이스(230)는 재생 디바이스(240)에 콘텐츠를 송신하기 전에 수신된 콘텐츠를 수정할 수 있다. 미디어 디바이스(230)는 비디오 콘텐츠의 입력 스트림을 수신하고 입력 스트림을 처리함으로써 비디오 콘텐츠의 출력 스트림을 생성하도록 구성된 튜너를 포함할 수 있다. 미디어 디바이스(230)는, 미디어 디바이스(230)가, 다채널 비디오 프로그래밍 디스트리뷰터들에 의해 채용된 지상 브로드캐스트, 케이블, 및/또는 위성 브로드캐스트 네트워크와 같은 비디오 콘텐츠 배포 네트워크를 통해 비디오 콘텐츠에 액세스할 수 있도록, 튜너들, 디코더들, 및 다른 하드웨어 및/또는 소프트웨어를 구비한 디바이스일 수 있다. 추가적으로 또는 대안으로, 미디어 디바이스(230)는, 미디어 디바이스(230)가 인터넷 비디오 스트리밍 서비스들에 액세스하기 위해 디바이스들에 의해 채용된 와이드 에어리어 네트워크(예를 들면 인터넷)를 통해 비디오 콘텐츠에 액세스할 수 있도록, 네트워크 어댑터들, 디코더들, 및 다른 하드웨어 및/또는 소프트웨어를 구비한 디바이스일 수 있다. 미디어 디바이스(230)는, 유저에게 비디오 콘텐츠를 제시하도록, 재생 디바이스(240)의 디스플레이에 의해 사용 가능한 신호들(예를 들면 디지털 또는 아날로그 신호들)을 출력할 수 있다.
재생 디바이스(240)는 비디오 및/또는 다른 멀티미디어 콘텐츠의 스트림을 수신하고 제시할 수 있는 임의의 디바이스(예를 들면 TV, 랩톱 또는 다른 개인용 컴퓨터(PC), 태블릿 또는 다른 모바일 디바이스, 또는 게임 디바이스)이다. 재생 디바이스(240)는 비디오 콘텐츠의 처리된 스트림을 표시하도록 구성된 디스플레이 또는 다른 유저 인터페이스를 포함한다. 디스플레이는 평판 스크린, 플라스마 스크린, 발광 다이오드(LED) 스크린, CRT(cathode ray tube), LCD(liquid crystal display), 또는 프로젝터일 수 있다. 재생 디바이스(240)는 또한 오버-디-에어 브로드캐스트 채널을 통해 비디오를 수신하도록 구성된 안테나를 포함할 수 있다.
네트워크(270)는, 유선 네트워크 및/또는 무선 네트워크(예를 들면 모바일 네트워크)와 같은 디바이스들 사이의 통신을 가능하게 하는 임의의 네트워크일 수 있다. 네트워크(270)는, 사설 네트워크(예를 들면 케이블 TV 네트워크 또는 위성 TV 네트워크) 또는 공중 네트워크(예를 들면 오버-디-에어 브로드캐스트 채널들 또는 인터넷)를 구성하는 하나 이상의 부분들을 포함할 수 있다.
비디오 식별 시스템(250)은 네트워크(270)를 통해 와칭 스테이션(210) 및 재생 디바이스(240)와 통신할 수 있다. 비디오 식별 시스템은 재생 디바이스(240)의 쿼리 핑거프린트 생성기(242)에 의해 비디오 콘텐츠로부터 생성된 쿼리 핑거프린트를 수신할 수 있고, 비디오 콘텐츠를 식별하도록 와칭 스테이션(210)의 레퍼런스 핑거프린트 생성기(212)에 의해 생성되는 공지된 핑거프린트들의 인덱스를 쿼리할 수 있다. 쿼리 핑거프린트는 비디오 콘텐츠 내의 프레임 또는 프레임들의 블록의 핑거프린트일 수 있다. 비디오 식별 시스템은 쿼리 핑거프린트를 하나 이상의 레퍼런스 핑거프린트들과 매칭시킴으로써 비디오 콘텐츠를 식별할 수 있다.
비디오 콘텐츠를 식별하면, 비디오 식별 시스템(250)은 재생 디바이스(240)에 비디오 콘텐츠와 연관된 대체 미디어 콘텐츠(예를 들면 대체 프로그래밍 또는 대체 광고들)에 대한 식별자를 반환할 수 있다. 대체 미디어 콘텐츠는 대체 콘텐츠 서버(260)에 저장될 수 있다. 식별자를 이용하여, 재생 디바이스(240)는 대체 콘텐츠 서버(260)로부터의 대체 미디어 콘텐츠에 액세스하여 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 수 있다.
임의의 모듈들, 시스템들, 및/또는 생성기들이 도 2에 나타난 임의의 디바이스에 위치될 수 있다. 예를 들면 비디오 식별 시스템(250)은 쿼리 핑거프린트 생성기(242)를 포함할 수 있다. 이 배치로, 비디오 식별 시스템은 재생 디바이스(240)로부터 비디오 콘텐츠의 프레임들을 수신하고 비디오 콘텐츠의 프레임들을 이용하여 쿼리 핑거프린트들을 생성할 수 있다. 또 다른 예로서, 미디어 디바이스(230) 및 재생 디바이스(240)는 단일 디바이스 내로 함께 통합될 수 있다. 다른 변형들이 또한 가능하다.
도 3은 레퍼런스 핑거프린트 생성기(212), 쿼리 핑거프린트 생성기(242), 및 비디오 식별 시스템(250)의 컴포넌트들을 나타내는 단순화된 블록도이다. 도 3에 나타난 바와 같이, 쿼리 핑거프린트 생성기(242)는 패치 선택 모듈(244) 및 값 계산 모듈(246)을 포함하고, 이들은 (예를 들면 버스, 공유 메모리, 또는 스위치를 통해) 서로 통신하도록 구성된다. 또한, 비디오 식별 시스템(250)은 인덱스 모듈(252), 핑거프린트 매칭 모듈(254), 및 식별 모듈(256)을 포함하고, 모두 서로 통신하도록 구성된다. 또한, 레퍼런스 핑거프린트 생성기(212)는 패치 선택 모듈(214) 및 값 계산 모듈(216)을 포함하고, 이들은 서로 통신하도록 구성된다.
도 3에 나타난 모듈들의 하나 이상은, 하드웨어(예를 들면 머신의 프로세서, 필드-프로그래머블 게이트 어레이(FPGA), 또는 애플리케이션-특정 집적 회로(ASIC)), 또는 하드웨어와 소프트웨어의 조합을 이용하여 구현될 수 있다. 또한, 도 3에 나타난 임의의 2개의 이상의 모듈들은 단일 모듈로 결합될 수 있고, 단일 모듈에 대해 본원에 기술된 기능은 다수의 모듈들로 세분화될 수 있다.
상기 논의에 따라, 쿼리 핑거프린트 생성기(242) 및 레퍼런스 핑거프린트 생성기(212)는 비디오 콘텐츠의 하나 이상의 프레임들의 쿼리 핑거프린트를 생성하도록 구성될 수 있다. 예를 들면 쿼리 핑거프린트 생성기(242) 및 레퍼런스 핑거프린트 생성기(212)는 비디오 콘텐츠 내의 하나 이상의 프레임들의 패치들의 값들을 계산할 수 있다. 패치들은 프레임 내의 서로 다른 위치들에 위치될 수 있다. 쿼리 핑거프린트 생성기(242) 및 레퍼런스 핑거프린트 생성기(212)는 다수의 프레임들로부터의 쿼리 핑거프린트들을 결합해서 비디오 콘텐츠의 프레임들의 블록의 쿼리 핑거프린트를 생성하도록 구성될 수 있다.
예를 들어, 쿼리 핑거프린트 생성기(242)의 패치 선택 모듈(244)은, 비디오 콘텐츠 내의 프레임 또는 프레임들의 하나 이상의 영역들과 연관된 패치들과 같은 비디오 콘텐츠의 다수의 패치들을 선택하도록 구성될 수 있다. 마찬가지로, 레퍼런스 핑거프린트 생성기(212)의 패치 선택 모듈(214)은, 비디오 콘텐츠 내의 프레임들의 프레임의 하나 이상의 영역들과 연관된 패치들과 같은 비디오 콘텐츠의 다수의 패치들을 선택하도록 구성될 수 있다.
패치들은 프레임을 2x2 그리드, 4x3 그리드, 또는 4x4 그리드와 같은 그리드로 분할하고 그리드에 의거하여 패치들을 선택함으로써 정의될 수 있다. 예를 들면 20개의 패치들이 선택되고, 4개의 큰 패치들은 프레임의 사분면들에 대응하고, 4개의 작은 패치들은 각각의 사분면의 서브-사분면들에 대응할 수 있다(즉 총 16개의 작은 패치들). 일부 예에서 패치들은 겹칠 수 있다. 또한, 패치들은 누적적으로 프레임 전체보다는 작게 될 수 있다.
쿼리 핑거프린트 생성기(242)의 값 계산 모듈(246)은 예를 들면 집적 이미지 기술을 이용하여 선택된 다수의 패치들의 각각에 대한 값을 계산하도록 구성될 수 있다. 집적 이미지 기술은, 합산 에어리어 테이블 또는 픽셀들의 그룹의 값들의 합을 생성하는 다른 데이터 구조를 이용하여 값들을 계산할 수 있다. 마찬가지로, 레퍼런스 핑거프린트 생성기(212)의 값 계산 모듈(216)은, 예를 들면 집적 이미징 기술을 이용하여 선택된 다수의 매칭들의 각각에 대한 값을 계산하도록 구성될 수 있다.
일부 예들에서, 값 계산 모듈(246) 및 값 계산 모듈(216)은, 픽셀들의 그룹의 값들을 패치로 합하거나, 픽셀들의 그룹의 값들을 평균하거나, 또는 픽셀들의 그룹의 미디어값을 결정함으로써 패치에 대한 값을 계산할 수 있다. 추가적으로 또는 대안으로, 값 계산 모듈(246) 및 값 계산 모듈(216)은 픽셀들의 그룹의 값들 사이의 차이들을 계산함으로써 또는 픽셀들의 그룹의 값들의 선형 조합을 계산함으로써 패치에 대한 값을 계산할 수 있다.
비디오 식별 시스템(250)의 인덱스 모듈(252)은, 잠재적으로 쿼리 핑거프린트와 매칭되는 레퍼런스 핑거프린트들을 식별하도록, 와칭 스테이션(210) 또는 비디오 식별 시스템(250) 내에 저장된 공지된 핑거프린트들의 데이터베이스와 같은 비디오 콘텐츠의 공지된 레퍼런스 핑거프린트들의 데이터베이스에 쿼리하도록 구성될 수 있다. 인덱스 모듈(252)은 공지된 레퍼런스 핑거프린트들의 양자화된 패치값들의 인덱스를 쿼리하도록 구성될 수 있다.
비디오 식별 시스템의 핑거프린트 매칭 모듈(254)은 쿼리 핑거프린트를 하나 이상의 공지된 레퍼런스 핑거프린트들과 비교하고 쿼리 핑거프린트가 적어도 하나의 공지된 레퍼런스 핑거프린트와 매칭됨을 결정하도록 구성될 수 있다. 예를 들면 핑거프린트 매칭 모듈(254)은, 쿼리 핑거프린트와 공지된 레퍼런스 핑거프린트들 중 적어도 하나 사이의 유사도가 미리 정해진 임계값을 만족함을 결정함으로써, 쿼리 핑거프린트가 적어도 하나의 공지된 레퍼런스 핑거프린트와 매칭됨을 결정할 수 있다. 미리 정해진 임계값은 타니모토 거리 측정, 맨하탄 거리 측정, 또는 다른 거리 측정들과 연관될 수 있다. 추가적으로 또는 대안으로, 핑거프린트 매칭 모듈(254)은 유클리드, 코사인, KL-Divergence, 및/또는 이타쿠라 매칭 기술과 같은 다른 매칭 기술을 사용할 수 있다.
이에 따라, 식별 모듈(256)은, 쿼리 핑거프린트(들)가 적어도 하나의 레퍼런스 핑거프린트(들)와 매칭된다는 판정에 의거하여 비디오 콘텐츠를 식별하도록 구성될 수 있다. 예를 들면 식별 모듈(256)은 비디오 콘텐츠의 이름 또는 타이틀, 현재 재생 디바이스(240)에 의해 제시되고 있는 비디오 콘텐츠 내의 위치, 및/또는 비디오 콘텐츠를 제공하는 채널 또는 브로드캐스터를 식별할 수 있다.
도 4는 재생 디바이스(240) 및 대체 콘텐츠 서버(260)의 컴포넌트들을 나타내는 단순화된 블록도이다. 도 4에 나타난 바와 같이, 쿼리 핑거프린트 생성기(242)에 더하여, 재생 디바이스(240)는 미디어 디바이스 식별자 모듈(248) 및 재생-수정 모듈(249)을 포함한다. 또한, 대체 콘텐츠 서버(260)는 비디오 제공 모듈(262), 재생-수정 액션 제공 모듈(264) 및 템플릿 제공 모듈(266)을 포함한다.
미디어 디바이스 식별자 모듈(248)은 미디어 디바이스(230)를 식별할 수 있다. 예를 들면 미디어 디바이스 식별자 모듈(248)은 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스(230)로부터 수신된 제어 메시지를 이용하여 미디어 디바이스(230)를 식별할 수 있다. 제어 메시지는, 미디어 디바이스의 타입, 미디어 디바이스의 제조사, 및/또는 미디어 디바이스의 이름과 같은 미디어 디바이스의 아이덴티티를 지시하는 콘텐츠를 포함할 수 있다. 미디어 디바이스 식별자 모듈(248)은 제어 메시지(들)의 콘텐츠를 복수의 서로 다른 미디어 디바이스 중 하나와 상관 또는 매칭시킬 수 있다. 예를 들면 미디어 디바이스 식별자 모듈(248)은 (i) 제어 메시지들 또는 제어 메시지의 콘텐츠들을 (ii) 미디어 디바이스들에 맵핑하는 상관 데이터를 저장할 수 있다. 재생-수정 모듈(249)은 상관 데이터를 사용하여 수신된 제어 메시지를 미디어 디바이스에 맵핑할 수 있다. 또는, 미디어 디바이스 식별자 모듈(248)은 서버(예를 들면 대체 콘텐츠 서버(260))에 제어 메시지(들)의 콘텐츠를 송신할 수 있고, 서버는 제어 메시지(들)의 콘텐츠를 복수의 서로 다른 미디어 디바이스들 중 하나에 상관 또는 매칭할 수 있고, 서버는 미디어 디바이스 식별자 모듈(248)에 미디어 디바이스의 아이덴티티를 송신할 수 있다.
오디오 및/또는 비디오 인터페이스의 하나의 예는 HDMI(High-Definition Multimedia Interface) 인터페이스이다. HDMI 인터페이스로, 제어 메시지는 CEC(Consumer Electronics Control) 메시지를 포함할 수 있다. CEC는, 단일 원격 제어가 HDMI 인터페이스들을 통해 연결된 서로 다른 CEC-지원 디바이스들을 제어하는 것을 가능하게 하고, 개별 CEC-지원 디바이스들이 서로에게 명령 및 제어하는 것을 가능하게 하는 HDMI 특징이다. 예를 들면 CEC는, 광학 디스크 플레이어에 제공된 단일 유저 입력으로 재생 디바이스의 전원을 켜고 광학 디스크 플레이어로부터 미디어 콘텐츠를 수신하도록 재생 디바이스를 구성하는 것을 가능하게 한다.
미디어 디바이스 식별자 모듈(248) 및/또는 서버는 하나 이상의 CEC 메시지들의 콘텐츠를 분석하여 미디어 디바이스(230)의 아이덴티티를 추론할 수 있다. 이러한 콘텐츠의 하나의 예는 논리 어드레스이다. CEC 지원-디바이스들은 그들의 디바이스 타입들을 반영하는 논리 어드레스들을 갖는다. 구체적으로, 재생 디바이스에 연결된 각각의 CEC 지원-디바이스는 15개의 논리 어드레스들(어드레스들 1-15) 중 하나를 갖고, 각각의 논리 어드레스는 미디어 디바이스의 각각의 타입을 지시할 수 있다. CEC 지원-디바이스가 재생 디바이스에 연결될 경우, CEC 지원 디바이스는 논리 어드레스를 포함하는 하나 이상의 CEC 메시지들을 브로드캐스팅한다. 따라서, 미디어 디바이스(230)가 재생 디바이스(240)에 연결될 경우, 미디어 디바이스(230)는 재생 디바이스(240)에 그 논리 어드레스를 브로드캐스팅할 수 있다. 재생 디바이스(240)는 미디어 디바이스(230)를 명령 및 제어하는데 있어서의 사용을 위해 미디어 디바이스(230)에 대한 논리 어드레스의 레코드를 저장할 수 있다. 미디어 디바이스 식별자 모듈(248)은 저장된 레코드에 액세스하여 미디어 디바이스(230)에 대한 논리 어드레스를 결정할 수 있다.
CEC 메시지의 콘텐츠의 또 다른 예는 디바이스 벤더 ID이다. CEC-지원 디바이스의 디바이스 벤더 ID는 CEC-지원 디바이스의 제조사에 대응하는 코드이다. 미디어 디바이스 식별자 모듈(248)은 미디어 디바이스(230)에 요청을 송신함으로써 미디어 디바이스의 디바이스 벤더 ID를 결정할 수 있고, 미디어 디바이스(230)는 미디어 디바이스(230)의 디바이스 벤더 ID를 포함하는 메시지로 응답할 수 있다. 또는, 미디어 디바이스(230)가 재생 디바이스(240)에 연결될 경우(또는 또 다른 시간에), 미디어 디바이스(230)는 재생 디바이스(240)에 그 디바이스 벤더 ID를 송신할 수 있고, 재생 디바이스(240)는 데이터베이스에 디바이스 벤더 ID를 저장할 수 있다. 따라서 미디어 디바이스 식별자 모듈(248)은 데이터베이스로부터 디바이스 벤더 ID를 검색함으로써 디바이스 벤더 ID를 결정할 수 있다.
CEC 메시지의 콘텐츠의 또 다른 예는 온-스크린 디스플레이 이름이다. 각각의 CEC-지원 디바이스는 다른 CEC-지원 디바이스들이 시청자들에게 표시할 수 있는 온-스크린 디스플레이 이름을 가질 수 있다. 미디어 디바이스 식별자 모듈(248)은 미디어 디바이스(230)에 요청을 송신함으로써 미디어 디바이스(230)의 온-스크린 디스플레이 이름을 결정할 수 있고, 미디어 디바이스(230)는 미디어 디바이스(230)의 온-스크린 디스플레이 이름을 포함하는 메시지로 응답할 수 있다. 또는, 미디어 디바이스(230)가 재생 디바이스(240)에 연결될 경우(또는 또 다른 시간에), 미디어 디바이스(230)는 재생 디바이스에 그 온-스크린 디스플레이 이름을 송신할 수 있고, 재생 디바이스(240)는 데이터베이스에 온-스크린 디스플레이 이름을 저장할 수 있다. 따라서 미디어 디바이스 식별자 모듈(248)은 데이터베이스로부터 온-스크린 디스플레이 이름을 검색함으로써 온-스크린 디스플레이 이름을 결정할 수 있다. 일부 예들에서, 미디어 디바이스 식별자 모듈(248)은 미디어 디바이스(230)의 디바이스 벤더 ID 및 온-스크린 디스플레이 이름 모두를 이용하여 미디어 디바이스(230)의 아이덴티티를 결정할 수 있다.
추가적으로 또는 대안으로, 미디어 디바이스 식별자 모듈(248)은 핑거프린트를 이용하여 미디어 디바이스(230)를 식별할 수 있다. 예를 들면 쿼리 핑거프린트 생성기(242)는 미디어 디바이스(230)로부터 수신된 미디어 콘텐츠의 일부로부터 핑거프린트를 생성하고, 미디어 디바이스 식별자 모듈(248)에 핑거프린트를 제공할 수 있다. 핑거프린트는 재생 디바이스(240)가 미디어 디바이스(230)에 의해 재생 디바이스(240)에 제공된 전자 프로그램 가이드 또는 디스플레이 정보와 같은 오버레이를 표시할 때 생성될 수 있다. 미디어 디바이스 식별자 모듈(248)은 비디오 식별 시스템(250)과 같은 서버에 핑거프린트를 송신할 수 있고, 이어서 서버는 미디어 디바이스(230)의 아이덴티티의 지시로 미디어 디바이스 식별자 모듈(248)에 응답할 수 있다. 일부 경우에, 미디어 디바이스 식별자 모듈(248)은 서버에 하나 이상의 제어 메시지들의 콘텐츠와 함께 핑거프린트를 송신할 수 있고, 서버는 하나 이상의 제어 메시지들의 콘텐츠 및 핑거프린트를 함께 분석하여 미디어 디바이스(230)의 아이덴티티를 추론할 수 있다.
비디오 제공 모듈(262)은 대체 미디어 콘텐츠를 재생 디바이스(240)에 제공할 수 있다. 예를 들면 비디오 식별 시스템(250)은 재생 디바이스(240)가 디스플레이를 위해 제공하고 있는 비디오 콘텐츠를 식별할 수 있고, 식별된 비디오 콘텐츠에 의거하여, 비디오 제공 모듈(262)은 비디오 콘텐츠에 대응하는 대체 미디어 콘텐츠를 재생 디바이스(240)에 제공할 수 있다.
재생 디바이스(240)는 네트워크 통신 인터페이스를 통해 대체 미디어 콘텐츠를 수신할 수 있다. 예를 들면 대체 미디어 콘텐츠는 인터넷을 통해 재생 디바이스(240)에 스트리밍되어 재생 디바이스(240)의 로컬 캐시에 저장될 수 있다. 재생 디바이스(240)가 미디어 콘텐츠의 시퀀스 내에 대체 미디어 콘텐츠를 삽입하는 트리거를 수신할 경우, 재생 디바이스(240)는 로컬 캐시로부터 대체 미디어 콘텐츠를 검색하고, 미디어 파일들을 표시하도록 구성된 미디어 플레이어를 이용하여 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 수 있다.
일부 예에서 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것은, 미디어 디바이스(230)로부터 수신된 미디어 콘텐츠를 제공하는 것으로부터 재생 디바이스(240)의 데이터베이스에 저장된 대체 미디어 콘텐츠를 제공하는 것으로 스위칭하는 것을 수반할 수 있다. 재생 디바이스(240)는 프레임 버퍼를 포함하는 시스템 온 칩을 포함할 수 있다. 디스플레이를 위한 대체 미디어 콘텐츠를 제공하기 위해, 재생 디바이스(240)의 미디어 플레이어는 프레임 버퍼 내에 대체 미디어 콘텐츠를 삽입할 수 있다. 프레임 버퍼 내에 대체 미디어 콘텐츠를 삽입하기에 앞서, 시스템 온 칩은 프레임 버퍼 내에 미디어 디바이스(230)로부터 수신된 미디어 콘텐츠를 삽입했을 수 있다.
대체 미디어 콘텐츠는 일반 광고를 대체할 타겟 광고를 포함할 수 있다. 예를 들면 타겟 광고는 로컬 광고일 수 있고, 일반 광고는 전국 광고일 수 있다. 또 다른 예로서, 타겟 광고는 재생 디바이스(240)의 유저의 인구통계에 의거하여 선택되는 광고일 수 있다.
재생-수정 모듈(249)은 대체 미디어 콘텐츠의 재생을 수정하기 위한 다양한 동작들을 수행하도록 구성될 수 있다. 예를 들어, 재생 디바이스(240)가 미디어 플레이어를 이용하여 대체 미디어 콘텐츠를 표시하고 있는 동안, 재생-수정 모듈(249)이 원격 제어가 미디어 디바이스에 명령을 전송했음을 결정하고, 명령 및 미디어 디바이스(230)에 대응하는 재생-수정 액션을 결정하고, 재생 수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정할 수 있다.
재생 디바이스(240)는 적외선 수신기를 포함할 수 있다. 따라서, 원격 제어가 미디어 디바이스(230)에 명령을 전송했음을 결정하는 것의 동작은 재생 디바이스(240)가, 재생 디바이스(240)의 적외선 수신기를 통해 명령을 수신하는 것; 수신된 명령의 특성을 레퍼런스 명령의 특성과 매칭하는 것; 및 매칭에 의거하여, 원격 제어가 미디어 디바이스(230)에 명령을 전송했음을 결정하는 것을 수반할 수 있다. 다른 예에서, 재생 디바이스(240)는 적외선 기반 인터페이스와 관련하여 상술한 것과 유사한 동작들을 행할 수 있지만, RF 기반 인터페이스와 같은 또 다른 타입의 인터페이스와 관련하여 행할 수 있다.
추가적으로 또는 대안으로, 원격 제어는 Bluetooth 또는 WiFi와 같은 무선 통신 프로토콜에 따라 미디어 디바이스(230)에 무선으로 명령들을 전송할 수 있다. 무선 통신 프로토콜에 따라 원격 제어에 의해 전송된 명령들을 검출하도록, 재생 디바이스(240)는 Bluetooth, WiFi, 또는 RF 디코더와 같은 디코더가 구비될 수 있고, 재생 디바이스(240)는 디코더를 이용하여 무선 통신 트래픽을 모니터링함으로써 명령을 검출할 수 있다.
또한, 재생 디바이스(240)는 오디오 및/또는 비디오 인터페이스를 통해 재생 디바이스(240)와 미디어 디바이스(230) 사이에 통신된 제어 메시지들을 사용하여 원격 제어가 미디어 디바이스(230)에 명령을 전송했음을 검출하는데 도움을 줄 수 있다. 오디오 및/또는 비디오 인터페이스는 HDMI 인터페이스일 수 있고, 재생 디바이스(240)와 미디어 디바이스(230) 사이에 HDMI 인터페이스를 통해 통신된 제어 메시지의 콘텐츠는 원격 제어에 의해 전송된 명령을 포함할 수 있고, 명령은 미디어 디바이스(230)의 작동을 제어하기 위한 명령일 수 있다. 예를 들면 재생 디바이스(240)의 원격 제어는 재생 디바이스(240)에 미디어 디바이스(230)를 제어하기 위한 명령을 전송할 수 있고, 이어서 재생 디바이스(240)는 HDMI 인터페이스를 통해 미디어 디바이스(230)에 명령을 포워딩할 수 있다. 따라서, HDMI 인터페이스를 통해 재생 디바이스(240)와 미디어 디바이스(230) 사이에 통신되는 제어 메시지들은 또한 원격 제어가 명령을 전송했던 방식과 관계없이 재생 디바이스(240가 사용하여 원격 제어가 미디어 디바이스(230)에 명령을 전송했음을 결정할 수 있는 잠재적인 정보의 소스이다. 재생-수정 모듈(249)은 미디어 디바이스(230)에 대응하는 재생-수정 액션들의 세트 중에서 명령에 대응하는 재생-수정을 선택할 수 있다. 재생-수정 모듈은 (i) 미디어 디바이스에 제공된 명령들을 (ii) 재생-수정 액션들에 맵핑하는 상관 데이터를 저장할 수 있다. 재생-수정 모듈(249)은 상관 데이터를 사용하여 미디어 디바이스(230)에 대해 의도된 검출된 명령을 재생-수정 액션에 맵핑할 수 있다.
실제, 서로 다른 제조사들에 의해 제조된 서로 다른 미디어 디바이스들과 같은 서로 다른 미디어 디바이스들은 서로 다른 명령들을 수신하거나 및/또는 서로 다른 방식으로 해당 명령들에 응답하도록 구성될 수 있다. 재생-수정 액션 제공 모듈(264)은 서로 다른 각각의 미디어 디바이스들에 대한 상관 데이터를 저장할 수 있다. 요청 시, 또는 또 다른 시간에, 재생-수정 액션 제공 모듈(264)은, 재생 수정 모듈(249)에, 식별된 미디어 디바이스에 대응하는 상관 데이터를 제공할 수 있다.
재생-수정 액션은 미디어 디바이스(230)에 전송된 명령에 의존하여 다양한 형태를 취할 수 있다. 하나의 예로서, 미디어 디바이스(230)에 대한 명령은 채널-변경 작동을 수행하도록 구성된 명령일 수 있고, 재생-수정 액션은 대체 미디어 콘텐츠의 디스플레이를 중단시키는 것을 포함할 수 있다. 예를 들면 재생 디바이스(240)가 대체 미디어 콘텐츠를 제시하는 동안, 유저는 새로운 채널의 선택을 지시하는 명령을 제공할 수 있다. 재생 수정 모듈(249)은 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것으로부터 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제공하는 것으로 스위칭함으로써 이 명령에 응답할 수 있다.
미디어 플레이어를 이용하여 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것으로부터 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제공하는 것으로의 천이를 매끄럽게 하기 위해, 재생-수정 모듈은 대체 미디어 콘텐츠가 일정 시간(예를 들면 0.5초)에 걸쳐 검은 색으로 페이드되게 하고, 이어서 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠가 일정 시간(예를 들면 0.5초)에 걸쳐 검은 색으로부터 페이드인되게 할 수 있다. 이 방식으로, 재생 디바이스(240)가 디스플레이를 위한 대체 미디어 콘텐츠를 제공하고 있는 동안 유저가 채널을 변경할 경우, 재생 디바이스(240)는 대체 미디어 콘텐츠의 디스플레이를 중단하고, 디스플레이를 위해 미디어로부터 수신되는 다른 미디어 콘텐츠(즉 선택된 채널에 대응하는 미디어 콘텐츠)를 제공하는 것으로 천이되게 할 수 있다.
또 다른 예로서, 미디어 디바이스(230)에 대한 명령은 재생-속도 조정(예를 들면 대체 미디어 콘텐츠를 일시 중지, 되감기, 또는 빨리 감기에 대한 명령)일 수 있고, 재생-수정 액션은 대체 미디어 콘텐츠가 제공되는 재생 속도를 조정하는 것을 포함할 수 있다.
일부 예들에서, 미디어 디바이스(230)에 대한 명령은 미디어 디바이스(230)로 하여금 디스플레이를 위한 오버레이를 제공하게 하는 명령일 수 있다. 예를 들면 명령은 볼륨 조정(예를 들면 재생 디바이스(240)의 볼륨을 키우거나 줄이는 명령)일 수 있고, 오버레이는 볼륨-조정 그래픽일 수 있다. 또는, 명령은 재생-속도 조정(예를 들면 대체 미디어 콘텐츠를 일시 중지, 되감기, 또는 빨리 감기에 대한 명령)일 수 있고, 오버레이는 재생-속도 그래픽일 수 있다. 또한, 명령은 채널-선택 가이드에 액세스하기 위한 요청일 수 있고, 오버레이는 채널 선택 가이드일 수 있다. 마찬가지로, 명령은 또한 메뉴 또는 디스플레이 정보(예를 들면 시간, 날짜, 채널 식별자, 콘텐츠 식별자 등)에 액세스하기 위한 명령일 수 있고, 오버레이는 메뉴 그래픽 또는 디스플레이 정보 그래픽일 수 있다.
재생-수정 모듈(249)은 명령들을 오버레이들에 맵핑하는 상관 데이터를 저장할 수 있다. 상관 데이터(또는 재생 디바이스(240)에 의해 저장된 다른 데이터)는 또한 미디어 디바이스(230)가 오버레이들을 제공하도록 구성되는 재생 디바이스(240)의 디스플레이 내의 각각의 영역들을 지시할 수 있다.
원격 제어가 미디어 디바이스(230)가 디스플레이를 위한 오버레이를 제공하게 하도록 구성된 명령을 전송했다고 판정 시, 재생-수정 모듈(249)은 상관 데이터를 사용해서 명령을 오버레이에 맵핑할 수 있다. 재생 수정 모듈(249)은 또한 상관 데이터를 사용하여 미디어 디바이스(230)가 디스플레이를 위한 오버레이를 제공하도록 구성되는 재생 디바이스(240)의 디스플레이 내의 영역을 결정할 수 있다.
실제, 서로 다른 제조사들에 의해 제조된 서로 다른 재생 디바이스들과 같은 서로 다른 재생 디바이스들은 서로 다른 오버레이들을 제공하도록 구성될 수 있다. 마찬가지로, 단일 제조사에 의해 제조된 서로 다른 모델의 재생 디바이스들은 서로 다른 오버레이들을 제공하도록 구성될 수 있다. 템플릿 제공 모듈(266)은 서로 다른 각각의 미디어 디바이스들에 대한 상관 데이터를 저장할 수 있다. 요청 시, 또는 또 다른 시간에, 템플릿 제공 모듈(266)은 식별된 미디어 디바이스에 대응하는 상관 데이터를 재생 디바이스(240)에 제공할 수 있다. 예를 들면 재생-수정 모듈(249)은 템플릿 제공 모듈(266)에 요청을 송신하며, 요청은 미디어 디바이스의 식별자를 포함할 수 있고, 템플릿 제공 모듈(266)은 재생 수정 모듈(249)에 상관 데이터를 제공함으로써 요청에 응답할 수 있다.
오버레이에 대응하는 영역을 결정한 후에, 재생 수정 모듈(249)은 영역의 투명도를 수정할 수 있다. 재생 수정 모듈(249)은 영역에 불투명 마스크를 적용함으로써 영역의 투명도를 수정할 수 있다. 불투명 마스크는, 미디어 플레이어에 의해 제시되는 대체 미디어 콘텐츠의 투명도가 수정되어어야 하는 재생 디바이스(240)의 디스플레이의 부분들를 지시하는 데이터를 포함할 수 있다. 예를 들면 불투명 마스크는, 픽셀 단위로, 픽셀이 투명 또는 불투명이어야 하는지의 여부를 지시하는 1-비트 투명성 마스크를 포함할 수 있다.
재생 디바이스(240)가 미디어 플레이어를 이용하여 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 경우, 미디어 플레이어는, 미디어 디바이스로부터 수신되는 미디어 콘텐츠와 같이 디스플레이를 위해 다른 미디어 콘텐츠가 제공되는 또 다른 레이어의 위에 있는 미디어-플레이어 레이어에 대체 미디어 콘텐츠를 제시할 수 있다. 디스플레이 내의 영역에 불투명 마스크를 적용하는 것은, 동일한 영역 내이지만, 대체 미디어 콘텐츠의 아래인 레이어에 제공되는 콘텐츠가 가시화되는 것을 가능하게 할 수 있다. 환언하면, 영역에 불투명 마스크를 적용하는 것은 재생 디바이스(240)가 디스플레이를 위해 제공하는 그래픽들이 가시화되는 것을 가능하게 할 수 있다. 따라서, (i) 재생 디바이스(240)가 볼륨-조정 그래픽, 메뉴, 또는 재생-속도 그래픽과 같은 오버레이를 제공하고, (ii) 재생 수정 모듈(248)이 재생 디바이스(240)가 오버레이를 제공하는 영역에 불투명 마스크를 적용할 경우, 오버레이는 대체 미디어 콘텐츠를 통해 재생 디바이스의 디스플레이에 가시화될 수 있다. 유리하게, 디스플레이 전체가 아닌 디스플레이 내의 영역에 불투명 마스크를 적용하는 것은 대체 미디어의 제1 영역이 다른 미디어 콘텐츠 위에 표시되어 가리는 것을 가능하게 하는 동시에, 명령에 대응하는 그래픽이 대체 미디어 콘텐츠의 제2 영역을 통해 가시화되는 것을 허용한다.
또한, 미디어 디바이스(230)에 대한 명령은 또한 메뉴(예를 들면 채널-선택 가이드)에 액세스하기 위한 명령일 수 있고, 재생-수정 액션은 재생 디바이스(240)의 디스플레이의 제1 영역 내에 메뉴를 제공하는 것 및 디스플레이의 제2 영역 내에 대체 미디어 콘텐츠를 제공하는 것을 포함할 수 있다. 이 타입의 명령으로, 재생-수정 모듈(249)은 명령에 대응하는 템플릿을 결정함으로써 제1 영역 및 제2 영역을 결정할 수 있다. 템플릿은 제1 영역 및 제2 영역을 지정할 수 있다. 예를 들면 템플릿은 제1 영역 및 제2 영역의 바운더리 픽셀들(예를 들면 코너 픽셀들)을 식별할 수 있다.
일부 예에서 재생-수정 모듈(249)은 또한 제2 영역의 크기에 의거하여 대체 미디어 콘텐츠의 크기를 줄일 수 있다. 대체 미디어 콘텐츠의 크기를 줄이는 것은 재생 디바이스(240)가 메뉴 내의 PIP(picture-in-picture) 디스플레이로서 대체 미디어 콘텐츠를 표시하는 것을 가능하게 할 수 있다.
III. 예시적 작동들
도 5는 재생-수정 액션을 나타내는 디스플레이 도면(500)이다. 도 5에 나타난 바와 같이, 디스플레이 도면(500)은 제1 디스플레이 영역(510) 및 제2 디스플레이 영역(520)을 포함한다. 재생 디바이스(240)가 제1 디스플레이 영역(510) 내에 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 동안, 재생 디바이스(240)는 미디어 디바이스(230)에 전송된 볼륨-조정 명령을 검출할 수 있다. 명령을 검출하는 것에 의거하여, 재생 수정 모듈(249)은 제2 디스플레이 영역(520)에 불투명 마스크를 적용할 수 있다. 제2 디스플레이 영역(520)에 불투명 마스크를 적용하는 것은 미디어-플레이어 레이어를 통해 미디어-플레이어 레이어 아래의 레이어에 제공된 볼륨-조정 그래픽이 가시화되는 것을 가능하게 한다. 따라서, 미디어 디바이스(230)가 디스플레이를 위해 재생 디바이스(240)에 볼륨 조정 그래픽을 제공할 경우, 볼륨-조정 그래픽은 제2 디스플레이 영역(520) 내에 가시화되며, 재생 디바이스(240)가 대신에 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제시했다면 볼륨-조정 그래픽이 나타났을 방식을 모방한다.
도 6은 재생 수정 액션을 나타내는 또 다른 디스플레이 도면(600)이다. 도 6에 나타난 바와 같이, 디스플레이 도면(600)은 제1 디스플레이 영역(610) 및 제2 디스플레이 영역(620)을 포함한다. 재생 디바이스(240)가 제1 디스플레이 영역(610) 내에 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 동안, 재생 디바이스(240)는 미디어 디바이스(230)에 전송된 재생 속도 조정 명령을 검출할 수 있다. 명령을 검출하는 것에 의거하여, 재생-수정 모듈(249)은 제2 디스플레이 영역(620)에 불투명 마스크를 적용할 수 있다. 제2 디스플레이 영역(620)에 불투명 마스크를 적용하는 것은 미디어-플레이어 레이어 아래의 레이어에 제공된 재생-속도 그래픽이 미디어-플레이어 레이어를 통해 가시화되는 것을 가능하게 한다. 따라서, 미디어 디바이스(230)가 디스플레이를 위해 재생 디바이스(240)에 재생 속도 그래픽을 제공할 경우, 재생-속도 그래픽이 제2 디스플레이 영역(620) 내에 가시화되며, 재생 디바이스(240)가 대신에 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제시했다면, 재생-속도 그래픽이 나타났을 방식을 모방한다.
도 7은 재생 수정 액션을 나타내는 또 다른 디스플레이 도면(700)이다. 도 7에 나타난 바와 같이, 디스플레이 도면(700)은 제1 디스플레이 영역(710) 및 제2 디스플레이 영역(720)을 포함한다. 재생 디바이스(240)가 제1 디스플레이 영역(710) 내에 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 동안, 재생 디바이스(240)는 미디어 디바이스(230)에 전송되는 채널-선택 가이드에 액세스하기 위한 명령을 검출할 수 있다. 명령을 검출하는 것에 의거하여, 재생-수정 모듈(249)은 불투명 마스크를 제2 디스플레이 영역(720)에 적용할 수 있다. 제2 디스플레이 영역(720)에 불투명 마스크를 적용하는 것은 미디어-플레이어 레이어 아래의 레이어에 제공된 채널-선택 가이드가 미디어-플레이어 레이어를 통해 가시화되는 것을 가능하게 한다. 따라서, 미디어 디바이스(230)가 디스플레이를 위해 재생 디바이스(240)에 채널 선택 가이드를 제공할 경우, 채널-선택 가이드가 제2 디스플레이 영역(720) 내에 가시화되며, 재생 디바이스(240)가 대신에 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제시했다면 채널-선택 가이드가 나타날 방식을 모방한다.
도 8은 재생 수정 액션을 나타내는 또 다른 디스플레이 도면(800)이다. 도 8에 나타난 바와 같이, 디스플레이 도면(700)은 제1 디스플레이 영역(810) 및 제2 디스플레이 영역(820)을 포함한다. 재생 디바이스(240)가 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 동안, 재생 디바이스(240)는 미디어 디바이스(230)에 전송되는 메뉴에 액세스하기 위한 명령을 검출할 수 있다. 명령을 검출하는 것에 의거하여, 재생-수정 모듈(249)은 대체 미디어 콘텐츠의 크기를 줄이고 제1 디스플레이 영역(810) 내에 디스플레이를 위한 대체 미디어 콘텐츠를 제공할 수 있다. 따라서, 미디어 디바이스(230)가 디스플레이를 위해 재생 디바이스(240)에 메뉴를 제공할 경우, 메뉴가 제2 디스플레이 영역(820) 내에 가시화되며, 재생 디바이스(240)가 대신에 미디어 디바이스(230)로부터 수신되는 미디어 콘텐츠를 제시했다면 메뉴가 나타날 방식을 모방한다.
도 9는 예시적 방법(900)의 흐름도이다. 방법(900)은 재생 디바이스(240)와 같은 재생 디바이스에 의해, 보다 일반적으로는, 컴퓨팅 시스템에 의해 수행될 수 있다. 블록 902에서, 방법(900)은, 재생 디바이스에 의해, 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것을 포함하고, 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공한다. 블록 904에서, 방법(900)은 재생 디바이스에 의해, 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것을 포함한다. 블록 906에서, 방법(900)은, 재생 디바이스에 의해, 재생 디바이스가 대체 미디어 콘텐츠를 표시하고 있는 동안 원격 제어가 식별된 미디어 디바이스에 명령을 전송했음을 결정하는 것을 포함한다. 블록 908에서, 방법(900)은, 재생 디바이스에 의해, 명령 및 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 것을 포함한다. 또한 블록 910에서, 방법(900)은, 재생 디바이스에 의해, 재생-수정 액션에 따라 대체 미디어 콘텐츠의 재생을 수정하는 것을 포함한다.
도 10은 도 9에 나타난 방법과 함께 수행될 수 있는 추가적 동작들을 나타내는 흐름도이다. 예를 들면 블록들 1002 및 1004는 도 9의 블록 902의 일부로서 수행될 수 있다. 또한, 블록들 1006 및 1008은 도 9의 블록 908의 일부로서 수행될 수 있다. 블록 1002는 미디어 디바이스로부터 수신된 미디어 콘텐츠의 일부로부터 핑거프린트를 생성하는 것을 수반한다. 블록 1004는 핑거프린트 및 제어 메시지에 의거하여 미디어 디바이스를 식별하는 것을 수반한다. 블록 1006은 식별된 미디어 디바이스에 대응하는 재생 수정 액션들의 세트를 얻는 것을 수반한다. 블록 1108은 재생-수정 액션들의 세트로부터 명령에 대응하는 재생-수정 액션을 선택하는 것을 수반한다.
IV. 예시적 변형들
이 개시에 기재된 동작들 및/또는 기능들의 일부는 특정 엔티티에 의해 행해지는 것으로 설명되었지만, 동작들 및/또는 기능들은 본 개시에 기재된 엔티티들과 같은 임의의 엔티티에 의해 행해질 수 있다. 또한, 동작들 및/또는 기능들이 특정 순서로 언급되었지만, 동작들 및/또는 기능들이 언급된 순서로 행해질 필요는 없다. 그러나, 일부 예에서 동작들 및/또는 기능들을 언급된 순서로 행하는 것이 바람직할 수 있다. 또한, 동작들 및/또는 기능들의 각각은 다른 동작들 및/또는 기능들의 하나 이상에 응답하여 행해질 수 있다. 또한, 본 개시에 의해 제공된 이점들의 하나 이상을 달성하기 위해 동작들 및/또는 기능들의 모두가 행해지는 것이 필요한 것은 아니고, 이에 따라 동작들 및/또는 기능들의 모두가 요구되지는 않는다.
특정 변형들이 본 개시의 하나 이상의 예와 함께 논의되었지만, 이들 변형들이 또한 본 개시의 다른 예의 모두에도 적용될 수 있다.
본 개시의 선택 예가 설명되었지만, 이 예들의 변경 및 치환은 당업자에게 명백할 것이다. 다른 변경들, 치환들, 및/또는 변형들이 또한 다음의 특허청구범위에 설명된 바와 같이 더 넓은 측면들에서 본 발명에서 벗어나지 않고 가능하다.

Claims (22)

  1. 방법으로서,
    재생 디바이스에 의해, 오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 상기 미디어 디바이스를 식별하는 단계 ― 상기 미디어 디바이스는 상기 재생 디바이스에 미디어 콘텐츠를 제공함 ― ;
    상기 재생 디바이스에 의해, 디스플레이를 위해 상기 식별된 미디어 디바이스로부터 수신된 미디어 콘텐츠를 제공하는 것으로부터 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것으로 스위칭하는 단계 ― 상기 대체 미디어 콘텐츠는 상기 재생 디바이스의 데이터베이스에 저장됨 ― ;
    상기 재생 디바이스가 상기 대체 미디어 콘텐츠를 표시하고 있는 동안, 상기 재생 디바이스의 수신기를 이용하여, 원격 제어가 상기 식별된 미디어 디바이스에 전송한 명령을 수신하는 단계;
    상기 재생 디바이스에 의해, 상기 명령 및 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 단계 - 상기 명령 및 상기 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 단계는 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션들의 세트 중에서 상기 명령에 대응하는 재생-수정 액션을 선택하는 단계를 포함함 - ; 및
    상기 재생 디바이스에 의해, 상기 재생-수정 액션에 따라 상기 대체 미디어 콘텐츠의 재생을 수정하는 단계를 포함하는, 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션들의 세트를 얻는 단계를 더 포함하는 방법.
  4. 제1항에 있어서,
    상기 재생 디바이스에 의해, 상기 미디어 디바이스로부터 수신된 미디어 콘텐츠의 일부로부터 핑거프린트를 생성하는 단계를 더 포함하고,
    상기 식별하는 단계는 또한 상기 핑거프린트에 의거하는 방법.
  5. 제1항에 있어서,
    상기 오디오 및/또는 비디오 인터페이스는 HDMI(High-Definition Multimedia Interface) 인터페이스를 포함하고, 상기 제어 메시지는 CEC(Consumer Electronics Control) 메시지를 포함하는 방법.
  6. 제5항에 있어서,
    상기 CEC 메시지는 상기 미디어 디바이스의 논리 어드레스를 포함하며, 상기 논리 어드레스는 상기 미디어 디바이스의 디바이스 타입을 지시하고,
    상기 미디어 디바이스를 식별하는 단계는 적어도 상기 미디어 디바이스의 논리 어드레스에 의거하여 상기 미디어 디바이스를 식별하는 단계를 포함하는 방법.
  7. 제5항에 있어서,
    상기 CEC 메시지는 상기 미디어 디바이스의 디바이스 벤더 식별자(ID)를 포함하며, 상기 디바이스 벤더 ID는 상기 미디어 디바이스의 제조사를 지시하고,
    상기 미디어 디바이스를 식별하는 단계는 적어도 상기 미디어 디바이스의 디바이스 벤더 ID에 의거하여 상기 미디어 디바이스를 식별하는 단계를 포함하는 방법.
  8. 제5항에 있어서,
    상기 CEC 메시지는 상기 미디어 디바이스의 온-스크린 디스플레이 이름을 포함하고,
    상기 미디어 디바이스를 식별하는 단계는 적어도 상기 미디어 디바이스의 온-스크린 디스플레이 이름에 의거하여 상기 미디어 디바이스를 식별하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    상기 명령은 채널-변경 작동을 수행하도록 구성된 명령을 포함하고, 상기 재생-수정 액션은 상기 대체 미디어 콘텐츠의 디스플레이를 중단시키는 것을 포함하는 방법.
  10. 제1항에 있어서,
    상기 재생-수정 액션을 결정하는 단계는, (i) 상기 명령 및 상기 식별된 미디어 디바이스에 대응하는 오버레이를 결정하는 단계 및 (ii) 상기 오버레이에 대응하는 재생 디바이스의 디스플레이 내의 영역을 결정하는 단계를 포함하고,
    상기 대체 미디어 콘텐츠의 재생을 수정하는 단계는, 상기 식별된 미디어 디바이스가 디스플레이를 위한 오버레이를 제공할 경우, 상기 오버레이가 상기 대체 미디어 콘텐츠를 통해 가시화되도록 상기 영역의 투명도를 수정하는 단계를 포함하는 방법.
  11. 제10항에 있어서,
    상기 영역의 투명도를 수정하는 단계는 상기 영역에 불투명 마스크를 적용하는 단계를 포함하는 방법.
  12. 제1항에 있어서,
    상기 명령은 메뉴에 액세스하기 위한 명령을 포함하고, 상기 재생-수정 액션은 상기 재생 디바이스의 디스플레의 제1 영역 내에 메뉴를 제공하는 것 및 상기 디스플레이의 제2 영역 내에 상기 대체 미디어 콘텐츠를 제공하는 것을 포함하는 방법.
  13. 제12항에 있어서,
    상기 명령 및 상기 식별된 미디어 디바이스에 대응하는 템플릿을 결정하는 단계를 더 포함하며, 상기 템플릿은 상기 제1 영역 및 상기 제2 영역을 지정하는 방법.
  14. 제13항에 있어서,
    상기 제2 영역의 크기에 의거하여 상기 대체 미디어 콘텐츠의 크기를 줄이는 단계를 더 포함하는 방법.
  15. 제1항에 있어서,
    상기 명령은 재생-속도 조정을 포함하고, 상기 대체 미디어 콘텐츠의 재생을 수정하는 단계는 상기 대체 미디어 콘텐츠가 제공되는 재생 속도를 조정하는 단계를 포함하는 방법.
  16. 제1항에 있어서,
    상기 재생 디바이스는 텔레비전을 포함하고, 상기 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 단계는 미디어 플레이어를 이용하여 상기 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 단계를 포함하는 방법.
  17. 제16항에 있어서,
    상기 대체 미디어 콘텐츠는 광고인 방법.
  18. 프로세서에 의한 실행 시, 동작들의 세트를 수행하게 하는 프로그램 명령들이 저장된 비일시적인 컴퓨터-판독 가능한 매체로서,
    상기 동작들의 세트는,
    오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 상기 미디어 디바이스를 식별하는 동작 ― 상기 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ;
    디스플레이를 위해 상기 식별된 미디어 디바이스로부터 수신된 미디어 콘텐츠를 제공하는 것으로부터 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것으로 스위칭하는 동작 ― 상기 대체 미디어 콘텐츠는 상기 재생 디바이스의 데이터베이스에 저장됨 ― ;
    상기 재생 디바이스가 상기 대체 미디어 콘텐츠를 표시하고 있는 동안, 상기 재생 디바이스의 수신기를 이용하여, 원격 제어가 상기 식별된 미디어 디바이스에 전송한 명령을 수신하는 동작;
    상기 명령 및 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 동작 - 상기 명령 및 상기 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 동작은 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션들의 세트 중에서 상기 명령에 대응하는 재생-수정 액션을 선택하는 동작을 포함함 - ; 및
    상기 재생-수정 액션에 따라 상기 대체 미디어 콘텐츠의 재생을 수정하는 동작을 포함하는 비일시적인 컴퓨터-판독 가능한 매체.
  19. 제18항에 있어서,
    상기 오디오 및/또는 비디오 인터페이스는 HDMI(High-Definition Multimedia Interface) 인터페이스를 포함하고, 상기 제어 메시지는 CEC(Consumer Electronics Control) 메시지를 포함하는 비일시적인 컴퓨터-판독 가능한 매체.
  20. 동작들의 세트를 행하기 위해 구성된 컴퓨팅 시스템으로서,
    상기 동작들의 세트는,
    오디오 및/또는 비디오 인터페이스를 통해 미디어 디바이스로부터 수신된 제어 메시지에 의거하여 상기 미디어 디바이스를 식별하는 동작 ― 상기 미디어 디바이스는 재생 디바이스에 미디어 콘텐츠를 제공함 ― ;
    디스플레이를 위해 상기 식별된 미디어 디바이스로부터 수신된 미디어 콘텐츠를 제공하는 것으로부터 디스플레이를 위한 대체 미디어 콘텐츠를 제공하는 것으로 스위칭하는 동작 ― 상기 대체 미디어 콘텐츠는 상기 재생 디바이스의 데이터베이스에 저장됨 ― ;
    상기 재생 디바이스가 상기 대체 미디어 콘텐츠를 표시하고 있는 동안, 상기 재생 디바이스의 수신기를 이용하여, 원격 제어가 상기 식별된 미디어 디바이스에 전송한 명령을 수신하는 동작;
    상기 명령 및 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 동작 - 상기 명령 및 상기 미디어 디바이스에 대응하는 재생-수정 액션을 결정하는 동작은 상기 식별된 미디어 디바이스에 대응하는 재생-수정 액션들의 세트 중에서 상기 명령에 대응하는 재생-수정 액션을 선택하는 동작을 포함함 - ; 및
    상기 재생-수정 액션에 따라 상기 대체 미디어 콘텐츠의 재생을 수정하는 동작을 포함하는 컴퓨팅 시스템.
  21. 제1항에 있어서,
    상기 명령은 무선 통신 프로토콜에 따라 전송되고,
    상기 재생 디바이스의 수신기를 이용하여 상기 명령을 수신하는 단계는, 상기 재생 디바이스의 디코더에 의해 무선 네트워크 상의 무선 통신 트래픽을 모니터링하는 단계를 포함하는, 방법.
  22. 제1항에 있어서,
    상기 재생 디바이스의 수신기를 이용하여 상기 명령을 수신하는 단계는,
    상기 재생 디바이스의 무선 통신 인터페이스를 통해 상기 명령을 수신하는 단계; 및
    상기 명령의 특성을 레퍼런스 명령의 특성과 매칭하는 단계를 포함하는, 방법.
KR1020217004197A 2018-07-19 2019-07-03 제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정 KR102523387B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862700410P 2018-07-19 2018-07-19
US62/700,410 2018-07-19
US16/182,201 US11272252B2 (en) 2018-07-19 2018-11-06 Modifying playback of replacement content based on control messages
US16/182,201 2018-11-06
PCT/US2019/040553 WO2020018289A1 (en) 2018-07-19 2019-07-03 Modifying playback of replacement content based on control messages

Publications (2)

Publication Number Publication Date
KR20210024186A KR20210024186A (ko) 2021-03-04
KR102523387B1 true KR102523387B1 (ko) 2023-04-20

Family

ID=69162198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217004197A KR102523387B1 (ko) 2018-07-19 2019-07-03 제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정

Country Status (7)

Country Link
US (3) US11272252B2 (ko)
EP (1) EP3824648A4 (ko)
JP (1) JP7110478B2 (ko)
KR (1) KR102523387B1 (ko)
CN (1) CN112514409B (ko)
TW (1) TWI779207B (ko)
WO (1) WO2020018289A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9240984B2 (en) * 2011-07-25 2016-01-19 Qterics, Inc. Configuring an electronic device based on a transaction
US10827224B2 (en) 2018-07-19 2020-11-03 Gracenote, Inc. Modifying playback of replacement content responsive to detection of remote control signals that control a device providing video to the playback device
US11272252B2 (en) 2018-07-19 2022-03-08 Roku, Inc. Modifying playback of replacement content based on control messages
CN114339446B (zh) * 2021-12-28 2024-04-05 北京百度网讯科技有限公司 音视频编辑方法、装置、设备、存储介质及程序产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140196085A1 (en) 2013-01-07 2014-07-10 Gracenote, Inc. Inserting advertisements into video content
US20170094351A1 (en) * 2010-11-01 2017-03-30 Gracenote, Inc. Method and system for presenting additional content at a media system
US20170150213A1 (en) * 2015-12-16 2017-05-25 Gracenote, Inc. Dynamic video overlays
US20170188088A1 (en) * 2015-12-24 2017-06-29 PWV Inc Audio/video processing unit, speaker, speaker stand, and associated functionality
US20180131891A1 (en) 2016-11-10 2018-05-10 Caavo Inc Soft universal remote controller

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7861017B2 (en) 2007-10-19 2010-12-28 Sony Corporation Consumer electronics control (CEC) line enhancement method for HDMI network that selects a transfer rate from a plurality of transfer rates
US20100199308A1 (en) 2009-01-30 2010-08-05 Neale Hall Channel Change Insert
US8189120B2 (en) * 2009-02-04 2012-05-29 Sony Corporation Non-programmable universal remote system and method
TW201031208A (en) 2009-02-06 2010-08-16 Wistron Corp Media management device, system and method thereof
US9565471B2 (en) 2009-07-24 2017-02-07 Broadcom Corporation Method and system for PVR on internet enabled televisions (TVs)
CN101827093A (zh) * 2010-03-18 2010-09-08 孙干 无线多媒体传播控制系统及其操作方法
NL2006978C2 (en) 2011-06-21 2012-12-28 Civolution B V Rendering device with content substitution.
US9326038B2 (en) 2011-12-15 2016-04-26 Google Technology Holdings LLC Method and device with intelligent media management
US9640067B1 (en) * 2012-09-04 2017-05-02 Amazon Technologies, Inc. Determining commands on a media device interface
TWI585581B (zh) 2012-11-14 2017-06-01 瑞軒科技股份有限公司 影音播放系統之控制方法
US9743153B2 (en) 2014-09-12 2017-08-22 Sorenson Media, Inc Content replacement with onscreen displays
US9848214B2 (en) 2015-10-01 2017-12-19 Sorenson Media, Inc. Sequentially overlaying media content
US10771857B2 (en) * 2015-12-29 2020-09-08 Gold Line Telemanagement Inc. Video stream ad replacement
US10063917B2 (en) * 2016-03-16 2018-08-28 Sorenson Media Inc. Fingerprint layouts for content fingerprinting
KR20170143406A (ko) * 2016-06-21 2017-12-29 삼성전자주식회사 리모컨신호를 수신하고 변환된 리모컨신호를 출력할 수 있는 디스플레이장치 및 그 제어방법
EP3361740B1 (en) 2017-02-10 2020-12-02 Samsung Electronics Co., Ltd. Display device and method for replacing advertisement
US10447537B2 (en) * 2017-07-11 2019-10-15 Roku, Inc. Automatic determination of display device functionality
EP3622671A1 (en) * 2018-03-28 2020-03-18 Rovi Guides, Inc. Systems and methods for adjusting a media consumption environment based on changes in states of an object
US11272252B2 (en) 2018-07-19 2022-03-08 Roku, Inc. Modifying playback of replacement content based on control messages

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170094351A1 (en) * 2010-11-01 2017-03-30 Gracenote, Inc. Method and system for presenting additional content at a media system
US20140196085A1 (en) 2013-01-07 2014-07-10 Gracenote, Inc. Inserting advertisements into video content
US20170150213A1 (en) * 2015-12-16 2017-05-25 Gracenote, Inc. Dynamic video overlays
US20170188088A1 (en) * 2015-12-24 2017-06-29 PWV Inc Audio/video processing unit, speaker, speaker stand, and associated functionality
US20180131891A1 (en) 2016-11-10 2018-05-10 Caavo Inc Soft universal remote controller

Also Published As

Publication number Publication date
CN112514409A (zh) 2021-03-16
EP3824648A1 (en) 2021-05-26
TW202008795A (zh) 2020-02-16
US20230353822A1 (en) 2023-11-02
US11765426B2 (en) 2023-09-19
KR20210024186A (ko) 2021-03-04
JP7110478B2 (ja) 2022-08-01
TWI779207B (zh) 2022-10-01
EP3824648A4 (en) 2022-06-08
US11272252B2 (en) 2022-03-08
US20200029118A1 (en) 2020-01-23
JP2021530929A (ja) 2021-11-11
WO2020018289A1 (en) 2020-01-23
CN112514409B (zh) 2023-07-28
US20220150588A1 (en) 2022-05-12

Similar Documents

Publication Publication Date Title
KR102523387B1 (ko) 제어 메시지들에 의거한 대체 콘텐츠의 재생의 수정
US11895370B2 (en) Modifying playback of replacement content responsive to detection of remote control signals that control a device providing video to the playback device
US11937026B2 (en) Responsive to detection of remote control signals that modify operation of the playback device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right