KR102581116B1 - 대화의 맥락에서 콘텐츠를 추천하기 위한 방법들 및 시스템들 - Google Patents
대화의 맥락에서 콘텐츠를 추천하기 위한 방법들 및 시스템들 Download PDFInfo
- Publication number
- KR102581116B1 KR102581116B1 KR1020207017321A KR20207017321A KR102581116B1 KR 102581116 B1 KR102581116 B1 KR 102581116B1 KR 1020207017321 A KR1020207017321 A KR 1020207017321A KR 20207017321 A KR20207017321 A KR 20207017321A KR 102581116 B1 KR102581116 B1 KR 102581116B1
- Authority
- KR
- South Korea
- Prior art keywords
- media guidance
- guidance application
- content
- conversation
- delete delete
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012544 monitoring process Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 67
- 230000001755 vocal effect Effects 0.000 claims description 39
- 230000004044 response Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 abstract description 49
- 238000004891 communication Methods 0.000 description 54
- 238000003860 storage Methods 0.000 description 29
- 230000005236 sound signal Effects 0.000 description 21
- 230000009471 action Effects 0.000 description 18
- 238000013459 approach Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 206010019133 Hangover Diseases 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 6
- 241000282320 Panthera leo Species 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000003612 virological effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 244000187656 Eucalyptus cornuta Species 0.000 description 1
- 229910021417 amorphous silicon Inorganic materials 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007177 brain activity Effects 0.000 description 1
- 239000002041 carbon nanotube Substances 0.000 description 1
- 229910021393 carbon nanotube Inorganic materials 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000002772 conduction electron Substances 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000001667 episodic effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011093 media selection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- 238000009736 wetting Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/439—Processing of audio elementary streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/439—Processing of audio elementary streams
- H04N21/4394—Processing of audio elementary streams involving operations for analysing the audio stream, e.g. detecting features or characteristics in audio streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring 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/44213—Monitoring of end-user related data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4821—End-user interface for program selection using a grid, e.g. sorted out by channel and broadcast time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
- H04N21/8405—Generation or processing of descriptive data, e.g. content descriptors represented by keywords
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback of the input speech
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/226—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
- G10L2015/227—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Acoustics & Sound (AREA)
- Library & Information Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Social Psychology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
미디어 안내 애플리케이션은, 웨이크워드들의 사용 없이, 사용자들 사이의 대화를 모니터링하고, 대화에서 키워드들을 식별할 수 있다. 키워드들은 진행 중인 대화에 관련성 있는 미디어 콘텐츠를 검색하는 데 사용된다. 그에 따라, 미디어 안내 애플리케이션은, 대화 동안, 사용자들을 더 능동적으로 참여시키기 위해 관련성 있는 콘텐츠를 사용자들에게 제시한다. 대화 모니터링 윈도는 대화 정보는 물론 관련성 있는 콘텐츠를 제시하는 데 사용될 수 있다. 미디어 안내 애플리케이션이 대화로부터의 음성을 프로세싱하는 때를 관리하기 위해 리스닝 모드가 사용될 수 있다. 미디어 안내 애플리케이션은, 대화의 맥락에서 콘텐츠를 제공하기 위해, 키워드들을 위해 사용자 프로파일들에 액세스하고, 콘텐츠 유형들을 선택하며, 콘텐츠 소스들을 선택하고, 미디어 콘텐츠의 관련성을 결정할 수 있다.
Description
음성 작동(voice-activated) 개인 어시스턴트들은 때때로 콘텐츠를 조정(tailor)하고 사용자들과 연결할 방법들을 발견하는 데 사용된다. 사용자는 음성 커맨드들을 어시스턴트에 제공할 수 있고 어시스턴트는 응답한다. 때때로 사용자들의 그룹은 영화와 같은 미디어 콘텐츠, 또는 특히 흥미로운 장면에 대해 논의할 수 있다. 전형적인 시스템들은 대화에 관련된 무언가를 찾기 위해 사용자들 중 하나가 질의를 제공하거나 검색을 수행할 것을 요구하며, 이는 대화를 방해할 수 있다. 그러한 상호작용은 비효율적이고 사용자의 미디어 소비의 즐거움을 빼앗아간다.
질의를 작성하고 검색 결과를 파싱하려는 노력 외에도, 사용자들은 또한 그들의 대화에 관련성 있는 콘텐츠에 대해 어디에서 검색할지를 알지 못할 수 있다. 특히 대화를 매력적이고 역동적으로 유지하는 데 있어서, 콘텐츠 소스를 알아내려고 시도하는 것, 특정의 관심 대상 미디어 자산을 식별하는 것, 및 해당 자산을 디스플레이하는 것은 바람직하지 않을 가능성이 있다.
본 개시내용은 대화를 리스닝하고 대화에서의 적절한 삽입 지점에서 콘텐츠를 자동으로 제공하는, 미디어 안내 애플리케이션의 한 양태일 수 있는, 음성 작동 개인 어시스턴트를 설명한다. 예를 들어, 개인 어시스턴트는 텔레비전 리스닝 모드(television listening mode) 및 일반 모드(regular mode)를 가질 수 있다. 텔레비전 리스닝 모드에 있고, 사용자가 최근의 풋볼 경기에 관해 다른 사용자와 대화하고 있을 수 있을 때, 이 시스템은 사용자들이 논의하고 있는 경기의 어떤 양태를 자동으로 식별하고 경기의 클립을 자동으로 찾아 생성한다. 이 시스템은 대화 동안 클립을 제시하여, 클립을 대화의 관련성 있는 부분으로 만든다. 추가의 예에서, 사용자가 미디어 자산 또는 시리즈, 예를 들어, Game of Thrones (GOT)에서의 특정의 장면에 대해 논의하고 있는 경우, 개인 어시스턴트는 논의되고 있는 장면을 재생할 수 있다. 이 시스템은 또한 대화에 기초하여 검색할 하나 이상의 소스를 선택할 수 있다. 예를 들어, 사용자들의 그룹이 바이럴 콘텐츠(viral content)에 관해 이야기하고 있는 경우, 이 시스템은 소셜 미디어 소스들만을 검색할 수 있지만, 사용자들이 스포츠 이벤트에 관해 이야기하고 있는 경우, 이 시스템은 관련성 있는 콘텐츠에 대해 먼저 스포츠 소스를 검색할 수 있고 이어서 보조 소스들(예를 들어, 소셜 미디어)를 검색할 수 있다.
그에 따라, 복수의 사용자들 사이의 대화를 (예를 들어, 사용자 장비를 사용하여) 모니터링함으로써 대화의 맥락에서 콘텐츠를 추천하는 미디어 안내 애플리케이션을 제공하기 위한 시스템들 및 방법들이 제공된다. 미디어 안내 애플리케이션은 웨이크워드(wakeword)를 수신함이 없이 대화에서의 키워드들을 자동으로 검출하고, 대화 동안 사용자들에게 제시하기 위해 키워드들 중 하나와 매칭하는 콘텐츠를 검색한다. 웨이크워드를 수신함이 없이, 미디어 안내 애플리케이션은 콘텐츠를 사용자들에게 자동으로 제시한다. 웨이크워드는, 본 명세서에서 사용되는 바와 같이, 미디어 안내 애플리케이션이 미리 정해진 액션으로 응답하도록 구성된 인식된 커맨드 워드이다.
미디어 안내 애플리케이션은 복수의 사용자들 사이의 대화를 (예를 들어, 사용자 장비를 사용하여) 모니터링함으로써 대화의 맥락에서 콘텐츠를 추천한다. 구두 대화가 계속됨에 따라, 미디어 안내 애플리케이션은 구두 대화에서의 단어들을 프로세싱하여 구두 대화에서의 단어들로부터 키워드들을 선택적으로 리트리빙(retrieve)한다. 미디어 안내 애플리케이션은 선택적으로 리트리빙된 키워드들에 기초하여 웨이크워드를 수신함이 없이 구두 대화에서의 키워드들을 검출한다. 미디어 안내 애플리케이션은 복수의 클립들 각각과 연관된 메타데이터를 검출된 키워드들과 비교하는 것, 및 (예를 들어, 비교에 기초하여) 클립들 중의 다른 클립과 연관된 메타데이터보다 키워드들 중의 더 많은 키워드들과 매칭하는 메타데이터를 갖는 클립을 복수의 클립들 중에서 선택하는 것에 의해 키워드들 중 하나와 매칭하는 클립을 복수의 클립들에서 검색한다. 미디어 안내 애플리케이션은, 웨이크워드를 수신함이 없이, 구두 대화 동안 클립을 사용자들에게 자동으로 제시한다. 복수의 클립들 각각은, 일부 구현예들에서, 임계 지속기간보다 짧을(less than) 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 둘 이상의 사용자들 사이의 대화에서의 검출된 키워드들과 연관된 콘텐츠 유형을 식별하고, 식별된 콘텐츠 유형에 기초하여 검색할 콘텐츠 소스를 선택한다. 예를 들어, 키워드들이 단어들 "풋볼"을 포함한 경우, 미디어 안내 애플리케이션은 단어 "풋볼"에 기초하여 콘텐츠 유형을 스포츠 클립으로서 식별할 수 있다. 그에 따라, 콘텐츠 유형을 스포츠 클립으로서 식별함으로써, 미디어 안내 애플리케이션은, 예를 들어, 스포츠 주제의 미디어 소스로부터 스포츠 관련 콘텐츠를 보다 효율적으로 검색 및/또는 위치확인할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 구두 대화 프로세싱 윈도를 생성하고, 윈도의 시작 시간 이전에 검출되는 단어들이 폐기되도록, 대화 프로세싱 윈도 내에서 검출되는 구두 대화에서의 단어들을 일시적으로 저장한다. 대화 프로세싱 윈도는 대화가 발생하고 프로세싱되며 관련성 있는 콘텐츠가 제시되는 시간 기간을 지칭한다. 대화가 검출될 때, 미디어 안내 애플리케이션은 대화 프로세싱 윈도를 개시하고, 예를 들어, 대화가 여전히 발생하고 있는 동안, 윈도를 유지할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 리스닝 모드를 활성화시키며, 여기서 모니터링은 리스닝 모드가 활성일 때 수행되고 리스닝 모드가 디스에이블될 때 수행되지 않는다. 그에 따라, 리스닝 모드는 미디어 안내 애플리케이션이 언제 "엿듣기(eavesdropping)"를 하는지를 규정하는 데 사용될 수 있다. 예를 들어, 미디어 안내 애플리케이션이 대화가 존재하지 않을 때 프로세싱 자원들을 낭비하지 않도록, 미디어 안내 애플리케이션은 어떤 오디오 입력이 검출될 때에만 음성에 대해 오디오 신호들을 프로세싱하기 시작할 수 있다.
일부 실시예들에서, 키워드들은 미디어 자산에서의 세그먼트에 관련될 수 있고, 복수의 검색된 클립들 각각은 미디어 자산의 장면에서의 콘텐츠를 나타낸다. 예를 들어, 세그먼트는 전체 장면 또는 그의 한 부분일 수 있다. 추가의 예에서, 세그먼트는 스포츠 이벤트에서의 플레이를 특징으로 하는 미디어 자산의 한 부분일 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 클립을 제시하기 위해 사용자 장비 상에 현재 제시되고 있는 콘텐츠를 변경함으로써 구두 대화 동안 콘텐츠를 사용자들에게 자동으로 제시한다. 예를 들어, 사용자들은 처음에 사용자 디바이스 상에서 프로그램을 시청하고 있을 수 있고, 이어서 프로그램이 계속 재생되는 동안 대화를 시작할 수 있다. 미디어 안내 애플리케이션은 대화의 맥락에서 관련성 있는 클립을 제시할 수 있고, 처음에 재생되고 있었던 프로그램을 제시하는 것을 중단할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 대화에서의 키워드들을 검출하는 것에 응답하여 클립이 선택되었다는 표시와 함께, 검출된 키워드들 중 일부를 클립과 함께 제시한다. 예를 들어, 관련성 있는 클립과 함께, 미디어 안내 애플리케이션은 사용자들이 클립이 재생되고 있는 이유를 인식할 수 있도록 키워드 텍스트를 디스플레이할 수 있다. 이것은, 예를 들어, 하나 이상의 키워드가 틀렸고(예를 들어, 잘못 프로세싱되었고), 클립이 관련성이 없는 경우에 특히 유용할 수 있다. 키워드들을 디스플레이하는 것은 또한 사용자 피드백으로서 역할하여, 미디어 안내 애플리케이션이 사용자들과 상호작용하는 데 도움을 줄 수 있다. 예를 들어, 미디어 안내 애플리케이션은 키워드들을 디스플레이할 수 있으며, 이는 (예를 들어, 더 관련성 있는 키워드들을 추가함으로써) 키워드 검색을 세분화(refine)하거나 조정하기 위해 사용자에게 부가의 단어들을 적극적으로 발화하도록 프롬프트할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 복수의 사용자들 각각의 사용자 프로파일들과 매칭하는 단어들을 구두 대화에서 식별함으로써 키워드들을 선택적으로 리트리빙한다. 사용자의 프로파일은, 예를 들어, 사용자 선호도들(예를 들어, 좋아하는 프로그램들, 좋아하는 장르, 좋아하는 여배우), 사용자의 시청 이력, 사용자의 미디어 소비와 연관된 공통 키워드들, 개인 정보, 대화에 관련성 있을 수 있는 다른 사용자들의 이름들, 또는 사용자에 관한 다른 정보와 같은 정보를 포함할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 "Jamie"와 "Jon"과 같은 단어들을 대화에서 식별하고, 사용자의 프로파일들 중 하나에 액세스하여 Game of Thrones(GOT)를 좋아하는 프로그램으로서 식별할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 "Jamie"와 "Jon"을 GOT에서의 캐릭터들로서 인식하고, “Game of Thrones”를 키워드들에 추가하거나, Game of Thrones 클립들 중에서 키워드들을 검색할 수 있다.
본 개시내용의 상기 목적들 및 장점들 및 다른 목적들 및 장점들은 비슷한 참조 문자들이 전반에 걸쳐 비슷한 부분들을 지칭하는, 첨부 도면들과 관련하여 취해진, 이하의 상세한 설명을 고려할 때 명백할 것이다.
도 1은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다;
도 2는 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다;
도 3은 본 개시내용의 일부 실시예들에 따른, 미디어 안내 애플리케이션 리스팅들 및 다른 미디어 안내 정보를 제공하는 데 사용될 수 있는 디스플레이 스크린의 예시적인 실시예를 도시한다;
도 4는 본 개시내용의 일부 실시예들에 따른, 미디어 안내 애플리케이션 리스팅들을 제공하는 데 사용될 수 있는 디스플레이 스크린의 다른 예시적인 실시예를 도시한다;
도 5는 본 개시내용의 일부 실시예들에 따른, 예시적인 디바이스의 블록 다이어그램이다;
도 6은 본 개시내용의 일부 실시예들에 따른, 예시적인 미디어 시스템의 블록 다이어그램이다;
도 7은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 8은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 9는 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 10은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다.
도 1은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다;
도 2는 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다;
도 3은 본 개시내용의 일부 실시예들에 따른, 미디어 안내 애플리케이션 리스팅들 및 다른 미디어 안내 정보를 제공하는 데 사용될 수 있는 디스플레이 스크린의 예시적인 실시예를 도시한다;
도 4는 본 개시내용의 일부 실시예들에 따른, 미디어 안내 애플리케이션 리스팅들을 제공하는 데 사용될 수 있는 디스플레이 스크린의 다른 예시적인 실시예를 도시한다;
도 5는 본 개시내용의 일부 실시예들에 따른, 예시적인 디바이스의 블록 다이어그램이다;
도 6은 본 개시내용의 일부 실시예들에 따른, 예시적인 미디어 시스템의 블록 다이어그램이다;
도 7은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 8은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 9는 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다;
도 10은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스의 플로차트이다.
본 개시내용은 대화를 리스닝하고 대화에서의 적절한 삽입 지점에서 콘텐츠를 자동으로 제공하는, 미디어 안내 애플리케이션의 한 양태일 수 있는, 음성 작동 개인 어시스턴트를 설명한다. 예를 들어, 개인 어시스턴트는 텔레비전 리스닝 모드 및 일반 모드를 가질 수 있다. 텔레비전 리스닝 모드에 있고, 사용자가 최근의 풋볼 경기에 관해 다른 사용자와 대화하고 있을 수 있을 때, 이 시스템은 사용자들이 논의하고 있는 경기의 어떤 양태를 자동으로 식별하고 경기의 클립을 자동으로 찾아 생성한다. 이 시스템은 대화 동안 클립을 제시하여, 클립을 대화의 관련성 있는 부분으로 만든다. 추가의 예에서, 사용자가 미디어 자산 또는 시리즈, 예를 들어, Game of Thrones (GOT)에서의 특정의 장면에 대해 논의하고 있는 경우, 개인 어시스턴트는 논의되고 있는 장면을 재생할 수 있다. 이 시스템은 또한 대화에 기초하여 검색할 하나 이상의 소스를 선택할 수 있다. 예를 들어, 사용자들의 그룹이 바이럴 콘텐츠에 관해 이야기하고 있는 경우, 이 시스템은 소셜 미디어 소스들만을 검색할 수 있지만, 사용자들이 스포츠 이벤트에 관해 이야기하고 있는 경우, 이 시스템은 관련성 있는 콘텐츠에 대해 먼저 스포츠 소스를 검색할 수 있고 이어서 보조 소스들(예를 들어, 소셜 미디어)를 검색할 수 있다.
도 1은 본 개시내용의 일부 실시예들에 따른, 대화(100)의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다. 미디어 안내 애플리케이션은, 디스플레이 디바이스(110)(예를 들어, 텔레비전)에 커플링되는, 사용자 디바이스(102)를 사용하여 사용자(130)와 사용자(140) 사이의 대화(100)를 모니터링할 수 있다. 사용자 디바이스(102)는 오디오 입력 디바이스(즉, 오디오 신호들을 검출하기 위해 디바이스에 통합된 마이크로폰)를 포함한다. 디스플레이 디바이스(110)에 커플링되는 별도의 디바이스로서 예시적으로 도시되어 있지만, 사용자 디바이스(예를 들어, 사용자 디바이스(102))는, 대안적으로 또는 부가적으로, 모바일 폰, 컴퓨터, 일체형 디스플레이 및 프로세싱 회로부(예를 들어, 스마트 TV), 또는 본 개시내용의 도 5 및 도 6의 설명에 따른 임의의 다른 적합한 디바이스를 포함할 수 있다. 사용자(130)와 사용자(140)는 주어진 미디어 자산(예를 들어, Game of Thrones (GOT))에 관한 대화, 및 더 상세하게는 Jon Snow(즉, Game of Thrones에서의 캐릭터)가 최신 에피소드들에서 살아 있는지 여부에 관한 대화에 참여할 수 있다. 예를 들어, 예시적인 대화(100)의 일 예가 아래에 나타내어져 있다.
예시적인 대화(100)의 예 1.
사용자(130): “Did you see that last GOT episode?”
사용자(140): “No, what happened? I heard Jon Snow-”
사용자(130)(끼어든다): “What! Don’t tell me what
happened to Jon Snow!”
사용자(140): “I think he is alive.”
대화(100)가 시작될 때(예를 들어, 사용자 디바이스(102)가 대화(100)로부터 오디오 신호들를 검출할 때), 미디어 애플리케이션은 음성을 프로세싱하기 시작할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 구두 대화 프로세싱 윈도를 인스턴스화하고, 오디오 신호들을 메모리에 저장하기 시작할 수 있다. 게다가, 구두 프로세싱 윈도는 대화(100) 전체에 걸쳐 지속될 수 있다. 예시적인 대화(100)는 2명의 사용자(사용자(130)와 사용자(140)), 및, 예를 들어, 5초의 음성을 포함한다. 5초의 음성 중에서, 미디어 안내 애플리케이션은 하나 이상의 키워드를 식별할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화(100)의 예 1에서 “GOT”, “episode”, “Jon”, “Snow”, “alive”, “happened”, 및 “last”를 단어들로서 식별할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 소셜 미디어에서 유행하고 있을 수 있는, 키워드 "Jon Snow alive"를 식별할 수 있다. 그에 따라, 미디어 안내 애플리케이션은, 예를 들어, 관련성 있는 콘텐츠를 검색할 때 소셜 미디어만을 콘텐츠 소스로서 고려할 수 있다. 예를 들어, 일부 소셜 미디어 서비스들은 그들의 네트워크들 내에서 유행하고 있는 키워드들 또는 콘텐츠를 제시할 수 있다. 예를 들어, Facebook 또는 Twitter는 현재 유행하는 주제들, 콘텐츠, 사이트들, 또는 정보를 제시할 수 있다. 미디어 안내 애플리케이션은 소셜 미디어 네트워크들에 액세스하고 (예를 들어, 키워드들에 기초하여) 무엇이 유행하고 있는지를 식별할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 트렌드들의 식별에 관한 정보를 전달, 트렌드들의 식별을 저장, 구성, 카테고리화, 또는 다른 방식으로 관리하기 위해 서드파티 서비스에 질의할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 무엇이 유행하고 있는지를 결정하기 위해 (예를 들어, 사용자들이 로그되어 있는 경우) 사용자들(130 및 140)의 소셜 미디어 계정들에 액세스할 수 있다.
게다가, 예시적인 대화(100)는 사용자(130)와 사용자(140)가 이미 디스플레이 스크린(104) 상에서 프로그램을 시청하고 있는 동안 발생할 수 있다. 미디어 안내 애플리케이션은, 예시적인 도 2에 도시된 바와 같이, 관련성 있는 콘텐츠를 사용자들(130 및 140)에게 제시하기 위해 디스플레이 스크린(104)을 관리할 수 있다.
도 2는 본 개시내용의 일부 실시예들에 따른, 대화(100)의 맥락에서 콘텐츠를 추천하는 예시적인 실시예를 도시한다. 대화(100)를 검출하는 것에 응답하여, 미디어 안내 애플리케이션은, 예를 들어, 옵션 바(222), 키워드 디스플레이(224), 콘텐츠 리스팅들(226), 및 비디오 영역(228)을 포함할 수 있는 대화 프로세싱 디스플레이(220)를 생성할 수 있다. 미디어 안내 애플리케이션은, 디스플레이(104)의 요소들 및 대화 프로세싱 디스플레이(220)를 포함하는, 디스플레이(204)를 생성할 수 있다. 옵션 바(222)는 (예를 들어, 복수의 클립들을 검색하는 것을 세분화하거나, 제한하거나, 또는 다른 방식으로 그에 영향을 미치기 위한) 검색 옵션들, (예를 들어, 선호도를 적용하거나, 또는 선택된 클립에 다른 방식으로 영향을 미치기 위한) 선택 기준들, 디스플레이 옵션들(예를 들어, 대화 프로세싱 디스플레이를 오버레이, 전체 스크린(full screen), 또는 분할 스크린(split screen)으로서 제시하는 것, 이전에 디스플레이된 프로그램을 일시정지하는 것, 대화 프로세싱 디스플레이(220)를 닫는 것), 임의의 다른 적합한 옵션들, 또는 이들의 임의의 조합을 포함할 수 있다. 키워드 디스플레이(224)는 대화(100)로부터 식별된 하나 이상의 디스플레이된 키워드를 포함할 수 있다. 키워드 디스플레이(224)는 모든 식별된 키워드들, 일부 식별된 키워드들, 콘텐츠에 대한 검색을 수행하는 데 사용되는 모든 키워드들, 콘텐츠에 대한 검색을 수행하는 데 사용되는 일부 키워드들, 임의의 다른 적합한 키워드 그룹, 또는 이들의 임의의 조합을 제시할 수 있다. 콘텐츠 리스팅(226)은 (예를 들어, 리스트에서의 인덱스, 다른 식별자, 또는 제목과 같은 지시자와 함께 디스플레이되는) 하나 이상의 미디어 자산 리스팅을 포함할 수 있다. 비디오 영역(228)은 재생가능한 클립을 포함할 수 있다. 예를 들어, 재생, 일시중지, 중지, 되감기, 빨리 감기, 스크롤, 또는 다른 적합한 옵션들과 같은 임의의 적합한 재생 옵션이 비디오 영역(228)의 일부로서 포함될 수 있다.
도 2에 예시적으로 도시된 바와 같이, 관련성 있는 클립이 비디오 영역(228)에 제시될 때 대화(100)가 여전히 진행 중이다. 미디어 안내 애플리케이션은 대화를 향상시키기 위해 또는 대화를 줄어들게 하지 않기 위해 대화(100) 동안 관련성 있는 클립을 제공하도록 구성될 수 있다. 따라서, 사용자(130)와 사용자(140)가 GOT에 관해 대화할 때, 그들은 미디어 안내 애플리케이션에 적극적으로 동조하거나, 검색을 개시하거나, 검색 결과들을 파싱하거나, 또는 다른 방식으로 대화(100)로부터 멀어지게 할 필요가 없다. 미디어 안내 애플리케이션은, 웨이크워드를 요구하지 않는 것에 의해, 따라서, 예를 들어, 사용자로부터 커맨드 입력을 수신함이 없이 키워드 검출, 콘텐츠 검색, 콘텐츠 선택, 및 콘텐츠 제시를 수행할 수 있다. 일부 상황들에서, 미디어 안내 애플리케이션은, 아마도 클립이 제시될 때까지, 사용자들(130 및 140)이 알아채는 일 없이 대화 프로세싱을 수행할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 대화에 보충적인 입력을 제공하고, 아마도 추가적인 대화를 자극할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 오디오 입력이 임계치 미만인(예를 들어, 오디오 신호 에너지가 임계치 미만인, 오디오 신호 진폭이 임계치 미만인) 시간 기간들을 식별함으로써 대화의 소강상태(lull) 또는 중단을 검출할 수 있다. 자연스러운 대화는 소강상태(예를 들어, 말수가 더 적거나 덜 자주 말을 하는 것), 중단(예를 들어, 말하지 않는 것), 화자들 사이의 전환(예를 들어, 돌아가면서 말하는 것), 끼어들기, 및 다수의 사람들이 동시에 말하는 것을 포함할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 (예를 들어, 덜 방해가 되도록) 대화에서의 검출된 소강상태 또는 중단 동안 클립을 제시할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 (예를 들어, 소강상태 또는 중단 동안이 아닌) 활발한 대화 동안 클립을 제시할 수 있다. 예를 들어, 활발한 대화 동안의 클립의 제시는 대화에 더 즉각적이고 더 적시적으로 들어맞을 수 있다.
대화(100)를 참조로서 사용하여, 다른 예(즉, 예 2)가 아래에 제공된다.
예시적인 대화(100)의 예 2.
사용자(130): “Wow, I love the Detroit Lions!”
사용자(140): “Yeah, that game last night was great”
사용자(130): “What! I totally missed it, who won?”
사용자(140): “Never-mind, but there was that last
interception!”
대화(100)의 예 2는 미디어 안내 애플리케이션이 스포츠에 관련된 것으로 인식할 수 있는 키워드들 “Detroit Lions”, “game”, “last night”, 및 “interception”을 포함한다. 미디어 안내 애플리케이션은 인식된 단어들을 알려진 단어들과 비교하여 키워드들을 카테고리화할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 콘텐츠 유형들 및 콘텐츠 소스들을 저장하는 데이터베이스(예를 들어, 미디어 안내 데이터 소스(618))를 검색할 수 있다. 적합한 검색 질의에서 키워드들을 제공함으로써, 미디어 안내 애플리케이션은 (예를 들어, 임의의 적합한 검색 기술을 사용하여) 데이터베이스를 검색하여 콘텐츠 유형 및 콘텐츠 소스를 리트리빙할 수 있다. 그에 따라, 그러한 상황들에서, 미디어 안내 애플리케이션은, 일부 실시예들에서, 스포츠 하이라이트들을 제공, 카테고리화, 또는 저장하는 콘텐츠 소스를 우선적으로 선택할 수 있다. 게다가, 미디어 안내 애플리케이션은 키워드 “last night”을 시간 및 날짜에 관련된 것으로 인식할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화(100)의 날짜 및 시간을 고려할 수 있고, 그에 따라 (예를 들어, “last night”에 대응하는) 현재 날짜 하루 전의 연관된 날짜, 오후 5시 이후의 시간을 갖는 클립들을 검색할 수 있다. 그에 따라, 검색을 위해 사용되는 키워드들은 대화로부터의 식별된 단어들에 대한 말 그대로의 매치들(verbatim matches)일 수 있지만, 그럴 필요는 없다. 일부 실시예들에서, 미디어 안내 애플리케이션은 음성 프로세싱을 사용하여 전체 대화를 단어들로 변환하고, 이어서 변환된 대화의 전체 텍스트 검색을 수행하여 키워드들을 식별할 수 있다. 일부 실시예들에서, 프로세싱을 시작하기 위해 대화가 종료될 필요가 없도록, 미디어 안내 애플리케이션은 대화를 대화내 세그먼트들에서의 텍스트(text in intra-conversation segments)로 변환하고, 세그먼트들로부터의 단어들을 프로세싱할 수 있다.
미디어 안내 애플리케이션은 대화(100)에 적합한 구두 대화 프로세싱 윈도를 사용하여 (예를 들어, 도 1 및 도 2와 도 7 내지 도 10의 맥락에서) 본 명세서에서 개시된 예시적인 단계들을 수행할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 음성을 인식하고, 키워드들을 식별하며, 키워드들에 기초하여 콘텐츠를 검색하고, 콘텐츠를 선택하며, 규정된 양의 시간 내에 콘텐츠를 제시할 수 있다. 따라서, 미디어 안내 애플리케이션은 대화(예를 들어, 대화(100))의 맥락에서 임의의 적합한 시간 스케일로 본 명세서에서 개시된 예시적인 단계들을 수행할 수 있다. 구두 대화 프로세싱 윈도의 시간 스케일(예를 들어, 윈도의 지속기간)은 미리 결정될 수 있고, 대화 자체(예를 들어, 대화가 얼마나 긴지, 대화의 주제, 대화의 참가자들), 미디어 안내 애플리케이션의 액션들을 수행하는 장비(예를 들어, 이용가능한 메모리 및 프로세싱 능력), 사용자 지정 시간 스케일, 미리 결정된 시간 스케일, 관련성 있는 콘텐츠의 길이(예를 들어, 풋볼 플레이(football play)는 최대 10초의 전형적인 시간 스케일을 가짐, 풋볼 경기는 몇 시간의 전형적인 시간 스케일을 가질 수 있음)에 의존할 수 있다
예를 들어, 도 1 및 도 2를 참조하면, 대화(100)를 검출하는 것부터 관련성 있는 클립을 제시하는 것까지의 경과 시간이 수초, 또는 심지어 10초인 경우, 대화(100)는 여전히 진행 중이거나, 또는 "새로 시작된 것(fresh)"일 가능성이 있을 수 있다. 일부 상황들에서, 경과 시간이 (예를 들어, 대화(100)의 시작으로부터, 또는 대화(100)의 종료로부터) 1분인 경우, 대화(100)가 클립으로부터 덜 이득을 볼 수 있는 반면, 다른 상황들에서는 1분이 대화(100)의 지속기간 내에 여전히 있다. 경과 시간이 1시간인 경우, (예를 들어, 비록 유용한 클립의 제시 또는 저장이 여전히 바람직할 수 있더라도) 사용자들(130 또는 140) 중 하나 또는 둘 다가 여전히 존재하지는 않을 수 있다.
대화형 미디어 안내 애플리케이션들은 이들이 안내를 제공하는 콘텐츠에 따라 다양한 형태들을 취할 수 있다. 하나의 전형적인 유형의 미디어 안내 애플리케이션은 대화형 텔레비전 프로그램 가이드(interactive television program guide)이다. 대화형 텔레비전 프로그램 가이드들(때때로 전자 프로그램 가이드들이라고 지칭됨)은, 그 중에서도, 사용자들이 많은 유형들의 콘텐츠 또는 미디어 자산들을 내비게이팅하고 위치확인(locate)할 수 있게 해주는 잘 알려진 안내 애플리케이션들이다. 대화형 미디어 안내 애플리케이션들은 사용자가 콘텐츠를 내비게이팅하고 위치확인하며 선택할 수 있게 해주는 그래픽 사용자 인터페이스 스크린들을 생성할 수 있다. 본 명세서에서 지칭되는 바와 같이, 용어들 "미디어 자산" 및 "콘텐츠"는 텔레비전 프로그래밍은 물론, 페이-퍼-뷰(pay-per-view) 프로그램들, (비디오-온-디맨드(VOD) 시스템들에서와 같은) 온-디맨드 프로그램들, 인터넷 콘텐츠(예를 들어, 스트리밍 콘텐츠, 다운로드가능한 콘텐츠, 웹 캐스트들(Webcasts) 등), 비디오 클립들, 오디오, 콘텐츠 정보, 그림들, 회전 이미지들, 문서들, 플레이리스트들, 웹 사이트들, 기사들, 책들, 전자책들, 블로그들, 채팅 세션들, 소셜 미디어, 애플리케이션들, 게임들, 및/또는 임의의 다른 미디어 또는 멀티미디어 및/또는 이들의 조합과 같은, 전자적으로 소비가능한 사용자 자산을 의미하는 것으로 이해되어야 한다. 안내 애플리케이션들은 또한 사용자들이 콘텐츠를 내비게이팅하고 위치확인할 수 있게 해준다. 본 명세서에서 지칭되는 바와 같이, 용어 "멀티미디어"는 위에서 설명된 적어도 2개의 상이한 콘텐츠 형태, 예를 들어, 텍스트, 오디오, 이미지들, 비디오, 또는 상호작용성 콘텐츠 형태들(interactivity content forms)을 이용하는 콘텐츠를 의미하는 것으로 이해되어야 한다. 콘텐츠는 사용자 장비 디바이스들에 의해 녹화, 재생, 디스플레이 또는 액세스될 수 있을 뿐만 아니라, 라이브 공연의 일부일 수도 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 음성 작동 전자 어시스턴트("음성 작동 개인 어시스턴트" 또는 "전자 어시스턴트"라고도 함)를 포함할 수 있다. 전자 어시스턴트는, 예를 들어, 음성 커맨드들을 수신하고 발화된 단어들 및 문구들을 인식하는 것과 같은 음성 인식을 할 수 있다. 전자 어시스턴트는 음성을 인식하거나, 말을 하거나(예를 들어, 음성 메시지들을 출력함), 음성을 분석하거나(예를 들어, 단어들을 검출함, 문구들을 검출함, 누가 말하고 있는지를 검출함), 미디어 콘텐츠를 관리하거나, 미디어 콘텐츠를 사용자에게 제시하거나, 사용자들의 대화에 대한 응답들을 관리하거나, 콘텐츠를 관리하는 데 도움을 주기 위해 임의의 다른 적합한 액션들을 수행하거나, 또는 이들의 임의의 조합을 수행하도록 구성될 수 있다. 예를 들어, 전자 어시스턴트는 음성에서 패턴들을 검출하고, 전자 어시스턴트의 원하는 액션을 나타낼 수 있는, 하나 이상의 웨이크워드를 인식할 수 있다. 예를 들어, 사용자는, 예를 들어, “awake”를 말할 수 있고, 전자 어시스턴트는 음성 인식을 시작할 수 있다. 일부 실시예들에서, 전자 어시스턴트는 웨이크워드의 발화 또는 (예를 들어, 사용자에 의한) 커맨드가 요망된다는 다른 표시 없이 음성을 인식할 수 있다.
본 명세서에서 논의된 실시예들 중 임의의 것을 수행하기 위한 미디어 안내 애플리케이션 및/또는 임의의 명령어들은 컴퓨터 판독가능 매체들 상에 인코딩될 수 있다. 컴퓨터 판독가능 매체들은 데이터를 저장할 수 있는 임의의 매체들을 포함한다. 컴퓨터 판독가능 매체들은, 전기 또는 전자기 신호들을 전파하는 것을 포함하지만 이에 제한되지 않는, 일시적인 것일 수 있거나, 또는 하드 디스크, 플로피 디스크, USB 드라이브, DVD, CD, 미디어 카드들, 레지스터 메모리, 프로세서 캐시들, 랜덤 액세스 메모리("RAM") 등과 같은 휘발성 및 비휘발성 컴퓨터 메모리 또는 저장 디바이스들을 포함하지만, 이에 제한되지 않는, 비일시적인 것일 수 있다.
인터넷, 모바일 컴퓨팅, 및 고속 무선 네트워크들의 출현으로, 전통적으로 그렇지 않았던 사용자들이 사용자 장비 디바이스들 상에서 미디어에 액세스하고 있다. 본 명세서에서 지칭되는 바와 같이, 문구 "사용자 장비 디바이스", "사용자 장비", "사용자 디바이스", "전자 디바이스", "전자 장비", "미디어 장비 디바이스", 또는 "미디어 디바이스"는, 텔레비전, 스마트 TV, 셋톱 박스, 위성 텔레비전을 핸들링하기 위한 통합 수신기 디코더(integrated receiver decoder; IRD), 디지털 저장 디바이스, 디지털 미디어 수신기(digital media receiver; DMR), 디지털 미디어 어댑터(digital media adapter; DMA), 스트리밍 미디어 디바이스, DVD 플레이어, DVD 레코더, 커넥티드 DVD(connected DVD), 로컬 미디어 서버, BLU-RAY 플레이어, BLU-RAY 레코더, 개인용 컴퓨터(PC), 랩톱 컴퓨터, 태블릿 컴퓨터, WebTV 박스, 개인용 컴퓨터 텔레비전(PC/TV), PC 미디어 서버, PC 미디어 센터, 핸드헬드 컴퓨터, 고정식 전화(stationary telephone), PDA(personal digital assistant), 모바일 전화, 휴대용 비디오 플레이어 , 휴대용 음악 플레이어, 휴대용 게이밍 머신, 스마트폰, 또는 임의의 다른 텔레비전 장비, 컴퓨팅 장비, 또는 무선 디바이스, 및/또는 이들의 조합과 같은, 위에서 설명된 콘텐츠에 액세스하기 위한 임의의 디바이스를 의미하는 것으로 이해되어야 한다. 일부 실시예들에서, 사용자 장비 디바이스는 전방 스크린(front facing screen) 및 후방 스크린(rear facing screen), 다수의 전면 스크린들(front screens), 또는 다수의 각진 스크린들(angled screens)을 가질 수 있다. 일부 실시예들에서, 사용자 장비 디바이스는 전방 카메라(front facing camera) 및/또는 후방 카메라(rear facing camera)를 가질 수 있다. 이러한 사용자 장비 디바이스들 상에서, 사용자들은 텔레비전을 통해 이용가능한 동일한 콘텐츠를 내비게이팅하고 위치확인할 수 있다. 결과적으로, 미디어 안내는 이러한 디바이스들 상에서도 이용가능할 수 있다. 제공되는 안내는 텔레비전을 통해서만 이용가능한 콘텐츠에 대한 것, 다른 유형들의 사용자 장비 디바이스들 중 하나 이상을 통해서만 이용가능한 콘텐츠에 대한 것, 또는 텔레비전 및 다른 유형들의 사용자 장비 디바이스들 중 하나 이상 둘 다를 통해 이용가능한 콘텐츠에 대한 것일 수 있다. 미디어 안내 애플리케이션들은 온라인 애플리케이션들(즉, 웹 사이트 상에서 제공됨)로서, 또는 사용자 장비 디바이스들 상의 독립형 애플리케이션들 또는 클라이언트들로서 제공될 수 있다. 미디어 안내 애플리케이션들을 구현할 수 있는 다양한 디바이스들 및 플랫폼들은 아래에서 더 상세히 설명된다.
미디어 안내 애플리케이션의 기능들 중 하나는 미디어 안내 데이터를 사용자들에게 제공하는 것이다. 본 명세서에서 지칭되는 바와 같이, 문구 "미디어 안내 데이터" 또는 "안내 데이터"는 콘텐츠에 관련된 임의의 데이터 또는 안내 애플리케이션을 동작시키는 데 사용되는 데이터를 의미하는 것으로 이해되어야 한다. 예를 들어, 안내 데이터는 프로그램 정보, 안내 애플리케이션 설정, 사용자 선호도들, 사용자 프로파일 정보, 미디어 리스팅들, 미디어 관련 정보(예를 들어, 방송 시간들, 방송 채널들, 제목들, 설명들, 등급 정보(예를 들어, 부모 통제 등급(parental control ratings), 비평가의 등급(critic's ratings) 등), 장르 또는 카테고리 정보, 배우 정보, 방송사들의 또는 제공자들의 로고들에 대한 로고 데이터 등), 미디어 포맷(예를 들어, 표준 화질(standard definition), 고화질(high definition), 3D 등), 온-디맨드 정보, 블로그들, 웹 사이트들, 및 사용자가 원하는 콘텐츠 셀렉션들을 내비게이팅하고 위치확인하는 데 도움이 되는 임의의 다른 유형의 안내 데이터를 포함할 수 있다.
도 3 및 도 4는 미디어 안내 데이터를 제공하는 데 사용될 수 있는 예시적인 디스플레이 스크린들을 도시하고 있다. 도 3 및 도 4에 도시된 디스플레이 스크린들은 임의의 적당한 사용자 장비 디바이스 또는 플랫폼 상에 구현될 수 있다. 도 3 및 도 4의 디스플레이들이 전체 스크린 디스플레이들(full screen displays)로 예시되어 있지만, 그것들은 또한 디스플레이되고 있는 콘텐츠 위에 전체적으로 또는 부분적으로 오버레이될 수 있다. 사용자는 디스플레이 스크린에서 제공되는 선택가능한 옵션(예를 들어, 메뉴 옵션, 리스팅들 옵션, 아이콘, 하이퍼링크 등)을 선택하는 것 또는 리모컨 또는 다른 사용자 입력 인터페이스 또는 디바이스 상의 전용 버튼(예를 들어, GUIDE 버튼)을 누르는 것에 의해 콘텐츠 정보에 액세스하고자 하는 바램을 표시할 수 있다. 사용자의 표시에 응답하여, 미디어 안내 애플리케이션은, 그리드에서 시간 및 채널별로, 시간별로, 채널별로, 소스별로, 콘텐츠 유형별로, 카테고리(예를 들어, 영화, 스포츠, 뉴스, 어린이, 또는 다른 프로그래밍 카테고리들)별로, 또는 다른 미리 정의된, 사용자 정의된(user-defined), 또는 다른 구성 기준들과 같은, 몇몇 방식들 중 하나로 구성된 미디어 안내 데이터를 디스플레이 스크린에 제공할 수 있다.
도 3은 단일 디스플레이에서 상이한 유형의 콘텐츠에 대한 액세스를 또한 가능하게 해주는 시간 및 채널별로 배열된 프로그램 리스팅들 디스플레이(300)의 예시적인 그리드를 도시하고 있다. 디스플레이(300)는: (1) 채널/콘텐츠 유형 식별자들의 열(column)(304) - (열 내의 셀인) 각각의 채널/콘텐츠 유형 식별자는 이용가능한 상이한 채널 또는 콘텐츠 유형을 식별해줌 -; 및 (2) 시간 식별자들(306)의 행(row) - (행 내의 셀인) 각각의 시간 식별자는 프로그래밍의 시간 블록을 식별해줌 - 을 갖는 그리드(302)를 포함할 수 있다. 그리드(302)는, 프로그램 리스팅들(308)과 같은, 프로그램 리스팅들의 셀들을 또한 포함하며, 여기서 각각의 리스팅은 리스팅들의 관련 채널 및 시간에서 제공된 프로그램의 제목을 제공한다. 사용자 입력 디바이스를 사용하여, 사용자는 하이라이트 영역(310)을 이동시킴으로써 프로그램 리스팅들을 선택할 수 있다. 하이라이트 영역(310)에 의해 선택된 프로그램 리스팅에 관한 정보는 프로그램 정보 영역(312)에 제공될 수 있다. 영역(312)은, 예를 들어, 프로그램 제목, 프로그램 설명, 프로그램이 제공되는 시간(해당되는 경우), 프로그램이 방송 중인 채널(해당되는 경우), 프로그램의 등급, 및 다른 원하는 정보를 포함할 수 있다.
선형 프로그래밍(linear programming)(예를 들어, 미리 결정된 시간에 복수의 사용자 장비 디바이스들에게 전송되도록 스케줄링되고 스케줄에 따라 제공되는 콘텐츠)에 대한 액세스를 제공하는 것에 부가하여, 미디어 안내 애플리케이션은 비-선형 프로그래밍(non-linear programming)(예를 들어, 언제든지 사용자 장비 디바이스에 의해 액세스가능하고 스케줄에 따라 제공되지 않는 콘텐츠)에 대한 액세스를 또한 제공한다. 비-선형 프로그래밍은 온-디맨드 콘텐츠(예를 들어, VOD), 인터넷 콘텐츠(예를 들어, 스트리밍 미디어, 다운로드가능한 미디어 등), 로컬로 저장된 콘텐츠(예를 들어, 위에서 설명된 임의의 사용자 장비 디바이스 또는 다른 저장 디바이스 상에 저장된 콘텐츠), 또는 다른 시간-독립적인 콘텐츠를 포함한, 상이한 콘텐츠 소스들로부터의 콘텐츠를 포함할 수 있다. 온-디맨드 콘텐츠는 특정의 콘텐츠 제공자(예를 들어, "The Sopranos" 및 "Curb Your Enthusiasm"을 제공하는 HBO On Demand)에 의해 제공되는 영화 또는 임의의 다른 콘텐츠를 포함할 수 있다. HBO ON DEMAND는 Time Warner Company L.P. 등이 소유한 서비스 마크이며, THE SOPRANOS 및 CURB YOUR ENTHUSIASM은 Home Box Office, Inc.가 소유한 상표들이다. 인터넷 콘텐츠는, 채팅 세션 또는 웹 캐스트와 같은, 웹 이벤트들, 또는 인터넷 웹 사이트 또는 다른 인터넷 액세스(예를 들어, FTP)를 통해 스트리밍 콘텐츠 또는 다운로드가능한 콘텐츠로서 온-디맨드로 이용가능한 콘텐츠를 포함할 수 있다.
그리드(302)는 온-디맨드 리스팅(314), 녹화된 콘텐츠 리스팅(316), 및 인터넷 콘텐츠 리스팅(318)을 포함하는 비-선형 프로그래밍에 대한 미디어 안내 데이터를 제공할 수 있다. 상이한 유형들의 콘텐츠 소스들로부터의 콘텐츠에 대한 미디어 안내 데이터를 결합시키는 디스플레이는 때때로 "혼합 미디어(mixed-media)" 디스플레이라고 지칭된다. 디스플레이(300)와 상이한, 디스플레이될 수 있는 미디어 안내 데이터의 유형들의 다양한 대체들(permutations)은 사용자 선택 또는 안내 애플리케이션 정의(예를 들어, 녹화물 및 방송 리스팅들만, 온-디맨드 및 방송 리스팅들만 등의 디스플레이)에 기초할 수 있다. 예시된 바와 같이, 리스팅들(314, 316, 및 318)은 이 리스팅들의 선택이 온-디맨드 리스팅들, 녹화물 리스팅들, 또는 인터넷 리스팅들에, 제각기, 전용되는 디스플레이에 대한 액세스를 제공할 수 있다는 것을 나타내기 위해 그리드(302)에서 디스플레이되는 전체 시간 블록에 걸쳐 있는 것으로 도시되어 있다. 일부 실시예들에서, 이러한 콘텐츠 유형들에 대한 리스팅들은 그리드(302)에 직접적으로 포함될 수 있다. 부가 미디어 안내 데이터는 사용자가 네비게이션 아이콘들(navigational icons)(320) 중 하나를 선택하는 것에 응답하여 디스플레이될 수 있다. (사용자 입력 디바이스 상의 화살표 키를 누르는 것은 네비게이션 아이콘들(320)을 선택하는 것과 유사한 방식으로 디스플레이에 영향을 줄 수 있다.)
디스플레이(300)는 비디오 영역(322), 및 옵션들 영역(324)을 또한 포함할 수 있다. 비디오 영역(322)은 사용자가 사용자에게 현재 이용가능하거나, 이용가능할 것이거나, 또는 이용가능했던 프로그램들을 보는 것 및/또는 미리보기하는 것을 가능하게 해줄 수 있다. 비디오 영역(322)의 콘텐츠는 그리드(302)에서 디스플레이되는 리스팅들 중 하나의 리스팅에 대응할 수 있거나 또는 그 하나의 리스팅과 독립적일 수 있다. 비디오 영역을 포함하는 그리드 디스플레이들은 때때로 픽처-인-가이드(picture-in-guide; PIG) 디스플레이들이라고 지칭된다. PIG 디스플레이들 및 그들의 기능성들은 2003년 5월 13일자로 발행된 Satterfield 등의 미국 특허 제6,564,378호 및 2001년 5월 29일자로 발행된 Yuen 등의 미국 특허 제6,239,794호에 더 상세히 설명되는데, 이 미국 특허들은 이로써 그 전체가 참조에 의해 본 명세서에 포함된다. PIG 디스플레이들은 본 명세서에 설명된 실시예들의 다른 미디어 안내 애플리케이션 디스플레이 스크린들에 포함될 수 있다.
옵션들 영역(324)은 사용자가 상이한 유형들의 콘텐츠, 미디어 안내 애플리케이션 디스플레이들, 및/또는 미디어 안내 애플리케이션 특징들에 액세스할 수 있게 해줄 수 있다. 옵션들 영역(324)은 디스플레이(300)(및 본 명세서에서 설명된 다른 디스플레이 스크린들)의 일부일 수 있거나, 또는 온-스크린(on-screen) 옵션을 선택하는 것 또는 사용자 입력 디바이스 상의 전용 또는 할당가능한 버튼을 누르는 것에 의해 사용자에 의해 호출될 수 있다. 옵션들 영역(324) 내의 선택가능 옵션들은 그리드(302)에서의 프로그램 리스팅들에 관련된 특징들에 관한 것일 수 있거나, 메인 메뉴 디스플레이로부터 이용가능한 옵션들을 포함할 수 있다. 프로그램 리스팅들에 관련된 특징들은 프로그램을 수신하는 다른 방송 시간들 또는 방식들을 검색하는 것, 프로그램을 녹화하는 것, 프로그램의 시리즈 녹화를 인에이블시키는 것, 프로그램 및/또는 채널을 즐겨찾기(favorite)로서 설정하는 것, 프로그램을 구매하는 것, 또는 다른 특징들을 포함할 수 있다. 메인 메뉴 디스플레이로부터 이용가능한 옵션들은 검색 옵션들, VOD 옵션들, 부모 통제 옵션들, 인터넷 옵션들, 클라우드 기반 옵션들, 디바이스 동기화 옵션들, 제2 스크린 디바이스 옵션들, 다양한 유형들의 미디어 안내 데이터 디스플레이들에 액세스하는 옵션들, 프리미엄 서비스에 가입하는 옵션들, 사용자의 프로파일을 편집하는 옵션들, 브라우즈 오버레이에 액세스하는 옵션들, 또는 다른 옵션들을 포함할 수 있다.
미디어 안내 애플리케이션은 사용자의 선호도들에 기초하여 개인화될 수 있다. 개인화된 미디어 안내 애플리케이션은 미디어 안내 애플리케이션을 사용하여 개인화된 "경험"을 생성하기 위해 사용자가 디스플레이들 및 특징들을 커스터마이즈할 수 있게 해준다. 이러한 개인화된 경험은 사용자가 이러한 커스터마이제이션들(customizations)을 입력할 수 있게 해주는 것에 의해 그리고/또는 미디어 안내 애플리케이션이 사용자 활동을 모니터링하여 다양한 사용자 선호도들을 결정하는 것에 의해 생성될 수 있다. 사용자들은 안내 애플리케이션에 로그인하는 것 또는 안내 애플리케이션에게 다른 방식으로 신원을 밝히는 것에 의해 자신의 개인화된 안내 애플리케이션에 액세스할 수 있다. 미디어 안내 애플리케이션의 커스터마이제이션은 사용자 프로파일에 따라 이루어질 수 있다. 커스터마이제이션들은 다양한 제시 스킴들(예를 들어, 디스플레이들의 컬러 스킴, 텍스트의 글꼴 크기 등), 디스플레이된 콘텐츠 리스팅들의 양태들(예를 들어, HDTV만 또는 3D 프로그래밍만, 즐겨찾기 채널 셀렉션들(channel selections)에 기초한 사용자 지정 방송 채널들, 채널들의 디스플레이의 재정렬(re-ordering), 추천된 콘텐츠 등), 원하는 녹화 특징들(예를 들어, 특정의 사용자들에 대한 녹화 또는 시리즈 녹화들, 녹화 품질 등), 부모 통제 설정, 인터넷 콘텐츠의 커스터마이즈된 제시(예를 들어, 소셜 미디어 콘텐츠, 이메일, 전자적으로 전달된 기사들 등의 제시) 및 다른 원하는 커스터마이제이션들을 포함할 수 있다.
미디어 안내 애플리케이션은 사용자가 사용자 프로파일 정보를 제공할 수 있게 해줄 수 있거나 또는 사용자 프로파일 정보를 자동으로 수집(compile)할 수 있다. 미디어 안내 애플리케이션은, 예를 들어, 사용자가 액세스하는 콘텐츠 및/또는 사용자가 안내 애플리케이션과 가질 수 있는 다른 상호작용들을 모니터링할 수 있다. 부가적으로, 미디어 안내 애플리케이션은 (예를 들어, www.Tivo.com과 같은, 사용자가 액세스하는 인터넷 상의 다른 웹 사이트들로부터, 사용자가 액세스하는 다른 미디어 안내 애플리케이션들로부터, 사용자가 액세스하는 다른 대화형 애플리케이션들로부터, 사용자의 다른 사용자 장비 디바이스로부터 등) 특정의 사용자에 관련되는 다른 사용자 프로파일들의 전부 또는 일부를 획득할 수 있고, 그리고/또는 미디어 안내 애플리케이션이 액세스할 수 있는 다른 소스들로부터 사용자에 관한 정보를 획득할 수 있다. 그 결과, 사용자는 사용자의 상이한 사용자 장비 디바이스들에 걸쳐 통일된 안내 애플리케이션 경험을 제공받을 수 있다. 이러한 유형의 사용자 경험은 도 6와 관련하여 아래에서 더 상세히 설명된다. 부가의 개인화된 미디어 안내 애플리케이션 특징들은 2005년 7월 11일자로 출원된 Ellis 등의 미국 특허 출원 공개 제2005/0251827호, 2007년 1월 16일자로 발행된 Boyer 등의 미국 특허 제7,165,098호, 및 2002년 2월 21일자로 출원된 Ellis 등의 미국 특허 출원 공개 제2002/0174430호에 더 상세히 설명되어 있으며, 이들은 이로써 그 전체가 참조에 의해 본 명세서에 포함된다.
미디어 안내를 제공하기 위한 다른 디스플레이 배열이 도 4에 도시되어 있다. 비디오 모자이크 디스플레이(400)는 콘텐츠 유형, 장르, 및/또는 다른 구성 기준들에 기초하여 구성되는 콘텐츠 정보에 대한 선택가능 옵션들(402)을 포함한다. 디스플레이(400)에서, 텔레비전 리스팅들 옵션(404)이 선택되고, 따라서 방송 프로그램 리스팅들로서 리스팅들(406, 408, 410, 및 412)을 제공한다. 디스플레이(400)에서, 리스팅들은 커버 아트, 콘텐츠로부터의 스틸 이미지들, 비디오 클립 미리보기들, 콘텐츠로부터의 라이브 비디오, 또는 리스팅에서의 미디어 안내 데이터에 의해 설명되는 콘텐츠를 사용자에게 표시하는 다른 유형들의 콘텐츠를 포함하는 그래픽 이미지들을 제공할 수 있다. 그래픽 리스팅들 각각은 또한 리스팅과 연관된 콘텐츠에 관한 추가 정보를 제공하기 위해 텍스트를 동반할 수 있다. 예를 들어, 리스팅(408)은 미디어 부분(414) 및 텍스트 부분(416)을 포함한, 하나 초과의 부분을 포함할 수 있다. 콘텐츠를 전체 스크린으로 보기 위해 또는 미디어 부분(414)에 디스플레이된 콘텐츠에 관련된 정보를 보기 위해(예컨대, 비디오가 디스플레이되는 채널에 대한 리스팅들을 보기 위해) 미디어 부분(414) 및/또는 텍스트 부분(416)이 선택가능할 수 있다.
디스플레이(400)에서의 리스팅들이 상이한 크기들을 갖지만(즉, 리스팅(406)은 리스팅들(408, 410, 및 412)보다 더 큼), 원하는 경우, 모든 리스팅들이 동일한 크기일 수 있다. 관심의 정도들을 사용자에게 표시하기 위해 또는 특정 콘텐츠를 강조하기 위해, 콘텐츠 제공자가 원하는 대로 또는 사용자 선호도들에 기초하여, 리스팅들이 상이한 크기들을 가질 수 있거나 또는 그래픽적으로 강조될 수 있다. 콘텐츠 리스팅들을 그래픽적으로 강조하기 위한 다양한 시스템들 및 방법들은, 예를 들어, 2009년 11월 12일자로 출원된 Yates의 미국 특허 출원 공개 제2010/0153885호에서 논의되며, 이 미국 출원은 이로써 그 전체가 참조에 의해 본 명세서에 포함된다.
사용자들은 자신의 사용자 장비 디바이스들 중 하나 이상으로부터 콘텐츠 및 미디어 안내 애플리케이션(및 위에서 그리고 아래에서 설명된 그것의 디스플레이 스크린들)에 액세스할 수 있다. 도 5는 예시적인 사용자 장비 디바이스(500)의 일반화된 실시예를 도시한다. 사용자 장비 디바이스들의 더 구체적인 구현들은 도 6과 관련하여 아래에서 논의된다. 사용자 장비 디바이스(500)는 입/출력(이하, "I/O") 경로(502)를 통해 콘텐츠 및 데이터를 수신할 수 있다. I/O 경로(502)는 콘텐츠(예컨대, 방송 프로그래밍, 온-디맨드 프로그래밍, 인터넷 콘텐츠, LAN(local area network) 또는 WAN(wide area network)을 통해 이용가능한 콘텐츠, 및/또는 다른 콘텐츠) 및 데이터를, 프로세싱 회로부(506) 및 스토리지(508)를 포함하는, 제어 회로부(504)에 제공할 수 있다. 제어 회로부(504)는 I/O 경로(502)를 사용하여 커맨드들, 요청들, 및 다른 적합한 데이터를 송신 및 수신하는 데 사용될 수 있다. I/O 경로(502)는 제어 회로부(504)(및 구체적으로는 프로세싱 회로부(506))를 하나 이상의 통신 경로(이하에서 설명됨)에 접속시킬 수 있다. I/O 기능들은 이러한 통신 경로들 중 하나 이상에 의해 제공될 수 있지만, 도면을 과도하게 복잡하게 하는 것을 피하기 위해 도 5에서는 단일 경로로서 도시되어 있다.
제어 회로부(504)는 프로세싱 회로부(506)와 같은 임의의 적당한 프로세싱 회로부에 기초할 수 있다. 본 명세서에서 지칭되는 바와 같이, 프로세싱 회로부는 하나 이상의 마이크로프로세서, 마이크로컨트롤러, 디지털 신호 프로세서, 프로그래밍가능 로직 디바이스, FPGA(field-programmable gate array), ASIC(application-specific integrated circuit) 등에 기초한 회로부를 의미하는 것으로 이해되어야 하며, 다중 코어 프로세서(예를 들어, 듀얼 코어, 쿼드 코어, 헥사 코어, 또는 임의의 적합한 개수의 코어들) 또는 수퍼컴퓨터를 포함할 수 있다. 일부 실시예들에서, 프로세싱 회로부는 다수의 개별 프로세서들 또는 프로세싱 유닛들, 예를 들어, 다수의 동일한 유형의 프로세싱 유닛들(예를 들어, 2개의 Intel Core i7 프로세서) 또는 다수의 상이한 프로세서들(예를 들어, Intel Core i5 프로세서와 Intel Core i7 프로세서)에 걸쳐 분산될 수 있다. 일부 실시예들에서, 제어 회로부(504)는 메모리(즉, 스토리지(508))에 저장되는 미디어 안내 애플리케이션에 대한 명령어들을 실행한다. 구체적으로는, 제어 회로부(504)는 위에서 그리고 아래에서 논의된 기능들을 수행하도록 미디어 안내 애플리케이션에 의해 지시받을 수 있다. 예를 들어, 미디어 안내 애플리케이션은 미디어 안내 디스플레이들을 생성하라는 지시들을 제어 회로부(504)에 제공할 수 있다. 일부 구현예들에서, 제어 회로부(504)에 의해 수행되는 임의의 액션은 미디어 안내 애플리케이션으로부터 수신되는 지시들에 기초할 수 있다.
클라이언트-서버 기반 실시예들에서, 제어 회로부(504)는 안내 애플리케이션 서버 또는 다른 네트워크들 또는 서버들과 통신하기에 적합한 통신 회로부를 포함할 수 있다. 위에서 언급된 기능성을 수행하기 위한 명령어들은 안내 애플리케이션 서버 상에 저장될 수 있다. 통신 회로부는 케이블 모뎀, ISDN(integrated services digital network) 모뎀, DSL(digital subscriber line) 모뎀, 전화 모뎀, 이더넷 카드, 또는 다른 장비와의 통신을 위한 무선 모뎀, 또는 임의의 다른 적합한 통신 회로부를 포함할 수 있다. 그러한 통신은 (도 6과 관련하여 더 상세히 설명되는) 인터넷 또는 임의의 다른 적합한 통신 네트워크들 또는 경로들을 수반할 수 있다. 그에 부가하여, 통신 회로부는 사용자 장비 디바이스들의 피어-투-피어 통신, 또는 서로 떨어져 있는 위치들에 있는 사용자 장비 디바이스들의 통신을 가능하게 해주는 회로부를 포함할 수 있다(아래에서 더 상세히 설명됨).
메모리는 제어 회로부(504)의 일부인 스토리지(508)로서 제공된 전자 스토리지 디바이스일 수 있다. 본 명세서에서 지칭되는 바와 같이, 문구 "전자 저장 디바이스" 또는 "저장 디바이스"는, 랜덤 액세스 메모리, 판독 전용 메모리, 하드 드라이브들, 광학 드라이브들, DVD(digital video disc) 레코더들, CD(compact disc) 레코더들, BD(BLU-RAY disc) 레코더들, BLU-RAY 3D 디스크 레코더들, 디지털 비디오 레코더들(DVR, 때때로 개인용 비디오 레코더(personal video recorder) 또는 PVR이라고 불림), 솔리드 스테이트 디바이스들, 양자 저장 디바이스들(quantum storage devices), 게이밍 콘솔들, 게이밍 매체들, 또는 임의의 다른 적합한 고정식 또는 이동식 저장 디바이스들, 및/또는 이들의 임의의 조합과 같은, 전자 데이터, 컴퓨터 소프트웨어, 또는 펌웨어를 저장하기 위한 임의의 디바이스를 의미하는 것으로 이해되어야 한다. 스토리지(508)는 본 명세서에 설명된 다양한 유형들의 콘텐츠는 물론 위에서 설명된 미디어 안내 데이터를 저장하는 데 사용될 수 있다. 비휘발성 메모리가 (예를 들어, 부트-업 루틴(boot-up routine) 및 다른 명령어들을 론칭하기 위해) 또한 사용될 수 있다. 도 6과 관련하여 설명된, 클라우드 기반 스토리지는 스토리지(508)를 보충하기 위해 또는 스토리지(508) 대신에 사용될 수 있다.
제어 회로부(504)는 비디오 생성 회로부 및, 하나 이상의 아날로그 튜너와 같은, 튜닝 회로부, 하나 이상의 MPEG-2 디코더 또는 다른 디지털 디코딩 회로부, 고화질 튜너들, 또는 임의의 다른 적당한 튜닝 또는 비디오 회로들 또는 그러한 회로들의 조합들을 포함할 수 있다. (예를 들어, 오버-디-에어(over-the-air), 아날로그, 또는 디지털 신호들을 저장을 위해 MPEG 신호들로 변환하기 위한) 인코딩 회로부가 또한 제공될 수 있다. 제어 회로부(504)는 콘텐츠를 사용자 장비(500)의 바람직한 출력 포맷으로 업컨버팅(upconverting) 및 다운컨버팅(downconverting)하기 위한 스케일러 회로부(scaler circuitry)를 또한 포함할 수 있다. 회로부(504)는 디지털 신호들과 아날로그 신호들 간을 변환하기 위한 디지털-아날로그 변환기 회로부 및 아날로그-디지털 변환기 회로부를 또한 포함할 수 있다. 튜닝 및 인코딩 회로부는 콘텐츠를 수신하여 디스플레이하기 위해, 재생하기 위해, 또는 레코딩하기 위해 사용자 장비 디바이스에 의해 사용될 수 있다. 튜닝 및 인코딩 회로부는 안내 데이터를 수신하는 데 또한 사용될 수 있다. 예를 들어, 튜닝, 비디오 생성, 인코딩, 디코딩, 암호화, 복호화, 스케일러, 및 아날로그/디지털 회로부를 포함한, 본 명세서에 설명된 회로부는 하나 이상의 범용 또는 특수 프로세서 상에서 실행되는 소프트웨어를 사용하여 구현될 수 있다. 동시 튜닝 기능들(예를 들어, 시청 및 녹화 기능들, PIP(picture-in-picture) 기능들, 다중 튜너 녹화 등)을 핸들링하기 위해 다수의 튜너들이 제공될 수 있다. 스토리지(508)가 사용자 장비(500)와 별개의 디바이스로서 제공되는 경우, (다수의 튜너들을 포함하는) 튜닝 및 인코딩 회로부는 스토리지(508)와 연관될 수 있다.
사용자는 사용자 입력 인터페이스(510)를 사용하여 제어 회로부(504)에게 지시들을 송신할 수 있다. 사용자 입력 인터페이스(510)는, 리모컨, 마우스, 트랙볼, 키패드, 키보드, 터치 스크린, 터치패드, 스타일러스 입력, 조이스틱, 보이스 인식(voice recognition) 인터페이스, 또는 다른 사용자 입력 인터페이스들과 같은, 임의의 적합한 사용자 인터페이스일 수 있다. 디스플레이(512)는 독립형 디바이스로서 제공될 수 있거나 또는 사용자 장비 디바이스(500)의 다른 요소들과 통합될 수 있다. 예를 들어, 디스플레이(512)는 터치스크린 또는 터치 감응 디스플레이일 수 있다. 그러한 상황들에서, 사용자 입력 인터페이스(510)는 디스플레이(512)와 통합될 수 있거나 디스플레이(512)와 결합될 수 있다. 디스플레이(512)는 모니터, 텔레비전, 모바일 디바이스용 LCD(liquid crystal display), 비정질 실리콘 디스플레이, 저온 폴리 실리콘 디스플레이, 전자 잉크 디스플레이, 전기 영동 디스플레이, 액티브 매트릭스 디스플레이, 전기 습윤 디스플레이(electro-wetting display), 전기 유체 디스플레이(electrofluidic display), 음극선관 디스플레이, 발광 다이오드 디스플레이, 전자 발광 디스플레이, 플라스마 디스플레이 패널, 고성능 어드레싱 디스플레이(high-performance addressing display), 박막 트랜지스터 디스플레이, 유기 발광 다이오드 디스플레이, 표면 전도 전자 방출 디스플레이(surface-conduction electron-emitter display; SED), 레이저 텔레비전, 탄소 나노튜브들, 양자점 디스플레이, 간섭계 변조기 디스플레이(interferometric modulator display), 또는 시각적 이미지들을 디스플레이하기 위한 임의의 다른 적합한 장비 중 하나 이상일 수 있다. 일부 실시예들에서, 디스플레이(512)는 HDTV 가능(HDTV-capable)일 수 있다. 일부 실시예들에서, 디스플레이(512)는 3D 디스플레이일 수 있고, 대화형 미디어 안내 애플리케이션 및 임의의 적합한 콘텐츠가 3D로 디스플레이될 수 있다. 비디오 카드 또는 그래픽 카드는 디스플레이(512)로의 출력을 생성할 수 있다. 비디오 카드는 3D 장면들 및 2D 그래픽들의 가속 렌더링, MPEG-2/MPEG-4 디코딩, TV 출력, 또는 다수의 모니터들을 접속시키는 능력과 같은 다양한 기능들을 제공할 수 있다. 비디오 카드는 제어 회로부(504)와 관련하여 위에서 설명된 임의의 프로세싱 회로부일 수 있다. 비디오 카드는 제어 회로부(504)와 통합될 수 있다. 스피커들(514)은 사용자 장비 디바이스(500)의 다른 요소들과 통합되는 것으로 제공될 수 있거나 독립형 유닛들일 수 있다. 디스플레이(512) 상에 디스플레이되는 비디오들 및 다른 콘텐츠의 오디오 컴포넌트는 스피커들(514)을 통해 재생될 수 있다. 일부 실시예들에서, 오디오는, 오디오를 프로세싱하여 스피커들(514)을 통해 출력하는, 수신기(도시되지 않음)에 배포될 수 있다.
안내 애플리케이션은 임의의 적합한 아키텍처를 사용하여 구현될 수 있다. 예를 들어, 이는 사용자 장비 디바이스(500) 상에 전체적으로 구현된 독립형 애플리케이션일 수 있다. 그러한 접근법에서, 애플리케이션의 명령어들은 로컬로(예를 들어, 스토리지(508))에 저장되고, 애플리케이션에 의해 사용하기 위한 데이터는 (예를 들어, 대역외 피드(out-of-band feed)로부터, 인터넷 자원으로부터, 또는 다른 적합한 접근법을 사용하여) 주기적으로 다운로드된다. 제어 회로부(504)는 애플리케이션의 명령어들을 스토리지(508)로부터 리트리빙하고 본 명세서에서 논의된 디스플레이들 중 임의의 것을 생성하기 위해 명령어들을 프로세싱할 수 있다. 프로세싱된 명령어들에 기초하여, 제어 회로부(504)는 입력이 입력 인터페이스(510)로부터 수신될 때 어떤 액션을 수행할지를 결정할 수 있다. 예를 들어, 입력 인터페이스(510)가 위/아래(up/down) 버튼이 선택되었음을 나타낼 때 디스플레이 상의 커서의 위/아래로의 이동이 프로세싱된 명령어들에 의해 나타내어질 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 클라이언트-서버 기반 애플리케이션이다. 사용자 장비 디바이스(500) 상에 구현된 씩(thick) 또는 씬(thin) 클라이언트에 의한 사용을 위한 데이터는 요청들을 사용자 장비 디바이스(500)에 원격인 서버에 발행함으로써 온-디맨드로 리트리빙된다. 클라이언트-서버 기반 안내 애플리케이션의 일 예에서, 제어 회로부(504)는 원격 서버에 의해 제공되는 웹 페이지들을 해석하는 웹 브라우저를 실행한다. 예를 들어, 원격 서버는 애플리케이션에 대한 명령어들을 저장 디바이스에 저장할 수 있다. 원격 서버는 저장된 명령어들을 회로부(예컨대, 제어 회로부(504))를 사용하여 프로세싱하고 이상에서 그리고 이하에서 논의된 디스플레이들을 생성할 수 있다. 클라이언트 디바이스는 원격 서버에 의해 생성된 디스플레이들을 수신할 수 있으며, 디스플레이들의 콘텐츠를 장비 디바이스(500) 상에 로컬적으로 디스플레이할 수 있다. 이러한 방식으로, 명령어들의 프로세싱은 서버에 의해 원격적으로 수행되는 반면, 결과적인 디스플레이들은 장비 디바이스(500) 상에 로컬적으로 제공된다. 장비 디바이스(500)는 입력 인터페이스(510)를 통해 사용자로부터 입력들을 수신하고 대응하는 디스플레이들을 프로세싱 및 생성하기 위해 그 입력들을 원격 서버에게 전송할 수 있다. 예를 들어, 장비 디바이스(500)는 입력 인터페이스(510)를 통해 위/아래 버튼이 선택되었음을 나타내는 통신을 원격 서버에게 전송할 수 있다. 원격 서버는 그 입력에 따라 명령어들을 프로세싱하고 입력에 대응하는 애플리케이션의 디스플레이(예를 들어, 커서를 위/아래로 이동시키는 디스플레이)를 생성할 수 있다. 생성된 디스플레이는 이어서 사용자에게 제시하기 위해 장비 디바이스(500)에게 전송된다.
일부 실시예들에서, 미디어 안내 애플리케이션은 (제어 회로부(504)에 의해 실행되는) 인터프리터(interpreter) 또는 가상 머신에 의해 다운로드되어 인터프리트되거나 또는 다른 방식으로 실행된다. 일부 실시예들에서, 안내 애플리케이션은 EBIF(ETV Binary Interchange Format)로 인코딩되고, 적합한 피드의 일부로서 제어 회로부(504)에 의해 수신되며, 제어 회로부(504) 상에서 실행되는 사용자 에이전트에 의해 인터프리트될 수 있다. 예를 들어, 안내 애플리케이션은 EBIF 애플리케이션일 수 있다. 일부 실시예들에서, 안내 애플리케이션은 제어 회로부(504)에 의해 실행되는 로컬 가상 머신 또는 다른 적합한 미들웨어에 의해 수신되고 실행되는 일련의 자바 기반 파일들에 의해 정의될 수 있다. 그러한 실시예들 중 일부(예를 들어, MPEG-2 또는 다른 디지털 미디어 인코딩 스킴들을 이용하는 것들)에서, 안내 애플리케이션은, 예를 들어, 프로그램의 MPEG 오디오 및 비디오 패킷들과 함께 MPEG-2 객체 캐로셀(MPEG-2 object carousel)에 인코딩되어 전송될 수 있다.
오디오 입력 디바이스(520)는 환경(예를 들어, 대화하는 근처의 사용자들)으로부터의 오디오 신호들을 수신하고, 오디오 신호를 전자 신호, 광학 신호, 프로세싱 및 통신될 수 있는 임의의 다른 신호, 또는 이들의 임의의 조합으로 변환할 수 있는 마이크로폰, 또는 다른 적합한 디바이스를 포함할 수 있다. 오디오 입력 디바이스(520)는 와이어-코일 유형 마이크로폰, 용량성 마이크로폰, 압전 마이크로폰, 전치증폭기들, 신호 증폭기들, 신호 컨디셔너들, 필터들, 임의의 다른 적합한 컴포넌트들, 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 오디오 입력 디바이스(520)는 오디오 신호들을 프로세싱하고, 프로세싱된 신호들을 (예를 들어, 추가 프로세싱을 위해) 제어 회로부(506)에 통신하기 위한 프로세싱 회로부를 포함할 수 있다. 일부 실시예들에서, 오디오 입력 디바이스(520)는 (예를 들어, 음파들을 전기 또는 광학 신호들로 변환하기 위한) 메커니즘을 포함할 수 있고, 신호의 대부분의 실질적인 프로세싱은 제어 회로부(506)에 의해 수행된다. 예를 들어, 오디오 입력 디바이스(520)는 대응하는 전기 신호를 제어 회로부(506)에 전송하기 위한 마이크로폰 및 증폭기를 포함할 수 있고, 제어 회로부(506)는 음성 인식, 보이스 인식을 수행할 수 있거나, 또는 구두 대화를 다른 방식으로 프로세싱할 수 있다. 일부 실시예들에서, 오디오 입력 디바이스(520)는 사용자 디바이스의 일부로서 통합될 수 있다(예를 들어, 내장 마이크로폰). 예를 들어, 도 1을 참조하면, 사용자 디바이스(102)는 음성을 검출하기 위한 통합 마이크로폰을 포함할 수 있다.
도 5의 사용자 장비 디바이스(500)는 도 6의 시스템(600)에서 사용자 텔레비전 장비(602), 사용자 컴퓨터 장비(604), 무선 사용자 통신 디바이스(606), 또는 비-휴대용 게이밍 머신과 같은, 콘텐츠에 액세스하기에 적당한 임의의 다른 유형의 사용자 장비로서 구현될 수 있다. 단순함을 위해, 이러한 디바이스들은 본 명세서에서 집합적으로 사용자 장비 또는 사용자 장비 디바이스들이라고 지칭될 수 있으며, 위에서 설명된 사용자 장비 디바이스들과 실질적으로 유사할 수 있다. 미디어 안내 애플리케이션이 구현될 수 있는 사용자 장비 디바이스들은 독립형 디바이스로서 기능할 수 있거나 또는 디바이스들의 네트워크의 일부일 수 있다. 디바이스들의 다양한 네트워크 구성들이 구현될 수 있으며, 아래에서 더 상세히 논의된다.
도 5와 관련하여 앞서 설명된 시스템 특징들 중 적어도 일부를 이용하는 사용자 장비 디바이스는 사용자 텔레비전 장비(602), 사용자 컴퓨터 장비(604), 또는 무선 사용자 통신 디바이스(606)로만 분류되지 않을 수 있다. 예를 들어, 사용자 텔레비전 장비(602)는, 일부 사용자 컴퓨터 장비(604)와 같이, 인터넷 콘텐츠에 대한 액세스를 가능하게 해주는 인터넷 가능(Internet-enabled)일 수 있는 반면, 사용자 컴퓨터 장비(604)는, 일부 텔레비전 장비(602)와 같이, 텔레비전 프로그래밍에 대한 액세스를 가능하게 해주는 튜너를 포함할 수 있다. 미디어 안내 애플리케이션은 다양한 상이한 유형들의 사용자 장비 상에서 동일한 레이아웃을 가질 수 있거나 또는 사용자 장비의 디스플레이 능력에 맞춰 조정될 수 있다. 예를 들어, 사용자 컴퓨터 장비(604) 상에서, 안내 애플리케이션은 웹 브라우저에 의해 액세스되는 웹 사이트로서 제공될 수 있다. 다른 예에서, 안내 애플리케이션은 무선 사용자 통신 디바이스들(606)에 대해 스케일링 다운(scale down)될 수 있다.
시스템(600)에, 전형적으로 하나 초과의 각각의 유형의 사용자 장비 디바이스가 있지만 도면을 과도하게 복잡하게 하는 것을 피하기 위해 각각의 유형이 단지 하나만 도 6에 도시되어 있다. 그에 부가하여, 각각의 사용자는 하나 초과의 유형의 사용자 장비 디바이스 그리고 또한 하나 초과의 각각의 유형의 사용자 장비 디바이스를 이용할 수 있다.
일부 실시예들에서, 사용자 장비 디바이스(예를 들어, 사용자 텔레비전 장비(602), 사용자 컴퓨터 장비(604), 무선 사용자 통신 디바이스(606))는 "제2 스크린 디바이스"라고 지칭될 수 있다. 예를 들어, 제2 스크린 디바이스는 제1 사용자 장비 디바이스 상에서 제시되는 콘텐츠를 보충할 수 있다. 제2 스크린 디바이스 상에서 제시되는 콘텐츠는 제1 디바이스 상에서 제시되는 콘텐츠를 보충하는 임의의 적합한 콘텐츠일 수 있다. 일부 실시예들에서, 제2 스크린 디바이스는 제1 디바이스의 설정들 및 디스플레이 기본설정들을 조정하기 위한 인터페이스를 제공한다. 일부 실시예들에서, 제2 스크린 디바이스는 다른 제2 스크린 디바이스들과 상호작용하도록 또는 소셜 네트워크와 상호작용하도록 구성된다. 제2 스크린 디바이스는 제1 디바이스와 동일한 방에, 제1 디바이스와 상이한 방에 그러나 동일한 주택 또는 건물에, 또는 제1 디바이스와 상이한 건물에 위치될 수 있다.
사용자는 또한 가정내 디바이스들 및 원격 디바이스들에 걸쳐 일관된 미디어 안내 애플리케이션 설정들을 유지하기 위해 다양한 설정들을 설정할 수 있다. 설정들은 본 명세서에 설명된 것들은 물론, 채널 및 프로그램 즐겨찾기들, 안내 애플리케이션이 프로그래밍 추천들을 하기 위해 이용하는 프로그래밍 선호도들, 디스플레이 기본설정들, 및 다른 바람직한 안내 설정들을 포함한다. 예를 들어, 사용자가 자신의 사무실에 있는 자신의 개인용 컴퓨터 상에서, 예를 들어, 웹 사이트 www.Tivo.com 상에서 한 채널을 즐겨찾기로서 설정하는 경우, 동일한 채널이 사용자의 가정내 디바이스들(예를 들어, 사용자 텔레비전 장비 및 사용자 컴퓨터 장비)은 물론, 원하는 경우, 사용자의 모바일 디바이스들 상에서 즐겨찾기로서 나타날 것이다. 따라서, 하나의 사용자 장비 디바이스 상에서 행해진 변경들은 다른 사용자 장비 디바이스 상에서의 안내 경험을, 이들이 동일한 또는 상이한 유형의 사용자 장비 디바이스인지에 관계없이, 변경할 수 있다. 그에 부가하여, 행해진 변경들은 사용자에 의해 입력되는 설정들은 물론, 안내 애플리케이션에 의해 모니터링되는 사용자 활동에 기초할 수 있다.
사용자 장비 디바이스는 통신 네트워크(614)에 커플링될 수 있다. 즉, 사용자 텔레비전 장비(602), 사용자 컴퓨터 장비(604), 및 무선 사용자 통신 디바이스(606)는, 제각기, 통신 경로들(608, 610, 및 612)을 통해 통신 네트워크(614)에 커플링된다. 통신 네트워크(614)는 인터넷, 모바일 폰 네트워크, 모바일 음성 또는 데이터 네트워크(예를 들어, 4G 또는 LTE 네트워크), 케이블 네트워크, 공중 교환 전화 네트워크(public switched telephone network), 또는 다른 유형들의 통신 네트워크 또는 통신 네트워크들의 조합들을 포함하는 하나 이상의 네트워크일 수 있다. 경로들(608, 610, 및 612)은, 위성 경로, 광 섬유 경로, 케이블 경로, 인터넷 통신(예를 들어, IPTV)을 지원하는 경로, (예를 들어, 방송 또는 다른 무선 신호들을 위한) 자유 공간 접속들, 또는 임의의 다른 적합한 유선 또는 무선 통신 경로 또는 그러한 경로들의 조합과 같은, 하나 이상의 통신 경로를 개별적으로 또는 함께 포함할 수 있다. 경로(612)는, 도 6에 도시된 예시적인 실시예에서, 그것이 무선 경로임을 나타내기 위해 점선으로 그려져 있고, 경로들(608 및 610)은 그것들이 유선 경로들임을 나타내기 위해 실선으로 그려져 있다(그러나 이 경로들은, 원하는 경우, 무선 경로들일 수 있음). 사용자 장비 디바이스들과의 통신은 이러한 통신 경로들 중 하나 이상에 의해 제공될 수 있지만, 도면을 과도하게 복잡하게 하는 것을 피하기 위해 도 6에 단일 경로로서 도시되어 있다.
비록 사용자 장비 디바이스들 사이에 통신 경로들이 그려져 있지 않지만, 이러한 디바이스들은, 경로들(608, 610, 및 612)과 관련하여 앞서 설명된 것들과 같은, 통신 경로들은 물론, USB 케이블들, IEEE 1394 케이블들, 무선 경로들(예컨대, 블루투스, 적외선, IEEE 802-11x 등), 또는 유선 또는 무선 경로들을 통한 다른 단거리 통신과 같은, 다른 단거리 포인트-투-포인트 통신 통신 경로들을 통해 서로 직접 통신할 수 있다. 블루투스는 Bluetooth SIG, INC.가 소유한 인증 마크(certification mark)이다. 사용자 장비 디바이스들은 또한 통신 네트워크(614)를 경유한 간접 경로를 통해 서로 직접 통신할 수 있다.
시스템(600)은, 제각기, 통신 경로들(620 및 622)을 통해 통신 네트워크(614)에 커플링된 콘텐츠 소스(616) 및 미디어 안내 데이터 소스(618)를 포함한다. 경로들(620 및 622)은 경로들(608, 610, 및 612)과 관련하여 앞서 설명된 통신 경로들 중 임의의 것을 포함할 수 있다. 콘텐츠 소스(616) 및 미디어 안내 데이터 소스(618)와의 통신은 하나 이상의 통신 경로를 통해 교환될 수 있지만, 도면을 과도하게 복잡하게 하는 것을 피하기 위해 도 6에 단일 경로로서 도시되어 있다. 그에 부가하여, 콘텐츠 소스(616) 및 미디어 안내 데이터 소스(618) 각각이 2개 이상 있을 수 있지만, 도면을 과도하게 복잡하게 하는 것을 피하기 위해 각각이 단지 하나만 도 6에 도시되어 있다. (상이한 유형들의 이러한 소스들 각각은 아래에서 논의된다.) 원하는 경우, 콘텐츠 소스(616) 및 미디어 안내 데이터 소스(618)는 하나의 소스 디바이스로서 통합될 수 있다. 비록 소스들(616 및 618)과 사용자 장비 디바이스들(602, 604, 및 606) 사이의 통신이 통신 네트워크(614)를 통하는 것으로서 도시되어 있지만, 일부 실시예들에서, 소스들(616 및 618)은 경로들(608, 610, 및 612)과 관련하여 위에서 설명된 것들과 같은 통신 경로들(도시되지 않음)을 통해 사용자 장비 디바이스들(602, 604, 및 606)과 직접 통신할 수 있다.
시스템(600)은 통신 경로(626)를 통해 통신 네트워크(614)에 커플링되는 광고 소스(624)를 또한 포함할 수 있다. 경로(626)는 경로들(608, 610, 및 612)과 관련하여 위에서 설명된 통신 경로들 중 임의의 것을 포함할 수 있다. 광고 소스(624)는 어느 광고들을 어느 상황들 하에서 특정 사용자들에게 전송할 것인지를 결정하기 위한 광고 로직을 포함할 수 있다. 예를 들어, 케이블 운영자는 특정 채널들 상에서 특정 시간 슬롯들 동안 광고들을 삽입할 권리를 가질 수 있다. 따라서, 광고 소스(624)는 그 시간 슬롯들 동안 사용자들에게 광고들을 전송할 수 있다. 다른 예로서, 광고 소스는 특정의 프로그램을 보는 것으로 알려진 사용자들(예컨대, 리얼리티 프로그램을 보는 십대들)의 인구통계에 기초하여 광고들을 타깃팅할 수 있다. 또 다른 예로서, 광고 소스는 미디어 자산을 보고 있는 사용자 장비의 위치(예컨대, 동부 해안 또는 서부 해안)에 따라 상이한 광고들을 제공할 수 있다.
일부 실시예들에서, 광고 소스(624)는 타깃팅된 광고를 제공하기 위해 사용자와 연관된 광고 적합성 점수들을 포함하는 사용자 정보를 유지하도록 구성될 수 있다. 부가적으로 또는 대안적으로, 광고 소스(624)와 연관된 서버는 광고 적합성 점수들을 도출하는 데 사용될 수 있는 원시 정보를 저장하도록 구성될 수 있다. 일부 실시예들에서, 광고 소스(624)는 원시 정보에 대한 요청을 다른 디바이스에게 전송하고 광고 적합성 점수들을 계산할 수 있다. 광고 소스(624)는 특정 사용자들(예컨대, 사용자들의 제1 서브세트, 제2 서브세트, 또는 제3 서브세트)에 대한 광고 적합성 점수들을 업데이트하고, 타깃 제품의 광고를 적절한 사용자들에게 전송할 수 있다.
콘텐츠 소스(616)는 텔레비전 배포 설비, 케이블 시스템 헤드엔드, 위성 배포 설비, 프로그래밍 소스들(예컨대, NBC, ABC, HBO 등과 같은, 텔레비전 방송국들), 중간 배포 설비들 및/또는 서버들, 인터넷 제공자들, 온-디맨드 미디어 서버들, 및 다른 콘텐츠 제공자들을 포함한 하나 이상의 유형의 콘텐츠 배포 장비를 포함할 수 있다. NBC는 National Broadcasting Company, Inc.가 소유한 상표이고, ABC는 American Broadcasting Company, Inc.가 소유한 상표이며, HBO는 Home Box Office, Inc.가 소유한 상표이다. 콘텐츠 소스(616)는 콘텐츠의 창작자(originator)일 수 있거나(예컨대, 텔레비전 방송국, 웹 캐스트 제공자 등) 또는 콘텐츠의 창작자가 아닐 수 있다(예컨대, 온-디맨드 콘텐츠 제공자, 다운로드를 위한 방송 프로그램들의 콘텐츠의 인터넷 제공자 등). 콘텐츠 소스(616)는 케이블 소스들, 위성 제공자들, 온-디맨드 제공자들, 인터넷 제공자들, 오버-더-톱(over-the-top) 콘텐츠 제공자들, 또는 다른 콘텐츠 제공자들을 포함할 수 있다. 콘텐츠 소스(616)는 상이한 유형들의 콘텐츠(사용자에 의해 선택된 비디오 콘텐츠를 포함함)를, 사용자 장비 디바이스들 중 임의의 것으로부터 멀리 떨어진 위치에, 저장하는 데 사용되는 원격 미디어 서버를 또한 포함할 수 있다. 콘텐츠의 원격 저장, 및 원격적으로 저장된 콘텐츠를 사용자 장비에 제공하는 것을 위한 시스템들 및 방법들은 2010년 7월 20일자로 발행된 Ellis 등의 미국 특허 제7,761,892호와 관련하여 더 상세히 논의되며, 이 미국 특허는 이로써 그 전체가 참조에 의해 본 명세서에 포함된다.
미디어 안내 데이터 소스(618)는, 앞서 설명된 미디어 안내 데이터와 같은, 미디어 안내 데이터를 제공할 수 있다. 미디어 안내 데이터는 임의의 적합한 접근법을 사용하여 사용자 장비 디바이스들에 제공될 수 있다. 일부 실시예들에서, 안내 애플리케이션은 데이터 피드(예를 들어, 연속적인 피드(continuous feed) 또는 트리클 피드(trickle feed))를 통해 프로그램 가이드 데이터를 수신하는 독립형 대화형 텔레비전 프로그램 가이드일 수 있다. 프로그램 스케줄 데이터 및 다른 안내 데이터는 텔레비전 채널 측파대(television channel sideband)에서, 대역내 디지털 신호를 사용하여, 대역외 디지털 신호를 사용하여, 또는 임의의 다른 적합한 데이터 전송 기술에 의해 사용자 장비에 제공될 수 있다. 프로그램 스케줄 데이터 및 다른 미디어 안내 데이터는 다수의 아날로그 또는 디지털 텔레비전 채널들 상에서 사용자 장비에 제공될 수 있다.
일부 실시예들에서, 미디어 안내 데이터 소스(618)로부터의 안내 데이터는 클라이언트-서버 접근법을 사용하여 사용자들의 장비에 제공될 수 있다. 예를 들어, 사용자 장비 디바이스는 서버로부터 미디어 안내 데이터를 풀링(pull)할 수 있거나, 또는 서버가 미디어 안내 데이터를 사용자 장비 디바이스로 푸싱(push)할 수 있다. 일부 실시예들에서, 사용자의 장비 상에 존재하는 안내 애플리케이션 클라이언트는, 필요할 때, 예를 들어, 안내 데이터가 오래되었을 때 또는 사용자 장비 디바이스가 데이터를 수신하라는 사용자로부터의 요청을 수신할 때, 안내 데이터를 획득하기 위해 소스(618)와의 세션들을 개시할 수 있다. 임의의 적합한 빈도로(예를 들어, 연속적으로, 매일, 사용자 지정 시간 기간마다, 시스템 지정 시간 기간마다, 사용자 장비로부터의 요청에 응답하여 등) 미디어 안내가 사용자 장비에 제공될 수 있다. 미디어 안내 데이터 소스(618)는 사용자 장비 디바이스들(602, 604 및 606)에 미디어 안내 애플리케이션 자체 또는 미디어 안내 애플리케이션에 대한 소프트웨어 업데이트들을 제공할 수 있다.
일부 실시예들에서, 미디어 안내 데이터는 시청자 데이터(viewer data)를 포함할 수 있다. 예를 들어, 시청자 데이터는 현재의 및/또는 과거의 사용자 활동 정보(예를 들어, 사용자가 전형적으로 어떤 콘텐츠를 시청하는지, 하루 중 어떤 시간들에서 사용자가 콘텐츠를 시청하는지, 사용자가 소셜 네트워크와 상호작용하는지 여부, 어떤 시간들에서 사용자가 정보를 포스팅하기 위해 소셜 네트워크와 상호작용하는지, 사용자가 전형적으로 어떤 유형들의 콘텐츠를 시청하는지(예를 들어, 유료 TV 또는 무료 TV), 기분, 뇌 활동 정보 등)를 포함할 수 있다. 미디어 안내 데이터는 가입 데이터를 또한 포함할 수 있다. 예를 들어, 가입 데이터는 주어진 사용자가 어느 소스들 또는 서비스들에 가입하는지 및/또는 주어진 사용자가 어느 소스들 또는 서비스들에 이전에 가입했으나 나중에 액세스를 종료했는지(예를 들어, 사용자가 프리미엄 채널들에 가입하는지 여부, 사용자가 프리미엄 레벨의 서비스들을 추가했는지 여부, 사용자가 인터넷 속도를 증가시켰는지 여부)를 식별해줄 수 있다. 일부 실시예들에서, 시청자 데이터 및/또는 가입 데이터는 1년 초과의 기간 동안 주어진 사용자의 패턴들을 식별해줄 수 있다. 미디어 안내 데이터는 주어진 사용자가 서비스/소스에 대한 액세스를 종료할 가능성을 나타내는 점수를 생성하는 데 사용되는 모델(예를 들어, 생존자 모델(survivor model))을 포함할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 주어진 사용자가 특정의 서비스 또는 소스에 대한 액세스를 종료할지 여부의 가능성을 나타내는 값 또는 점수를 생성하기 위해 그 모델을 사용하여 시청자 데이터를 가입 데이터와 함께 프로세싱할 수 있다. 상세하게는, 더 높은 점수는 사용자가 특정의 서비스 또는 소스에 대한 액세스를 종료할 것이라는 더 높은 신뢰 수준(level of confidence)을 나타낼 수 있다. 점수에 기초하여, 미디어 안내 애플리케이션은 사용자가 액세스를 종료할 가능성이 있을 것으로서 점수에 의해 나타내어지는 특정의 서비스 또는 소스를 유지하도록 사용자를 유도하는 프로모션들을 생성할 수 있다.
미디어 안내 애플리케이션은, 예를 들어, 사용자 장비 디바이스들 상에 구현된 독립형 애플리케이션들일 수 있다. 예를 들어, 미디어 안내 애플리케이션은 스토리지(508)에 저장되고 사용자 장비 디바이스(500)의 제어 회로부(504)에 의해 실행될 수 있는 소프트웨어 또는 실행가능 명령어들의 세트로서 구현될 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션들은 클라이언트 애플리케이션만이 사용자 장비 디바이스 상에 존재하고 서버 애플리케이션이 원격 서버 상에 존재하는 클라이언트-서버 애플리케이션들일 수 있다. 예를 들어, 미디어 안내 애플리케이션들은 부분적으로 사용자 장비 디바이스(500)의 제어 회로부(504) 상의 클라이언트 애플리케이션으로서 그리고 부분적으로 원격 서버 상의 제어 회로부 상에서 실행되는 서버 애플리케이션(예컨대, 미디어 안내 데이터 소스(618))으로서 원격 서버 상에 구현될 수 있다. (미디어 안내 데이터 소스(618)와 같은) 원격 서버의 제어 회로부에 의해 실행될 때, 미디어 안내 애플리케이션은 안내 애플리케이션 디스플레이들을 생성하고 생성된 디스플레이들을 사용자 장비 디바이스들에게 전송하도록 제어 회로부에 지시할 수 있다. 서버 애플리케이션은 사용자 장비 상에 저장하기 위한 데이터를 전송하도록 미디어 안내 데이터 소스(618)의 제어 회로부에 지시할 수 있다. 클라이언트 애플리케이션은 안내 애플리케이션 디스플레이들을 생성하도록 수신 사용자 장비의 제어 회로부에 지시할 수 있다.
사용자 장비 디바이스들(602, 604, 및 606)에 전달된 콘텐츠 및/또는 미디어 안내 데이터는 OTT(over-the-top) 콘텐츠일 수 있다. OTT 콘텐츠 전달은, 위에서 설명된 임의의 사용자 장비 디바이스를 포함한, 인터넷 가능 사용자 디바이스들이 케이블 또는 위성 접속들을 통해 수신되는 콘텐츠에 부가하여, 위에서 설명된 콘텐츠를 포함한, 인터넷을 통해 전송되는 콘텐츠를 수신할 수 있게 해준다. OTT 콘텐츠는 인터넷 서비스 제공자(ISP)에 의해 제공되는 인터넷 접속을 통해 전달되지만, 서드파티가 콘텐츠를 배포한다. ISP는 콘텐츠의 시청 능력, 저작권, 또는 재배포에 대해 책임지지 않을 수 있으며, OTT 콘텐츠 제공자에 의해 제공되는 IP 패킷들만을 전송할 수 있다. OTT 콘텐츠 제공자들의 예들은 IP 패킷들을 통해 오디오 및 비디오를 제공하는, YOUTUBE, NETFLIX, 및 HULU를 포함한다. Youtube는 Google Inc.가 소유한 상표이고, Netflix는 Netflix Inc.가 소유한 상표이며, Hulu는 Hulu, LLC가 소유한 상표이다. OTT 콘텐츠 제공자들은 부가적으로 또는 대안적으로 위에서 설명된 미디어 안내 데이터를 제공할 수 있다. 콘텐츠 및/또는 미디어 안내 데이터에 부가하여, OTT 콘텐츠의 제공자들은 미디어 안내 애플리케이션들(예를 들어, 웹 기반 애플리케이션들 또는 클라우드 기반 애플리케이션들)을 배포할 수 있거나, 또는 콘텐츠가 사용자 장비 디바이스 상에 저장된 미디어 안내 애플리케이션들에 의해 디스플레이될 수 있다.
미디어 안내 시스템(600)은 콘텐츠에 액세스하고 미디어 안내를 제공하는 목적을 위해 사용자 장비 디바이스들과 콘텐츠 및 안내 데이터의 소스들이 서로 통신할 수 있는 다수의 접근법들 또는 네트워크 구성들을 설명하도록 의도되어 있다. 본 명세서에 설명된 실시예들은 이 접근법들 중 임의의 것 또는 그 서브세트에서, 또는 콘텐츠를 전달하고 미디어 안내를 제공하기 위해 다른 접근법들을 이용하는 시스템에서 적용될 수 있다. 이하의 4가지 접근법은 도 6의 일반화된 예에 대한 특정 예시들을 제공한다.
하나의 접근법에서, 사용자 장비 디바이스들은 홈 네트워크 내에서 서로 통신할 수 있다. 사용자 장비 디바이스들은 앞서 설명된 단거리 포인트-투-포인트 통신 스킴들을 통해 직접적으로, 홈 네트워크 상에 제공된 허브 또는 다른 유사한 디바이스를 통한 간접 경로들을 통해, 또는 통신 네트워크(614)를 통해 서로 통신할 수 있다. 단일 가정 내의 다수의 개인들 각각은 홈 네트워크 상의 상이한 사용자 장비 디바이스들을 동작시킬 수 있다. 그 결과, 다양한 미디어 안내 정보 또는 설정들이 상이한 사용자 장비 디바이스들 사이에서 전달되는 것이 바람직할 수 있다. 예를 들어, 사용자들이, 2005년 7월 11일자로 출원된 Ellis 등의 미국 특허 공개 제2005/0251827호에 더 상세히 설명된 바와 같이, 홈 네트워크 내의 상이한 사용자 장비 디바이스들 상에 일관된 미디어 안내 애플리케이션 설정을 유지하는 것이 바람직할 수 있다 . 홈 네트워크 내의 상이한 유형들의 사용자 장비 디바이스들은 또한 콘텐츠를 전송하기 위해 서로 통신할 수 있다. 예를 들어, 사용자는 사용자 컴퓨터 장비로부터 휴대용 비디오 플레이어 또는 휴대용 음악 플레이어로 콘텐츠를 전송할 수 있다.
제2 접근법에서, 사용자들은 사용자들이 콘텐츠에 액세스하고 미디어 안내를 획득하는 다수의 유형들의 사용자 장비를 가질 수 있다. 예를 들어, 일부 사용자들은 가정내 및 모바일 디바이스들에 의해 액세스되는 홈 네트워크들을 가질 수 있다. 사용자들은 원격 디바이스 상에 구현되는 미디어 안내 애플리케이션을 통해 가정내 디바이스들을 제어할 수 있다. 예를 들어, 사용자들은 자신의 사무실에 있는 개인용 컴퓨터, 또는 PDA 또는 웹 가능(web-enabled) 모바일 전화와 같은 모바일 디바이스를 통해 웹 사이트 상의 온라인 미디어 안내 애플리케이션에 액세스할 수 있다. 사용자는 사용자의 가정내 장비를 제어하기 위해 온라인 안내 애플리케이션 상에 다양한 설정들(예를 들어, 녹화들, 리마인더들(reminders), 또는 다른 설정들)을 설정할 수 있다. 온라인 가이드는 직접적으로, 또는 사용자의 가정내 장비 상의 미디어 안내 애플리케이션과 통신하는 것에 의해 사용자의 장비를 제어할 수 있다. 사용자 장비 디바이스들이 서로 멀리 떨어진 위치들에 있는 경우, 사용자 장비 디바이스들이 통신하기 위한 다양한 시스템들 및 방법들은, 예를 들어, 2011년 10월 25일자로 발행된 Ellis 등의 미국 특허 제8,046,801호에서 논의되며, 이 미국 특허는 이로써 그 전체가 참조에 의해 본 명세서에 포함된다.
제3 접근법에서, 가정 내부 및 가정 외부에 있는 사용자 장비 디바이스들의 사용자들은 콘텐츠에 액세스하기 위해 콘텐츠 소스(616)와 직접적으로 통신하는 데 자신의 미디어 안내 애플리케이션을 사용할 수 있다. 구체적으로, 가정 내에서, 사용자 텔레비전 장비(602) 및 사용자 컴퓨터 장비(604)의 사용자들은 바람직한 콘텐츠를 내비게이팅하고 찾아내기 위해 미디어 안내 애플리케이션에 액세스할 수 있다. 사용자들은 또한 바람직한 콘텐츠를 내비게이팅하고 위치확인하기 위해 무선 사용자 통신 디바이스들(606)을 사용하여 가정 외부의 미디어 안내 애플리케이션에 액세스할 수 있다.
제4 접근법에서, 사용자 장비 디바이스들은 클라우드 서비스들에 액세스하기 위해 클라우드 컴퓨팅 환경에서 동작할 수 있다. 클라우드 컴퓨팅 환경에서, 콘텐츠 공유, 저장 또는 배포를 위한 다양한 유형들의 컴퓨팅 서비스들(예를 들어, 비디오 공유 사이트들 또는 소셜 네트워킹 사이트들)이, "클라우드"라고 지칭되는, 네트워크 액세스가능 컴퓨팅 및 저장 자원들의 컬렉션에 의해 제공된다. 예를 들어, 클라우드는 통신 네트워크(614)를 통해 인터넷과 같은 네트워크를 통해 접속되는 다양한 유형들의 사용자들 및 디바이스들에 클라우드 기반 서비스들을 제공하는, 중앙집중식으로 또는 분산된 위치들에 위치될 수 있는, 서버 컴퓨팅 디바이스들의 컬렉션을 포함할 수 있다. 이러한 클라우드 자원들은 하나 이상의 콘텐츠 소스(616) 및 하나 이상의 미디어 안내 데이터 소스(618)를 포함할 수 있다. 부가적으로 또는 대안적으로, 원격 컴퓨팅 사이트들은, 사용자 텔레비전 장비(602), 사용자 컴퓨터 장비(604), 및 무선 사용자 통신 디바이스(606)와 같은, 다른 사용자 장비 디바이스들을 포함할 수 있다. 예를 들어, 다른 사용자 장비 디바이스들은 비디오의 저장된 사본 또는 스트리밍된 비디오에 대한 액세스를 제공할 수 있다. 그러한 실시예들에서, 사용자 장비 디바이스들은 중앙 서버와 통신하지 않고 피어-투-피어 방식으로 동작할 수 있다.
클라우드는 사용자 장비 디바이스들을 위해, 예들 중에서도, 콘텐츠 저장, 콘텐츠 공유, 또는 소셜 네트워킹 서비스들과 같은, 서비스들에 대한 액세스는 물론, 위에서 설명된 임의의 콘텐츠에 대한 액세스를 제공한다. 서비스들은 클라우드 컴퓨팅 서비스 제공자들을 통해 또는 온라인 서비스들의 다른 제공자들을 통해 클라우드에서 제공될 수 있다. 예를 들어, 클라우드 기반 서비스들은 콘텐츠 저장 서비스, 콘텐츠 공유 사이트, 소셜 네트워킹 사이트, 또는 사용자에 의해 소싱된 콘텐츠(user-sourced content)가 접속된 디바이스들 상에서의 다른 사람들에 의한 시청을 위해 배포되는 다른 서비스들을 포함할 수 있다. 이러한 클라우드 기반 서비스들은 사용자 장비 디바이스가, 콘텐츠를 로컬로 저장하고 로컬로 저장된 콘텐츠에 액세스하기보다는, 콘텐츠를 클라우드에 저장하고 클라우드로부터 콘텐츠를 수신할 수 있게 해줄 수 있다.
사용자는 콘텐츠를 녹화하기 위해, 캠코더들, 비디오 모드를 갖는 디지털 카메라들, 오디오 레코더들, 모바일 폰들, 및 핸드헬드 컴퓨팅 디바이스들과 같은, 다양한 콘텐츠 캡처 디바이스들을 사용할 수 있다. 사용자는 클라우드 상의 콘텐츠 저장 서비스에 콘텐츠를 직접적으로, 예를 들어, 콘텐츠 캡처 특징을 갖는 사용자 컴퓨터 장비(604) 또는 무선 사용자 통신 디바이스(606)로부터, 업로드할 수 있다. 대안적으로, 사용자는 먼저 콘텐츠를, 사용자 컴퓨터 장비(604)와 같은, 사용자 장비 디바이스에게 전송할 수 있다. 콘텐츠를 저장하는 사용자 장비 디바이스는 통신 네트워크(614) 상의 데이터 전송 서비스를 사용하여 콘텐츠를 클라우드에 업로드한다. 일부 실시예들에서, 사용자 장비 디바이스 자체는 클라우드 자원이고, 다른 사용자 장비 디바이스들은 사용자가 콘텐츠를 저장한 사용자 장비 디바이스로부터 직접적으로 콘텐츠에 액세스할 수 있다.
클라우드 자원들은, 예를 들어, 웹 브라우저, 미디어 안내 애플리케이션, 데스크톱 애플리케이션, 모바일 애플리케이션, 및/또는 이들의 액세스 애플리케이션들의 임의의 조합을 사용하여 사용자 장비 디바이스에 의해 액세스될 수 있다. 사용자 장비 디바이스는 애플리케이션 전달을 위해 클라우드 컴퓨팅에 의존하는 클라우드 클라이언트일 수 있거나, 또는 사용자 장비 디바이스는 클라우드 자원들에 대한 액세스를 갖지 않는 일부 기능성을 가질 수 있다. 예를 들어, 사용자 장비 디바이스 상에서 실행되는 일부 애플리케이션들은 클라우드 애플리케이션들, 즉 인터넷을 통해 서비스로서 전달되는 애플리케이션들일 수 있는 반면, 다른 애플리케이션들은 사용자 장비 디바이스 상에 저장되어 실행될 수 있다. 일부 실시예들에서, 사용자 디바이스는 다수의 클라우드 자원들로부터 동시에 콘텐츠를 수신할 수 있다. 예를 들어, 사용자 디바이스는 제2 클라우드 자원으로부터 콘텐츠를 다운로드하면서 하나의 클라우드 자원으로부터 오디오를 스트리밍할 수 있다. 또는 사용자 디바이스는 더 효율적인 다운로드를 위해 다수의 클라우드 자원들로부터 콘텐츠를 다운로드할 수 있다. 일부 실시예들에서, 사용자 장비 디바이스들은 도 5와 관련하여 설명된 프로세싱 회로부에 의해 수행되는 프로세싱 동작들과 같은 프로세싱 동작들을 위해 클라우드 자원들을 사용할 수 있다.
본 명세서에서 지칭되는 바와 같이, 용어 "~에 응답하여(in response to)"는 ~의 결과로서 개시됨을 말한다. 예를 들어, 제1 액션이 제2 액션에 응답하여 수행된다는 것은 제1 액션과 제2 액션 사이에 중간 단계들(interstitial steps)을 포함할 수 있다. 본 명세서에서 언급된 바와 같이, 용어 "~에 응답하여 직접적으로(directly in response to)"는 ~에 의해 야기됨을 말한다. 예를 들어, 제1 액션이 제2 액션에 응답하여 직접적으로 수행된다는 것은 제1 액션과 제2 액션 사이에 중간 단계들을 포함하지 않을 수 있다.
도 7은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스(700)의 플로차트이다. 예를 들어, 미디어 안내 애플리케이션은 프로세스(700)의 요소들을 실행하도록 제어 회로부(604)에 지시할 수 있다.
프로세스(700) 또는 그의 임의의 단계가 도 5 및 도 6에 도시된 디바이스들 중 임의의 것 상에서 수행되거나 그에 의해 제공될 수 있다는 점에 유의해야 한다. 예를 들어, 프로세스(704)는 웨이크워드를 수신함이 없이 구두 대화에서의 키워드들을 검출하기 위해 사용자 디바이스(예를 들어, 사용자 장비 디바이스들(602, 604, 및/또는 606)(도 6)) 상에 구현되는 미디어 안내 애플리케이션에 의해 지시된 대로 제어 회로부(506)(도 5)에 의해 실행될 수 있다. 그에 부가하여, 프로세스(700)의 하나 이상의 단계는 본 명세서에서 설명된 임의의 다른 프로세스 또는 실시예의 하나 이상의 단계에 통합되거나 이들과 조합될 수 있다.
단계(702)는 미디어 안내 애플리케이션이, 사용자 장비를 사용하여, 복수의 사용자들 사이의 구두 대화를 모니터링하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 음성을 검출하고, 그에 따라 음성으로부터의 수신된 오디오 신호들을 녹음할 수 있다. 미디어 안내 애플리케이션은 임의의 적합한 음성 인식 알고리즘을 적용하여 단어들, 문구들, 사운드들, 보이스들(예를 들어, 어느 사용자가 말하고 있는지), 또는 대화의 다른 가청 부분들을 식별할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 신경 네트워크 기술, HMM(hidden Markov models) 기술, 패턴 인식(예를 들어, 음성을 기준과 비교하는 것), DTW(dynamic time warping) 기반 기술(예를 들어, 사용자를 사용자와 비교하는 것, 또는 사용자를 기준과 비교하는 것), (예를 들어, 상이한 화자들을 구별하기 위한) 생체인식 기술, 임의의 다른 적합한 음성 인식 기술, 임의의 다른 적합한 화자 식별 기술, 또는 이들의 임의의 조합을 사용할 수 있다.
단계(704)는 미디어 안내 애플리케이션이 웨이크워드를 수신함이 없이 구두 대화에서의 키워드들을 검출하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(702)에서 인식되는 복수의 단어들로부터 키워드들을 검출할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 웨이크워드가 아닌 명사들(예를 들어, "보트"), 고유 명사들(예를 들어, "스테이튼 아일랜드 페리"), 짧은 문구들(예를 들어, "자동차 추격"), 동사들, 형용사들, 부사들, 또는 이들의 임의의 조합을 검출할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 단계(702)와 단계(704)를 동시에 수행하고, 대화로부터 직접적으로 인식되는 키워드들을 검출할 수 있다. 키워드는 단일 단어, 단어들의 시퀀스(예를 들어, 문구), 고유 명사, 명사, 동사, 하나 이상의 단어의 임의의 다른 집합체, 또는 이들의 임의의 조합을 포함할 수 있다.
단계(706)는 미디어 안내 애플리케이션이 키워드들(예를 들어, 단계(704)에서 검출되는 키워드들) 중 하나와 매칭하는 콘텐츠를 검색하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 관련성 있는 콘텐츠를 찾기 위해 복수의 미디어 자산들로부터의 메타데이터를 질의할 수 있다. 단계(706)는 미디어 안내 데이터 소스(618), 사용자 컴퓨터 장비(604), 사용자 텔레비전 장비(602), 무선 사용자 통신 디바이스(606), 또는 이들의 임의의 조합에 의해 수행될 수 있다. 예를 들어, 사용자 텔레비전 장비(602)는 대화를 모니터링하고 키워드들을 검출하며(예를 들어, 단계(702) 및 단계(704)), 이어서 단계(706)의 검색을 수행하기 위해 질의를 통신 네트워크(614)를 통해 미디어 안내 데이터 소스(618)에 송신할 수 있다. 그에 따라, 이 예시적인 예에서, 미디어 안내 데이터 소스(618)는 검색 키워드들에 대응하는 메타데이터를 갖는 복수의 미디어 자산들을 식별할 수 있다. 게다가, 미디어 안내 데이터 소스(618)는 복수의 미디어 자산들의 리스트, 및 자산들 자체를 사용자 텔레비전 장비(602)에 제공할 수 있다.
단계(708)는 미디어 안내 애플리케이션이, 웨이크워드를 수신함이 없이, 콘텐츠를 사용자들에게 자동으로 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 디스플레이 스크린을 생성함으로써 디스플레이 디바이스 상에 재생가능한 클립을 제시할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 2개 이상의 클립을 디스플레이에 이용가능하게 할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 관련성 있는 클립들의 리스트를 제시하고, 클립을 선택하는 사용자 입력을 수신하는 것에 기초하여 리스트의 클립들 중 하나를 재생할 수 있다.
도 7의 단계들 또는 설명들이 본 개시내용의 임의의 다른 실시예에 대해 사용될 수 있는 것이 고려된다. 그에 부가하여, 도 7과 관련하여 설명된 단계들 및 설명들은 본 개시내용의 목적들을 달성하기 위해 대안의 순서들로 또는 병렬로 행해질 수 있다. 예를 들어, 이러한 단계들 각각은 시스템 또는 방법의 지연을 감소시키거나 속도를 증가시키기 위해 임의의 순서로 또는 병렬로 또는 실질적으로 동시에 수행될 수 있다. 이 단계들 중 임의의 것이 또한 스킵될 수 있거나 프로세스로부터 생략될 수 있다. 게다가, 도 5 및 도 6과 관련하여 논의된 디바이스들 또는 장비 중 임의의 것이 도 7에서의 단계들 중 하나 이상을 수행하는 데 사용될 수 있음에 유의해야 한다.
도 8은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스(800)의 플로차트이다. 예를 들어, 미디어 안내 애플리케이션은 프로세스(800)의 요소들을 실행하도록 제어 회로부(604)에 지시할 수 있다.
프로세스(800) 또는 그의 임의의 단계가 도 5 및 도 6에 도시된 디바이스들 중 임의의 것 상에서 수행되거나 그에 의해 제공될 수 있다는 점에 유의해야 한다. 예를 들어, 프로세스(804)는 구두 대화에서의 단어들을 프로세싱하여 구두 대화로부터 키워드들을 선택적으로 리트리빙하기 위해 사용자 디바이스(예를 들어, 사용자 장비 디바이스들(602, 604, 및/또는 606)(도 6)) 상에 구현되는 미디어 안내 애플리케이션에 의해 지시된 대로 제어 회로부(506)(도 5)에 의해 실행될 수 있다. 그에 부가하여, 프로세스(800)의 하나 이상의 단계는 본 명세서에서 설명된 임의의 다른 프로세스 또는 실시예의 하나 이상의 단계에 통합되거나 이들과 조합될 수 있다.
단계(802)는 미디어 안내 애플리케이션이, 사용자 장비를 사용하여, 복수의 사용자들 사이의 구두 대화를 모니터링하는 것을 포함할 수 있다. 구두 대화를 모니터링하는 것은, 예를 들어, 대화를 식별하는 것(예를 들어, 적어도 2명의 구별되는 사용자로부터의 오디오 신호들을 식별하는 것), 오디오 입력 디바이스(520)로부터 수집되는 오디오 데이터를 기록하는 것, 음성의 검출에 응답하는 것, 또는 대화를 모니터링하기 위한 임의의 다른 적합한 액션을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은, 예를 들어, 미디어 안내 애플리케이션이 오디오 신호들을 프로세싱하고, 대화가 시작되었는지, 키워드들이 무엇인지, 그리고 어떤 콘텐츠가 관련성 있는지에 대해 결정하는 리스닝 모드에 진입할 수 있다. 미디어 안내 애플리케이션은, 예를 들어, 미리 결정된 스케줄에 따라, 임의의 사용자가 말하고 있다고 결정할 때, 특정의 사용자(예를 들어, 로그인된 계정 사용자)가 말하고 있다고 결정할 때, 둘 이상의 사용자가 말하고 있다고 결정할 때, 인기있는 프로그램(popular show) 동안, 매우 기대되고 가입된 이벤트 동안, 스포츠 경기 동안 리스닝 모드에 진입할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 인기 있는 텔레비전 프로그램(television show)의 시즌 프리미어(season premiere)를 제시할 때 리스닝 모드에 진입할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 사용자 디바이스가 전원이 켜질(예를 들어, 턴온될) 때마다 오디오 신호들을 프로세싱할 수 있다. 예를 들어, 도 1을 참조하면, 사용자 디바이스(102)는 검출가능한 음성에 대해 오디오 신호들을 연속적으로 모니터링할 수 있는 미디어 안내 애플리케이션을 호스팅할 수 있다.
구두 대화가 때때로 둘 이상의 사람들 사이의 음성 상호작용으로서 정의된다는 것이 이해될 것이다. 그렇지만, 단일 사용자가 자신과 대화할 수 있거나(예를 들어, 혼잣말을 함), 또는 청중 없이 발화할 수 있다. 일부 상황들에서, 예를 들어, 미디어 안내 애플리케이션은 임의의 그러한 음성이 대화라고 결정할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 사용자가 디스플레이 디바이스에 대해 "잘 했어, 스테프 커리, 화이팅"과 같은 코멘트를 하는 것을 대화로서 해석될 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 (예를 들어, 보이스 인식을 사용하여) 몇 명의 사용자가 말하고 있는지를 결정할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 단일 사용자의 다수의 보이스들(예를 들어, 사용자가 대화를 재연(re-enact)하고 다수의 보이스들을 흉내내는 것)을 구별할 수 있다.
단계(804)는 미디어 안내 애플리케이션이, 구두 대화가 계속됨에 따라, 구두 대화에서의 단어들을 프로세싱하여 구두 대화로부터 키워드들을 선택적으로 리트리빙하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은 임의의 적합한 단어 검출 기술, 음성 검출 기술, 패턴 인식 기술, 신호 프로세싱 기술, 또는 이들의 임의의 조합을 사용하여 단어들을 프로세싱할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 일련의 신호 템플릿들을 오디오 신호의 일 부분과 비교하여 매치가 존재하는지 여부(예를 들어, 특정의 단어가 오디오 신호에 포함되어 있는지 여부)를 발견할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 대화에서의 단어들을 더 잘 인식하기 위해 학습 기술을 적용할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 복수의 대화들의 맥락에서 복수의 콘텐츠 추천들에 관한 사용자로부터의 피드백을 수집하고, 그에 따라 추천을 하기 위한 트레이닝 세트로서 과거 데이터를 사용할 수 있다.
단계(806)는 미디어 안내 애플리케이션이 선택적으로 리트리빙된 키워드들에 기초하여 웨이크워드를 수신함이 없이 구두 대화에서의 키워드들을 검출하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(804)와 단계(806)를 조합하여, 음성 신호로부터 키워드들을 검출할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 먼저 대화로부터의 단어들을 프로세싱하고, 이어서 프로세싱된 단어들 중에서 키워드들을 검출할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(804)의 각각의 리트리빙된 키워드를 고려하고, 단계(808)에서의 검색에 사용할 키워드들을 검출할 수 있다.
단계(808)는 미디어 안내 애플리케이션이 (예를 들어, 단계(806)의) 키워드들 중 하나와 매칭하는 클립을 복수의 클립들에서 검색하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은, 예를 들어, 단계(806)의 검출된 키워드들 중에서 각각의 키워드와 매칭하는 메타데이터를 검색할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 미디어 콘텐츠 데이터베이스(예를 들어, 미디어 안내 데이터 소스(618))에 질의하기 위해 (예를 들어, 필드들 및 불리언 연산자들을 사용하여) 모든 키워드들을 포함하는 질의를 생성할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 적어도 하나의 키워드와 매칭하는 복수의 클립들을 저장하거나, 각각의 각자의 클립에 대응하는 복수의 링크들을 저장하거나, 각각의 각자의 클립에 대응하는 메타데이터를 저장하거나, 또는 그렇지 않고 검색으로부터 얻어지는 복수의 클립들의 지시자를 저장할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 콘텐츠를 검색하는 것을 돕기 위해 단계(808)에서 콘텐츠 소스를 식별할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 스포츠와 연관된 키워드들을 검출할 수 있고, 그에 따라 스포츠 하이라이트들 및 기록들의 데이터베이스 중에서 클립들에 대해 검색할 수 있다. 스포츠에 대한 예시적인 콘텐츠 소스들은, 예를 들어, YouTube, SkySports, NBCSports, ESPN, 또는 다른 소스들을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 콘텐츠 소스들을 포함할 수 있는 데이터베이스(예를 들어, 미디어 안내 데이터 소스(618)), 및 콘텐츠 소스에 관한 정보를 입증하는 부수적인 메타데이터에 액세스할 수 있다. 미디어 안내 애플리케이션은, 키워드들에 대응하는 하나 이상의 콘텐츠 소스를 리트리빙하기 위해, 데이터베이스를 검색하기 위한 질의를 생성하거나, 또는 임의의 다른 데이터베이스 검색 기술들을 사용할 수 있다.
단계(810)는 미디어 안내 애플리케이션이 복수의 클립들 각각과 연관된 메타데이터를 검출된 키워드들과 비교하는 것을 포함할 수 있다. 일부 실시예들에서, 메타데이터는 기술적 메타데이터(descriptive metadata)(예를 들어, 콘텐츠 제목, 클립에 등장하는 배우, 감독, 장르, 클립 등급, 클립 인기도), 구조적 메타데이터(structural metadata)(예를 들어, 클립 지속기간, 클립에 액세스하기 위한 파라미터들, 클립의 어느 부분이 관련성 있는지), 관리적 메타데이터(administrative metadata)(예를 들어, 허용(permissions), 파일 크기, 파일 유형), 임의의 다른 적합한 메타데이터, 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(808)와 단계(810)를 조합하여, 각각의 클립에 대한 메타데이터를 사용하여 복수의 클립들을 검색할 수 있다.
단계(812)는 미디어 안내 애플리케이션이, (예를 들어, 단계(810)의) 비교에 기초하여, 클립들 중의 다른 클립과 연관된 메타데이터보다 키워드들 중의 더 많은 키워드들과 매칭하는 메타데이터를 갖는 클립을 복수의 클립들 중에서 선택하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 몇 개의 키워드들이 클립에 대응하는 메타데이터와 매칭하는지를 결정하거나, 클립에 대한 메타데이터와 매칭하는 가장 긴 키워드의 길이를 결정하거나, 클립을 선택하는 데 도움을 줄 수 있는 임의의 다른 결정을 수행하거나, 또는 이들의 임의의 조합을 수행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 하나 이상의 보조 선택 기준에 기초하여 클립을 선택할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 복수의 클립들 각각의 인기도를 고려하고, 인기도에 적어도 부분적으로 기초하여 클립을 선택(예를 들어, 덜 알려진(more obscure) 클립보다 상대적으로 인기 있는 클립을 선택)할 수 있다.
단계(814)는 미디어 안내 애플리케이션이, 웨이크워드를 수신함이 없이, 구두 대화 동안 클립을 사용자들에게 자동으로 제시하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은 대화를 검출하는 것, 키워드들을 식별하하는 것, 및 키워드들에 기초하여 클립들을 검색하는 것에 응답하여, 그리고 특정 액션을 야기하는 임의의 명시적 커맨드 단어들 또는 지시된 발화들(directed utterances) 없이 클립을 제시할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 사용자들이 단계(802) 내지 단계(812)의 수행을 실현하지 않더라도 대화 동안 클립을 사용자들에게 제시할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 콘텐츠 추천을 개시하기 위해 대화를 중단할 것을 요구하지 않는다.
도 8의 단계들 또는 설명들이 본 개시내용의 임의의 다른 실시예에 대해 사용될 수 있는 것이 고려된다. 그에 부가하여, 도 8과 관련하여 설명된 단계들 및 설명들은 본 개시내용의 목적들을 달성하기 위해 대안의 순서들로 또는 병렬로 행해질 수 있다. 예를 들어, 이러한 단계들 각각은 시스템 또는 방법의 지연을 감소시키거나 속도를 증가시키기 위해 임의의 순서로 또는 병렬로 또는 실질적으로 동시에 수행될 수 있다. 이 단계들 중 임의의 것이 또한 스킵될 수 있거나 프로세스로부터 생략될 수 있다. 게다가, 도 5 및 도 6과 관련하여 논의된 디바이스들 또는 장비 중 임의의 것이 도 8에서의 단계들 중 하나 이상을 수행하는 데 사용될 수 있음에 유의해야 한다.
도 9는 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스(900)의 플로차트이다. 예를 들어, 미디어 안내 애플리케이션은 프로세스(900)의 요소들을 실행하도록 제어 회로부(604)에 지시할 수 있다.
프로세스(900) 또는 그의 임의의 단계가 도 5 및 도 6에 도시된 디바이스들 중 임의의 것 상에서 수행되거나 그에 의해 제공될 수 있다는 점에 유의해야 한다. 예를 들어, 프로세스(902)는 구두 대화에서의 단어들을 프로세싱하여 구두 대화로부터 키워드들을 선택적으로 리트리빙하기 위해 사용자 디바이스(예를 들어, 사용자 장비 디바이스들(602, 604, 및/또는 606)(도 6)) 상에 구현되는 미디어 안내 애플리케이션에 의해 지시된 대로 제어 회로부(506)(도 5)에 의해 실행될 수 있다. 그에 부가하여, 프로세스(900)의 하나 이상의 단계는 본 명세서에서 설명된 임의의 다른 프로세스 또는 실시예의 하나 이상의 단계에 통합되거나 이들과 조합될 수 있다.
단계(902)는 미디어 안내 애플리케이션이 리스닝 모드에 진입하도록 구성된 디바이스의 모드를 결정하는 것을 포함할 수 있다. 모드는, 예를 들어, "슬립 모드", "리스닝 모드", "비-리스닝 모드(not-listening mode)", "온", "오프", "프로세싱"(예를 들어, 비지(busy)), "준비(ready)", 또는 임의의 다른 적합한 지시기에 의해 지시되는 디바이스의 임의의 적합한 상태를 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(902)의 일부로서 한 모드에 진입할 수 있다. 예를 들어, 미디어 안내 애플리케이션이 아직 리스닝 모드에 있지 않다고 미디어 안내 애플리케이션이 결정하는 경우 미디어 안내 애플리케이션은 리스닝 모드를 활성화시킬 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 모드를 결정하기 위해 메모리 내의 모드 값에 액세스할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 모드에 대응하는 변수를 메모리에 저장할 수 있고(예를 들어, 리스닝 모드는 00으로서 저장됨), 미디어 안내 애플리케이션은 변수에 액세스하여 그 값에 기초하여 모드를 결정할 수 있다(예를 들어, 변수 값이 00인 경우, 디바이스가 리스닝 모드에 있다). 일부 실시예들에서, 미디어 안내 애플리케이션은 모드를 결정하기 위해 메모리 내의 모드 플래그에 액세스할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 리스닝 모드 플래그에 액세스할 수 있고, 그 플래그 값이 1인 경우, 미디어 안내 애플리케이션은 디바이스가 리스닝 모드에 있다고 결정한다.
단계(904)는 미디어 안내 애플리케이션이 리스닝 모드가 활성화되어 있는지를 결정하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 리스닝 모드가 활성화되어 있는지를 결정하기 위해 메모리 내의 모드 플래그를 식별할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 리스닝 모드가 활성화되어 있다고 결정하기 위해 대화가 진행 중인지 여부를 체크할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 미리 결정된 간격으로 음성에 대해 검출할 수 있고, 음성이 검출되는 경우, 미디어 안내 애플리케이션은 리스닝 모드를 활성화시킬 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 항상 오디오 입력 디바이스를 활성으로 할 수 있고, 음성이 검출되는 경우, 미디어 안내 애플리케이션은 리스닝 모드를 활성화시킬 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 리스닝 모드를 활성화시키기 위한 사용자 입력을 수신할 수 있거나, 또는 음성이 검출되는 경우 리스닝 모드를 활성화시킬 준비가 되어 있을 수 있다.
미디어 안내 애플리케이션이 리스닝 모드가 활성화되어 있지 않다고 결정하는 경우, 미디어 안내 애플리케이션은 단계(902)로 진행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화가 검출될 때까지 단계(902)와 단계(904) 사이에서 루핑할 수 있다. 미디어 안내 애플리케이션이 리스닝 모드가 활성화되어 있다고 결정하는 경우, 미디어 안내 애플리케이션은 단계(906)로 진행할 수 있다.
단계(906)는 미디어 안내 애플리케이션이 구두 대화에서의 단어들을 검출하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화 동안 기록된 오디오의 스니펫들(즉, 짧은 시간 지속기간들을 저장하고 스니펫들을 프로세싱할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화의 상대적으로 큰 부분들(예를 들어, 10초 초과)을 오디오 파일로서 저장하고, 파일을 프로세싱할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 연속적인 계산을 사용하여 단어들을 검출하기 위해 음성을 프로세싱할 수 있다. 예를 들어, 음성에 대해 실시간으로 웨이블릿 변환이 수행되어, (예를 들어, 단어들을 식별하기 위해 기준과 비교될 수 있는) 음성 패턴들의 연속적이지만 약간 시간 지연된 계산을 제공할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어들을 검출할 수 있는 것은 물론, 본 개시내용에 따라 어느 사용자가 그 단어들을 발화했는지를 검출할 수 있다.
단계(908)는 미디어 안내 애플리케이션이 검출된 단어들을 대화에서 검출되는 단어들의 리스트에 추가하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어들을 메모리에 저장할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 단어들을 ASCII 문자들(즉, 8-비트 코드)의 집합체, (예를 들어, 단어와 매칭시키는 데 사용되는 음성 신호 기준을 나타내는) 패턴, 식별자(예를 들어, 단어에 대한 코드), 스트링, 임의의 다른 데이터 유형, 또는 이들의 임의의 조합으로서 메모리에 저장할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어들이 검출될 때 단어들을 메모리에 추가할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 이전에 검출된 단어들의 스트링에 새로 검출된 단어를 어펜딩하거나(append), 새로 검출된 단어를 이전에 검출된 단어들의 셀 어레이에 추가하거나(예를 들어, 셀 어레이 크기를 1만큼 증가시키거나), 새로 검출된 단어에 대응하는 새로운 변수를 생성하거나, 새로 생성된 단어에 대응하는 새로운 파일을 생성하거나, 또는 그렇지 않고 단계(906)에서 검출되는 하나 이상의 단어를 저장할 수 있다.
단계(910)는 미디어 안내 애플리케이션이 검출된 단어들에 대한 타임스탬프를 결정하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 시작 시간, 정지 시간, 발화 시간(예를 들어, 단어가 발화된 절대 시간), 프로세싱 시간(예를 들어, 패턴 매치가 발견되었을 때), 저장 시간(예를 들어, 단어가 메모리에 기입되었을 때), 현재 시간(예를 들어, 타임스탬프 결정의 시간), 대화에서의 단어의 상대 시간 위치에 대응하는 임의의 다른 적합한 시간, 또는 이들의 임의의 조합을 결정할 수 있다. 타임스탬프는 날짜, 12시 시계 시간, 24시 시계 시간, 어떤 이벤트에 상대적인 경과 시간, 다른 단어들에 대한 상대 시간 위치, 시간 스텝들의 개수(예를 들어, 100 밀리초가 10개의 10 밀리초 시간 스텝으로서 표현됨), 임의의 다른 결정론적 시간 척도, 또는 이들의 임의의 조합을 포함할 수 있다. 예를 들어, 타임스탬프는 “5:17:15 PM 10/18/2017”, "대화의 시작으로부터 7초", "대화의 시작으로부터 0.001 일", 또는 "대화의 끝으로부터 10개의 시간 스텝"을 포함할 수 있다. 추가의 예에서, 타임스탬프는 "대화 중의 6.5초 내지 7.6초"와 같은 시간 범위를 포함할 수 있다. 일부 실시예들에서, 타임스탬프는 대화에서의 단어의 지속기간을 나타내는, "700 밀리초"와 같은 지속기간을 부가로 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어의 시작 시간, 및 대화에서의 다른 단어들과 비교한 단어의 상대 위치를 결정함으로써 타임스탬프를 결정할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화의 여덟 번째 단어에 대한 타임스탬프를 대화 시작 시간 및 숫자 "8"로서 결정할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 단어에 대한 타임스탬프를 결정하기 위해 대화 종료 시간을 결정할 수 있다.
단계(912)는 미디어 안내 애플리케이션이 각각의 프로세싱된 단어의 타임스탬프를 대화 모니터링 윈도의 시작 시간과 비교하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은, 대화가 검출되자마자, 단어가 검출되자마자(예를 들어, 단계(906)에서), 리스닝 모드가 활성화되자마자(예를 들어, 단계(904)에서), 대화 모니터링 윈도가 요망된다는 것을 나타내는 사용자 입력을 수신하는 것에 기초하여, 임의의 다른 적절한 시간에, 또는 이들의 임의의 조합으로 대화 모니터링 윈도를 생성할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어에 대한 타임스탬프가 대화의 시작 이후의 시간에 대응하는지를 결정할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화가 5:45:10 pm 10/19/2017에 시작되었고, 단어와 연관된 타임스탬프가, 대화 이후 4초인, 5:45:14 pm 10/19/2017에 대응한다고 결정할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(910)와 단계(912)를 동시에(또는 단일 단계로서) 수행할 수 있지만, 대화 모니터링 윈도의 시작 시간에 상대적인 타임스탬프를 결정할 수 있다.
단계(914)는 미디어 안내 애플리케이션이 타임스탬프가 시작 시간으로부터 임계치 내에 있는지 여부를 결정하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화의 단어에 대응하는 타임스탬프와 대화의 시작에 대응하는 타임스탬프 사이의 차이를 결정할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 메모리 제약들(예를 들어, 단지 10초의 대화에 충분한 메모리를 할당하는 것)에 기초하여 임계치를 결정할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 임계치를 나타내는 사용자 입력을 수신할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화 시작 시간으로부터 10초 이내의 단어들만을 대화의 일부로서 간주하라는 사용자 커맨드를 수신할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어의 타임스탬프, 대화 모니터링 윈도의 시작 시간, 수신된 사용자 입력, 임계치, 대화에서의 결정된 소강상태(예를 들어, 소강상태가 검출되는 경우, 소강상태 이전의 단어들을 임계치를 벗어난 것으로 간주함), 임의의 다른 적합한 결정 또는 정보, 또는 이들의 임의의 조합에 적어도 부분적으로 기초하여 단계(914)의 결정을 수행할 수 있다. 미디어 안내 애플리케이션은 단어가 대화에 관련성 있는지 여부, 또는 아마도 새로운 대화 모니터링 윈도가 바람직한지를 결정하기 위해 단계(914)를 수행할 수 있다.
미디어 안내 애플리케이션이 타임스탬프가 시작 시간으로부터 임계치 내에 있다고 결정하는 경우(예를 들어, 도 9에서의 단계(914)로부터의 "예" 경로), 미디어 안내 애플리케이션은 단계(916)로 진행할 수 있다. 단계(916)는 미디어 안내 애플리케이션이, 윈도의 시작 시간 이전에 검출되는 단어들이 폐기되도록, 대화 윈도 내에서 검출되는 구두 대화에서의 단어들을 일시적으로 저장하는 것을 포함할 수 있다.
미디어 안내 애플리케이션이 타임스탬프가 시작 시간으로부터 임계치 내에 있지 않다고 결정하는 경우(예를 들어, 도 9에서의 단계(914)로부터의 "아니오" 경로), 미디어 안내 애플리케이션은 단계(918)로 진행할 수 있다. 단계(918)는 미디어 안내 애플리케이션이 시작 시간에 대해 임계치보다 더 오래된(예를 들어, 시작 시간으로부터 임계치 내에 있지 않은) 타임스탬프를 갖는 단어들을 제거하는 것을 포함할 수 있다.
단계(920)는 미디어 안내 애플리케이션이 복수의 사용자들 각각의 사용자 프로파일들과 매칭하는 단어들을 구두 대화에서 식별하는 것을 포함할 수 있다. 복수의 사용자들은 구두 대화에 참여하는 하나 이상의 사용자, 사용자 디바이스와 연관된 하나 이상의 사용자, 특정의 서비스에 가입한(예를 들어, 음성 작동 개인 어시스턴트에 가입된, Hulu에 가입한) 하나 이상의 사용자, 미디어 안내 애플리케이션에 로그인된 하나 이상의 사용자, 사용자들 중 하나 이상을 식별해주는 사용자 입력을 수신하는 것에 의해 식별되는 하나 이상의 사용자, 임의의 다른 관련 사용자들, 또는 이들의 임의의 조합을 포함할 수 있다.
단계(922)는 미디어 안내 애플리케이션이 선택적으로 리트리빙된 키워드들에 기초하여 웨이크워드를 수신함이 없이 구두 대화에서의 키워드들을 검출하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은 웨이크워드를 수신함이 없이 대화의 맥락에서 관련 콘텐츠를 제공할 수 있다. 미디어 안내 애플리케이션은 대화에서의 키워드들을 검출하기 위해 임의의 적합한 음성 인식 기술, 보이스 인식 기술, 또는 이들의 조합들을 적용할 수 있다. 예를 들어, 도 1 및 도 2를 참조하면, 미디어 안내는, 사용자(130) 또는 사용자(140) 중 어느 하나가 미디어 안내 애플리케이션에 구두 커맨드를 제공함이 없이, 대화(100)의 시작에서 구두 대화 프로세싱 윈도를 시작할 수 있다. 대화에서 임의의 단어들이 발화될 때 미디어 안내 애플리케이션은 대화를 프로세싱하기 시작할 수 있다. 그에 따라, 사용자(130)가 "사용자 디바이스(102) 이제 리스닝 모드를 시작해"라고 발화하는 경우, 사용자 디바이스(102)는 발화의 단어들을 식별하고, 관련 콘텐츠를 검색하기 위한 키워드들을 식별할 수 있다. 미디어 안내 애플리케이션의 액션들은, 이 상황에서, 임의의 다른 발화에 대해 동일할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 적합한 단계들을 수행하기 시작하기 위해 사용자로부터의 구두 커맨드(예를 들어, 웨이크워드)를 요구하지 않는다.
단계(924)는 미디어 안내 애플리케이션이 키워드들 중 하나와 매칭하는 클립에 대해 복수의 클립들을 검색하는 것을 포함할 수 있다. 미디어 안내 애플리케이션이 하나 이상의 키워드를 식별할 때, 미디어 안내 애플리케이션은 하나 이상의 키워드에 기초하여 검색을 수행하기 위해 단계(924)로 진행할 수 있다. 미디어 안내 애플리케이션은 매치에 대해 복수의 클립들을 검색하기 위해 임의의 적합한 검색 기술을 적용할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 복수의 클립들과 연관된 메타데이터를 리트리빙하고, 키워드 대 메타데이터 매칭 검색(keyword to metadata matching search)을 수행할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 데이터베이스에 액세스하고, 하나 이상의 키워드를 사용하여 검색을 수행할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 콘텐츠 소스를 식별하고, 이어서 콘텐츠 소스에 대한 이용가능한 콘텐츠의 검색을 수행할 수 있다.
단계(926)는 미디어 안내 애플리케이션이 복수의 클립들 각각과 연관된 메타데이터를 검출된 키워드들과 비교하는 것을 포함할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 클립에 대응하는 기술적 메타데이터를 키워드들 각각과 비교할 수 있다. 미디어 안내 애플리케이션은, 수치 비교를 가능하게 해주기 위해, 비교 메트릭(예를 들어, 복수의 클립들의 각각의 클립이 키워드들과 얼마나 가깝게 매칭하는지)을 생성할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 몇 개의 키워드가 클립에 대응하는 메타데이터와 매칭하는지를 계산할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 각각의 클립에 대응하는 메타데이터에서의 문구와 매칭하는 키워드에서의 가장 긴 매칭하는 단어 시퀀스(예를 들어, 문구)를 계산할 수 있다.
단계(928)는 미디어 안내 애플리케이션이, 비교에 기초하여, 클립들 중의 다른 클립과 연관된 메타데이터보다 키워드들 중의 더 많은 키워드들과 매칭하는 메타데이터를 갖는 클립을 복수의 클립들 중에서 선택하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 몇 개의 키워드들이 클립에 대응하는 메타데이터와 매칭하는지를 결정하거나, 클립에 대한 메타데이터와 매칭하는 가장 긴 키워드의 길이를 결정하거나, 클립을 선택하는 데 도움을 줄 수 있는 임의의 다른 결정을 수행하거나, 또는 이들의 임의의 조합을 수행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 하나 이상의 보조 선택 기준에 기초하여 클립을 선택할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 복수의 클립들 각각에 대한 이용가능한 소스를 고려하고, 소스에 적어도 부분적으로 기초하여 클립을 선택(예를 들어, 덜 알려진 소스보다 상대적으로 인기 있는 소스를 선택)할 수 있다.
단계(930)는 미디어 안내 애플리케이션이 클립을 제시하기 위해 사용자 장비 상에 현재 제시되고 있는 콘텐츠를 자동으로 변경하는 것을 포함할 수 있다. 일부 상황들에서, 미디어 안내 애플리케이션이 이미 콘텐츠를 제시하고 있는 동안 대화가 발생할 수 있다. 일부 그러한 상황들에서, 미디어 안내 애플리케이션은, 예를 들어, 이미 재생 중인 콘텐츠를 단계(928)에서 선택된 클립으로 대체할 수 있다. 미디어 안내 애플리케이션은 선택된 클립을 대화에 참여하는 사용자들에게 제시하기 위해 오버레이, 분할 스크린, 픽처 인 픽처(picture in picture), 선택된 클립에 의한 완전한 대체, 또는 다른 디스플레이 변경을 적용할 수 있다.
단계(932)는 미디어 안내 애플리케이션이 대화에서의 키워드들을 검출하는 것에 응답하여 클립이 선택되었다는 표시와 함께, 검출된 키워드들 중 일부를 클립과 함께 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 관련 클립과 함께, 미디어 안내 애플리케이션은 클립을 선택하는 데 사용되는 하나 이상의 키워드를 제시할 수 있다. 미디어 안내 애플리케이션은 하나 이상의 키워드를 클립과 동일한 디스플레이 영역 또는 상이한 디스플레이 영역에 제시할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 키워드들의 서브세트(예를 들어, 가장 인기있는 키워드들, 가장 기술적인 키워드들, 검색을 가장 세분화하는 키워드들)를 제시할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 키워드들과 함께 부가 정보를 제시할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 어느 사용자가 각각의 키워드를 발화했는지, 하나 이상의 대안적인 키워드(예를 들어, 키워드가 잘못 선택된 경우, 또는 단어가 잘못 검출된 경우), 대화에 대한 이름, 또는 대화에 관련성 있는 다른 정보를 제시할 수 있다.
단계(934)는 미디어 안내 애플리케이션이 구두 대화 윈도(예를 들어, 본 명세서에서 대화 프로세싱 윈도라고도 지칭됨)를 생성하는 것을 포함할 수 있다. 구두 대화 윈도는 시간 지속기간, 시작 시간 및 종료 시간, 단어들의 개수, 음성이 대화에 대응하는 때를 식별해주기 위한 임의의 다른 적합한 메트릭, 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 구두 대화 윈도는 대화의 시간상 길이를 나타낼 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화의 범위(extents)(예를 들어, 대화가 시작되었을 때 및 대화가 끝났을 때)를 정의하기 위해 구두 대화 윈도를 생성할 수 있다. 그에 따라, 일부 실시예들에서, 미디어 안내 애플리케이션은, 예를 들어, 음성의 프로세싱을 구두 대화 프로세싱 윈도 내에서 검출되는 그 음성으로만 한정할 수 있다. 예시적인 플로차트(900)에서 마지막 단계로서 도시되어 있지만, 단계(934)가 임의의 적합한 시점에서 수행될 수 있고, 임의의 적합한 시간에 걸쳐 있을 수 있음이 이해될 것이다. 예를 들어, 미디어 안내 애플리케이션은 대화의 시작 시간, 및 대화 프로세싱 윈도의 시작 시간(beginning time)을 결정할 수 있다. 게다가, 미디어 안내 애플리케이션은, 예를 들어, 시작 시간에 대해 나중의 시간에(예를 들어, 대화가 끝날 때, 또는 미리 결정된 시간 길이 이후에) 구두 대화 윈도에 대한 종료 시간을 결정할 수 있다.
도 9의 단계들 또는 설명들이 본 개시내용의 임의의 다른 실시예에 대해 사용될 수 있는 것이 고려된다. 그에 부가하여, 도 9와 관련하여 설명된 단계들 및 설명들은 본 개시내용의 목적들을 달성하기 위해 대안의 순서들로 또는 병렬로 행해질 수 있다. 예를 들어, 이러한 단계들 각각은 시스템 또는 방법의 지연을 감소시키거나 속도를 증가시키기 위해 임의의 순서로 또는 병렬로 또는 실질적으로 동시에 수행될 수 있다. 이 단계들 중 임의의 것이 또한 스킵될 수 있거나 프로세스로부터 생략될 수 있다. 게다가, 도 5 및 도 6과 관련하여 논의된 디바이스들 또는 장비 중 임의의 것이 도 9에서의 단계들 중 하나 이상을 수행하는 데 사용될 수 있음에 유의해야 한다.
도 10은 본 개시내용의 일부 실시예들에 따른, 대화의 맥락에서 콘텐츠를 추천하기 위한 예시적인 프로세스(1000)의 플로차트이다. 예를 들어, 미디어 안내 애플리케이션은 프로세스(1000)의 요소들을 실행하도록 제어 회로부(604)에 지시할 수 있다.
프로세스(1000) 또는 그의 임의의 단계가 도 5 및 도 6에 도시된 디바이스들 중 임의의 것 상에서 수행되거나 그에 의해 제공될 수 있다는 점에 유의해야 한다. 예를 들어, 프로세스(1014)는 콘텐츠 소스를 선택하기 위해 사용자 디바이스(예를 들어, 사용자 장비 디바이스들(602, 604, 및/또는 606(도 6)) 상에 구현되는 미디어 안내 애플리케이션에 의해 지시된 대로 제어 회로부(506)(도 5)에 의해 실행될 수 있다. 그에 부가하여, 프로세스(1000)의 하나 이상의 단계는 본 명세서에서 설명된 임의의 다른 프로세스 또는 실시예의 하나 이상의 단계에 통합되거나 이들과 조합될 수 있다.
단계(1002)는 미디어 안내 애플리케이션이 리스닝 모드에 진입하는 것을 포함할 수 있다. 미디어 안내 애플리케이션은, 예를 들어, 오디오 입력 디바이스(예를 들어, 마이크로폰)를 활성화시키거나, 오디오 신호들을 녹음하기 시작하거나, 오디오 신호들을 프로세싱하기 시작하거나, (예를 들어, 사용자 정보에 액세스하기 위해) 하나 이상의 사용자 계정에 액세스하거나, 대화 모니터링 디스플레이를 디스플레이를 위해 생성하거나, 메모리에 저장된 플래그 값(예를 들어, 리스닝 모드에 있을 때 값 1로 설정되는 리스닝 모드 플래그)을 업데이트하거나, 임의의 다른 적합한 액션을 수행하거나, 또는 이들의 임의의 조합을 수행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션이 리스닝 모드에 진입했다는 표시를 미디어 안내 애플리케이션이 사용자들에게 제공할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 리스닝 모드에의 진입을 표시하기 위해 디바이스(예를 들어, 사용자 장비 디바이스) 상의 LED로 하여금 컬러를 변경하게 하거나, 턴온되게 하거나, 턴오프되게 하거나, 어둡게 하거나, 밝게 하거나, 번쩍이게 하거나, 또는 다른 방식으로 외관을 변경하게 할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 리스닝 모드가 활성이라는 것을 사용자들에게 알리기 위해 (예를 들어, 스피커들(514)을 사용하여) 오디오 메시지를 생성할 수 있다.
단계(1004)는 미디어 안내 애플리케이션이 음성이 검출되는지를 결정하는 것을 포함할 수 있다. 일부 실시예들에서, 미리 결정된 간격으로 음성을 검출할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 음성을 검출 및 인식하도록 구성될 수 있지만, 음성 커맨드들에 반드시 응답하도록 구성되는 것은 아닐 수 있다. 예를 들어, 일부 실시예들에서, 미디어 안내 애플리케이션은 단어들을 검출, 인식, 및 저장할 수 있지만, 음성 커맨드들보다는 사용자 장비(예를 들어, TV 리모컨, 마우스 키보드, 사용자 디바이스의 버튼)로부터 수신되는 커맨드들에만 응답할 수 있다. 따라서, 일부 실시예들에서, 미디어 안내 애플리케이션은 대화를 리스닝하고 프로세싱할 수 있지만 웨이크워드들을 인식하지 않지도 않고 웨이크워드들에 응답하지도 않을 수 있다.
단계(1004)에서, 미디어 안내 애플리케이션이 음성이 검출되지 않았다고 결정하는 경우, 미디어 안내 애플리케이션은 어떻게 진행할지에 대한 추가의 결정을 할 수 있다. 게다가, 미디어 안내 애플리케이션은 음성이 검출되는지 여부를 결정하기 위해 예시적인 플로차트(1000)의 단계들 중 임의의 단계를 수행할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 미리 결정된 시간 기간 이후에 단계(1004)에서 타임아웃될 수 있다(예를 들어, 10초 동안 음성이 없는 것은 "검출되지 않음"을 의미함). 추가의 예에서, 단계(1002)와 단계(1004)는 음성이 검출될 때에만 미디어 안내 애플리케이션이 리스닝 모드에 진입하도록 도 10에 도시된 것과 정반대 순서로 수행될 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 대화가 진행 중임을 나타내기 위해 단계(1004)에서 적어도 2개의 보이스가 인식될 것을 요구할 수 있다. 추가의 예에서, 단계(1004)와 단계(1006)는 하나 이상의 키워드가 식별될 때에만 미디어 안내 애플리케이션이 리스닝 모드에 진입하도록 도 10에 도시된 것과 정반대 순서로 수행될 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 오디오 신호들을 프로세싱하고(예를 들어, 윈도잉된(windowed) 고속 푸리에 변환, 웨이블릿 변환) 특정 적합한 주파수 대역들에서의 신호 에너지(예를 들어, 스펙트럼 강도, 또는 스펙트럼 밀도)가, 음성을 나타낼 수 있는, 임계치 초과일 때를 결정할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 음성 인식 계산들 및 보이스 인식 계산들을 오디오 신호들에 적용하고 단어들이 인식되는 때를 결정할 수 있다.
단계(1006)는 미디어 안내 애플리케이션이, 예를 들어, 단어들, 문구들, 이름들, 장소들, 채널들, 미디어 자산 제목들, 또는 다른 키워드들과 같은 키워드들을 식별하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 음성에서 단어들을 식별할 수 있고, 그 단어들 중 일부를 키워드들로서 선택할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 단어들을 식별할 수 있고, 그 단어들 중에서 전치사가 아닌 단어들을 선택할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 길이가 적어도 3 문자인 단어만을 키워드로서 식별할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 관련 콘텐츠의 잠재적인 검색 필드를 좁히는 데 도움이 될 수 있는 (예를 들어, 더 설명적이고 더 많은 컨텍스트를 제공하기 위해) 2개 이상의 단어를 포함하는 문구로서 키워드들을 식별할 수 있다. 미디어 안내 애플리케이션은 임의의 적합한 기준들을 사용하여 대화로부터 키워드들을 식별할 수 있다.
단계(1008)는 미디어 안내 애플리케이션이 단어들을 식별하기 위해 하나 이상의 사용자 프로파일에 액세스하는 것을 포함할 수 있다. 음성으로부터 단어들을 식별하는 것에 부가하여, 미디어 안내 애플리케이션은 관련성 있는 콘텐츠를 제공하기 위해 사용자의 프로파일로부터의 정보를 추가로 사용할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 키워드들 "디트로이트", "풋볼", 및 "경기"를 식별하고, "디트로이트 라이언스" 경기가 DVR에 저장되어 있다고 결정하기 위해 사용자의 프로파일에 액세스할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 대화의 관련성 있는 정보를 보다 완전히 캡처하기 위해 키워드들 "디트로이트", "풋볼", 및 "경기"에 동반되는 단어 "라이언스"를 식별할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 음성으로부터 키워드를 식별하고, 어느 사용자가 키워드를 발화했는지를 식별하며, 각자의 사용자의 프로파일에 액세스하여 단어들을 식별할 수 있다. 사용자의 프로파일로부터 식별되는 단어들은 시청한 미디어 콘텐츠의 제목들, 좋아하는 프로그램들의 제목들, 구매한 미디어 콘텐츠의 제목들, 추천된 미디어 콘텐츠의 제목들, 개인 정보(예를 들어, 사용자가 거주하는 도시, 사용자가 거주하는 주, 인구통계 정보), 사용자가 좋아하거나 가장 많이 시청한 장르의 이름, 사용자와 연관된 이전 대화 키워드들, 사용자의 프로파일과 연관된 임의의 다른 단어들, 또는 이들의 임의의 조합을 포함할 수 있다.
단계(1010)는 미디어 안내 애플리케이션이 단어들을 메모리에 저장하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단어들을 타임스탬프, 대화 정보, 사용자 정보, 임의의 다른 적합한 정보, 또는 이들의 임의의 조합과 함께 저장할 수 있다. 미디어 안내 애플리케이션은 단어들을 임의의 적합한 포맷 및 구조로 저장할 수 있다.
단계(1012)는 미디어 안내 애플리케이션이 키워드들과 연관된 콘텐츠 유형을 식별하는 것을 포함할 수 있다. 콘텐츠 유형은, 예를 들어, 영화 클립, 스포츠 대회 클립(예를 들어, 스포츠 경기로부터의 하이라이트), 에피소드 미디어 자산으로부터의 클립(예를 들어, 텔레비전 프로그램으로부터의 장면), 미디어 콘텐츠의 임의의 다른 적합한 분류, 그의 임의의 세부분류(subdivision), 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 콘텐츠 유형은 콘텐츠 유형의 특성화 카테고리화(characterization categorization)를 포함할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 콘텐츠 유형을 장르로서 식별할 수 있다. 일부 실시예들에서, 콘텐츠 유형은 클립 길이(예를 들어, 짧은 클립, 긴 클립, 장면, 예고편)를 포함할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 콘텐츠 유형을 "30초 미만 길이의 클립들"로서 식별할 수 있다. 미디어 안내 애플리케이션은 진행 중인 대화에 관련성 있는 콘텐츠를 식별하는 데 도움이 되는 콘텐츠 유형을 식별하거나, 잠재적인 검색 필드를 감소시키거나, 잠재적인 콘텐츠 소스 필드를 감소시키거나, 대화에 동반할 일정 지속기간 범위 내의 콘텐츠를 제공하거나, 또는 대화의 맥락에서 콘텐츠를 제공하는 데 다른 방식으로 도움을 줄 수 있다.
단계(1014)는 미디어 소스 애플리케이션이 콘텐츠 소스를 선택하는 것을 포함할 수 있다. 콘텐츠 소스는 콘텐츠 제공자, 콘텐츠 가입 서비스, 미디어 안내 데이터 소스(618), 콘텐츠 서버, 온-디맨드 콘텐츠 서비스, 온라인 비디오 서비스, 임의의 다른 적합한 콘텐츠 제공 소스, 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 하나 이상의 사용자의 가입들(예를 들어, 사용자가 Hulu에 가입함)에 기초하여 콘텐츠 소스를 선택할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 하나 이상의 사용자가 로그인되어 있는 하나 이상의 콘텐츠 소스(예를 들어, 사용자는 YouTube 계정에 로그인될 수 있고, 사용자는 HBO GO에 로그인될 수 있음)에 기초하여 콘텐츠 소스를 선택할 수 있다.
단계(1016)는 미디어 안내 애플리케이션이 하나 이상의 키워드를 식별하는 것 및 콘텐츠 유형을 식별하는 것 중 적어도 하나에 기초하여 클립들을 검색하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 식별된 키워드들을 콘텐츠 소스(예를 들어, 단계(1014)에서 선택된 콘텐츠 소스)에 전송함으로써 그 소스에 질의할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 콘텐츠 소스로부터 메타데이터를 리트리빙하고, 하나 이상의 키워드와 메타데이터에 포함된 단어들 사이의 매치들을 검색할 수 있다. 그에 따라, 미디어 안내 애플리케이션은 검색된 메타데이터에 기초하여 콘텐츠를 리트리빙할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 키워드들 중 임의의 것, 그 전부, 또는 그의 서브세트를 사용하여, 두 번 이상의 검색을 수행할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 원하는 수의 검색 결과들을 목표로 할 수 있고, 원하는 검색 결과의 개수를 달성하기 위해(예를 들어, 임계 결과 범위 내에 있도록, 임계 결과 개수 초과이도록, 또는 임계 결과 개수 미만이도록) 키워드들 및 하나 이상의 검색 필터를 적용할 수 있다. 미디어 안내 애플리케이션은 임의의 적합한 검색 기술, 데이터베이스 스키마, 질의 언어, 논리 연산자들, 검색 유형, 검색 필터들, 검색 엔진들, 임의의 다른 적합한 툴들, 또는 이들의 임의의 조합을 적용할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 불리언 로직(예를 들어, 제1 키워드 AND 제2 키워드), 문구 검색(예를 들어, "월요일 밤 풋볼"과 매칭시키는 것), 자르기(truncation), 와일드카드(wildcard)(예를 들어, "*의 경기"와 매칭시키는 것, 여기서 "*''는 와일드카드임), 메타데이터 필드 검색(예를 들어, 제목 필드를 검색하는 것, 키워드 필드를 검색하는 것), 또는 다른 검색 기술을 적용할 수 있다. 단계(1016)는 미디어 안내 애플리케이션이 미디어 콘텐츠에 대응하는 임의의 적합한 메타데이터 또는 다른 적합한 콘텐츠 정보를 리트리빙하는 것을 포함할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은, 플로차트(1000)의 단계(1036)에 의해 도시된 바와 같이, 하나 이상의 보조 검색 기준을 결정할 수 있다. 보조 검색 기준들은 검색 필터들에 대한 기준들, 임계치들, 사용자 프로파일 기준들(예를 들어, 적용되는 부모 통제, 좋아하는 서비스들, 가입된 서비스들), 사용자 정의 기준들(예를 들어, 몇 개의 키워드들을 검색할지, 몇 개의 검색 결과들을 고려할지와 같은 검색 파라미터들을 정의하는 것), 임의의 다른 적합한 기준들, 또는 이들의 임의의 조합을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 필터들을 적용함으로써 검색을 세분화하기 위해 (예를 들어, 단계(1008)에서 액세스되는) 사용자의 프로파일로부터의 정보를 적용할 수 있다.
단계(1018)는 미디어 안내 애플리케이션이 식별된 키워드들과 매칭하는 각각의 클립의 관련성 점수를 계산하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(1016)에서 식별된 키워드 매치들의 개수를 합산함으로써 관련성 점수를 계산할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 검색을 위해 계산된 데이터를 저장할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 각각의 키워드에 대한 키워드 대 메타데이터 매치들의 개수(예를 들어, 검색 결과들 중 클립 #2와 연관된 데이터가 3개의 키워드와 매칭함)를 계산할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 메타데이터와 매칭된 대화로부터의 가장 긴 문구(예를 들어, 단어들의 개수)를 계산하고 문구 길이를 저장할 수 있다. 예시적인 표 1은 검색 결과들, 검색 정보, 및 관련성 점수의 리스팅을 보여준다. 표 1에 보여진 예시적인 예에서, 검색 정보는 매칭된 키워드들의 개수, 매칭된 가장 긴 문구의 길이, 및 인기도 점수를 포함한다. 예시적인 표 1은, 3개의 검색 결과 점수(예를 들어, 표 1에서의 숫자들의 행들)의 평균으로서 계산된, 예시적인 관련성 점수를 포함한다.
검색 결과들 |
매칭된 키워드들 | 가장 긴 매칭된 문구 | 클립 인기도 | 관련성 점수 |
클립 1 | 6 | 2 | 7 | 5 |
클립 2 | 3 | 5 | 8 | 5.3 |
클립 3 | 2 | 3 | 10 | 5 |
클립 4 | 2 | 2 | 1 | 1.7 |
<예시적인 관련성 점수 계산>
표 1의 계산은 예시적인 것이며, 임의의 적합한 관련성 점수가 임의의 적합한 검색 정보에 기초하여 계산될 수 있다. 예를 들어, 관련성 점수는 합, 곱, 가중 합, 평균, 하나 이상의 점수를 입력으로서 취할 수 있는 함수, 하나 이상의 점수를 입력으로서 취할 수 있는 알고리즘, 임의의 다른 적합한 계산, 또는 이들의 임의의 조합(예를 들어, 가중 합)에 기초할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 복수의 관련성 점수들(예를 들어, 2개 이상)을 계산하고 점수들을 적합한 방식으로 결합시킬 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 복수의 관련성 점수들을 계산하고, 복수의 관련성 점수들을 결합시키지 않고 저장할 수 있다.
검색 정보는, 예를 들어, (예를 들어, 클립당) 매칭된 키워드들의 개수, 매칭된 가장 긴 문구의 길이, 인기도 점수(예를 들어, 시청 횟수, 사용자 평점), 콘텐츠 소스 점수(예를 들어, 사용자 리뷰들에 기초함, 알려진 신뢰성에 기초함, 사용자가 소스에 대한 액세스를 허용하는 가입을 갖는지 여부에 기초함), 검색 결과들 중 이전 멤버십(예를 들어, 반복된 또는 규칙적인 대화 주제), 클립을 제공하는 데 이용가능한 소스들의 개수, 클립의 관련성을 나타낼 수 있는 임의의 다른 메트릭, 또는 이들의 임의의 조합을 포함할 수 있다.
단계(1020)는 미디어 안내 애플리케이션이 하나 이상의 각자의 클립에 대응하는 하나 이상의 관련성 점수가 임계치를 초과하는지 여부를 결정하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 각각의 클립 및 대응하는 관련성 점수를 순차적으로 고려하고, 점수를 임계치와 비교하며, 관련성 결정(즉, 클립이 관련성 있는지)을 할 수 있다. 예를 들어, 10개의 클립을 갖는 검색 결과 리스트에 대해, 미디어 안내 애플리케이션은 단계(1020)를 10회 수행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 검색 결과들로부터 복수의 클립들을 고려하고, 클립들의 각자의 관련성 점수들을 임계치와 비교하며, 관련성 결정을 할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 임계치 값들의 벡터와의 벡터 비교를 수행하여, 이에 의해 단계(1020)를 상대적으로 더 통합된(consolidated) 액션으로서 수행할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(1018)와 단계(1020)를 결합시킬 수 있다. 예를 들어, 미디어 안내 애플리케이션은 단계(1020)로부터의 임계치와의 비교를 포함하는 단계(1018)에서 관련성 점수를 계산할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(1020)를 생략할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 각각의 클립에 대한 관련성 점수를 계산하고, 임계치와의 어떠한 비교도 하지 않을 수 있다(예를 들어, 단계(1026)로 진행함).
미디어 안내 애플리케이션이 단계(1020)에서 관련성 점수가 임계치를 초과하지 않는다고 결정하는 경우, 미디어 안내 애플리케이션은 단계(1022)로 진행할 수 있다. 단계(1022)는 미디어 안내 애플리케이션이 식별된 키워드들과 매칭하는 하나 이상의 클립의 다음 그룹을 클립들 중에서 선택하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은, 각각이 클립에 대응하고 클립의 대응하는 관련성 점수가 임계치를 초과하는지 여부를 나타내는, 각자의 플래그들을 저장할 수 있다(예를 들어, 0의 플래그 값은 초과하지 않음을 의미하고, 1의 플래그 값은 초과함을 의미한다). 일부 실시예들에서, 미디어 안내 애플리케이션은 단계(1020)에서 검색 결과들의 전체 리스트가 평가될 때까지 단계(1020) 및 단계(1022)를 반복할 수 있다. 일부 실시예들에서, 단계(1020)로부터의 클립들의 결과적인 리스트(예를 들어, 검색 결과들보다 개수가 적거나 동일함)는 단계(1026)에서의 추가 프로세싱을 위해 메모리에 저장될 수 있다.
단계(1026)는 미디어 안내 애플리케이션이 가장 관련성 있는 클립을 선택하는 것을 포함할 수 있다. 가장 관련성 있는 클립을 선택하는 것은, 예를 들어, 단계(1020)로부터 클립들의 결과적인 리스트의 가장 큰 관련성 점수를 식별하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 2개 이상의 가장 관련성 있는 클립을 선택할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 (예를 들어, 대안으로서, 또는 백업으로서, 또는 선택가능한 옵션들을 사용자에게 제공하기 위해) 가장 관련성 있는 클립은 물론, 두 번째 및 세 번째 가장 관련성 있는 클립을 선택할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은, 단계(1024)에 도시된 바와 같이, 하나 이상의 보조 선택 기준에 적어도 부분적으로 기초하여 가장 관련성 있는 클립을 선택할 수 있다. 단계(1024)는 미디어 선택 애플리케이션이 보조 선택 기준을 결정하는 것을 포함할 수 있다. 보조 선택 기준들은, 예를 들어, 사용자 액세스(예를 들어, 콘텐츠에 대한 부모 통제 제한), 선호된 콘텐츠 소스(예를 들어, HBO로부터의 클립이 있는 경우, 이를 선택함), 선호된 클립 지속기간(예를 들어, 클립이 10초 미만인 경우, 이를 우선적으로 선택함), 클립 포맷, 임의의 다른 적합한 기준들, 또는 이들의 임의의 조합을 포함할 수 있다.
일부 실시예들에서, 미디어 안내 애플리케이션은 더 이상 관심 대상이 아닌 제목들을 검색 결과들로부터 제거할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 사용성을 위해 안내 콘텐츠를 최적화하기 위해 대화로부터 오디오 큐들(예를 들어, 직접적인 커맨드들로 제한되지 않음)을 검출할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 대화에서 “NBC 프로그램을 더 이상 보여주지 마세요" 또는 “영화 The Hangover를 정말로 싫어해요”를 검출하고, 이러한 발화들에 기초한 키워드들을 사용하여 검색 결과들을 제거하거나 새로운 키워드를 생성할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 검출된 단어들에 기초하여 키워드들을 결정하기 위해 결정 트리 또는 랜덤 포레스트와 같은 모델을 사용할 수 있다. 예를 들어, 대화로부터 단어들 “영화 The Hangover를 정말로 싫어해요”를 식별할 때, 미디어 안내 애플리케이션은 검색 결과들로부터 영화 The Hangover 또는 그의 클립들을 제거하기 위해 키워드들 "싫다" 및 "Hangover"를 생성할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 단어 "Hangover"를 저장하고, 이 단어를 사용하여 검색 결과들을 세분화할 수 있다(예를 들어, 클립을 배제하기 위한 불리언 NOT는 단어 Hangover를 포함하는 제목을 갖는다).
단계(1028)는 미디어 안내 애플리케이션이 대화 프로세싱 디스플레이를 생성하는 것을 포함할 수 있다. 단계(1028)는 예시적인 플로차트(1000)의 다른 단계들과 임의의 적합한 순서로 수행될 수 있다. 예를 들어, 미디어 안내 애플리케이션은, 참여하는 대화 또는 모드에 상관없이, 항상 디스플레이되는 대화 프로세싱 디스플레이를 생성할 수 있다. 추가의 예에서, 미디어 안내 애플리케이션은 단계(1004)에서 음성이 검출되는 경우 대화 프로세싱 디스플레이를 생성할 수 있다. 미디어 안내 애플리케이션은 임의의 적합한 시간에 대화 프로세싱 디스플레이를 생성할 수 있다. 일부 실시예들에서, 새로운 대화가 검출되는 경우, 미디어 안내 애플리케이션은 대화 디스플레이를 리프레시, 수정, 대체, 또는 다른 방식으로 업데이트할 수 있다. 예를 들어, 미디어 안내 애플리케이션은 새로운 대화를 식별하고, 특히 새로운 대화의 키워드들이 이전 대화의 키워드들과 상이한 경우, 대화 프로세싱 디스플레이를 새로운 것으로 대체할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 음성이 검출되고 있을 때에만 그리고 미리 결정된 시간 후에 대화 프로세싱 디스플레이를 생성 및 유지할 수 있다(예를 들어, 구두 대화 프로세싱 윈도).
일부 상황들에서, 미디어 안내 애플리케이션은 대화 정보 및 관련성 있는 클립을 제시할 수 있는 것은 물론, 대화 이전에 제시되고 있었던 콘텐츠를 관리할 수 있다. 예시적인 단계들(1030, 1032, 및 1034)은 일부 그러한 제시들에 대한 설명들을 포함한다. 미디어 안내 애플리케이션은 단계들(1030, 1032, 및 1034) 중 임의의 단계, 또는 이들의 임의의 조합을 수행하여 진행 중인 대화에 관련성 있는 콘텐츠를 제공할 수 있다. 미디어 안내 애플리케이션은 단계들(1032 및 1034) 중 임의의 단계를 생략하거나 선택적으로 수행하여 진행 중인 대화에 관련성 있는 콘텐츠를 제공할 수 있다.
단계(1030)는 미디어 안내 애플리케이션이 가장 관련성 있는 클립을 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 가장 관련성 있는 클립을 대화 프로세싱 디스플레이의 영역에서 제시할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 가장 관련성 있는 클립을 자동 재생할 수 있다(예를 들어, 클립을 재생하기 시작하기 위해 사용자 입력을 기다리지 않음). 일부 실시예들에서, 미디어 안내 애플리케이션은 클립을 재생하기 시작하기 위해 사용자 입력을 기다릴 수 있다. 예를 들어, 미디어 안내 애플리케이션은 시작 버튼 또는 재생 버튼을 제공할 수 있고, 버튼의 사용자 선택을 수신할 때, 클립을 재생하기 시작할 수 있다.
단계(1032)는 미디어 안내 애플리케이션이 대화 정보를 제시하는 것을 포함할 수 있다. 일부 실시예들에서, 미디어 안내 애플리케이션은 대화 정보를 대화 프로세싱 디스플레이에서 제시할 수 있다. 대화 정보는, 예를 들어, 식별된 키워드들, 식별된 사용자들(예를 들어, 대화에 참여한 사용자들), 대화 시작 시간, 대화 종료 시간, 대화 지속 시간, 대화 식별자(예를 들어, "디트로이트 라이언스 경기에 대한 화요일 채팅"), 임의의 다른 적합한 정보, 또는 이들의 임의의 조합과 같은 키워드들의 발화들에 관한 정보를 포함할 수 있다. 대화 정보는, 예를 들어, 하나 이상의 콘텐츠 리스팅(예를 들어, 관련성 있는 클립들에 대응함), 콘텐츠 소스 식별, 콘텐츠 유형 식별(예를 들어, 영화 클립, 광고, 스포츠 경기로부터의 클립), 임의의 다른 적합한 정보, 또는 이들의 임의의 조합과 같은 관련성 있는 콘텐츠에 관한 정보를 포함할 수 있다.
단계(1034)는 미디어 안내 애플리케이션이 이전에 디스플레이된 미디어 콘텐츠를 관리하는 것을 포함할 수 있다. 일부 상황들에서, 미디어 안내 애플리케이션은 대화가 검출될 때 미디어 콘텐츠, 미디어 자산들의 리스팅을 제시하고 있었을 수 있거나, 디스플레이를 다른 방식으로 생성하고 있었을 수 있다. 일부 그러한 상황들에서, 미디어 안내 애플리케이션은 이전에 제시된 콘텐츠를 일시중지할 수 있다. 예를 들어, 사용자들의 그룹이 The Simpsons를 시청하고 있을 수 있고, 이어서 Game of Thrones에 관해 대화하기 시작할 수 있다. 이 예에 대해, 일부 실시예들에서, 미디어 안내 애플리케이션은 The Simpsons를 일시중지할 수 있고, 대화 정보, 관련성 있는 클립, 및 사용자들의 리스트를 포함할 수 있는 대화 모니터링 디스플레이를 제시할 수 있다. 이 예에 대해, 일부 실시예들에서, 미디어 안내 애플리케이션은 대응하는 오디오가 뮤팅된 상태로 The Simpsons를 계속 제시할 수 있고, 대화 정보 및 관련성 있는 클립(예를 들어, 재생할 때 부수적인 오디오)을 포함할 수 있는 대화 모니터링 디스플레이(예를 들어, 오버레이)를 제시할 수 있다. 이 예에 대해, 일부 실시예들에서, 미디어 안내 애플리케이션은 사용자들이 이전에 제시된 콘텐츠(즉, 이 예에서 The Simpsons), 또는 관련성 있는 클립(즉, 이 예에서 Game of Thrones으로부터의 관련성 있는 클립)을 계속 시청하기를 선호하는지를 나타내는 선택가능한 옵션을 사용자들에게 제시할 수 있다. 이 예에 대해, 일부 실시예들에서, 미디어 안내 애플리케이션은 대화 프로세싱 디스플레이(예를 들어, 분할 스크린)를 가능하게 해주기 위해 이전에 디스플레이된 콘텐츠의 크기를 감소시킬 수 있다. 미디어 안내 애플리케이션은 대화의 맥락에서 관련성 있는 클립을 제시하는 것에 응답하여 제시된 콘텐츠의 임의의 적합한 양태를 중지하거나, 일시중지하거나, 뮤팅시키거나, 그의 디스플레이 크기를 축소시키거나, 오버레이하거나, 오버레이 및 블러링하거나, 디스플레이로부터 제거하거나, 또는 다른 방식으로 관리할 수 있다.
예를 들어, 단계(1030)로부터 관련성 있는 클립 이외에 관리할 콘텐츠가 없는 상황들에서, 단계(1034)가 생략될 수 있다.
도 10의 단계들 또는 설명들이 본 개시내용의 임의의 다른 실시예에 대해 사용될 수 있는 것이 고려된다. 그에 부가하여, 도 10과 관련하여 설명된 단계들 및 설명들은 본 개시내용의 목적들을 달성하기 위해 대안의 순서들로 또는 병렬로 행해질 수 있다. 예를 들어, 이러한 단계들 각각은 시스템 또는 방법의 지연을 감소시키거나 속도를 증가시키기 위해 임의의 순서로 또는 병렬로 또는 실질적으로 동시에 수행될 수 있다. 이 단계들 중 임의의 것이 또한 스킵될 수 있거나 프로세스로부터 생략될 수 있다. 게다가, 도 5 및 도 6과 관련하여 논의된 디바이스들 또는 장비 중 임의의 것이 도 10에서의 단계들 중 하나 이상을 수행하는 데 사용될 수 있음에 유의해야 한다.
본 개시내용의 앞서 설명된 실시예들은 제한이 아니라 예시의 목적을 위해 제시된 것이며, 본 개시내용은 이하의 청구항들에 의해서만 제한된다. 부가적으로, 도 5 및 도 6과 관련하여 논의된 디바이스들 또는 장비 중 임의의 것이, 제각기, 도 7 내지 도 10에서의 프로세스들(700 내지 1000)에서의 단계들 중 하나 이상을 수행하는 데 사용될 수 있음에 유의해야 한다. 게다가, 임의의 일 실시예에서 설명된 특징들 및 제한들이 본 명세서에서의 임의의 다른 실시예에 적용될 수 있으며, 일 실시예에 관련된 플로차트들 또는 예들이 적합한 방식으로 임의의 다른 실시예와 결합될 수 있거나, 상이한 순서들로 행해질 수 있거나, 단계들을 추가하여 수행될 수 있거나, 단계들을 생략하여 수행될 수 있거나, 또는 병렬로 행해질 수 있다는 점에 유의해야 한다. 예를 들어, 이러한 단계들 각각은 시스템 또는 방법의 지연을 감소시키거나 속도를 증가시키기 위해 임의의 순서로 또는 병렬로 또는 실질적으로 동시에 수행될 수 있다. 그에 부가하여, 본 명세서에 설명된 시스템들 및 방법들은 실시간으로 수행될 수 있다. 위에서 설명된 시스템들 및/또는 방법들이 다른 시스템들 및/또는 방법들에 적용될 수 있거나 그에 따라 사용될 수 있음에 또한 유의해야 한다.
Claims (51)
- 대화의 맥락에서 콘텐츠를 추천하기 위한 방법으로서,
사용자 장비를 사용하여, 복수의 사용자들 사이의 구두 대화를 모니터링하는 단계;
상기 구두 대화가 계속됨에 따라, 상기 구두 대화에서의 단어들을 프로세싱하여 상기 구두 대화에서의 상기 단어들로부터 키워드들을 선택적으로 리트리빙(retrieve)하는 단계;
상기 선택적으로 리트리빙된 키워드들에 기초하여 웨이크워드(wakeword)를 수신함이 없이 상기 구두 대화에서의 상기 키워드들을 검출하는 단계;
복수의 클립들 각각과 연관된 메타데이터를 상기 검출된 키워드들과 비교하는 것, 및 상기 비교에 기초하여, 상기 클립들 중 다른 클립과 연관된 메타데이터보다 더 많이 키워드들과 매칭하는 메타데이터를 갖는 클립을 상기 복수의 클립들 중에서 선택하는 것에 의해, 상기 키워드들 중 하나와 매칭하는 클립을 상기 복수의 클립들에서 검색하는 단계; 및
상기 웨이크워드를 수신함이 없이, 상기 구두 대화 동안 상기 클립을 상기 사용자들에게 자동으로 제시하는 단계
를 포함하는, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
상기 검출된 키워드들과 연관된 콘텐츠 유형을 식별하는 단계; 및
상기 식별된 콘텐츠 유형에 기초하여 검색할 콘텐츠 소스를 선택하는 단계
를 더 포함하는, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
구두 대화 프로세싱 윈도우를 생성하는 단계; 및
상기 구두 대화 프로세싱 윈도우의 시작 시간 이전에 검출되는 단어들이 폐기되도록, 상기 구두 대화 프로세싱 윈도우 내에서 검출되는 상기 구두 대화에서의 단어들을 일시적으로 저장하는 단계
를 더 포함하는, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
리스닝 모드(listening mode)를 활성화시키는 단계
를 더 포함하고, 상기 모니터링하는 단계는 상기 리스닝 모드가 활성일 때 수행되고 상기 리스닝 모드가 디스에이블될 때 수행되지 않는 것인, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
상기 복수의 클립들 각각은 임계 지속기간 미만인 것인, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
상기 키워드들은 미디어 자산에서의 세그먼트에 관련되고, 상기 복수의 클립들 각각은 상기 미디어 자산의 장면에서의 콘텐츠를 나타내는 것인, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제6항에 있어서,
상기 세그먼트는 스포츠 이벤트에서의 플레이를 특징으로 하는 상기 미디어 자산의 장면 또는 일부분인 것인, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
상기 구두 대화 동안 상기 클립을 상기 사용자들에게 자동으로 제시하는 단계는 상기 클립을 제시하기 위해 상기 사용자 장비 상에 현재 제시되고 있는 콘텐츠를 변경하는 단계를 포함하는 것인, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항에 있어서,
상기 대화에서의 상기 키워드들을 검출하는 것에 응답하여 상기 클립이 선택되었다는 표시와 함께, 상기 검출된 키워드들 중 일부를 상기 클립과 함께 제시하는 단계
를 더 포함하는, 대화의 맥락에서 콘텐츠를 추천하기 위한 방법. - 제1항 내지 제9항 중 어느 한 항의 방법을 수행하도록 구성된 제어 회로부를 포함하는 시스템.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/824,788 US11140450B2 (en) | 2017-11-28 | 2017-11-28 | Methods and systems for recommending content in context of a conversation |
US15/824,788 | 2017-11-28 | ||
PCT/US2018/038965 WO2019108257A1 (en) | 2017-11-28 | 2018-06-22 | Methods and systems for recommending content in context of a conversation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200094162A KR20200094162A (ko) | 2020-08-06 |
KR102581116B1 true KR102581116B1 (ko) | 2023-09-21 |
Family
ID=63015017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207017321A KR102581116B1 (ko) | 2017-11-28 | 2018-06-22 | 대화의 맥락에서 콘텐츠를 추천하기 위한 방법들 및 시스템들 |
Country Status (7)
Country | Link |
---|---|
US (3) | US11140450B2 (ko) |
JP (1) | JP7295110B2 (ko) |
KR (1) | KR102581116B1 (ko) |
CN (1) | CN111433845B (ko) |
AR (1) | AR113590A1 (ko) |
CA (1) | CA3081859A1 (ko) |
WO (1) | WO2019108257A1 (ko) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10123058B1 (en) | 2017-05-08 | 2018-11-06 | DISH Technologies L.L.C. | Systems and methods for facilitating seamless flow content splicing |
US11115717B2 (en) | 2017-10-13 | 2021-09-07 | Dish Network L.L.C. | Content receiver control based on intra-content metrics and viewing pattern detection |
US11140450B2 (en) | 2017-11-28 | 2021-10-05 | Rovi Guides, Inc. | Methods and systems for recommending content in context of a conversation |
CN110637300B (zh) * | 2018-04-25 | 2023-09-19 | 谷歌有限责任公司 | 在联网环境中延迟的双因素认证 |
CA3104616A1 (en) * | 2018-06-26 | 2020-01-02 | Rovi Guides, Inc. | Augmented display from conversational monitoring |
US10269376B1 (en) * | 2018-06-28 | 2019-04-23 | Invoca, Inc. | Desired signal spotting in noisy, flawed environments |
US10616649B2 (en) * | 2018-07-19 | 2020-04-07 | Rovi Guides, Inc. | Providing recommendations based on passive microphone detections |
US10832659B2 (en) * | 2018-08-31 | 2020-11-10 | International Business Machines Corporation | Intent authoring using weak supervision and co-training for automated response systems |
US12056179B2 (en) * | 2018-09-26 | 2024-08-06 | Rovi Guides, Inc. | Systems and methods for generating query suggestions |
JP2022028094A (ja) * | 2018-12-21 | 2022-02-15 | ソニーグループ株式会社 | 情報処理装置、制御方法、情報処理端末、情報処理方法 |
KR20200084413A (ko) * | 2018-12-21 | 2020-07-13 | 삼성전자주식회사 | 컴퓨팅 장치 및 그 동작 방법 |
CN111475206B (zh) * | 2019-01-04 | 2023-04-11 | 优奈柯恩(北京)科技有限公司 | 用于唤醒可穿戴设备的方法及装置 |
US11106875B2 (en) | 2019-05-20 | 2021-08-31 | International Business Machines Corporation | Evaluation framework for intent authoring processes |
US11025990B2 (en) * | 2019-06-17 | 2021-06-01 | Rovi Guides, Inc. | Search and recommendation of media assets through conversational use of catchphrases |
US11227593B2 (en) * | 2019-06-28 | 2022-01-18 | Rovi Guides, Inc. | Systems and methods for disambiguating a voice search query based on gestures |
MX2022001546A (es) * | 2019-08-05 | 2022-03-22 | Hoppr Ltd | Metodo y sistema para proporcionar contenido a un dispositivo de reproduccion de medios. |
US11380306B2 (en) | 2019-10-31 | 2022-07-05 | International Business Machines Corporation | Iterative intent building utilizing dynamic scheduling of batch utterance expansion methods |
CN110767234B (zh) * | 2019-10-31 | 2022-12-23 | 抖音视界有限公司 | 音频信息处理方法、装置、电子设备及存储介质 |
WO2021091526A1 (en) * | 2019-11-04 | 2021-05-14 | Google Llc | Using video clips as dictionary usage examples |
US11977849B2 (en) * | 2020-04-24 | 2024-05-07 | Rajiv Trehan | Artificial intelligence (AI) based automated conversation assistance system and method thereof |
US11277663B2 (en) | 2020-05-18 | 2022-03-15 | Mercury Analytics, LLC | Systems and methods for providing survey data |
CN111611492A (zh) * | 2020-05-26 | 2020-09-01 | 北京字节跳动网络技术有限公司 | 一种触发搜索的方法、装置、电子设备及存储介质 |
US11190641B1 (en) * | 2020-09-30 | 2021-11-30 | Capital One Services, Llc | Automated agent behavior recommendations for call quality improvement |
KR20220091068A (ko) * | 2020-12-23 | 2022-06-30 | 삼성전자주식회사 | 음성 기반 콘텐츠 제공 방법 및 그 전자 장치 |
EP4220628A4 (en) | 2021-02-19 | 2024-05-22 | Samsung Electronics Co., Ltd. | ELECTRONIC SERVICE SUPPORT DEVICE FOR ARTIFICIAL INTELLIGENCE (AI) AGENT TALKING WITH USER |
KR20220118698A (ko) * | 2021-02-19 | 2022-08-26 | 삼성전자주식회사 | 사용자와 대화하는 인공 지능 에이전트 서비스를 지원하는 전자 장치 |
US11978449B2 (en) | 2021-03-02 | 2024-05-07 | Samsung Electronics Co., Ltd. | Electronic device for processing user utterance and operation method therefor |
WO2022208254A1 (en) * | 2021-04-01 | 2022-10-06 | Symmetrics Tech Matrix Pvt Ltd. | Method of performing actions from an on-going conversation window and a user interface thereof |
CN113676764B (zh) * | 2021-08-04 | 2023-12-05 | 深圳康佳电子科技有限公司 | 一种屏幕分屏显示方法、装置及存储介质 |
GB2623285A (en) * | 2021-08-31 | 2024-04-10 | Shopify Inc | Dynamic labeling of and generating indications of real-time communication sessions |
CN113704440B (zh) * | 2021-09-06 | 2022-02-18 | 中国计量大学 | 一种基于物品图网络中路径表征的会话推荐方法 |
CN116205200A (zh) * | 2021-11-30 | 2023-06-02 | 腾讯科技(深圳)有限公司 | 视频封面的生成方法、装置、设备、介质及程序产品 |
US11762898B1 (en) * | 2022-03-31 | 2023-09-19 | Dropbox, Inc. | Generating and utilizing digital media clips based on contextual metadata from digital environments |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130216206A1 (en) * | 2010-03-08 | 2013-08-22 | Vumanity Media, Inc. | Generation of Composited Video Programming |
US20140168354A1 (en) | 2012-12-19 | 2014-06-19 | Rabbit, Inc. | Audio video streaming system and method |
Family Cites Families (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6239794B1 (en) | 1994-08-31 | 2001-05-29 | E Guide, Inc. | Method and system for simultaneously displaying a television program and information about the program |
US5553221A (en) * | 1995-03-20 | 1996-09-03 | International Business Machine Corporation | System and method for enabling the creation of personalized movie presentations and personalized movie collections |
US6658662B1 (en) * | 1997-06-30 | 2003-12-02 | Sun Microsystems, Inc. | Retrieving information from a broadcast signal |
US6564378B1 (en) | 1997-12-08 | 2003-05-13 | United Video Properties, Inc. | Program guide system with browsing display |
CN1867068A (zh) | 1998-07-14 | 2006-11-22 | 联合视频制品公司 | 交互式电视节目导视系统及其方法 |
AR020608A1 (es) | 1998-07-17 | 2002-05-22 | United Video Properties Inc | Un metodo y una disposicion para suministrar a un usuario acceso remoto a una guia de programacion interactiva por un enlace de acceso remoto |
PT1986425E (pt) | 1998-07-17 | 2014-07-24 | United Video Properties Inc | Sistema de guia de programas de televisão interactivo que tem múltiplos dispositivos dentro de uma zona habitacional |
US7165098B1 (en) | 1998-11-10 | 2007-01-16 | United Video Properties, Inc. | On-line schedule system with personalization features |
JP2002539528A (ja) * | 1999-03-05 | 2002-11-19 | キヤノン株式会社 | データベース注釈付け及び検索 |
KR20020027382A (ko) | 2000-05-03 | 2002-04-13 | 요트.게.아. 롤페즈 | 콘텐트 정보의 의미론에 따른 음성 명령 |
US7000242B1 (en) * | 2000-07-31 | 2006-02-14 | Jeff Haber | Directing internet shopping traffic and tracking revenues generated as a result thereof |
KR101775064B1 (ko) | 2001-02-21 | 2017-09-06 | 로비 가이드스, 인크. | 개인용 비디오 녹화 특징을 갖는 대화식 프로그램 가이드를 위한 시스템 및 방법 |
US20020133562A1 (en) * | 2001-03-13 | 2002-09-19 | Newnam Scott G. | System and method for operating internet-based events |
US20020170068A1 (en) * | 2001-03-19 | 2002-11-14 | Rafey Richter A. | Virtual and condensed television programs |
US7110664B2 (en) * | 2001-04-20 | 2006-09-19 | Front Porch Digital, Inc. | Methods and apparatus for indexing and archiving encoded audio-video data |
US7035468B2 (en) * | 2001-04-20 | 2006-04-25 | Front Porch Digital Inc. | Methods and apparatus for archiving, indexing and accessing audio and video data |
US20020162117A1 (en) * | 2001-04-26 | 2002-10-31 | Martin Pearson | System and method for broadcast-synchronized interactive content interrelated to broadcast content |
US7886003B2 (en) * | 2001-07-06 | 2011-02-08 | Ericsson Television, Inc. | System and method for creating interactive events |
US7908628B2 (en) * | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
CN1298160C (zh) * | 2001-08-28 | 2007-01-31 | 松下电器产业株式会社 | 广播接收方法和系统 |
US7092888B1 (en) * | 2001-10-26 | 2006-08-15 | Verizon Corporate Services Group Inc. | Unsupervised training in natural language call routing |
US7996232B2 (en) * | 2001-12-03 | 2011-08-09 | Rodriguez Arturo A | Recognition of voice-activated commands |
JP4177018B2 (ja) * | 2002-04-23 | 2008-11-05 | 富士通株式会社 | コンテンツ配信方法及びその方法における処理をコンピュータに行なわせるためのプログラム |
WO2004004351A1 (en) * | 2002-07-01 | 2004-01-08 | Microsoft Corporation | A system and method for providing user control over repeating objects embedded in a stream |
US7774815B1 (en) * | 2002-09-30 | 2010-08-10 | Arris Group, Inc. | Context-sensitive interactive television ticker |
CN1910654B (zh) | 2004-01-20 | 2012-01-25 | 皇家飞利浦电子股份有限公司 | 确定交谈主题并获取和呈现相关内容的方法和系统 |
US20050188411A1 (en) * | 2004-02-19 | 2005-08-25 | Sony Corporation | System and method for providing content list in response to selected closed caption word |
US20050234992A1 (en) | 2004-04-07 | 2005-10-20 | Seth Haberman | Method and system for display guide for video selection |
US20070124788A1 (en) * | 2004-11-25 | 2007-05-31 | Erland Wittkoter | Appliance and method for client-sided synchronization of audio/video content and external data |
JP2008535317A (ja) * | 2005-03-23 | 2008-08-28 | アルカテル−ルーセント | デジタルマルチメディアコンテンツに関してネットワークノードからプレイリスト検索を達成するためのシステムおよび方法 |
JP4779481B2 (ja) * | 2005-07-19 | 2011-09-28 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US8024768B2 (en) * | 2005-09-15 | 2011-09-20 | Penthera Partners, Inc. | Broadcasting video content to devices having different video presentation capabilities |
US7801910B2 (en) * | 2005-11-09 | 2010-09-21 | Ramp Holdings, Inc. | Method and apparatus for timed tagging of media content |
WO2007064641A2 (en) * | 2005-11-29 | 2007-06-07 | Google Inc. | Social and interactive applications for mass media |
US20100153885A1 (en) | 2005-12-29 | 2010-06-17 | Rovi Technologies Corporation | Systems and methods for interacting with advanced displays provided by an interactive media guidance application |
US8115869B2 (en) * | 2007-02-28 | 2012-02-14 | Samsung Electronics Co., Ltd. | Method and system for extracting relevant information from content metadata |
US8209724B2 (en) * | 2007-04-25 | 2012-06-26 | Samsung Electronics Co., Ltd. | Method and system for providing access to information of potential interest to a user |
US8412021B2 (en) * | 2007-05-18 | 2013-04-02 | Fall Front Wireless Ny, Llc | Video player user interface |
US9318108B2 (en) * | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US20080091713A1 (en) * | 2006-10-16 | 2008-04-17 | Candelore Brant L | Capture of television metadata via OCR |
US8296808B2 (en) * | 2006-10-23 | 2012-10-23 | Sony Corporation | Metadata from image recognition |
US7814524B2 (en) * | 2007-02-14 | 2010-10-12 | Sony Corporation | Capture of configuration and service provider data via OCR |
US7689613B2 (en) * | 2006-10-23 | 2010-03-30 | Sony Corporation | OCR input to search engine |
JP2008162233A (ja) | 2007-01-04 | 2008-07-17 | National Printing Bureau | 真偽判別印刷物、該印刷物の真偽判別方法及び真偽判別システム |
JP2008171173A (ja) * | 2007-01-11 | 2008-07-24 | Nippon Telegr & Teleph Corp <Ntt> | 文書検索方法および装置、プログラム |
JP2009088687A (ja) * | 2007-09-27 | 2009-04-23 | Fujifilm Corp | アルバム作成装置 |
US8000972B2 (en) * | 2007-10-26 | 2011-08-16 | Sony Corporation | Remote controller with speech recognition |
EP2109313B1 (en) * | 2008-04-09 | 2016-01-13 | Sony Computer Entertainment Europe Limited | Television receiver and method |
US8079054B1 (en) * | 2008-04-14 | 2011-12-13 | Adobe Systems Incorporated | Location for secondary content based on data differential |
US20090293081A1 (en) * | 2008-05-22 | 2009-11-26 | At&T Delaware Intellectual Property, Inc. | Methods and computer program products for performing searches at a plurality of content storing locations |
US8423363B2 (en) * | 2009-01-13 | 2013-04-16 | CRIM (Centre de Recherche Informatique de Montréal) | Identifying keyword occurrences in audio data |
US20100316131A1 (en) * | 2009-06-12 | 2010-12-16 | Motorola, Inc. | Macroblock level no-reference objective quality estimation of video |
US9014546B2 (en) * | 2009-09-23 | 2015-04-21 | Rovi Guides, Inc. | Systems and methods for automatically detecting users within detection regions of media devices |
WO2011053271A1 (en) * | 2009-10-29 | 2011-05-05 | Thomson Licensing | Multiple-screen interactive screen architecture |
JP2011180271A (ja) * | 2010-02-26 | 2011-09-15 | Daiichikosho Co Ltd | クレイドルを介してホストシステムに接続されるカラオケ選曲予約装置 |
US8572488B2 (en) * | 2010-03-29 | 2013-10-29 | Avid Technology, Inc. | Spot dialog editor |
US20110283189A1 (en) * | 2010-05-12 | 2011-11-17 | Rovi Technologies Corporation | Systems and methods for adjusting media guide interaction modes |
WO2011146276A2 (en) * | 2010-05-19 | 2011-11-24 | Google Inc. | Television related searching |
US8359020B2 (en) | 2010-08-06 | 2013-01-22 | Google Inc. | Automatically monitoring for voice input based on context |
US20120095997A1 (en) * | 2010-10-18 | 2012-04-19 | Microsoft Corporation | Providing contextual hints associated with a user session |
US9462340B1 (en) * | 2011-10-13 | 2016-10-04 | Trevor Mathurin | Voice/manual activated and integrated audio/video multi-media, multi-interface system |
US8812527B2 (en) * | 2011-11-29 | 2014-08-19 | International Business Machines Corporation | Automatically recommending asynchronous discussion forum posts during a real-time collaboration |
KR101878488B1 (ko) | 2011-12-20 | 2018-08-20 | 한국전자통신연구원 | 대화 연관 컨텐츠 제공 방법 및 장치 |
WO2013115235A1 (ja) * | 2012-02-03 | 2013-08-08 | シャープ株式会社 | 出力システム、出力システムの制御方法、制御プログラム、および記録媒体 |
US8612211B1 (en) * | 2012-09-10 | 2013-12-17 | Google Inc. | Speech recognition and summarization |
JP2014126600A (ja) * | 2012-12-25 | 2014-07-07 | Panasonic Corp | 音声認識装置、音声認識方法、およびテレビ |
US20140278834A1 (en) * | 2013-03-14 | 2014-09-18 | Armchair Sports Productions Inc. | Voting on actions for an event |
KR101456974B1 (ko) * | 2013-05-21 | 2014-10-31 | 삼성전자 주식회사 | 사용자 단말기, 음성인식 서버 및 음성인식 가이드 방법 |
JP2015052745A (ja) * | 2013-09-09 | 2015-03-19 | Necパーソナルコンピュータ株式会社 | 情報処理装置、制御方法、及びプログラム |
CA2924065C (en) * | 2013-09-13 | 2018-05-15 | Arris Enterprises, Inc. | Content based video content segmentation |
JP6168453B2 (ja) * | 2013-09-19 | 2017-07-26 | パナソニックIpマネジメント株式会社 | 信号記録装置、カメラレコーダおよび信号処理装置 |
US9510030B2 (en) * | 2014-02-13 | 2016-11-29 | Piksel, Inc. | Delivering media content to a content consuming user |
JP6099099B2 (ja) * | 2014-02-28 | 2017-03-22 | 日本電信電話株式会社 | 収束判定装置、方法、及びプログラム |
US10206014B2 (en) * | 2014-06-20 | 2019-02-12 | Google Llc | Clarifying audible verbal information in video content |
US9728229B2 (en) | 2015-09-24 | 2017-08-08 | International Business Machines Corporation | Searching video content to fit a script |
CN106021600B (zh) * | 2016-06-12 | 2018-03-09 | 腾讯科技(深圳)有限公司 | 信息提示方法及装置 |
US10796697B2 (en) * | 2017-01-31 | 2020-10-06 | Microsoft Technology Licensing, Llc | Associating meetings with projects using characteristic keywords |
CN107222757A (zh) * | 2017-07-05 | 2017-09-29 | 深圳创维数字技术有限公司 | 一种语音搜索方法、机顶盒、存储介质、服务器和系统 |
US11140450B2 (en) | 2017-11-28 | 2021-10-05 | Rovi Guides, Inc. | Methods and systems for recommending content in context of a conversation |
-
2017
- 2017-11-28 US US15/824,788 patent/US11140450B2/en active Active
-
2018
- 2018-06-22 CA CA3081859A patent/CA3081859A1/en active Pending
- 2018-06-22 CN CN201880076956.6A patent/CN111433845B/zh active Active
- 2018-06-22 KR KR1020207017321A patent/KR102581116B1/ko active IP Right Grant
- 2018-06-22 WO PCT/US2018/038965 patent/WO2019108257A1/en active Application Filing
- 2018-06-22 JP JP2020528892A patent/JP7295110B2/ja active Active
- 2018-11-28 AR ARP180103481A patent/AR113590A1/es unknown
-
2021
- 2021-09-03 US US17/466,850 patent/US11716514B2/en active Active
-
2023
- 2023-06-13 US US18/209,166 patent/US20230328325A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130216206A1 (en) * | 2010-03-08 | 2013-08-22 | Vumanity Media, Inc. | Generation of Composited Video Programming |
US20140168354A1 (en) | 2012-12-19 | 2014-06-19 | Rabbit, Inc. | Audio video streaming system and method |
Also Published As
Publication number | Publication date |
---|---|
US11140450B2 (en) | 2021-10-05 |
KR20200094162A (ko) | 2020-08-06 |
WO2019108257A1 (en) | 2019-06-06 |
CA3081859A1 (en) | 2019-06-06 |
AR113590A1 (es) | 2020-05-20 |
US11716514B2 (en) | 2023-08-01 |
JP2021505046A (ja) | 2021-02-15 |
CN111433845A (zh) | 2020-07-17 |
JP7295110B2 (ja) | 2023-06-20 |
US20230328325A1 (en) | 2023-10-12 |
US20190166403A1 (en) | 2019-05-30 |
US20210400349A1 (en) | 2021-12-23 |
CN111433845B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102581116B1 (ko) | 대화의 맥락에서 콘텐츠를 추천하기 위한 방법들 및 시스템들 | |
US11024296B2 (en) | Systems and methods for conversations with devices about media using interruptions and changes of subjects | |
US11481187B2 (en) | Systems and methods for generating a volume-based response for multiple voice-operated user devices | |
US12021909B2 (en) | Systems and methods for establishing a voice link between users accessing media | |
US10672390B2 (en) | Systems and methods for improving speech recognition performance by generating combined interpretations | |
US11375287B2 (en) | Systems and methods for gamification of real-time instructional commentating | |
JP2019525547A (ja) | 複数のユーザのためのプレイリストのメディアに対する継続的なアクセスを保証するためのシステムおよび方法 | |
US11758234B2 (en) | Systems and methods for creating an asynchronous social watching experience among users | |
US10182271B1 (en) | Systems and methods for playback of summary media content | |
US10616649B2 (en) | Providing recommendations based on passive microphone detections | |
US11960516B2 (en) | Methods and systems for playing back indexed conversations based on the presence of other people | |
US20240022791A1 (en) | Systems and methods to adapt a schedule to be played by a media player |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |