KR20190055204A - 자막 텍스트에서의 에러들을 정정하기 위한 시스템들 및 방법들 - Google Patents

자막 텍스트에서의 에러들을 정정하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR20190055204A
KR20190055204A KR1020197011962A KR20197011962A KR20190055204A KR 20190055204 A KR20190055204 A KR 20190055204A KR 1020197011962 A KR1020197011962 A KR 1020197011962A KR 20197011962 A KR20197011962 A KR 20197011962A KR 20190055204 A KR20190055204 A KR 20190055204A
Authority
KR
South Korea
Prior art keywords
text
term
text segment
erroneous
media asset
Prior art date
Application number
KR1020197011962A
Other languages
English (en)
Other versions
KR102612355B1 (ko
Inventor
아자이 쿠마르 굽타
압히짓 사치다난드 사바르카르
Original Assignee
로비 가이드스, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로비 가이드스, 인크. filed Critical 로비 가이드스, 인크.
Publication of KR20190055204A publication Critical patent/KR20190055204A/ko
Application granted granted Critical
Publication of KR102612355B1 publication Critical patent/KR102612355B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • G06F17/273
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Studio Devices (AREA)

Abstract

시스템들 및 방법들은 미디어 자산에 대한 온-스크린 자막 텍스트에서 오류성 용어를 정정함으로써 기존의 시스템들에서의 단점들을 해결하기 위하여 설명된다. 일부 양태들에서, 시스템들 및 방법들은 온-스크린 자막 텍스트의 텍스트 세그먼트에서 오류성 용어를 식별하고, 텍스트 세그먼트에 대응하는 미디어 자산의 하나 이상의 비디오 프레임들을 식별한다. 시스템들 및 방법들은 하나 이상의 비디오 프레임들로부터 오류성 용어에 관련된 문맥적 용어를 추가로 식별한다. 지식 그래프를 액세스함으로써, 시스템들 및 방법들은 문맥적 용어 및 텍스트 세그먼트의 부분에 기초하여 후보 정정을 식별한다. 마지막으로, 시스템들 및 방법들은 오류성 용어를 후보 정정으로 대체한다.

Description

자막 텍스트에서의 에러들을 정정하기 위한 시스템들 및 방법들
기존의 미디어 시스템들은 뉴스 프로그램으로부터의 음성 정보를 부제목(subtitle)들 또는 폐쇄형 자막(closed caption)들의 형태로 온-스크린 자막 텍스트(on-screen caption text)로 변환할 수 있다. 전통적으로, 이 프로세스는 인간 속기사(stenographer)에 의해 처리된다. 더 최근에, 미디어 시스템들은 음성 정보를 파싱하고 그것을 음성 자체와 실질적으로 동시에 온-스크린 자막 텍스트로서 디스플레이하기 위하여 음성 인식 기법(speech recognition technique)들을 이용하는 것을 시작하였다. 그러나, 이 미디어 시스템들은 그 사전 크기에 의해, 또는 인간 속기사의 지식에 의해 제한되고, 어떤 예술의 용어들, 새롭게 생성된 유행어들, 외국 이름들, 또는 다른 단어들 및 어구들을 인식하는 것을 종종 실패한다. 자동적 음성 인식(automatic speech recognition; ASR)을 이용하는 미디어 시스템들은 또한, 동음이의어(homophone)들(비슷하게 들리는 단어들)을 프로세싱할 때에 불리하다. 에러들이 가득한 뉴스 및 스포츠 프로그램들에 대한 온-스크린 자막 텍스트를 보는 것은 드물지 않다. 일부 기존의 시스템들에서, 이 에러들은 숙련된 인간 속기사에 의해 수동적으로 정정되어야 한다. 그러나, 심지어 인간 속기사들은 타이핑의 순간에 모든 것에 대한 올바른 단어들 또는 철자(spelling)들을 알지 못할 수도 있고, 인쇄상 에러들을 행할 여지가 있을 수도 있다.
시스템들 및 방법들은 미디어 자산(media asset)의 오디오 전사(audio transcription)의 온-스크린 자막 텍스트에서의 에러들을 자동적으로 정정함으로써 기존의 미디어 시스템들에서의 단점들을 해결하기 위하여 설명된다. 일부 실시형태들에서, 미디어 안내 애플리케이션(media guidance application)은 미디어 자산 자체로부터 유도된 정보에 기초하여 지식 그래프(knowledge graph)를 액세스함으로써 에러들을 정정하고, 지식 그래프 내로부터 에러들에 대한 후보 대체들 또는 정정들을 찾는다. 일부 실시형태들에서, 지식 그래프를 액세스하기 위하여 이용되는 미디어 자산으로부터 유도된 정보는 에러들을 둘러싸는 미디어 자산의 하나 이상의 비디오 프레임들에서 나타나는 텍스트 또는 이미지들일 수도 있고, 광학적 문자 인식(optical character recognition; OCR) 알고리즘을 이용하는 것에 의한 것과 같이, 비디오 프레임들 상에서 텍스트 또는 이미지 인식을 수행함으로써 식별될 수 있다. 지식 그래프를 액세스하기 위하여 이용된 정보는 또한, 온-스크린 자막 텍스트에서 부분적으로 인식된 문장에서의 키워드(keyword)들과 같은, 온-스크린 자막 텍스트 자체의 올바르게 인식된 부분들로부터 유도될 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프를 액세스함으로써 에러들에 대한 하나 이상의 잠재적인 정정들을 결정할 수도 있고, 최고 가중치를 가지는 후보 정정을 선택하기 위하여 에러들과의 그 표음적 유사성(phonetic similarity)에 기초하여 이 잠재적인 정정들을 가중화(weigh)할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 또한, 잠재적인 정정들이 얼마나 최신(up to date)인지를 표시하는 그 개개의 시간 스탬프(time stamp)들에 기초하여 그것들을 가중화할 수도 있다. 미디어 안내 애플리케이션은 그 다음으로, 에러들을 후보 정정으로 대체할 수도 있고, 무에러(error-free) 온-스크린 자막 텍스트를 뷰어(viewer)들에게 제시할 수도 있다.
예를 들어, 미디어 안내 애플리케이션은 다음의 문장에서의 뉴스 브로드캐스트 상에서 나타나는 온-스크린 자막 텍스트에 대하여, 중국 대통령에 대한 이름 Xi Jinping을 전사함에 있어서 실수를 행할 수도 있다: "The meeting between President Obama and President Xi Jinping underscored...(대통령 오바마와 대통령 시진핑 사이의 회의는 ...를 강조하였다)" 미디어 안내 애플리케이션의 ASR 시스템은 이름 "Xi Jinping"을 인식하는 것을 실패할 수도 있고, 그 대신에, 위의 문장을 "The meeting between President Obama and President She--Jumping underscored..."으로서 전사할 수도 있다. 제 1 단계로서, 미디어 안내 애플리케이션은 하나 이상의 자연어 프로세싱(natural language processing; NLP) 규칙들을 전사된 문장에 적용할 수도 있고, "She--Jumping"은 그것이 하나 이상의 문법 규칙들을 고수하는 것을 실패하고 있기 때문에, 오류성 용어(erroneous term)인 것으로 결정할 수도 있다. 오류성 용어를 정정하기 위하여, 미디어 안내 애플리케이션은 "President(대통령)"와 같은, 온-스크린 자막 텍스트의 올바르게 인식된 부분들로부터 키워드들을 추출할 수도 있고, 용어에 기초하여 지식 그래프를 액세스할 수도 있다. 미디어 안내 애플리케이션은 또한, 오류성 용어를 둘러싸는 비디오 프레임들 상에서 OCR을 수행할 수도 있고, 비디오 프레임들로부터 "China(중국)" 및 "State Visit(국빈 방문)"과 같은 문맥적 용어(contextual term)들을 인식할 수도 있다. 미디어 안내 애플리케이션은 온-스크린 자막 텍스트로부터의 추출된 키워드들에 추가하여, 이 문맥적 용어들에 기초하여 지식 그래프를 액세스할 수도 있다. 지식 그래프에서 이 용어들과 연관된 노드(node)들 및 속성(property)들을 분석함으로써, 미디어 안내 애플리케이션은 "Xi Jinping" 및 "Hu Jintao"와 같은, "President", "China", 및 "State Visit"에 관련된 다수의 잠재적인 정정들을 식별할 수도 있다. 미디어 안내 애플리케이션은 그 다음으로, 부분적으로 2 개가 표음적으로 유사하기 때문에, 원래의 전사된 문장에서의 "She--Jumping"을 "Xi Jinping"으로 대체할 수도 있다. 본 개시물의 이러한 그리고 다른 양태들은 특히, 도 1 내지 도 4와 관련하여 이하에서 더욱 상세하게 논의된다.
일부 양태들에서, 설명된 시스템들 및 방법들은 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 정정하는 것을 제공한다. 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트(text segment)를 결정하기 위하여 미디어 자산의 오디오 스트림(audio stream)을 분석할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 스포츠 뉴스 해설(sports news commentary)의 오디오 스트림을 분석할 수도 있고, 그것을 온-스크린 자막 텍스트로 자동적으로 전사할 수도 있다. 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date(div plate date에 대한 뉴스에도 불구하고, Tom Brady가 어떻게 수행하는지를 보는 것은 흥미 있을 것이다)"인 것으로 결정할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트에서 오류성 용어를 식별할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "div plate date"가 제 1 텍스트 세그먼트에서 오류성 용어인 것을 식별할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행함으로써 오류성 용어를 식별할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 위의 문장을, (예컨대, "NCAA div one(NCAA 구획 1)"에서와 같이) 단어 "div"와 그 다음으로 수(number)를 요구하는 문법 규칙에 대하여 비교할 수도 있고, "div plate date"가 문법 규칙과 충돌하기 때문에, "div plate date"가 오류성 용어인 것으로 결정할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 제 1 텍스트 세그먼트에 대응하는 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 위의 문장이 오디오 스트림에서 나타났던 시간에 대응하는 미디어 자산으로부터 비디오 프레임을 추출할 수도 있다. 비디오 스트림은 인터뷰를 오버레이(overlay)하는 배너(banner)에서 다음의 문장을 디스플레이하는 약간의 비디오 프레임들을 포함하는 Tom Brady의 뉴스 인터뷰일 수도 있다: "News of the Hour: Patriots quarterback serves NFL suspension". 미디어 안내 애플리케이션은 이 비디오 프레임들이 문장 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date"가 뉴스 상에서 공지되는 것과 실질적으로 동일한 시간에 대응하기 때문에, 이 비디오 프레임들을 추출할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 배너 오버레이(banner overlay)를 갖는 비디오 프레임을 분석할 수도 있고, 배너로부터의 문맥적 용어들 "Patriots" 및 "NFL suspenstion"이 오류성 용어 "div plate date"와 연관되는 것으로 결정할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 문맥적 용어 및 제 1 텍스트 세그먼트의 부분에 기초하여 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 문맥적 용어 "NFL suspension" 및 전사된 문장 "It will be interesting to see how Tom Brady performs despite being in the news for"의 부분("Tom Brady")에 기초하여 지식 그래프를 액세스할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 제 1 텍스트 세그먼트의 부분으로부터 키워드를 추출할 수도 있다. 예를 들어, 오류성 용어 "div plate date"를 포함하지 않는 제 1 텍스트 세그먼트의 부분으로부터, 미디어 안내 애플리케이션은 키워드 "Tom Brady"를 추출할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프에서, 문맥적 용어 및 키워드에 대응하는 노드들을 검색할 수도 있다. 위로부터의 예들을 계속하면, 미디어 안내 애플리케이션은 지식 그래프에서, 문맥적 용어 "NFL suspension" 및 키워드 "Tom Brady"에 대응하는 노드들을 검색할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 문맥적 용어 및 키워드와 연관된 속성들에 대하여 노드들을 분석할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "Tom Brady" 노드를 분석할 수도 있고, 생일("Aug. 3, 1977"), 키("6 ft. 4 in."), 40-야드 질주 시간(40-yard Dash Time)("5.28s"), 및 팀("New England Patriots")과 같은 속성들을 발견할 수도 있고, 이름들("Odell Beckham Jr.", "Tom Brady", "Josh Brown"...), 길이들(" 1", "4", "1"...), 및 이유들("Collision(충격)", "Deflategate(수축게이트)", "Personal Conduct(개인적 품행)"...)을 포함하는 "NFL suspension" 노드를 분석할 수도 있다. 일부 실시형태들에서, 속성들은 각각 지식 그래프에서의 하나 이상의 별개의 노드들에 대응할 수도 있다. 예를 들어, "Personal Conduct" 및 "Deflategate"는 각각 노드 뿐만 아니라, 또 다른 노드에 대한 속성일 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 문맥적 용어 및 키워드와 연관된 속성들에 기초하여 적어도 하나의 다른 노드를 결정할 수도 있고, 여기서, 적어도 하나의 다른 노드는 후보 정정에 대응한다. 예를 들어, 미디어 안내 애플리케이션은 "Tom Brady" 및 "NFL suspension"에 대한 상기한 속성들에 기초하여, "Deflategate" 노드를 오류성 용어에 대한 후보 정정인 것으로 결정할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트에서의 오류성 용어를 후보 정정으로 대체할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제 1 텍스트 세그먼트가 "It will be interesting to see how Tom Brady performs despite being in the news for Deflategate"를 이제 판독하도록, 오류성 용어 "div plate date"를 후보 정정 "Deflategate"로 대체할 수도 있다.
일부 실시형태들에서, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트는 시간-스탬핑(time-stamp)되고, 제 1 비디오 프레임은 시간-스탬핑된 제 1 텍스트 세그먼트의 포지션(position)에 대응하는 미디어 자산의 포지션에서 추출된다. 예를 들어, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트를 시간-스탬핑할 수도 있고, 문장이 발화(speak)된 절대적인 시간과 동등한 시간-스탬프를 제 1 텍스트 세그먼트에 부여할 수도 있다. 문장 "It will be interesting..."이 공지되는 동일한 시간에서 또는 그 부근에서, 미디어 안내 애플리케이션은 위의 예에서 이용된 바와 같은 배너 오버레이 "News of the Hour: Patriots quarterback serves NFL suspension"를 갖는 비디오 프레임과 같이, 미디어 자산으로부터 디스플레이되고 있는 하나 이상의 비디오 프레임들을 추출할 수도 있다. 일부 추가의 실시형태들에서, 미디어 안내 애플리케이션은 시간-스탬핑된 제 1 텍스트 세그먼트에서의 오류성 용어의 포지션과 실질적으로 동시에 하나 이상의 비디오 프레임들을 심지어 추출할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 오류성 용어를 식별할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 오류성 용어를 조우(encounter)할 수도 있다: 제 1 텍스트 세그먼트 직후에 공지되는 "Federal investigation into div plate date is ongoing". 이것은 이전의 정정을 세분화하거나 업데이팅하기 위한 기회를 제공할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 뉴 잉글랜드 패트리어츠(New England Patriots) 대 인디애나폴리스 콜츠(Indianapolis Colts) 경기를 갖는 비디오 프레임과 같은, 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석할 수도 있고, 비디오 프레임 상에서 디스플레이된 바와 같은 "Colts"는 오류성 용어 "div plate date"와 연관되는 제 2 문맥적 용어인 것으로 결정한다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 제 1 문맥적 용어, 제 2 문맥적 용어, 제 1 텍스트 세그먼트의 부분, 및 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 지식 그래프를 액세스할 수도 있다. 이것은 예를 들어, 제 1 문맥적 용어 및 제 1 텍스트 세그먼트의 부분이 오류성 용어에 대한 대체의 정확한 결정을 초래하지 않았기 때문에, 원래의 후보 정정이 올바르지 않을 경우에 도움이 될 수도 있다. 예를 들어, 미디어 안내 애플리케이션이 후보 정정을 "Deflategate"가 아니라 "Detroit Game"인 것으로 이전에 결정하였고, 이에 따라, 오류성 용어 "div plate date"를 대체한 것으로 가정하면, 미디어 안내 애플리케이션은 추후에, 지식 그래프를 액세스할 수도 있고, 미디어 자산으로부터 유도된 더 많은 정보, 예컨대, "NFL suspension"(즉, 제 1 문맥적 용어), "Colts"(즉, 제 2 문맥적 용어), "Tom Brady"(즉, 제 1 텍스트 세그먼트의 부분), 및 "Federal investigation"(즉, 제 2 텍스트 세그먼트의 부분)에 기초하여 업데이팅된 후보 정정 - "Deflategate" - 을 식별할 수도 있다. 일반적으로, 미디어 안내 애플리케이션은 지식 그래프에 적용하기 위한 더 많은 정보 또는 단서(clue)들이 있을 때에 오류성 용어에 대한 후보 정정을 더 정확하게 결정할 수 있을 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서의 오류성 용어를 업데이팅된 후보 정정으로 대체할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 정정된 제 2 텍스트 세그먼트를 생성하기 위하여, 제 2 텍스트 세그먼트 "Federal investigation into div plate date is ongoing"에서의 "div plate date" 오류성 용어를 업데이팅된 후보 정정 - 이번에는 "Deflategate"로서 올바르게 식별됨 - 으로 대체할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 제 2 텍스트 세그먼트에서의 후보 정정을 업데이팅된 후보 정정으로 추가로 대체할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 과거의 후보 정정 "Detroit Game"이 "Deflategate"을 지지하여 거절되었을 경우에, 보편적인 정정을 만들기 위하여, "It will be interesting to see how Tom Brady performs despite being in the news for div plate date"에서의 오류성 용어를 대체하도록 돌아갈 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프로부터 오류성 용어에 대한 복수의 잠재적인 정정들을 결정함으로써, 그리고 결정하는 것에 기초하여 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정함으로써, 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스할 수도 있다. 예를 들어, 위의 예들에서 오류성 용어에 대한 후보 정정 "Deflategate"을 식별하기 위하여, 미디어 안내 애플리케이션은 먼저, "Quarterback", "Detroit Game", 및 "Deflategate"와 같은 복수의 잠재적인 정정들을 결정할 수도 수도 있고, 각각의 잠재적인 정정에 가중치를 배정할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정에 대하여 더 높은 가중치를 배정할 수도 있다. 예를 들어, 위에서 열거된 3 개의 잠재적인 정정들 중에서, "Deflategate"는 더 최근의 시간-스탬프와 연관될 수도 있거나, 더 최근에 업데이팅될 수도 있고, 그러므로, 더 높은 가중치를 배정받을 수도 있다. 일부 다른 실시형태들에서, 미디어 안내 애플리케이션은 복수의 잠재적인 정정들의 더 "유행하는(trending)" 잠재적인 정정에 대하여 더 높은 가중치를 배정할 수도 있다. "유행하는" 잠재적인 정정은 절대적인 수의 측면 또는 검색들의 빈도의 측면 중의 어느 하나에서, 최근의 검색들에서 갑자기 인기를 얻은 키워드일 수도 있다. 예를 들어, 단어의 고유한 검색들의 수가 지난 2 주일에서의 최근의 이벤트까지 제로에 근접하여 유지되었고, 그 후에, "Deflategate"에 대한 고유한 검색들의 수가 기하급수적으로 올라갔기 때문에, 용어 "Deflategate"는 "유행하는" 키워드일 수도 있다. 또 다른 예로서, 용어 "Deflategate"에 대한 고유한 검색들의 빈도는 최근의 이벤트까지 상대적으로 일정하게 유지되었고, 빈도는 지난 2 주일 동안에 기하급수적으로 올라갔고, 이는 용어 "Deflategate"를 "유행하는" 키워드로 만들었다. 일부 추가의 실시형태들에서, 미디어 안내 애플리케이션은 표음적 알고리즘에 기초하여 잠재적인 후보 정정과 오류성 용어 사이의 표음적 유사성 점수(phonetic similarity score)(때때로, 표음적 거리(phonetic distance)의 역(inverse)으로서 정의됨)를 결정할 수도 있고, 더 높은 표음적 유사성 점수를 갖는 잠재적인 후보 정정에 더 높은 가중치를 배정할 수도 있다. 미디어 안내 애플리케이션은 음성 세그먼트를 원자적 세그먼트들의 스트링으로 분할함으로써, 각각의 원자적 세그먼트에 대한 삽입 코스트(insertion cost) 및 삭제 코스트(deletion cost)를 연산함으로써, 그리고 표음적 거리에 도달하기 위하여 삽입 코스트 및 삭제 코스트를 합산함으로써 표음적 거리를 계산할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 표준 표음적 알고리즘을 3 개의 잠재적인 정정들에 적용할 수도 있고 각각의 잠재적인 정정에 대한 표음적 유사성 점수를 결정할 수도 있고, "div plate date"와의 그 더 높은 표음적 유사성에 기초하여 "Deflategate"에 더 높은 점수를 배정할 수도 있다. 이 예에서, 미디어 안내 애플리케이션은 그것이 "Deflategate"를 "div plate date"로 변경하기 위하여 2 개의 삭제들("f" 및 "g") 및 3 개의 삽입들("v", "p", 및 "d")울 요구한다는 것을 계산할 수도 있다. 그러므로, 미디어 안내 애플리케이션은 "Deflategate"에 대한 표음적 거리를 5인 것으로 결정할 수도 있다. 당해 분야의 당업자에 의해 용이하게 이해될 수 있는 바와 같이, 다른 잠재적인 정정들 - "Quarterback" 및 "Detroit Game" - 에 대한 표음적 거리들은 각각 23 및 17이다. 결과적으로, 미디어 안내 애플리케이션은 "Deflategate"가 최고 표음적 유사성 점수를 가진다는 것을 (표음적 거리의 역으로서) 계산할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 최고 가중치를 배정받는 잠재적인 정정을 후보 정정으로서 식별할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "Deflategate"가 위에 따라 계산된 바와 같이, 최고 가중치를 배정받았기 때문에, 3 개의 잠재적인 정정들 중에서 "Deflategate"를 후보 정정으로서 식별할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프의 현존하는 노드들을 업데이팅함으로써 후보 정정을 식별하기 위하여 지식 그래프를 액세스할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 지식 그래프로부터 후보 정정을 식별하기 이전에, 현존하는 노드들이 최신 정보를 포함한다는 것을 보장하기 위하여, 지식 그래프에서의 현존하는 노드들의 서브세트(subset) 또는 전부를 업데이팅할 수도 있다. 일부 실시형태들에서, 현존하는 노드들로의 각각의 업데이트는 특정한 노드가 언제 최후로 업데이팅되는지를 표시하기 위하여 시간-스탬프와 연관될 수도 있다. 예를 들어, 지식 그래프의 노드들, A, B, C, D, 및 E 중에서, 미디어 안내 애플리케이션은 주어진 시간에서의 지식 그래프에 대한 액세스 동안에 현존하는 노드들 A, B, 및 D를 업데이팅할 수도 있지만, 노드 C는 최신 정보를 이미 포함하기 때문에, 노드 C를 업데이팅하지 않고, 시간 제약 때문에 노드 E를 업데이팅할 수 없다. 여기서, 지식 그래프의 현존하는 노드들 A, B, 및 D는 현재의 시간으로 시간-스탬핑될 것인 반면, 노드들 C 및 E의 시간 스탬프들은 업데이팅되지 않을 것이고, 그 개개의 가장 최근의 업데이트를 여전히 반영할 것이다. 이러한 방법으로, 미디어 안내 애플리케이션은 후보 정정들을 결정하기 위하여 유용하도록 하기 위하여, 그것이 최신 정보를 포함하는 것을 확인하기 위한 지식 그래프를 유지할 수도 있다.
위에서 설명된 시스템들, 방법들, 장치들, 및/또는 양태들은 이 개시물에서 설명된 다른 시스템들, 방법들, 장치들, 및/또는 양태들에 따라 적용될 수도 있거나 이용될 수도 있다는 것이 주목되어야 한다.
개시물의 상기한 그리고 다른 목적들 및 장점들은 유사한 참조 부호들이 그 전반에 걸쳐 유사한 부분들을 지칭하는 동반된 도면들과 함께 취해진 다음의 상세한 설명의 고려 시에 분명해질 것이고:
도 1은 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린의 예시적인 예를 도시하고;
도 2는 개시물의 일부 실시형태들에 따라, 텍스트 세그먼트와 연관된 지식 그래프의 부분의 예시적인 실시형태를 도시하고;
도 3은 개시물의 일부 실시형태들에 따라, 텍스트 세그먼트와 연관된 지식 그래프의 부분의 또 다른 예시적인 실시형태를 도시하고;
도 4는 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린의 또 다른 예시적인 예를 도시하고;
도 5는 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린의 또 다른 예시적인 예를 도시하고;
도 6은 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린의 또 다른 예시적인 예를 도시하고;
도 7은 개시물의 일부 실시형태들에 따른 예시적인 사용자 장비 디바이스의 블록도이고;
도 8은 개시물의 일부 실시형태들에 따른 예시적인 미디어 시스템의 블록도이고;
도 9는 개시물의 일부 실시형태들에 따른, 미디어 안내 애플리케이션을 이용하여 디스플레이된 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 예시적인 프로세스의 플로우차트이고; 그리고
도 10은 개시물의 일부 실시형태들에 따른, 지식 그래프를 이용하여 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 식별하고 대체하기 위한 예시적인 프로세스의 플로우차트이다.
시스템들 및 방법들은 미디어 자산의 오디오 전사의 온-스크린 자막 텍스트에서의 에러들을 자동적으로 정정함으로써 기존의 미디어 시스템들에서의 단점들을 해결하기 위하여 설명된다. 시스템들 및 방법들은 사용자 디바이스(예컨대, 사용자 장비 디바이스(700)(도 7)), 원격 서버(예컨대, 미디어 컨텐츠 소스(media content source)(816) 또는 미디어 안내 데이터 소스(media guidance data source)(818)(도 8)), 또는 또 다른 적당한 디바이스 상에서 작동되는 미디어 안내 애플리케이션을 통해 구현될 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 미디어 자산 자체로부터 유도된 정보에 기초하여 지식 그래프를 액세스함으로써 에러들을 정정하고, 지식 그래프 내로부터 에러들에 대한 후보 대체들 또는 정정들을 찾는다. 미디어 안내 애플리케이션은, 미디어 안내 애플리케이션의 일부 부분들이 하나의 디바이스 상에서 실행되는 반면, 미디어 안내 애플리케이션의 다른 부분들은 또 다른 디바이스 상에서 실행되도록, 다수의 디바이스들 상에서 부분적으로 구현될 수도 있다. 지식 그래프는 미디어 컨텐츠 소스(816) 또는 미디어 안내 데이터 소스(818)와 같은 서버 상에, 또는 미디어 안내 애플리케이션으로부터 유지되고 액세스가능한 임의의 다른 서버들 또는 데이터베이스들 상에 있을 수도 있다. 일부 실시형태들에서, 미디어 자산으로부터 유도된 정보는 에러들을 둘러싸는 미디어 자산의 비디오 프레임들에서 나타나는 텍스트들 또는 이미지들일 수도 있거나, 비디오 프레임들 상에서 텍스트 또는 이미지 인식을 수행함으로써 식별될 수 있다. 텍스트 또는 이미지 인식은 다양한 광학적 문자 인식 알고리즘들, 이미지 인식 알고리즘들, 및 다른 머신 러닝(machine learning) 기법들과 같은 다수의 기법들 중의 임의의 것을 이용하여 미디어 안내 애플리케이션에 의해 수행될 수도 있다. 추가적으로, 정보는 또한, 온-스크린 자막 텍스트 자체의 올바르게 인식된 부분들로부터 유도될 수도 있다. 여기서, 미디어 안내 애플리케이션은 이미 올바르게 인식되었던 온-스크린 자막 텍스트의 부분들 상에서 하나 이상의 텍스트 파싱(parsing) 및 키워드 추출 알고리즘들을 적용할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은, 부분이 자연어 프로세싱(NLP) 프로세서를 통과하고 NLP 프로세서에 의해 특정된 문법 규칙들에 따라 문법 에러들을 반환하지 않을 경우에, 온-스크린 자막 텍스트의 부분이 올바르게 인식되는 것으로 고려할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프를 액세스함으로써 에러들에 대한 하나 이상의 잠재적인 정정들을 결정할 수도 있다. 지식 그래프는 링크된 데이터 포맷(linked data format)으로 배열된 노드들 및 링크들을 포함할 수도 있고, 이에 의해, 노드는 개념적인 엔티티(entity)를 표시하고, 링크는 2 개 이상의 노드들 사이의 관계를 표현한다. 지식 그래프는 시간 경과에 따라 수집된 데이터로 미디어 안내 애플리케이션에 의해 사전-파퓰레이팅(pre-populate)될 수도 있고, 지식 그래프의 현존하는 노드들에 관련되는 정보를 반영하는 새로운 노드들 및 링크들을 포함하도록 주기적으로 업데이팅될 수도 있다. 일부 실시형태들에서, 지식 그래프는 제 3 당사자 지식 데이터베이스와 같은 제 3 당사자 서비스에 의해 유지될 수도 있고, 이에 의해, 미디어 안내 애플리케이션은 제 3 당사자 서비스에 의해 제공된 애플리케이션 프로그래밍 인터페이스(application programming interface; API)를 통해 지식 그래프를 액세스할 수 있다. 이 구현예에서, 제 3 당사자 서비스는 지식 그래프를 구축하고, 유지하고, 업데이팅하는 것을 담당한다. 일부 실시형태들에서, 지식 그래프는 포괄적일 수도 있고, 임의의 시간에서의 어떤 것에 대한 정보를 포함할 수 있다. 일부 다른 실시형태들에서, 미디어 안내 애플리케이션은 특정한 주제 에어리어, 특정한 시간 주기 등에 전용되는 문맥적 지식 그래프를 유지할 수도 있다. 이것은 서브-지식 그래프(sub-knowledge graph) 또는 문맥적 지식 그래프로서 지칭될 수도 있다. 본 개시물의 일부 실시형태들에 따라 이용될 수도 있는 2 개의 예시적인 지식 그래프들은 이하의 도 2 내지 도 3과 관련하여 제시되고 논의된다.
에러들에 대한 하나 이상의 잠재적인 정정들을 결정하기 위하여, 미디어 안내 애플리케이션은 적당한 지식 그래프를 액세스할 수도 있고, 미디어 자산으로부터 유도된 정보를 표현하는 하나 이상의 노드들을 검색할 수도 있다. 이전에 논의된 바와 같이, 미디어 자산으로부터 유도된 정보는 비디오 프레임들로부터 결정된 하나 이상의 문맥적 용어들, 및 온-스크린 자막 텍스트로부터 추출된 하나 이상의 키워드들을 포함할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 이러한 정보를 표현하는 하나 이상의 노드들 중의 적어도 하나에 링크되는 지식 그래프에서의 모든 다른 노드들을 검사할 수도 있고, 임의적으로, 하나 이상의 노드들 및 그 바로 이웃하는 노드들과 자립(self-contained)하는 서브-지식 그래프를 구축할 수도 있다. 이 노드들은 각각 에러들에 대한 잠재적인 정정을 표현할 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 최고 가중치를 가지는 후보 정정을 선택하기 위하여, 에러들과의 그 표음적 유사성에 기초하여, 위에서 결정된 하나 이상의 잠재적인 정정들을 가중화할 수도 있다. 표음적 유사성 외에, 미디어 안내 애플리케이션은 그 대응하는 노드들이 얼마나 최신인지를 표시하는 그 시간 스탬들에 의한 것과 같이, 임의의 수의 다른 기준들에 기초하여 잠재적인 정정들을 가중화할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 그 다음으로, 에러들을 후보 정정으로 대체할 수도 있고, 무에러 온-스크린 자막 텍스트를 뷰어들에게 제시할 수도 있다.
도 1은 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린(100)의 예시적인 예를 도시한다. 디스플레이 스크린(100)에서, 미디어 안내 애플리케이션은 뉴스 브로드캐스트 동안에 온-스크린 자막 텍스트(106)에서, 현재의 중국 대통령에 대한 이름, Xi Jinping을 전사함에 있어서 실수를 한다. 이해가능한 문장을 디스플레이하는 것이 아니라, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트(106): "The meeting between President Obama and President She--Jumping underscored..."를 디스플레이한다. 이 예시적인 예는 전통적인 자동화된 전사 서비스를 구현하는 현존하는 온-스크린 자막 텍스트 시스템들, 또는 논의 중인 특정한 용어(이 경우에, 현재의 중국 대통령의 이름)를 인지하고 있지 않은 인간 속기사들을 채용하는 시스템들의 실패를 입증한다. 그러나, 현재의 개시물에 따르면, 시스템(800)에서 구현된 미디어 안내 애플리케이션은 하나 이상의 NLP 규칙들을 온-스크린 자막 텍스트(106)에 적용할 수도 있고, "She--Jumping"(108)은 그것이 하나 이상의 문법 규칙들을 고수하는 것을 실패하기 때문에, 오류성 용어인 것으로 결정할 수도 있다.
오류성 용어를 정정하기 위하여, 미디어 안내 애플리케이션은 "President"와 같은, 온-스크린 자막 텍스트(106)의 올바르게 인식된 부분들로부터 키워드들을 추출할 수도 있고, 용어에 기초하여 지식 그래프를 액세스할 수도 있다. 미디어 안내 애플리케이션은 또한, 미디어 자산에서의 온-스크린 자막 텍스트(106)의 포지션과 동등한 미디어 자산에서의 포지션에 대응하는 비디오 프레임(110)의 OCR을 수행할 수도 있다. 예를 들어, 미디어 아내 애플리케이션은 온-스크린 자막 텍스트(106)가 뉴스 브로드캐스트의 오디오 스트림에서 공지되는 것과 실질적으로 동일한 시간에, 디스플레이를 위하여, 디스플레이(712) 상에서 비디오 프레임(110)을 생성할 수도 있다. 비디오 프레임(110)의 OCR에 기초하여, 미디어 안내 애플리케이션은 정보 패널(102)로부터 "China" 및 "State Visit"와 같은 문맥적 용어들을 인식할 수도 있다. 비디오 프레임(110)의 OCR과 같은 텍스트 인식을 수행하는 것에 대해 대안적으로 또는 추가적으로, 미디어 안내 애플리케이션은 오류성 용어와 연관되는 문맥적 용어들을 추가로 식별하기 위하여 비디오 프레임(110)에서 도시된 문자들의 이미지 인식을 수행할 수도 있다. 예를 들어, 비디오 프레임(110)에서의 중국 대통령이 근접한 카메라 샷(camera shot)을 받을 경우, 미디어 안내 애플리케이션은 그의 신원(identity)에 대한 이미지 인식을 수행할 수도 있고, 오류성 용어 "She--Jumping"의 실제 신원에 부수적으로 대응하는 문맥적 용어 "Xi Jinping"에 도달할 수도 있다.
미디어 안내 애플리케이션은 온-스크린 자막 텍스트(106)로부터 추출된 키워드들에 추가하여, 이 문맥적 용어들에 기초하여 지식 그래프를 액세스할 수도 있다. 지식 그래프에서 이 용어들과 연관된 노드들 및 속성들을 분석함으로써, 미디어 안내 애플리케이션은 "Xi Jinping" 및 "Hu Jintao"(대통령 Xi Jinping 및 전임 대통령 Hu Jintao는 각각 별도의 시기들에 대통령 Obama의 중국으로의 국빈 방문들을 주최하였음). 미디어 안내 애플리케이션은 그 다음으로, 원래의 텍스트 세그먼트에서의 "She--Jumping"을 "Xi Jinping"으로 대체할 수도 있다.
도 2는 개시물의 일부 실시형태들에 따라, 텍스트 세그먼트와 연관된 지식 그래프의 부분의 예시적인 실시형태를 도시한다. 일부 실시형태들에서, 도 2에서 도시된 지식 그래프의 예시적인 부분은 임의의 정보 또는 개념을 포함할 수 있는 포괄적인 지식 그래프의 일부일 수도 있다. 지식 그래프에서 도시된 노드들(210, 212, 214, ..., 270)은 하나 이상의 속성들을 각각 포함하는 개념들에 대응한다. 예를 들어, 노드(212) "Barack Obama"는 생일, 키, 직업, 교육 등을 포함하는 몇몇 필드들 또는 속성들을 포함할 수도 있다. 노드들의 쌍들 사이의 접속들은 노드들이 가질 수도 있는 다양한 관계들을 표시하는 링크들을 표현한다. 예를 들어, 노드(212)는 "Barack Obama"가 "President"이기 때문에, 노드(210)에 링크될 수도 있다. 노드(212)는 또한, "Barack Obama"가 한때 "Chicago"에서 거주하고 교육하였기 때문에, 노드(220)에 링크될 수도 있다. 일부 실시형태들에서, 노드들은 그 기초적인 데이터 구조들에 기초하여 추가로 구별될 수도 있거나 그룹화될 수도 있다. 예를 들어, 도 2에서의 지식 그래프의 예시적인 부분에서, 원형 노드들(212, 214, 242, 및 252)은 인간 개인들을 표현하기 위하여 이용되는 반면, 직사각형 노드들(210, 220, 230, 240, 250, 260, 및 270)은 인간 개인에 결부되지 않는 엔티티들 또는 개념들을 표현하기 위하여 이용된다. 상이한 노드들(즉, 원형 대 직사각형 노드들)의 이 특정한 표현은 오직 예시적이고, 절대로 기초적인 개념을 제한하고 있지 않다는 것이 이해된다.
도 2에서 도시된 바와 같은 지식 그래프 또는 서브-지식 그래프의 예시적인 부분을 액세스하기 위하여, 미디어 안내 애플리케이션은 위에서 설명된 바와 같이, 미디어 자산으로부터 시작 노드들로서 유도되는 정보를 제공할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "Barack Obama" 및 "Chinese President"와 같은 용어들을 제공함으로써 서브-지식 그래프를 액세스할 수도 있다. "Barack Obama"(212) 및 "Chinese President"(250)는 노드들 자체이지만, 미디어 안내 애플리케이션은 평가하기 위하여, 모든 다른 관련된 노드들("Barack Obama"(212) 또는 "Chinese President"(250)로의 적어도 하나의 링크를 공유하는 노드들)을 오류성 용어에 대한 잠재적인 정정들로서 띄울 수도 있다. 도 1과 관련하여 이전에 예시된 바와 같이, 미디어 안내 애플리케이션은 표음적 알고리즘에 기초하여, 오류성 용어와 표음적으로 유사한 노드에 더 높은 가중치를 배정할 수도 있다. 이 경우에, "She--Jumping"까지의 도 2로부터의 가장 근접한 노드는 "Xi Jinping"(252)이다. 결과적으로, 미디어 안내 애플리케이션은 오류성 용어 "She--Jumping"을 대체하기 위하여, "Xi Jinping"을 후보 정정으로서 선택할 수도 있다.
도 3은 개시물의 일부 실시형태들에 따라, 텍스트 세그먼트와 연관된 지식 그래프의 부분의 또 다른 예시적인 실시형태를 도시한다. 도 3에서의 지식 그래프 또는 서브-지식 그래프의 부분은 일부 실시형태들에서, 도 2에서의 서브-지식 그래프의 문맥-특정 버전일 수도 있다. 특히, 도 3에서의 서브-지식 그래프에서의 노드들은 제 1 텍스트 세그먼트로부터의 문맥적 용어 및 키워드들에 의해 설정된 바와 같은 문맥 "China" 및 "President"에 모두 관련될 수도 있다. 효과적으로, 미디어 안내 애플리케이션은 도 3에서의 서브-지식 그래프를 생성하기 위하여, 문맥적 용어 또는 키워드들에 기초하여 대형의 포괄적인 지식 그래프를 필터링할 수도 있다.
도 3에서의 서브-지식 그래프의 노드들(310, 312, 350, 및 352)은 도 2에서의 서브-지식 그래프의 노드들(210, 212, 250, 및 252)에 각각 실질적으로 대응할 수도 있다. 추가적인 노드들 "George W. Bush"(316) 및 "George H. W. Bush"(318)는 그것들이 "President" 또는 "China", 또는 양자의 개념에 관련되기 때문에, 도 3의 서브-지식 그래프에서 나타난다. 예를 들어, 노드 "George H. W. Bush"(318)는 대통령 George H. W. Bush가 중국으로의 최고 미국 사절로서 이전에 역할을 하였기 때문에, 노드 "China"(360)와 링크를 공유할 수도 있다.
이전에 논의된 바와 같이, 노드들의 개념 및 속성들이 일부 실시형태들에서 교환가능하다. 예를 들어, 노드 "Michelle Obama"(314)는 가족 일원(즉, 노드 "Barack Obama"(312)의 속성)으로서 노드 "Barack Obama"(312) 하에서 동시에 등록될 수도 있고, 이와 동시에, 별도의 노드 자체일 수도 있다. 유사하게, 노드 "Xi Jinping"은 가족 일원으로서 노드 "Peng Liyuan"(354) 하에서 등록될 수도 있고, 동시에, 지식 그래프에서의 다른 현존하는 노드들에 링크되는 독립적인 노드일 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 지식 그래프에서의 문맥적 용어 및 키워드와 연관된 모든 노드들 및 속성들을 잠재적인 정정들로서 반환할 수도 있고, 오류성 용어에 대한 후보 정정을 결정하기 위하여 그것들을 개별적으로 평가할 수도 있다. 예를 들어, 도 3의 서브-지식 그래프에 기초하여, 미디어 안내 애플리케이션은 "Michelle Obama"(314), "George W. Bush"(316), "George H. W. Bush"(318), "Xi Jinping"(352), "Peng Liyuan"(354), 및 "Hu Jintao"(356)를, 위에서 이용된 예들에서의 오류성 용어 "She--Jumping"에 대한 잠재적인 정정들로서 식별할 수도 있다. 이 잠재적인 정정들로부터, 미디어 안내 애플리케이션은 "Xi Jinping"을 후보 정정인 것으로 결정하기 위하여 다양한 가중화 메커니즘들을 적용할 수도 있다.
도 3 및 도 4에서의 예시적인 것들과 같은 지식 그래프들은 주기적으로 유지될 수도 있고 업데이팅될 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 질의(inquiry) 시에, 질의의 노드에 직접적으로 링크되는 노드들 및 속성들을 업데이팅할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 노드 "President"(310)에 대응하는 용어 "President"에 기초하여 지식 그래프를 액세스할 수도 있다. 이 질의로, 미디어 안내 애플리케이션은 "Barack Obama"(312), "George W. Bush"(316), 및 "George H. W. Bush"(318)과 같은, "President"(310)에 링크된 노드들을 취출(retrieve)할 수도 있고, 그 노드 및 속성 정보를 업데이팅할 수도 있다. 일부 실시형태들에서, 이러한 업데이트들은 취출된 노드들(310, 312, 316, 및 318) 뿐만 아니라, 노드들(310, 312, 316, 및 318)에 링크되는 제 2 급(second-degree) 노드들을 업데이팅하는 것과 같이, 링크된 데이터의 제 2 또는 후속 계층들을 통해 반송(carry)될 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 권위적인 소스들을 고정된 간격들로 풀링(pull)하고 검사함으로써, 지식 그래프의 매 노드를 주기적으로 업데이팅할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 그룹들에 의해 노드들 및 속성들을 업데이팅할 수도 있다. 일부 추가의 실시형태들에서, 미디어 안내 애플리케이션은 노드들을 권위적인 소스들의 API 서비스에 직접적으로 링크하는 것에 의한 것과 같이, 업데이팅을 실시간으로 수행할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 실시간 업데이트들을 수신하기 위하여 노드 "Barack Obama"(312)를 온라인 백과사전, 뉴스 서비스, 또는 백악관 공식 뉴스 포탈(news portal)의 API로 링크함으로써, 노드 "Barack Obama"(312)에 대한 자동적 업데이트를 구현할 수 있다. 특정한 노드에 대한 실시간 업데이트를 수신할 시에, 미디어 안내 애플리케이션은 노드에 대한 새로운 속성들을 입력할 수도 있거나, 현존하는 속성들을 업데이팅할 수도 있거나, 속성들을 삭제할 수도 있거나, 새로운 링크들을 현존하는 또는 새로운 노드들에 추가할 수도 있거나, 특정한 노드에 링크되어야 새로운 노드들을 생성할 수도 있따.
도 4는 개시물의 일부 실시형태들에 따라, 미디어 안내 애플리케이션에 의해 생성된 디스플레이 스크린의 또 다른 예시적인 예를 도시한다. 디스플레이 스크린(400) 상에서, 미디어 안내 애프리케이션은 온-스크린 자막 텍스트(106)에서의 오류성 용어(108)를 대체하기 위하여 후보 정정(408)을 적용하였다. 디스플레이 스크린(400) 상에서의 다른 것은 디스플레이 스크린(100)과 동일하게 머무를 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트(106)를 심지어 디스플레이하기 이전에, 오류성 용어(108)를 후보 정정(408)으로 대체할 수도 있어서, 뷰어들은 올바른 온-스크린 자막을 오직 볼 것이다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 온-스크린 자막 텍스트(106)를 디스플레이하는 것과 실질적으로 동시에, 그러나, 온-스크린 자막 텍스트(106)가 뷰어들로의 디스플레이를 위하여 생성된 후에, 대체를 수행할 수도 있다. 대체는 대부분의 뷰어들이 인지하지 못할 수도 있도록, 심리스(seamless)이고 즉각적(instantaneous)일 수도 있다. 실제로, 이러한 구현예들에서, 미디어 안내 애플리케이션은 대체에 대해 뷰어들의 주의를 끄는 것을 원하지 않을 수도 있다. 일부 다른 구현예들에서, 미디어 안내 애플리케이션은 정정된 용어에 대해 뷰어들의 주의를 끌기 위하여, 후보 정정(408)을 강조하기 위한 하이라이트의 짧은 버스트(burst)와의 대체를 수행할 수도 있으므로, 뷰어들은 오류성 용어의 의미에 대하여 혼동된 상태로 있지 않고, 정정이 행해진 것을 인식하지 않는다. 일부 추가의 실시형태들에서, 미디어 안내 애플리케이션은 오류성 용어(108)를 대체하기 위하여 이전에 이용되었던 후보 정정이 올바르지 않았기 때문에, 온-스크린 자막 텍스트에서의 다음 몇몇 문장들 상으로 이동한 후에, 오류성 용어(108)를 대체하기 위하여 돌아갈 수도 있다. 이러한 실시형태들에서, 미디어 안내 애플리케이션은 업데이팅된 정정이 몇몇 문장들 전의 온-스크린 자막 문장에 대해 행해졌다는 것을 뷰어들에게 표시하기 위하여, 하이라이트의 짧은 버스트, 또는 강조의 임의의 다른 수단을 이용할 수도 있다. 온-스크린 자막화 시스템(on-screen captioning system)에서 정정된 오류성 용어를 디스플레이하는 이러한 그리고 다른 수단은 본질적으로 예시적이고, 본 개시물을 본원에서 논의된 특정 실시형태들로 제한하지는 않는다.
임의의 주어진 컨텐츠 전달 시스템에서 사용자들에 의해 이용가능한 컨텐츠의 양은 상당할 수 있다. 결과적으로, 많은 사용자들은 사용자들이 컨텐츠 선택들을 효율적으로 내비게이팅하고 그들이 희망할 수도 있는 컨텐츠를 용이하게 식별하는 것을 허용하는 인터페이스를 통한 미디어 안내의 형태를 희망한다. 이러한 안내를 제공하는 애플리케이션은 대화형(interactive) 미디어 안내 애플리케이션, 또는 때때로, 미디어 안내 애플리케이션 또는 안내 애플리케이션으로서 본원에서 지칭된다.
본원에서 지칭된 바와 같이, "대화형 미디어 안내 애플리케이션(interactive media guidance application)", 또는 "미디어 안내 애플리케이션", 또는 때때로 "안내 애플리케이션"은 사용자가 컨텐츠를 소비하고 및/또는 컨텐츠로 내비게이팅하는 것을 허용하는 애플리케이션이다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 온라인 애플리케이션으로서(즉, 웹사이트 상에서 제공됨), 또는 서버 또는 사용자 디바이스 상의 단독형(stand-alone) 애플리케이션으로서 제공될 수도 있다. 일부 실시형태들에서, 다양한 디바이스들 및 플랫폼들 상에서 설치된 제어 회로부는 이하에서 더 상세하게 설명된 바와 같이, 미디어 안내 애플리케이션을 실행할 수도 있다. 일부 실시형태들에서, 본원에서 논의된 실시형태들 중의 임의의 것을 수행하기 위한 미디어 안내 애플리케이션 및/또는 임의의 명령어들은 머신-판독가능한 매체들 상에서 인코딩될 수도 있다. 머신-판독가능한 매체들은 데이터를 저장할 수 있는 임의의 매체들을 포함한다. 머신-판독가능한 매체들은 전기적 또는 전자기적 신호들을 전파하는 것을 포함하지만, 이것으로 제한되지는 않는 일시적(transitory)인 것일 수도 있거나, 하드 디스크, 플로피 디스크, USB 드라이브, DVD, CD, 미디어 카드, 레지스터 메모리, 프로세서 캐시들, 랜덤 액세스 메모리(Random Access Memory)("RAM")와 같은 휘발성 및 비휘발성 컴퓨터 메모리 또는 저장 디바이스들을 포함하지만, 이것으로 제한되지는 않는 비일시적(non-transitory)인 것일 수도 있다.
대화형 미디어 안내 애플리케이션들은 그것들이 안내를 제공하는 컨텐츠에 따라 다양한 형태들을 취할 수도 있다. 하나의 전형적인 타입의 미디어 안내 애플리케이션은 대화형 텔레비전 프로그램 안내(interactive television program guide)이다. 대화형 텔레비전 프로그램 안내들(때때로, 전자 프로그램 안내들로서 지칭됨)은 그 중에서도, 사용자들이 많은 타입들의 컨텐츠 또는 미디어 자산들 사이에서 내비게이팅하고 많은 타입들의 컨텐츠 또는 미디어 자산들을 위치시키는 것을 허용하는 널리-공지된 안내 애플리케이션들이다. 대화형 미디어 안내 애플리케이션들은 사용자가 컨텐츠 사이에서 내비게이팅하고, 컨텐츠를 위치시키고, 컨텐츠를 선택하는 것을 가능하게 하는 그래픽 사용자 인터페이스 스크린들을 생성할 수도 있다. 본원에서 지칭된 바와 같이, 용어들 "미디어 자산" 및 "컨텐츠"는 텔레비전 프로그래밍뿐만 아니라, 뷰-당-지불(pay-per-view) 프로그램들, (비디오-온-디맨드(video-on-demand; VOD) 시스템들에서와 같은) 온-디맨드(on-demand) 프로그램들, 인터넷 컨텐츠(예컨대, 스트리밍 컨텐츠, 다운로딩가능한 컨텐츠, 웹캐스트들 등), 비디오 클립들, 오디오, 컨텐츠 정보, 사진들, 회전하는 이미지들, 문서들, 플레이리스트들, 웹사이트들, 물품들, 서적들, 전자 서적들, 블로그들, 채팅 세션들, 소셜 미디어, 애플리케이션들, 게임들, 및/또는 임의의 다른 미디어 또는 멀티미디어 및/또는 이것의 조합과 같은 전자적으로 소비가능한 사용자 자산을 의미하도록 이해되어야 한다. 안내 애플리케이션들은 또한, 사용자들이 컨텐츠 사이에서 내비게이팅하고 컨텐츠를 위치시키는 것을 허용한다. 본원에서 지칭된 바와 같이, 용어 "멀티미디어"는 위에서 설명된 적어도 2 개의 상이한 컨텐츠 형태들, 예를 들어, 텍스트, 오디오, 이미지들, 비디오, 또는 상호작용성 컨텐츠 형태들을 사용하는 컨텐츠를 의미하도록 이해되어야 한다. 컨텐츠는 사용자 장비 디바이스들에 의해 레코딩될 수도 있거나, 플레이될 수도 있거나, 디스플레이될 수도 있거나, 또는 액세스될 수도 있지만, 또한, 라이브 공연(live performance)의 일부일 수 있다.
본원에서 논의된 실시형태들 중의 임의의 것을 수행하기 위한 미디어 안내 애플리케이션 및/또는 임의의 명령어들은 머신-판독가능한 매체들 상에서 인코딩될 수도 있다. 머신-판독가능한 매체들은 데이터를 저장할 수 있는 임의의 매체들을 포함한다. 머신-판독가능한 매체들은 전기적 또는 전자기적 신호들을 전파하는 것을 포함하지만, 이것으로 제한되지는 않는 일시적(transitory)인 것일 수도 있거나, 하드 디스크, 플로피 디스크, USB 드라이브, DVD, CD, 미디어 카드들, 레지스터 메모리, 프로세서 캐시들, 랜덤 액세스 메모리(Random Access Memory)("RAM") 등과 같은 휘발성 및 비-발성 컴퓨터 메모리 또는 저장 디바이스들을 포함하지만, 이것으로 제한되지는 않는 비일시적(non-transitory)인 것일 수도 있다.
인터넷, 이동 컴퓨팅, 및 고속 무선 네트워크들의 출현으로, 사용자들은 그들이 전통적으로 행하지 않은 사용자 장비 디바이스들 상에서 미디어를 액세스하고 있다. 본원에서 지칭된 바와 같이, 어구 "사용자 장비 디바이스", "사용자 장비", "사용자 디바이스", "전자 디바이스", "전자 장비", "미디어 장비 디바이스", 또는 "미디어 디바이스"는 텔레비전, 스마트 TV(Smart TV), 셋톱 박스(set-top box), 위성 텔레비전을 핸들링하기 위한 통합된 수신기 디코더(integrated receiver decoder; IRD), 디지털 저장 디바이스, 디지털 미디어 수신기(digital media receiver; DMR), 디지털 미디어 어댑터(digital media adapter; DMA), 스트리밍 미디어 디바이스, DVD 플레이어, DVD 레코더, 접속된 DVD, 로컬 미디어 서버, BLU-RAY 플레이어, BLU-RAY 플레이어, BLU-RAY 레코더, 개인용 컴퓨터(personal computer; PC), 랩톱 컴퓨터, 태블릿 컴퓨터, WebTV 박스, 개인용 컴퓨터 텔레비전(PC/TV), PC 미디어 서버, PC 미디어 센터, 핸드-헬드 컴퓨터, 정지식 전화, 개인 정보 단말(personal digital assistant; PDA), 이동 전화, 휴대용 비디오 플레이어, 휴대용 음악 플레이어, 휴대용 게이밍 머신, 스마트폰, 또는 임의의 다른 텔레비전 장비, 컴퓨팅 장비, 또는 무선 디바이스, 및/또는 그것의 조합과 같은, 위에서 설명된 컨텐츠를 액세스하기 위한 임의의 디바이스를 의미하도록 이해되어야 한다. 일부 실시형태들에서, 사용자 장비 디바이스는 전방 대면 스크린 및 후방 대면 스크린, 다수의 전방 스크린들, 또는 다수의 각도형성된 스크린들을 가질 수도 있다. 일부 실시형태들에서, 사용자 장비 디바이스는 전방 대면 카메라 및/또는 후방 대면 카메라를 가질 수도 있다. 이 사용자 장비 디바이스들 상에서, 사용자들은 텔레비전을 통해 이용가능한 동일한 컨텐츠 사이에서 내비게이팅하고 이 동일한 컨텐츠를 위치시킬 수 있을 수도 있다. 결과적으로, 미디어 안내는 이 디바이스들 상에서 마찬가지로 이용가능할 수도 있다. 제공된 안내는 텔레비전을 통해 오직 이용가능한 컨텐츠를 위한 것, 다른 타입들의 사용자 장비 디바이스들 중의 하나 이상을 통해 오직 이용가능한 컨텐츠를 위한 것, 또는 텔레비전 및 다른 타입들의 사용자 장비 디바이스들 중의 하나 이상의 양자를 통해 이용가능한 컨텐츠를 위한 것일 수도 있다. 미디어 안내 애플리케이션들은 (즉, 웹-사이트 상에서 제공된) 온-라인 애플리케이션들로서, 또는 사용자 장비 디바이스들 상의 단독형(stand-alone) 애플리케이션들 또는 클라이언트들로서 제공될 수도 있다. 미디어 안내 애플리케이션들을 구현할 수도 있는 다양한 디바이스들 및 플랫폼들은 이하에서 더 상세하게 설명된다.
미디어 안내 애플리케이션의 기능들 중의 하나는 미디어 안내 데이터를 사용자들에게 제공하기 위한 것이다. 본원에서 지칭된 바와 같이, 어구 "미디어 안내 데이터" 또는 "안내 데이터"는 컨텐츠에 관련된 임의의 데이터, 또는 안내 애플리케이션을 동작시킬 시에 이용된 데이터를 의미하도록 이해되어야 한다. 예를 들어, 안내 데이터는 프로그램 정보, 안내 애플리케이션 설정들, 사용자 선호도들, 사용자 프로파일 정보, 미디어 리스팅들, 미디어-관련된 정보(예컨대, 브로드캐스트 시간들, 브로드캐스트 채널들, 제목들, 설명들, 등급들 정보(예컨대, 부모 통제 등급들, 비평가의 등급들 등), 장르 또는 카테고리 정보, 배우 정보, 방송사들 또는 제공자들의 로고들을 위한 로고 데이터 등), 미디어 포맷(예컨대, 표준 해상도, 고해상도, 3D 등), 온-디맨드 정보, 블로그들, 웹사이트들, 및 사용자가 희망된 컨텐츠 선택들 사이에 내비게이팅하고 희망된 컨텐츠 선택들을 위치시키기 위하여 유용한 임의의 다른 타입의 안내 데이터를 포함할 수도 있다.
도 5 내지 도 6은 미디어 안내 데이터를 제공하기 위하여 이용될 수도 있는 예시적인 디스플레이 스크린들을 도시한다. 도 5 내지 도 6에서 도시된 디스플레이 스크린들은 임의의 적당한 사용자 장비 디바이스 또는 플랫폼 상에서 구현될 수도 있다. 도 5 내지 도 6의 디스플레이들이 전체 스크린 디스플레이들로서 예시되어 있지만, 그것들은 또한, 디스플레이되고 있는 컨텐츠 상에서 전체적으로 또는 부분적으로 오버레이(overlay)될 수도 있다. 사용자는 디스플레이 스크린에서 제공된 선택가능한 옵션(예컨대, 메뉴 옵션, 리스팅들 옵션, 아이콘, 하이퍼링크 등)을 선택함으로써, 또는 원격 제어 또는 다른 사용자 입력 인터페이스 또는 디바이스 상의 전용 버튼(예컨대, GUIDE 버튼)을 누름으로써 컨텐츠 정보를 액세스하기 위한 희망을 표시할 수도 있다. 사용자의 표시에 응답하여, 미디어 안내 애플리케이션은 그리드(grid)에서의 시간 및 채널에 의해, 시간에 의해, 채널에 의해, 소스에 의해, 컨텐츠 타입에 의해, 카테고리(예컨대, 영화들, 스포츠들, 뉴스, 아동, 또는 프로그래밍의 다른 카테고리들)에 의해, 또는 다른 미리 정의된, 사용자-정의된, 또는 다른 편성 기준들과 같은 몇몇 방법들 중의 하나로 편성된 미디어 안내 데이터를 갖는 디스플레이 스크린을 제공할 수도 있다.
도 5는 단일 디스플레이에서의 상이한 타입들의 컨텐츠에 대한 액세스를 또한 가능하게 하는 시간 및 채널에 의해 배열된 프로그램 리스팅들 디스플레이(500)의 예시적인 그리드를 도시한다. 디스플레이(500)는 (1) 채널/컨텐츠 타입 식별자들의 열(column)(504) - (열에서 셀(cell)인) 각각의 채널/컨텐츠 타입 식별자는 이용가능한 상이한 채널 또는 컨텐츠 타입을 식별함 -; 및 (2) 시간 식별자들의 행(row)(506) - (행에서 셀인) 각각의 시간 식별자는 프로그래밍의 시간 블록을 식별함 - 을 갖는 그리드(502)를 포함할 수도 있다. 그리드(502)는 또한, 프로그램 리스팅(508)과 같은 프로그램 리스팅들의 셀들을 포함하고, 여기서, 각각의 리스팅은 리스팅의 연관된 채널 및 시간 상에서 제공된 프로그램의 제목을 제공한다. 사용자 입력 디바이스로, 사용자는 하이라이트 영역(highlight region)(510)을 이동시킴으로써 프로그램 리스팅들을 선택할 수 있다. 하이라이트 영역(510)에 의해 선택된 프로그램 리스팅에 관련되는 정보는 프로그램 정보 영역(512)에서 제공될 수도 있다. 영역(512)은 예를 들어, 프로그램 제목, 프로그램 설명, (적용가능할 경우) 프로그램이 제공되는 시간, (적용가능할 경우) 프로그램이 온(on)인 채널, 프로그램의 등급, 및 다른 희망된 정보를 포함할 수도 있다.
선형 프로그래밍(예컨대, 미리 결정된 시간에서 복수의 사용자 장비 디바이스들로 송신되도록 스케줄링되고 스케줄에 따라 제공되는 컨텐츠)에 대한 액세스를 제공하는 것에 추가하여, 미디어 안내 애플리케이션은 또한, 비-선형 프로그래밍(예컨대, 임의의 시간에 사용자 장비 디바이스에 의해 액세스가능하고 스케줄에 따라 제공되지 않는 컨텐츠)에 대한 액세스를 제공한다. 비-선형 프로그래밍은 온-디맨드 컨텐츠(예컨대, VOD), 인터넷 컨텐츠(예컨대, 스트리밍 미디어, 다운로딩가능한 미디어 등), 로컬 방식으로 저장된 컨텐츠(예컨대, 위에서 설명된 임의의 사용자 장비 디바이스 또는 다른 저장 디바이스 상에서 저장된 컨텐츠), 또는 다른 시간-독립적인 컨텐츠를 포함하는 상이한 컨텐츠 소스들로부터의 컨텐츠를 포함할 수도 있다. 온-디맨드 컨텐츠는 특정한 컨텐츠 제공자(예컨대, "The Sopranos" 및 "Curb Your Enthusiasm"을 제공하는 HBO On Demand)에 의해 제공된 영화들 또는 임의의 다른 컨텐츠를 포함할 수도 있다. HBO ON DEMAND는 Time Warner Company L.P. 등에 의해 소유된 업무표장(service mark)이고, THE SOPRANOS 및 CURB YOUR ENTHUSIASM은 Home Box Office, Inc에 의해 소유된 상표들이다. 인터넷 컨텐츠는 채팅 세션 또는 웹캐스트(Webcast)와 같은 웹 이벤트들, 또는 인터넷 웹 사이트 또는 다른 인터넷 액세스(예컨대, FTP)를 통해 스트리밍 컨텐츠 또는 다운로딩가능한 컨텐츠로서 온-디맨드로 이용가능한 컨텐츠를 포함할 수도 있다.
그리드(502)는 온-디맨드 리스팅(514), 레코딩된 컨텐츠 리스팅(516), 및 인터넷 컨텐츠 리스팅(518)을 포함하는 비-선형 프로그래밍을 위한 미디어 안내 데이터를 제공할 수도 있다. 상이한 타입들의 컨텐츠 소스들로부터의 컨텐츠에 대한 미디어 안내 데이터를 조합하는 디스플레이는 "혼합된-미디어(mixed-media)" 디스플레이로서 때때로 지칭된다. 디스플레이(500)와는 상이한, 디스플레이될 수도 있는 미디어 안내 데이터의 타입들의 다양한 치환들은 사용자 선택 또는 안내 애플리케이션 정의(예컨대, 오직 레코딩되고 브로드캐스팅된 리스팅들, 오직 온-디맨드, 및 브로드캐스팅된 리스팅들 등의 디스플레이)에 기초할 수도 있다. 예시된 바와 같이, 리스팅들(514, 516, 및 518)은 이 리스팅들의 선택이 온-디맨드 리스팅들, 레코딩된 리스팅들, 또는 인터넷 리스팅들에 각각 전용인 디스플레이에 대한 액세스를 제공할 수도 있다는 것을 표시하기 위하여 그리드(502)에서 디스플레이된 전체 시간 블록에 걸쳐 이어지는 것으로서 도시되어 있다. 일부 실시형태들에서, 이 컨텐츠 타입들에 대한 리스팅들은 그리드(502)에서 직접적으로 포함될 수도 있다. 추가적인 미디어 안내 데이터는 사용자 내비게이션 아이콘들(520) 중의 하나를 선택하는 것에 응답하여 디스플레이될 수도 있다. (사용자 입력 디바이스 상에서 화살표 키를 누르는 것은 내비게이션 아이콘들(520)을 선택하는 것과 유사한 방식으로 디스플레이에 영향을 줄 수도 있음.)
디스플레이(500)는 또한, 비디오 영역(522) 및 옵션들 영역(526)을 포함할 수도 있다. 비디오 영역(522)은 사용자가 사용자에 의해 현재 이용가능하거나, 이용가능할 것이거나, 또는 이용가능하였던 프로그램들을 뷰잉 및/또는 프리뷰잉(preview)하는 것을 허용할 수도 있다. 비디오 영역(522)의 컨텐츠는 그리드(502)에서 디스플레이된 리스팅들 중의 하나에 대응할 수도 있거나, 그것으로부터 독립적일 수도 있다. 비디오 영역을 포함하는 그리드 디스플레이들은 픽처-인-안내(picture-in-guide; PIG) 디스플레이들로서 때때로 지칭된다. PGI 디스플레이들 및 그 기능성들은, 이로써 그 전체적으로 본원에서 참조로 편입되는, 2003년 5월 13일자로 발행된 Satterfield 등의 미국 특허 제6,564,378호, 및 2001년 5월 29일자로 발행된 Yuen 등의 미국 특허 제6,239,794호에서 더욱 상세하게 설명되어 있다. PIG 디스플레이들은 본원에서 설명된 실시형태들의 다른 미디어 안내 애플리케이션 디스플레이 스크린들 내에 포함될 수도 있다.
옵션들 영역(526)은 사용자가 상이한 타입들의 컨텐츠, 미디어 안내 애플리케이션 디스플레이들, 및/또는 미디어 안내 애플리케이션 특징들을 액세스하는 것을 허용할 수도 있다. 옵션들 영역(526)은 디스플레이(500)의 일부(및 본원에서 설명된 다른 디스플레이 스크린들)일 수도 있거나, 온-스크린 옵션을 선택하거나 사용자 입력 디바이스 상의 전용 또는 배정가능한 버튼을 누름으로써 사용자에 의해 호출될 수도 있다. 옵션들 영역(526) 내에서의 선택가능한 옵션들은 그리드(502)에서의 프로그램 리스팅들에 관련된 특징들에 관한 것일 수도 있거나, 주 메뉴 디스플레이로부터 이용가능한 옵션들을 포함할 수도 있다. 프로그램 리스팅들에 관련된 특징들은 프로그램을 수신하는 다른 방송 시간들 또는 방법들을 검색하는 것, 프로그램을 레코딩하는 것, 프로그램의 시리즈 레코딩을 가능하게 하는 것, 프로그램 및/또는 채널을 최선호하는 것으로서 설정하는 것, 프로그램을 구입하는 것, 또는 다른 특징들을 포함할 수도 있다. 주 메뉴 디스플레이로부터 이용가능한 옵션들은 검색 옵션들, VOD 옵션들, 부모 통제 옵션들, 인터넷 옵션들, 클라우드-기반 옵션들, 디바이스 동기화 옵션들, 제 2 스크린 디바이스 옵션들, 다양한 타입들의 미디어 안내 데이터 디스플레이들을 액세스하기 위한 옵션들, 프리미엄 서비스에 가입하기 위한 옵션들, 사용자의 프로파일을 편집하기 위한 옵션들, 브라우저 오버레이를 액세스하기 위한 옵션들, 또는 다른 옵션들을 포함할 수도 있다.
미디어 안내 애플리케이션은 사용자의 선호도들에 기초하여 개인화될 수도 있다. 개인화된 미디어 안내 애플리케이션은 사용자가 미디어 안내 애플리케이션으로 개인화된 "경험"을 생성하기 위하여 디스플레이들 및 특징들을 맞춤화하는 것을 허용한다. 이 개인화된 경험은 사용자가 이 맞춤화들을 입력하는 것을 허용함으로써, 및/또는 미디어 안내 애플리케이션이 다양한 사용자 선호도들을 결정하기 위하여 사용자 활동을 모니터링함으로써 생성될 수도 있다. 사용자들은 안내 애플리케이션에 로그인함으로써, 또는 그렇지 않을 경우에 안내 애플리케이션에 대하여 자신들을 식별함으로써, 개인화된 안내 애플리케이션을 액세스할 수도 있다. 미디어 안내 애플리케이션의 맞춤화는 사용자 프로파일에 따라 행해질 수도 있다. 맞춤화들은 변동되는 제시 방식들(예컨대, 디스플레이들의 컬러 방식, 텍스트의 폰트 크기 등), 디스플레이된 컨텐츠 리스팅들의 양태들(예컨대, 오직 HDTV 또는 오직 3D 프로그래밍, 최선호 채널 선택들에 기초한 사용자-특정된 브로드캐스트 채널들, 채널들의 디스플레이의 재순서화, 추천된 컨텐츠 등), 희망된 레코딩 특징들(예컨대, 특정한 사용자들을 위한 레코딩 또는 시리즈 레코딩들, 레코딩 품질 등), 부모 통제 설정들, 인터넷 컨텐츠의 맞춤화된 제시(예컨대, 소셜 미디어 컨텐츠, 이-메일, 전자적으로 전달된 물품들 등의 제시), 및 다른 희망된 맞춤화들을 포함할 수도 있다.
미디어 안내 애플리케이션은 사용자가 사용자 프로파일 정보를 제공하는 것을 허용할 수도 있거나, 사용자 프로파일 정보를 자동적으로 컴파일링할 수도 있다. 미디어 안내 애플리케이션은 예를 들어, 사용자가 액세스하는 컨텐츠, 및/또는 사용자가 안내 애플리케이션과 가질 수도 있는 다른 상호작용들을 모니터링할 수도 있다. 추가적으로, 미디어 안내 애플리케이션은 (예컨대, www.allrovi.com과 같은, 사용자가 액세스하는 인터넷 상의 다른 웹 사이트들로부터, 사용자가 액세스하는 다른 미디어 안내 애플리케이션들로부터, 사용자가 액세스하는 다른 대화형 애플리케이션들로부터, 사용자의 또 다른 사용자 장비 디바이스로부터 등으로) 특정한 사용자에 관련되는 다른 사용자 프로파일들의 전부 또는 일부를 획득할 수도 있고, 및/또는 미디어 안내 애플리케이션이 액세스할 수도 있는 다른 소스들로부터 사용자에 대한 정보를 획득할 수도 있다. 그 결과, 사용자는 사용자의 상이한 사용자 장비 디바이스들에 걸쳐 통합된 안내 애플리케이션 경험을 제공받을 수 있다. 이 타입의 사용자 경험은 도 8과 관련하여 이하에서 더욱 상세하게 설명된다. 추가적인 개인화된 미디어 안내 애플리케이션 특징들은, 이로써 그 전체적으로 본원에서 참조로 편입되는, 2005년 7월 11일자로 출원된 Ellis 등의 미국 특허 출원 공개 제2005/0251827호, 2007년 1월 16일자로 발행된 Boyer 등의 미국 특허 제7,165,098호, 및 2002년 2월 21일자로 출원된 Ellis 등의 미국 특허 출원 공개 제2002/0174430호에서 더욱 상세하게 설명되어 있다.
미디어 안내를 제공하기 위한 또 다른 디스플레이 배열은 도 6에서 도시되어 있다. 비디오 모자이크 디스플레이(600)는 컨텐츠 타입, 장르, 및/또는 다른 편성 기준들에 기초하여 편성된 컨텐츠 정보에 대한 선택가능한 옵션들(602)을 포함한다. 디스플레이(600)에서는, 텔레비전 리스팅들 옵션(604)이 선택되고, 이에 따라, 리스팅들(606, 608, 610, 및 612)을 브로드캐스트 프로그램 리스팅들로서 제공한다. 디스플레이(600)에서, 리스팅들은 표지를 포함하는 그래픽 이미지들, 컨텐츠로부터의 스틸 이미지(still image)들, 비디오 클립 프리뷰들, 컨텐츠로부터의 라이브 비디오, 또는 컨텐츠가 리스팅에서 미디어 안내 데이터에 의해 설명된다는 것을 사용자에게 표시하는 다른 타입들의 컨텐츠를 제공할 수도 있다. 그래픽 리스팅들의 각각은 또한, 리스팅과 연관된 컨텐츠에 대한 추가의 정보를 제공하기 위하여 텍스트에 의해 동반될 수도 있다. 예를 들어, 리스팅(608)은 미디어 부분(614) 및 텍스트 부분(616)을 포함하는, 하나를 초과하는 부분을 포함할 수도 있다. 미디어 부분(614) 및/또는 텍스트 부분(616)은 전체-스크린에서 컨텐츠를 뷰잉하기 위하여, 또는 미디어 부분(614)에서 디스플레이된 컨텐츠에 관련된 정보를 뷰잉하기 위하여(예컨대, 비디오가 그 상에서 디스플레이되는 채널에 대한 리스팅들을 뷰잉하기 위하여) 선택가능할 수도 있다.
디스플레이(600)에서의 리스팅들은 상이한 크기들이지만(즉, 리스팅(606)은 리스팅들(608, 610, 및 612)보다 더 큼), 희망할 경우, 모든 리스팅들은 동일한 크기일 수도 있다. 리스팅들은 상이한 크기들일 수도 있거나, 관심의 정도들을 사용자에게 표시하기 위하여, 또는 컨텐츠 제공자에 의해 희망된 바와 같이, 또는 사용자 선호도들에 기초하여, 어떤 컨텐츠를 강조하기 위하여 그래픽적으로 두드러지게 될 수도 있다. 컨텐츠 리스팅들을 그래픽적으로 두드러지게 하기 위한 다양한 시스템들 및 방법들은 예를 들어, 이로써 그 전체적으로 본원에서 참조로 편입되는, 2009년 11월 12일자로 출원된 Yates의 미국 특허 출원 공개 제2010/0153885호에서 논의된다.
사용자들은 그 사용자 장비 디바이스들 중의 하나 이상으로부터 컨텐츠 및 미디어 안내 애플리케이션(및 위에서 그리고 이하에서 설명된 그 디스플레이 스크린들)을 액세스할 수도 있다. 도 7은 예시적인 사용자 장비 디바이스(700)의 일반화된 실시형태를 도시한다. 사용자 장비 디바이스들의 더 특정적인 구현예들은 도 8과 관련하여 이하에서 논의된다. 사용자 장비 디바이스(700)는 입력/출력(이하, "I/O") 경로(702)를 통해 컨텐츠 및 데이터를 수신할 수도 있다. I/O 경로(702)는 컨텐츠(예컨대, 브로드캐스트 프로그래밍, 온-디맨드 프로그래밍, 인터넷 컨텐츠, 로컬 영역 네트워크(local area network; LAN) 또는 광역 네트워크(wide area network; WAN) 상에서 이용가능한 컨텐츠, 및/또는 다른 컨텐츠) 및 데이터를, 프로세싱 회로부(706) 및 스토리지(708)를 포함하는 제어 회로부(704)에 제공할 수도 있다. 제어 회로부(704)는 I/O 경로(702)를 이용하여 커맨드들, 요청들, 및 다른 적당한 데이터를 전송하고 수신하기 위하여 이용될 수도 있다. I/O 경로(702)는 제어 회로부(704)(및 구체적으로 프로세싱 회로부(706))를 (이하에서 설명된) 하나 이상의 통신 경로들에 접속할 수도 있다. I/O 기능들은 이 통신 경로들 중의 하나 이상에 의해 제공될 수도 있지만, 도면을 과도하게 복잡하게 하는 것을 회피하기 위하여 도 7에서 단일 경로로서 도시되어 있다.
제어 회로부(704)는 프로세싱 회로부(706)와 같은 임의의 적당한 프로세싱 회로부에 기초할 수도 있다. 본원에서 지칭된 바와 같이, 프로세싱 회로부는 하나 이상의 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들, 프로그래밍가능 로직 디바이스들, 필드-프로그래밍가능 게이트 어레이(field-programmable gate array; FPGA)들, 애플리케이션-특정 집적 회로(application-specific integrated circuit; ASIC)들 등에 기초한 회로부를 의미하도록 이해되어야 하고, 멀티-코어 프로세서(예컨대, 듀얼-코어(dual-core), 쿼드-코어(quad-core), 헥사-코어(hexa-core), 또는 임의의 적당한 수의 코어들) 또는 슈퍼컴퓨터를 포함할 수도 있다. 일부 실시형태들에서, 프로세싱 회로부는 다수의 별도의 프로세서들 또는 프로세싱 유닛들, 예를 들어, 다수의 동일한 타입의 프로세싱 유닛들(예컨대, 2 개의 인텔 코어 i7 프로세서들) 또는 다수의 상이한 프로세서들(예컨대, 인텔 코어 i5 프로세서 및 인텔 코어 i7 프로세서)에 걸쳐 분산될 수도 있다. 일부 실시형태들에서, 제어 회로부(704)는 메모리(즉, 스토리지(708)) 내에 저장된 미디어 안내 애플리케이션을 위한 명령어들을 실행한다. 구체적으로, 제어 회로부(704)는 위에서 그리고 이하에서 논의된 기능들을 수행하기 위하여 미디어 안내 애플리케이션에 의해 명령어될 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 미디어 안내 디스플레이들을 생성하기 위하여 명령어들을 제어 회로부(704)에 제공할 수도 있다. 일부 구현예들에서, 제어 회로부(704)에 의해 수행된 임의의 액션은 미디어 안내 애플리케이션으로부터 수신된 명령어들에 기초할 수도 있다.
클라이언트-서버 기반 실시형태들에서, 제어 회로부(704)는 안내 애플리케이션 서버 또는 다른 네트워크들 또는 서버들과 통신하기 위하여 적당한 통신 회로부를 포함할 수도 있다. 위에서 언급된 기능성을 수행하기 위한 명령어들은 안내 애플리케이션 서버 상에서 저장될 수도 있다. 통신 회로부는 케이블 모뎀, 통합된 서비스들 디지털 네트워크(integrated services digital network; ISDN) 모뎀, 디지털 가입자 회선(digital subscriber line; DSL) 모뎀, 전화 모뎀, 이더넷 카드, 또는 다른 장비와의 통신들을 위한 무선 모뎀, 또는 임의의 다른 적당한 통신 회로부를 포함할 수도 있다. 이러한 통신들은 (도 8과 관련하여 더 상세하게 설명되는) 인터넷 또는 임의의 다른 적당한 통신 네트워크들 또는 경로들을 수반할 수도 있다. 추가적으로, 통신 회로부는 사용자 장비 디바이스들의 피어-투-피어(peer-to-peer) 통신, 또는 (이하에서 더 상세하게 설명된) 서로로부터의 원격인 위치들에서의 사용자 장비 디바이스들의 통신을 가능하게 하는 회로부를 포함할 수도 있다.
메모리는 제어 회로부(704)의 일부인 스토리지(708)로서 제공된 전자 저장 디바이스일 수도 있다. 본원에서 지칭된 바와 같이, 어구 "전자 저장 디바이스" 또는 "저장 디바이스"는 랜덤-액세스 메모리, 판독-전용 메모리, 하드 드라이브들, 광학 드라이브들, 디지털 비디오 디스크(digital video disc; DVD) 레코더들, 컴팩트 디스크(compact disc; CD) 레코더들, BLU-RAY 디스크(BLU-RAY disc; BD) 레코더들, BLU-RAY 3D 디스크 레코더들, 디지털 비디오 레코더들(DVR, 때때로 개인용 비디오 레코더(personal video recorder), 또는 PVR로서 칭해짐), 솔리드 스테이트 디바이스(solid state device)들, 퀀텀 저장 디바이스(quantum storage device)들, 게이밍 콘솔들, 게이밍 미디어, 또는 임의의 다른 적당한 고정된 또는 분리가능한 저장 디바이스들, 및/또는 이것의 임의의 조합과 같은, 전자 데이터, 컴퓨터 소프트웨어, 또는 펌웨어를 저장하기 위한 임의의 디바이스를 의미하도록 이해되어야 한다. 스토리지(708)는 본원에서 설명된 다양한 타입들의 컨텐츠 뿐만 아니라, 위에서 설명된 미디어 안내 데이터를 저장하기 위하여 이용될 수도 있다. (예컨대, 부트-업(boot-up) 루틴 및 다른 명령어들을 착수시키기 위하여) 비휘발성 메모리가 또한 이용될 수도 있다. 도 8과 관련하여 설명된 클라우드-기반 스토리지는 스토리지(708)를 보충하기 위하여, 또는 스토리지(708) 대신에 이용될 수도 있다.
제어 회로부(704)는 비디오 생성 회로부와, 하나 이상의 아날로그 튜너들, 하나 이상의 MPEG-2 디코더들 또는 다른 디지털 디코딩 회로부, 고해상도 튜너들, 또는 임의의 다른 적당한 튜닝 또는 비디오 회로들, 또는 이러한 회로들의 조합들과 같은 튜닝 회로부를 포함할 수도 있다. (예컨대, 오버-디-에어(over-the-air), 아날로그, 또는 디지털 신호들을 저장을 위하여 MPEG 신호들로 변환하기 위한) 인코딩 회로부가 또한 제공될 수도 있다. 제어 회로부(704)는 또한, 컨텐츠를 사용자 장비(700)의 선호된 출력 포맷으로 업컨버팅(upconverting) 및 다운컨버팅(downconverting)하기 위한 스케일러 회로부(scaler circuitry)를 포함할 수도 있다. 회로부(704)는 또한, 디지털 및 아날로그 신호들 사이에서 변환하기 위한 디지털-투-아날로그(digital-to-analog) 변환기 회로부 및 아날로그-투-디지털(analog-to-digital) 변환기 회로부를 포함할 수도 있다. 튜닝 및 인코딩 회로부는 컨텐츠를 수신하고 디스플레이하거나, 컨텐츠를 플레이하거나, 또는 컨텐츠를 레코딩하기 위하여 사용자 장비 디바이스에 의해 이용될 수도 있다. 튜닝 및 인코딩 회로부는 또한, 안내 데이터를 수신하기 위하여 이용될 수도 있다. 예를 들어, 튜닝, 비디오 생성, 인코딩, 디코딩, 암호화, 복호화, 스케일러, 및 아날로그/디지털 회로부를 포함하는 본원에서 설명된 회로부는 하나 이상의 범용 또는 특화된 프로세서들 상에서 작동하는 소프트웨어를 이용하여 구현될 수도 있다. 다수의 튜너들은 동시 튜닝 기능들(예컨대, 시청 및 레코딩 기능들, 픽처-인-픽처(picture-in-picture; PIP) 기능들, 다수-튜너 레코딩 등)을 핸들링하기 위하여 제공될 수도 있다. 스토리지(708)가 사용자 장비(700)와는 별도의 디바이스로서 제공될 경우, (다수의 튜너들을 포함하는) 튜닝 및 인코딩 회로부는 스토리지(708)와 연관될 수도 있다.
사용자는 사용자 입력 인터페이스(710)를 이용하여 명령어들을 제어 회로부(704)로 전송할 수도 있다. 사용자 입력 인터페이스(710)는 원격 제어, 마우스, 트랙볼, 키패드, 키보드, 터치 스크린, 터치패드, 스타일러스 입력, 조이스틱, 음성 인식 인터페이스, 또는 다른 사용자 입력 인터페이스들과 같은 임의의 적당한 사용자 인터페이스일 수도 있다. 디스플레이(712)는 단독형 디바이스로서 제공될 수도 있거나, 사용자 장비 디바이스(700)의 다른 엘리먼트(element)들과 통합될 수도 있다. 예를 들어, 디스플레이(712)는 터치스크린 또는 터치-감지 디스플레이일 수도 있다. 이러한 상황들에서, 사용자 입력 인터페이스(710)는 디스플레이(712)와 통합될 수도 있거나, 디스플레이(712)와 조합될 수도 있다. 디스플레이(712)는 모니터, 텔레비전, 이동 디바이스를 위한 액정 디스플레이(liquid crystal display; LCD), 비정질 실리콘 디스플레이(amorphous silicon display), 저온 폴리 실리콘 디스플레이(low temperature poly silicon display), 전자 잉크 디스플레이(electronic ink display), 전기영동 디스플레이(electrophoretic display), 능동 매트릭스 디스플레이(active matrix display), 전기-습윤 디스플레이(electro-wetting display), 전기유체 디스플레이(electrofluidic display), 음극선관 디스플레이(cathode ray tube display), 발광 다이오드 디스플레이(light-emitting diode display), 전계발광 디스플레이(electroluminescent display), 플라즈마 디스플레이 패널(plasma display panel), 고성능 어드레싱 디스플레이(high-performance addressing display), 박막 트랜지스터 디스플레이(thin-film transistor display), 유기 발광 다이오드 디스플레이(organic light-emitting diode display), 표면-전도 전자-에미터 디스플레이(surface-conduction electron-emitter display; SED), 레이저 텔레비전, 탄소 나노튜브(carbon nanotube)들, 퀀텀 도트 디스플레이(quantum dot display), 간섭계측 변조기 디스플레이(interferometric modulator display), 또는 시각적인 이미지들을 디스플레이하기 위한 임의의 다른 적당한 장비 중의 하나 이상일 수도 있다. 일부 실시형태들에서, 디스플레이(712)는 HDTV-가능형일 수도 있다. 일부 실시형태들에서, 디스플레이(712)는 3D 디스플레이일 수도 있고, 대화형 미디어 안내 애플리케이션 및 임의의 적당한 컨텐츠는 3D로 디스플레이될 수도 있다. 비디오 카드 또는 그래픽 카드는 디스플레이(712)로의 출력을 생성할 수도 있다. 비디오 카드는 3D 장면들 및 2D 그래픽들의 가속화된 렌더링, MPEG-2/MPEG-4 디코딩, TV 출력, 또는 다수의 모니터들을 접속하기 위한 능력과 같은 다양한 기능들을 제공할 수도 있다. 비디오 카드는 제어 회로부(704)와 관련하여 위에서 설명된 임의의 프로세싱 회로부일 수도 있다. 비디오 카드는 제어 회로부(704)와 통합될 수도 있다. 스피커들(714)은 사용자 장비 디바이스(700)의 다른 엘리먼트들과 통합된 것으로서 제공될 수도 있거나, 단독형 유닛들일 수도 있다. 디스플레이(712) 상에서 디스플레이된 비디오들 및 다른 컨텐츠의 오디오 컴포넌트(component)는 스피커들(714)을 통해 플레이될 수도 있다. 일부 실시형태들에서, 오디오는 스피커들(714)을 통해 오디오를 프로세싱하고 출력하는 수신기(도시되지 않음)로 분배될 수도 있다.
안내 애플리케이션은 임의의 적당한 아키텍처를 이용하여 구현될 수도 있다. 예를 들어, 그것은 사용자 장비 디바이스(700) 상에서 전적으로 구현된 단독형 애플리케이션일 수도 있다. 이러한 접근법에서, 애플리케이션의 명령어들은 로컬 방식으로 (예컨대, 스토리지(708) 내에) 저장되고, 애플리케이션에 의한 이용을 위한 데이터는 주기적으로 (예컨대, 대역외(out-of-band) 피드로부터, 인터넷 자원으로부터, 또는 또 다른 적당한 접근법을 이용하여) 다운로딩된다. 제어 회로부(704)는 스토리지(708)로부터 애플리케이션의 명령어들을 취출(retrieve)할 수도 있고, 본원에서 논의된 디스플레이들 중의 임의의 것을 생성하기 위하여 명령어들을 프로세싱할 수도 있다. 프로세싱된 명령어들에 기초하여, 제어 회로부(704)는 입력이 입력 인터페이스(710)로부터 수신될 때에 어떤 액션을 수행할 것인지를 결정할 수도 있다. 예를 들어, 디스플레이 상의 커서 상/하의 이동은 입력 인터페이스(710)가 상/하 버튼이 선택되었다는 것을 표시할 때에 프로세싱된 명령어들에 의해 표시될 수도 있다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 클라이언트-서버 기반 애플리케이션이다. 사용자 장비 디바이스(700) 상에서 구현된 씨크(thick) 및 씬(thin) 클라이언트에 의한 이용을 위한 데이터는 사용자 장비 디바이스(700)에 대해 원격인 서버에 요청들을 발행함으로써 온-디맨드로 취출된다. 클라이언트-서버 기반 안내 애플리케이션의 하나의 예에서, 제어 회로부(704)는 원격 서버에 의해 제공된 웹 페이지들을 해독(interpret)하는 웹 브라우저를 작동시킨다. 예를 들어, 원격 서버는 저장 디바이스에서 애플리케이션을 위한 명령어들을 저장할 수도 있다. 원격 서버는 회로부(예컨대, 제어 회로부(704))를 이용하여 저장된 명령어들을 프로세싱할 수도 있고, 위에서 그리고 이하에서 논의된 디스플레이들을 생성할 수도 있다. 클라이언트 디바이스는 원격 서버에 의해 생성된 디스플레이들을 수신할 수도 있고, 장비 디바이스(700) 상에서 로컬 방식으로 디스플레이들의 컨텐츠를 디스플레이할 수도 있다. 이러한 방법으로, 명령어들의 프로세싱은 서버에 의해 원격으로 수행되는 반면, 결과적인 디스플레이들은 장비 디바이스(700) 상에서 로컬 방식으로 제공된다. 장비 디바이스(700)는 입력 인터페이스(710)를 통해 사용자로부터 입력들을 수신할 수도 있고, 그 입력들을, 대응하는 디스플레이들을 프로세싱하고 생성하기 위한 원격 서버로 송신할 수도 있다. 예를 들어, 장비 디바이스(700)는 상/하 버튼이 입력 인터페이스(710)를 통해 선택되었다는 것을 표시하는 통신을 원격 서버로 송신할 수도 있다. 원격 서버는 그 입력에 따라 명령어들을 프로세싱할 수도 있고, 입력에 대응하는 애플리케이션의 디스플레이(예컨대, 커서를 상/하로 이동시키는 디스플레이)를 생성할 수도 있다. 그 다음으로, 생성된 디스플레이는 사용자로의 제시를 위하여 장비 디바이스(700)로 송신된다.
일부 실시형태들에서, 미디어 안내 애플리케이션은 다운로딩되고 해독되거나, 또는 그렇지 않을 경우에 (제어 회로부(704)에 의해 작동된) 해독기 또는 가상 머신(virtual machine)에 의해 작동된다. 일부 실시형태들에서, 안내 애플리케이션은 ETV 2진 교환 포맷(ETV Binary Interchange Format; EBTF)에서 인코딩될 수도 있고, 적당한 피드의 일부로서 제어 회로부(704)에 의해 수신될 수도 있고, 제어 회로부(704) 상에서 작동하는 사용자 에이전트(user agent)에 의해 해독될 수도 있다. 예를 들어, 안내 애플리케이션은 EBIF 애플리케이션일 수도 있다. 일부 실시형태들에서, 안내 애플리케이션은 제어 회로부(704)에 의해 실행된 로컬 가상 머신 또는 다른 적당한 미들웨어에 의해 수신되고 작동되는 일련의 JAVA-기반 파일들에 의해 정의될 수도 있다. 이러한 실시형태들(예컨대, MPEG-2 또는 다른 디지털 미디어 인코딩 방식들을 채용하는 것들)의 일부에서, 안내 애플리케이션은 예를 들어, 프로그램의 MPEG 오디오 및 비디오 패킷들을 갖는 MPEG-2 오브젝트 캐로셀(object carousel)로 인코딩될 수도 있고 송신될 수도 있다.
도 7의 사용자 장비 디바이스(700)는 사용자 텔레비전 장비(802), 사용자 컴퓨터 장비(804), 무선 사용자 통신 디바이스(806), 또는 비-휴대용 게이밍 머신과 같은, 컨텐츠를 액세스하기 위하여 적당한 임의의 다른 타입의 사용자 장비로서 도 8의 시스템(800)에서 구현될 수 있다. 단순함을 위하여, 이 디바이스들은 사용자 장비 또는 사용자 장비 디바이스들로서 본원에서 집합적으로 지칭될 수도 있고, 위에서 설명된 사용자 장비 디바이스들과 실질적으로 유사할 수도 있다. 미디어 안내 애플리케이션이 그 상에서 구현될 수도 있는 사용자 장비 디바이스들은 단독형 디바이스로서 기능할 수도 있거나, 디바이스들의 네트워크의 일부일 수도 있다. 디바이스들의 다양한 네트워크 구성들이 구현될 수도 있고, 이하에서 더 상세하게 논의된다.
도 7과 관련하여 위에서 설명된 시스템 특징들의 적어도 일부를 사용하는 사용자 장비 디바이스는 사용자 텔레비전 장비(802), 사용자 컴퓨터 장비(804), 또는 무선 사용자 통신 디바이스(806)로서 전적으로 분류되지 않을 수도 있다. 예를 들어, 사용자 텔레비전 장비(802)는 일부 사용자 컴퓨터 장비(804)와 같이, 인터넷 컨텐츠에 대한 액세스를 허용하는 인터넷-가능형일 수도 있는 반면, 사용자 컴퓨터 장비(804)는 일부 텔레비전 장비(802)와 같이, 텔레비전 프로그래밍에 대한 액세스를 허용하는 튜너를 포함할 수도 있다. 미디어 안내 애플리케이션은 다양한 상이한 타입들의 사용자 장비 상에서 동일한 레이아웃을 가질 수도 있거나, 사용자 장비의 디스플레이 능력들에 맞추어질 수도 있다. 예를 들어, 사용자 컴퓨터 장비(804) 상에서, 안내 애플리케이션은 웹 브라우저(web browser)에 의해 액세스된 웹 사이트로서 제공될 수도 있다. 또 다른 예에서, 안내 애플리케이션은 무선 사용자 통신 디바이스들(806)을 위하여 스케일링 다운(scale down)될 수도 있다.
시스템(800)에서는, 전형적으로 하나를 초과하는 각각의 타입의 사용자 장비 디바이스가 있지만, 도면을 과도하게 복잡하게 하는 것을 회피하기 위하여, 각각의 오직 하나가 도 8에서 도시되어 있다. 추가적으로, 각각의 사용자는 하나를 초과하는 타입의 사용자 장비 디바이스와, 또한, 하나를 초과하는 각각의 타입의 사용자 장비 디바이스를 사용할 수도 있다.
일부 실시형태들에서, 사용자 장비 디바이스(예컨대, 사용자 텔레비전 장비(802), 사용자 컴퓨터 장비(804), 무선 사용자 통신 디바이스(806))는 "제 2 스크린 디바이스"로서 지칭될 수도 있다. 예를 들어, 제 2 스크린 디바이스는 제 1 사용자 장비 디바이스 상에서 제시된 컨텐츠를 보충할 수도 있다. 제 2 스크린 디바이스 상에서 제시된 컨텐츠는 제 1 디바이스 상에서 제시된 컨텐츠를 보충하는 임의의 적당한 컨텐츠일 수도 있다. 일부 실시형태들에서, 제 2 스크린 디바이스는 제 1 디바이스의 설정들 및 디스플레이 선호도들을 조절하기 위한 인터페이스를 제공한다. 일부 실시형태들에서, 제 2 스크린 디바이스는 다른 제 2 스크린 디바이스들과 상호작용하거나 소셜 네트워크와 상호작용하기 위하여 구성된다. 제 2 스크린 디바이스는 제 1 디바이스와 동일한 룸(room)에서, 제 1 디바이스와는 상이한 룸이지만 동일한 주택 또는 건물에서, 또는 제 1 디바이스와는 상이한 건물에서 위치될 수 있다.
사용자는 또한, 댁내(in-home) 디바이스들 및 원격 디바이스들에 걸쳐 일관된 미디어 안내 애플리케이션 설정들을 유지하기 위하여 다양한 설정들을 설정할 수도 있다. 설정들은 본원에서 설명된 것들뿐만 아니라, 채널 및 프로그램의 최선호하는 것들, 안내 애플리케이션이 프로그래밍 추천들을 행하기 위하여 사용하는 프로그래밍 선호도들, 디스플레이 선호도들, 및 다른 바람직한 안내 설정들도 포함한다. 예를 들어, 사용자가 예를 들어, 그 사무실에서의 그 개인용 컴퓨터 상에서의 웹 사이트
www.allrovi.com 상에서 채널을 최선호하는 것으로서 설정할 경우, 동일한 채널은 사용자의 댁내 디바이스들(예컨대, 사용자 텔레비전 장비 및 사용자 컴퓨터 장비)뿐만 아니라, 희망할 경우, 사용자의 이동 디바이스들 상에서 최선호하는 것으로서 나타날 것이다. 그러므로, 사용자 장비 디바이스 상에서 행해진 변경들은 그것들이 동일하거나 상이한 타입의 사용자 장비 디바이스인지 여부에 관계 없이, 또 다른 사용자 장비 디바이스 상에서 안내 경험을 변경할 수 있다. 추가적으로, 행해진 변경들은 사용자에 의해 입력된 설정들뿐만 아니라, 안내 애플리케이션에 의해 모니터링된 사용자 활동에 기초할 수도 있다.
사용자 장비 디바이스들은 통신 네트워크(814)에 결합될 수도 있다. 즉, 사용자 텔레비전 장비(802), 사용자 컴퓨터 장비(804), 및 무선 사용자 통신 디바이스(806)는 각각 통신 경로들(808, 810, 및 812)을 통해 통신 네트워크(814)에 결합된다. 통신 네트워크(814)는 인터넷, 이동 전화 네트워크, 이동 음성 또는 데이터 네트워크(예컨대, 4G 또는 LTE 네트워크), 케이블 네트워크, 공중 교환 전화 네트워크(public switched telephone network), 또는 다른 타입들의 통신 네트워크, 또는 통신 네트워크들의 조합들을 포함하는 하나 이상의 네트워크들일 수도 있다. 경로들(808, 810, 및 812)은 위성 경로, 광섬유 경로, 케이블 경로, 인터넷 통신들(예컨대, IPTV)을 지원하는 경로, (예컨대, 브로드캐스트 또는 다른 무선 신호들을 위한) 자유-공간 접속들, 또는 임의의 다른 적당한 유선 또는 무선 통신 경로, 또는 이러한 경로들의 조합과 같은 하나 이상의 통신 경로들을 별도로 또는 함께 포함할 수도 있다. 경로(812)는 도 8에서 도시된 예시적인 실시형태에서, 그것이 무선 경로인 것을 표시하기 위하여 점선들로 그려져 있고, 경로들(808 및 810)은 (희망할 경우, 이 경로들이 무선 경로들일 수도 있지만) 그것들이 유선 경로들인 것을 표시하기 위하여 실선들로서 그려져 있다. 사용자 장비 디바이스들과의 통신들은 이 통신 경로들 중의 하나 이상에 의해 제공될 수도 있지만, 도면을 과도하게 복잡하게 하는 것을 회피하기 위하여, 도 8에서 단일 경로로서 도시되어 있다.
통신 경로들은 사용자 장비 디바이스들 사이에서 그려져 있지 않지만, 이 디바이스들은 경로들(808, 810, 및 812)과 관련하여 위에서 설명된 것들뿐만 아니라, USB 케이블들, IEEE 1394 케이블들, 무선 경로들(예컨대, 블루투스(Bluetooth), 적외선, IEEE 802-11x 등), 또는 유선 또는 무선 경로들을 통한 다른 단거리 통신과 같은 다른 단거리 포인트-투-포인트(point-to-point) 통신 경로들과 같은 통신 경로들을 통해 서로 직접적으로 통신할 수도 있다. BLUETOOTH는 Bluetooth SIG, INC.에 의해 소유된 인증 마크이다. 사용자 장비 디바이스들은 또한, 통신 네트워크(814)를 거쳐 간접적인 경로를 통해 직접적으로 서로 통신할 수도 있다.
시스템(800)은 각각 통신 경로들(820 및 822)을 통해 통신 네트워크(814)에 결합된 컨텐츠 소스(816) 및 미디어 안내 데이터 소스(818)를 포함한다. 경로들(820 및 822)은 경로들(808, 810, 및 812)과 관련하여 위에서 설명된 통신 경로들 중의 임의의 것을 포함할 수도 있다. 컨텐츠 소스(816) 및 미디어 안내 데이터 소스(818)와의 통신들은 하나 이상의 통신 경로들 상에서 교환될 수도 있지만, 도면을 과도하게 복잡하게 하는 것을 회피하기 위하여, 도 8에서 단일 경로로서 도시되어 있다. 추가적으로, 컨텐츠 소스(816) 및 미디어 안내 데이터 소스(818)의 각각 중의 하나를 초과하는 것이 있을 수도 있지만, 도면을 과도하게 복잡하게 하는 것을 회피하기 위하여, 각각 중의 오직 하나가 도 8에서 도시되어 있다. (이 소스들의 각각의 상이한 타입들이 이하에서 논의된다.) 희망할 경우, 컨텐츠 소스(816) 및 미디어 안내 데이터 소스(818)는 하나의 소스 디바이스로서 통합될 수도 있다. 사용자 장비 디바이스들(802, 804, 및 806)과의 소스들(816 및 818) 사이의 통신들은 통신 네트워크(814)를 통한 것으로서 도시되어 있지만, 일부 실시형태들에서, 소스들(816 및 818)은 경로들(808, 810, 및 812)과 관련하여 위에서 설명된 것들과 같은 통신 경로들(도시되지 않음)을 통해 사용자 장비 디바이스들(802, 804, 및 806)과 직접적으로 통신할 수도 있다.
컨텐츠 소스(816)는 텔레비전 분배 설비, 케이블 시스템 헤드엔드(headend), 위성 분배 설비, 프로그래밍 소스들(예컨대, NBC, ABC, HBO 등과 같은 텔레비전 방송사들), 중간 분배 설비들 및/또는 서버들, 인터넷 제공자들, 온-디맨드 미디어 서버들, 및 다른 컨텐츠 제공자들을 포함하는 하나 이상의 타입들의 컨텐츠 분배 장비를 포함할 수도 있다. NBC는 National Broadcasting Company, Inc.에 의해 소유된 상표이고, ABC는 American Broadcasting Company, Inc.에 의해 소유된 상표이고, HBO는 Home Box Office, Inc.에 의해 소유된 상표이다. 컨텐츠 소스(816)는 컨텐츠의 발신자일 수도 있거나(예컨대, 텔레비전 방송사, 웹캐스트 제공자 등), 컨텐츠의 발신자가 아닐 수도 있다(예컨대, 온-디맨드 컨텐츠 제공자, 다운로딩하기 위한 브로드캐스트 프로그램들의 컨텐츠의 인터넷 제공자 등). 컨텐츠 소스(816)는 케이블 소스들, 위성 제공자들, 온-디맨드 제공자들, 인터넷 제공자들, 오버-더-톱(over-the-top) 컨텐츠 제공자들, 또는 컨텐츠의 다른 제공자들을 포함할 수도 있다. 컨텐츠 소스(816)는 또한, 사용자 장비 디바이스들 중의 임의의 것으로부터 원격인 위치에서, (사용자에 의해 선택된 비디오 컨텐츠를 포함하는) 상이한 타입들의 컨텐츠를 저장하기 위하여 이용된 원격 미디어 서버를 포함할 수도 있다. 컨텐츠의 원격 저장을 위한, 그리고 원격으로 저장된 컨텐츠를 사용자 장비에 제공하기 위한 시스템들 및 방법들은, 이로써 그 전체적으로 본원에서 참조로 편입되는, 2010년 7월 20일자로 발행된 Ellis 등의 미국 특허 제7,761,892호와 관련하여 더욱 상세하게 논의된다.
미디어 안내 데이터 소스(818)는 위에서 설명된 미디어 안내 데이터와 같은 미디어 안내 데이터를 제공할 수도 있다. 미디어 안내 데이터는 임의의 적당한 접근법을 이용하여 사용자 장비 디바이스들에 제공될 수도 있다. 일부 실시형태들에서, 안내 애플리케이션은 데이터 피드(예컨대, 연속적인 피드 또는 트리클 피드(trickle feed))를 통해 프로그램 안내 데이터를 수신하는 단독형 대화형 텔레비전 프로그램 안내일 수도 있다. 프로그램 스케줄 데이터 및 다른 안내 데이터는 대역내(in-band) 디지털 신호를 이용하여, 대역외(out-of-band) 디지털 신호를 이용하여, 또는 임의의 다른 적당한 데이터 송신 기법에 의해 텔레비전 채널 측파대(sideband) 상에서 사용자 장비에 제공될 수도 있다. 프로그램 스케줄 데이터 및 다른 미디어 안내 데이터는 다수의 아날로그 또는 디지털 텔레비전 채널들 상에서 사용자 장비에 제공될 수도 있다.
일부 실시형태들에서, 미디어 안내 데이터 소스(818)로부터의 안내 데이터는 클라이언트-서버 접근법을 이용하여 사용자들의 장비에 제공될 수도 있다. 예를 들어, 사용자 장비 디바이스는 서버로부터 미디어 안내 데이터를 풀(pull)할 수도 있거나, 서버는 미디어 안내 데이터를 사용자 장비 디바이스로 푸시(push)할 수도 있다. 일부 실시형태들에서, 사용자의 장비 상에서 상주하는 안내 애플리케이션 클라이언트는 필요할 때, 예컨대, 안내 데이터가 오래될 때, 또는 사용자 장비 디바이스가 데이터를 수신하기 위하여 사용자로부터 요청을 수신할 때에 안내 데이터를 획득하기 위하여 소스(818)와의 세션들을 개시할 수도 있다. 미디어 안내는 임의의 적당한 빈도로(예컨대, 연속적으로, 매일, 사용자-특정된 시간의 주기, 시스템-특정된 시간의 주기, 사용자 장비로부터의 요청에 응답하여 등으로) 사용자 장비에 제공될 수도 있다. 미디어 안내 데이터 소스(818)는 미디어 안내 애플리케이션 자체, 또는 미디어 안내 애플리케이션을 위한 소프트웨어 업데이트들을 사용자 장비 디바이스들(802, 804, 및 806)에 제공할 수도 있다.
일부 실시형태들에서, 미디어 안내 데이터는 뷰어 데이터(viewer data)를 포함할 수도 있다. 예를 들어, 뷰어 데이터는 현재 및/또는 이력적인 사용자 활동 정보(예컨대, 사용자가 전형적으로 어떤 컨텐츠를 시청하는지, 사용자가 소셜 네트워크와 상호작용하든지 간에 사용자가 하루의 어떤 시간들에 컨텐츠를 시청하는지, 사용자가 정보를 포스팅하기 위하여 어떤 시간들에 소셜 네트워크와 상호작용하는지, 사용자가 전형적으로 어떤 타입들의 컨텐츠를 시청하는지(예컨대, 유료 TV 또는 무료 TV), 분위기, 두뇌 활동 정보 등)를 포함할 수도 있다. 미디어 안내 데이터는 또한, 가입 데이터를 포함할 수도 있다. 예를 들어, 가입 데이터는 주어진 사용자가 어느 소스들 또는 서비스들에 가입하는지, 및/또는 주어진 사용자가 어느 소스들 또는 서비스들에 이전에 가입하였지만 더 이후에 액세스를 종결하였는지(예컨대, 사용자가 프리미엄 채널들에 가입하는지 여부, 사용자가 서비스들의 프리미엄 레벨을 추가하였는지 여부, 사용자가 인터넷 속력을 증가시켰는지 여부)를 식별할 수도 있다. 일부 실시형태들에서, 뷰어 데이터 및/또는 가입 데이터는 1년을 초과하는 주기에 대한 주어진 사용자의 패턴들을 식별할 수도 있다. 미디어 안내 데이터는 주어진 사용자가 서비스/소스에 대한 액세스를 종결할 가능성을 표시하는 점수를 생성하기 위하여 이용된 모델(예컨대, 생존자 모델)을 포함할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 주어진 사용자가 특정한 서비스 또는 소스에 대한 액세스를 종결할 것인지 여부의 가능성을 표시하는 값 또는 점수를 생성하기 위하여, 모델을 이용하여 가입 데이터로 뷰어 데이터를 프로세싱할 수도 있다. 특히, 더 높은 점수는 사용자가 특정한 서비스 또는 소스에 대한 액세스를 종결할 확실성의 더 높은 레벨을 표시할 수도 있다. 점수에 기초하여, 미디어 안내 애플리케이션은 사용자가 점수에 의해 표시된 특정한 서비스 또는 소스를, 사용자가 액세스를 종결할 가능성이 있을 것으로서 유지할 것을 유도하는 홍보들을 생성할 수도 있다.
미디어 안내 애플리케이션들은 예를 들어, 사용자 장비 디바이스들 상에서 구현된 단독형 애플리케이션들일 수도 있다. 예를 들어, 미디어 안내 애플리케이션은, 스토리지(708) 내에 저장될 수도 있고 사용자 장비 디바이스(700)의 제어 회로부(704)에 의해 실행될 수도 있는 소프트웨어 또는 실행가능한 명령어들의 세트로서 구현될 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션들은 클라이언트-서버 애플리케이션들일 수도 있고, 여기서, 오직 클라이언트 애플리케이션은 사용자 장비 디바이스 상에서 상주하고, 서버 애플리케이션은 원격 서버 상에서 상주한다. 예를 들어, 미디어 안내 애플리케이션들은 부분적으로, 사용자 장비 디바이스(700)의 제어 회로부(704) 상에서 클라이언트 애플리케이션으로서, 그리고 부분적으로, 원격 서버의 제어 회로부 상에서 작동하는 서버 애플리케이션(예컨대, 미디어 안내 데이터 소스(818))으로서 원격 서버 상에서 구현될 수도 있다. (미디어 안내 데이터 소스(818)와 같은) 원격 서버의 제어 회로부에 의해 실행될 때, 미디어 안내 애플리케이션은 안내 애플리케이션 디스플레이들을 생성하고 생성된 디스플레이들을 사용자 장비 디바이스들로 송신할 것을 제어 회로부에 명령어할 수도 있다. 서버 애플리케이션은 사용자 장비 상에서의 저장을 위한 데이터를 송신할 것을 미디어 안내 데이터 소스(818)의 제어 회로부에 명령어할 수도 있다. 클라이언트 애플리케이션은 안내 애플리케이션 디스플레이들을 생성할 것을 수신하는 사용자 장비의 제어 회로부에 명령어할 수도 있다.
사용자 장비 디바이스들(802, 804, 및 806)로 전달된 컨텐츠 및/또는 미디어 안내 데이터는 오버-더-톱(OTT) 컨텐츠일 수도 있다. OTT 컨텐츠 전달은 위에서 설명된 임의의 사용자 장비 디바이스를 포함하는 인터넷-가능형 사용자 디바이스들이 케이블 또는 위성 접속들 상에서 수신된 컨텐츠에 추가하여, 위에서 설명된 임의의 컨텐츠를 포함하는, 인터넷 상에서 전송되는 컨텐츠를 수신하는 것을 허용한다. OTT 컨텐츠는 인터넷 서비스 제공자(Internet service provider; ISP)에 의해 제공된 인터넷 접속을 통해 전달되지만, 제 3 당사자는 컨텐츠를 분배한다. ISP는 컨텐츠의 뷰잉 능력들, 저작권들, 또는 재분배를 담당하지 않을 수도 있고, OTT 컨텐츠 제공자에 의해 제공된 IP 패킷들을 오직 전송할 수도 있다. OTT 컨텐츠 제공자들의 예들은 IP 패킷들을 통해 오디오 및 비디오를 제공하는 YOUTUBE, NETFLIX, 및 HULU를 포함한다. 유튜브(Youtube)는 Google Inc.에 의해 소유된 상표이고, 넷플릭스(Netflix)는 Netflix Inc.에 의해 소유된 상표이고, 훌루(Hulu)는 Hulu, LLC.에 의해 소유된 상표이다. OTT 컨텐츠 제공자들은 위에서 설명된 미디어 안내 데이터를 추가적으로 또는 대안적으로 제공할 수도 있다. 컨텐츠 및/또는 미디어 안내 데이터에 추가하여, OTT 컨텐츠의 제공자들은 미디어 안내 애플리케이션들(예컨대, 웹-기반 애플리케이션들 또는 클라우드-기반 애플리케이션들)을 분배할 수 있거나, 컨텐츠는 사용자 장비 디바이스 상에서 저장된 미디어 안내 애플리케이션들에 의해 디스플레이될 수 있다.
미디어 안내 시스템(800)은 다수의 접근법들 또는 네트워크 구성들을 예시하도록 의도된 것이고, 이 다수의 접근법들 또는 네트워크 구성들에 의해, 사용자 장비 디바이스들 및 컨텐츠 및 안내 데이터의 소스들은 컨텐츠를 액세스하고 미디어 안내를 제공하는 목적을 위하여 서로 통신할 수도 있다. 본원에서 설명된 실시형태들은 이 접근법들 중의 임의의 하나 또는 서브세트에서, 또는 컨텐츠를 전달하고 미디어 안내를 제공하기 위한 다른 접근법들을 채용하는 시스템에서 적용될 수도 있다. 다음의 4 개의 접근법들은 도 8의 일반화된 예의 특정 예시들을 제공한다.
하나의 접근법에서, 사용자 장비 디바이스들은 홈 네트워크 내에서 서로 통신할 수도 있다. 사용자 장비 디바이스들은 위에서 설명된 단거리 포인트-투-포인트 통신 방식들을 통해, 홈 네트워크 상에서 제공된 허브(hub) 또는 다른 유사한 디바이스를 통한 간접적인 경로들을 통해, 또는 통신 네트워크(814)를 통해 직접적으로 서로 통신할 수 있다. 단일 홈에서의 다수의 개인들의 각각은 홈 네트워크 상에서 상이한 사용자 장비 디바이스들을 동작시킬 수도 있다. 그 결과, 다양한 미디어 안내 정보 또는 설정들이 상이한 사용자 장비 디바이스들 사이에서 통신되는 것이 바람직할 수도 있다. 예를 들어, 2005년 7월 11일자로 출원된 Ellis 등의 미국 특허 공개 제2005/0251827호에서 더욱 상세하게 설명된 바와 같이, 사용자들이 홈 네트워크 내의 상이한 사용자 장비 디바이스들 상에서 일관된 미디어 안내 애플리케이션 설정들을 유지하는 것이 바람직할 수도 있다. 홈 네트워크에서의 상이한 타입들의 사용자 장비 디바이스들은 또한, 컨텐츠를 송신하기 위하여 서로 통신할 수도 있다. 예를 들어, 사용자는 컨텐츠를 사용자 컴퓨터 장비로부터 휴대용 비디오 플레이어 또는 휴대용 음악 플레이어로 송신할 수도 있다.
제 2 접근법에서, 사용자들은 다수의 타입들의 사용자 장비를 가질 수도 있고, 이 다수의 타입들의 사용자 장비에 의해, 그들은 컨텐츠를 액세스하고 미디어 안내를 획득한다. 예를 들어, 일부 사용자들은 댁내(in-home) 및 이동 디바이스들에 의해 액세스되는 홈 네트워크(home network)들을 가질 수도 있다. 사용자들은 원격 디바이스 상에서 구현된 미디어 안내 애플리케이션을 통해 댁내 디바이스들을 제어할 수도 있다. 예를 들어, 사용자들은 그 사무실에서의 개인용 컴퓨터, 또는 PDA 또는 웹-가능형 이동 전화와 같은 이동 디바이스를 통해 웹사이트 상의 온라인 미디어 안내 애플리케이션을 액세스할 수도 있다. 사용자는 사용자의 댁내 장비를 제어하기 위하여 온라인 안내 애플리케이션 상의 다양한 설정들(예컨대, 레코딩들, 리마인더(reminder)들, 또는 다른 설정들)을 설정할 수도 있다. 온라인 안내는 직접적으로, 또는 사용자의 댁내 장비 상의 미디어 안내 애플리케이션과 통신함으로써, 사용자의 장비를 제어할 수도 있다. 사용자 장비 디바이스들이 서로로부터 원격인 위치들에 있는, 통신하는 사용자 장비 디바이스들을 위한 다양한 시스템들 및 방법들은 예를 들어, 이로써 그 전체적으로 본원에서 참조로 편입되는, 2011년 10월 25일자로 발행된 Ellis 등의 미국 특허 제8,046,801호에서 논의되어 있다.
제 3 접근법에서, 홈의 내부 및 외부의 사용자 장비 디바이스들의 사용자들은 컨텐츠 소스(816)와 직접적으로 통신하여 컨텐츠를 액세스하기 위하여 그 미디어 안내 애플리케이션을 이용할 수 있다. 구체적으로, 홈 내에서, 사용자 텔레비전 장비(802) 및 사용자 컴퓨터 장비(804)의 사용자들은 바람직한 컨텐츠 사이에서 내비게이팅하고 바람직한 컨텐츠를 위치시키기 위하여 미디어 안내 애플리케이션을 액세스할 수도 있다. 사용자들은 또한, 바람직한 컨텐츠 사이에서 내비게이팅하고 바람직한 컨텐츠를 위치시키기 위하여 무선 사용자 통신 디바이스들(806)을 이용하여 홈의 외부에서 미디어 안내 애플리케이션을 액세스할 수도 있다.
제 4 접근법에서, 사용자 장비 디바이스들은 클라우드 서비스들을 액세스하기 위하여 클라우드 컴퓨팅 환경에서 동작할 수도 있다. 클라우드 컴퓨팅 환경에서, 컨텐츠 공유, 저장, 또는 분배를 위한 다양한 타입들의 컴퓨팅 서비스들(예컨대, 비디오 공유 사이트들 또는 소셜 네트워킹 사이트들)은 "클라우드(cloud)"로서 지칭된, 네트워크-액세스가능한 컴퓨팅 및 저장 자원들의 집합에 의해 제공된다. 예를 들어, 클라우드는 클라우드-기반 서비스들을 통신 네트워크(814)를 통한 인터넷과 같은 네트워크를 통해 접속된 다양한 타입들의 사용자들 및 디바이스들에 제공하는, 중앙집중식으로 또는 분산된 위치들에서 위치될 수도 있는 서버 컴퓨팅 디바이스들의 집합을 포함할 수 있다. 이 클라우드 자원들은 하나 이상의 컨텐츠 소스들(816) 및 하나 이상의 미디어 안내 데이터 소스들(818)을 포함할 수도 있다. 추가적으로 또는 대안적으로, 원격 컴퓨팅 사이트들은 사용자 텔레비전 장비(802), 사용자 컴퓨터 장비(804), 및 무선 사용자 통신 디바이스(806)와 같은 다른 사용자 장비 디바이스들을 포함할 수도 있다. 예를 들어, 다른 사용자 장비 디바이스들은 비디오 또는 스트리밍된 비디오의 저장된 복사본에 대한 액세스를 제공할 수도 있다. 이러한 실시형태들에서, 사용자 장비 디바이스들은 중앙 서버와 통신하지 않으면서, 피어-투-피어 방식으로 동작할 수도 있다.
클라우드는 사용자 장비 디바이스들을 위하여, 다른 예들 중에서도, 컨텐츠 저장, 컨텐츠 공유, 또는 소셜 네트워킹 서비스들과 같은 서비스들에 대한 액세스 뿐만 아니라, 위에서 설명된 임의의 컨텐츠에 대한 액세스를 제공한다. 서비스들은 클라우드 컴퓨팅 서비스 제공자들을 통해, 또는 온라인 서비스들의 다른 제공자들을 통해 클라우드에서 제공될 수 있다. 예를 들어, 클라우드-기반 서비스들은 컨텐츠 저장 서비스, 컨텐츠 공유 사이트, 소셜 네트워킹 사이트, 또는 사용자-소싱된(user-sourced) 컨텐츠가 접속된 디바이스들 상에서의 다른 사람들에 의한 뷰잉을 위하여 이를 통해 분배되는 다른 서비스들을 포함할 수 있다. 이 클라우드-기반 서비스들은 사용자 장비 디바이스가 컨텐츠를 로컬 방식으로 저장하고 로컬 방식으로-저장된 컨텐츠를 액세스하는 것이 아니라, 컨텐츠를 클라우드에 저장하고 클라우드로부터 컨텐츠를 수신하는 것을 허용할 수도 있다.
사용자는 컨텐츠를 레코딩하기 위하여, 캠코더들, 비디오 모드를 갖는 디지털 카메라들, 오디오 레코더들, 이동 전화들, 및 핸드헬드 컴퓨팅 디바이스들과 같은 다양한 컨텐츠 캡처 디바이스들을 이용할 수도 있다. 사용자는 예를 들어, 컨텐츠 캡처 특징을 가지는 사용자 컴퓨터 장비(804) 또는 무선 사용자 통신 디바이스(806)의 어느 하나로부터 직접적으로, 클라우드 상의 컨텐츠 저장 서비스로 컨텐츠를 업로딩할 수 있다. 대안적으로, 사용자는 먼저, 컨텐츠를 사용자 컴퓨터 장비(804)와 같은 사용자 장비 디바이스로 전송할 수 있다. 컨텐츠를 저장하는 사용자 장비 디바이스는 통신 네트워크(814) 상에서의 데이터 송신 서비스를 이용하여 컨텐츠를 클라우드로 업로딩한다. 일부 실시형태들에서, 사용자 장비 디바이스 자체는 클라우드 자원이고, 다른 사용자 장비 디바이스들은 사용자가 컨텐츠를 그 상에 저장하였던 사용자 장비 디바이스로부터 직접적으로 컨텐츠를 액세스할 수 있다.
클라우드 자원들은 예를 들어, 웹 브라우저, 미디어 안내 애플리케이션, 데스크톱 애플리케이션, 이동 애플리케이션, 및/또는 이것의 액세스 애플리케이션들의 임의의 조합을 이용하여 사용자 장비 디바이스에 의해 액세스될 수도 있다. 사용자 장비 디바이스는 애플리케이션 전달을 위하여 클라우드 컴퓨팅에 의존하는 클라우드 클라이언트일 수도 있거나, 사용자 장비 디바이스는 클라우드 자원들에 대한 액세스를 갖지 않는 일부 기능성을 가질 수도 있다. 예를 들어, 사용자 장비 디바이스 상에서 작동하는 일부 애플리케이션들은 클라우드 애플리케이션들, 즉, 인터넷 상에서 서비스로서 전달된 애플리케이션들일 수도 있는 반면, 다른 애플리케이션들은 사용자 장비 디바이스 상에서 저장될 수도 있고 작동될 수도 있다. 일부 실시형태들에서, 사용자 디바이스는 동시에 다수의 클라우드 자원들로부터 컨텐츠를 수신할 수도 있다. 예를 들어, 사용자 디바이스는 제 2 클라우드 자원으로부터 컨텐츠를 다운로딩하면서, 하나의 클라우드 자원으로부터 오디오를 스트리밍할 수 있다. 또는, 사용자 디바이스는 더 효율적인 다운로딩을 위하여 다수의 클라우드 자원들로부터 컨텐츠를 다운로딩할 수 있다. 일부 실시형태들에서, 사용자 장비 디바이스들은 도 7과 관련하여 설명된 프로세싱 회로부에 의해 수행된 프로세싱 동작들과 같은 동작들을 프로세싱하기 위한 클라우드 자원들을 이용할 수 있다.
본원에서 지칭된 바와 같이, 용어 "~에 응답하여"는 결과로서 개시된다는 것을 지칭한다. 예를 들어, 제 2 액션에 응답하여 수행되는 제 1 액션은 제 1 액션과 제 2 액션 사이의 침입형 단계들을 포함할 수도 있다. 본원에서 지칭된 바와 같이, 용어 "~에 직접적으로 응답하여"는 야기되는 것을 지칭한다. 예를 들어, 제 2 액션에 직접적으로 응답하여 수행되는 제 1 액션은 제 1 액션과 제 2 액션 사이의 침입형 단계들을 포함하지 않을 수도 있다.
도 9는 개시물의 일부 실시형태들에 따른, 미디어 안내 애플리케이션을 이용하여 디스플레이된 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 제어 회로부(예컨대, 제어 회로부(704))를 위한 예시적인 프로세스(900)의 플로우차트이다. 일부 실시형태들에서, 이 알고리즘은 프로세싱 회로부(예컨대, 프로세싱 회로부(706))에 의해 디코딩되고 실행되어야 할 명령어들의 세트로서 비일시적 저장 매체(예컨대, 저장 디바이스(708)) 상으로 인코딩될 수도 있다. 프로세싱 회로부는 결국, 명령어들을 튜닝, 비디오 생성, 인코딩, 디코딩, 암호화, 복호화, 스케일링, 아날로그/디지털 변환 회로부 등과 같은, 제어 회로부(704) 내에 포함된 다른 서브-회로들에 제공할 수도 있다.
대화형 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 미디어 안내 애플리케이션 상에서 제시된 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 프로세스를 초기화하게 할 수도 있다. 단계(910)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 미디어 자산의 오디오 스트림을 분석하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 스포츠 뉴스 해설의 오디오 스트림을 분석할 수도 있고, 그것을 온-스크린 자막 텍스트로 자동적으로 전사할 수도 있다. 미디어 안내 애플리케이션은 그 다음으로, 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date(div plate date에 대한 뉴스에도 불구하고, Tom Brady가 어떻게 수행하는지를 보는 것은 흥미 있을 것이다)"인 것으로 결정하게 할 수도 있다.
단계(920)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트에서의 오류성 용어를 식별하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, "div plate date"가 제 1 텍스트 세그먼트에서의 오류성 용어인 것으로 식별하게 할 수도 있다. 일부 실시형태들에서, 미디어 안내 애플리케이션은 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행함으로써 오류성 용어를 식별할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 위의 문장을, (예컨대, "NCAA div one(NCAA 구획 1)"에서와 같이) 단어 "div"와 그 다음으로 수를 요구하는 문법 규칙에 대하여 비교할 수도 있고, "div plate date"가 문법 규칙과 충돌하기 때문에, "div plate date"가 오류성 용어인 것으로 결정할 수도 있다.
단계(930)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트에 대응하는 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 위의 문장이 오디오 스트림에서 나타났던 시간에 대응하는 미디어 자산으로부터 비디오 프레임을 추출하게 할 수도 있다. 비디오 스트림은 인터뷰를 오버레이하는 배너에서 다음의 문장을 디스플레이하는 약간의 비디오 프레임들을 포함하는 Tom Brady의 뉴스 인터뷰일 수도 있다: "News of the Hour: Patriots quarterback serves NFL suspension". 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 이 비디오 프레임들이 문장 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date"가 뉴스 상에서 공지되는 것과 실질적으로 동일한 시간에 대응하기 때문에, 이 비디오 프레임들을 추출하게 할 수도 있다.
단계(940)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 배너 오버레이를 갖는 비디오 프레임을 분석하게 할 수도 있고, 배너로부터의 문맥적 용어들 "Patriots" 및 "NFL suspenstion"이 오류성 용어 "div plate date"와 연관되는 것으로 결정하게 할 수도 있다.
단계(950)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 문맥적 용어 및 제 1 텍스트 세그먼트의 부분에 기초하여 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 문맥적 용어 "NFL suspension" 및 전사된 문장의 부분 "Tom Brady"에 기초하여 지식 그래프를 액세스하게 할 수도 있고, "Deflategate"를 오류성 용어에 대한 후보 정정으로서 식별하게 할 수도 있다. 일부 실시형태들에서, 지식 그래프는 스토리지(708), 미디어 컨텐츠 소스(816), 또는 미디어 안내 데이터 소스(818)와 같은, 제어 회로부(704)에 의해 액세스가능한 데이터베이스에서 저장될 수도 있다.
단계(960)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트에서의 오류성 용어를 후보 정정로 대체하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트가 "It will be interesting to see how Tom Brady performs despite being in the news for Deflategate"를 이제 판독하도록, 오류성 용어 "div plate date"를 후보 정정 "Deflategate"로 대체하게 할 수도 있다.
도 9의 단계들 또는 설명들은 이 개시물의 임의의 다른 실시형태와 함께 이용될 수도 있다는 것이 고려된다. 추가적으로, 도 9의 알고리즘과 관련하여 설명된 설명들은 이 개시물의 목적들을 증진시키기 위하여 대안적인 순서들로 또는 병렬로 행해질 수도 있다. 예를 들어, 단계(950)에서의 것들과 같은 조건적 명령어문들 및 논리적 평가들은 래그를 감소시키거나 시스템 또는 방법의 속력을 증가시키기 위하여 임의의 순서로 또는 병렬로 또는 동시에 수행될 수도 있다. 추가의 예로서, 일부 실시형태들에서, 변수의 몇몇 인스턴스들은 다수의 논리적 프로세서 스레드들을 이용하여 병렬로 평가될 수도 있거나, 알고리즘은 가지 예측을 편입시킴으로써 개량될 수도 있다. 또한, 도 9의 프로세스는 적절하게 구성된 소프트웨어 및 하드웨어의 조합 상에서 구현될 수도 있다는 것과, 도 7 내지 도 8과 관련하여 논의된 디바이스들 또는 장비의 임의의 것은 프로세스의 하나 이상의 부분들을 구현하기 위하여 이용될 수 있다는 것이 주목되어야 한다.
도 10은 개시물의 일부 실시형태들에 따른, 지식 그래프를 이용하여 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 식별하고 대체하기 위한 제어 회로부(예컨대, 제어 회로부(704))를 위한 예시적인 프로세스(1000)의 플로우차트이다. 일부 실시형태들에서, 이 알고리즘은 프로세싱 회로부(예컨대, 프로세싱 회로부(706))에 의해 디코딩되고 실행되어야 할 명령어들의 세트로서 비일시적 저장 매체(예컨대, 저장 디바이스(708)) 상으로 인코딩될 수도 있다. 프로세싱 회로부는 결국, 명령어들을 튜닝, 비디오 생성, 인코딩, 디코딩, 암호화, 복호화, 스케일링, 아날로그/디지털 변환 회로부 등과 같은, 제어 회로부(704) 내에 포함된 다른 서브-회로들에 제공할 수도 있다.
단계(1002)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 미디어 자산의 오디오 스트림을 분석하게 할 수도 있다.
단계(1004)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 (도 9의 예에서 이용된 바와 같은) 문장 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date", (예컨대, "NCAA div one(NCAA 구획 1)"에서와 같이) 단어 "div"와 그 다음으로 수를 요구하는 문법 규칙에 대하여 비교할 수도 있고, "div plate date"가 문법 규칙과 충돌하기 때문에, "div plate date"가 오류성 용어인 것으로 결정할 수도 있다.
단계(1006)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트가 오류성 용어를 포함하는지를 결정하게 할 수도 있다. 제 1 텍스트 세그먼트가 임의의 오류성 용어를 포함하지 않을 경우, 미디어 안내 애플리케이션은 단계(1002)로 복귀할 것이고, 다음 오디오 스트림을 분석할 것이다. 그러나, 제 1 텍스트 세그먼트가 오류성 용어를 포함할 경우, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 오류성 용어를 정정하는 것을 시도하기 위하여 단게(1008)로 진행하게 할 것이다. 위의 예에서, 미디어 안내 애플리케이션은 문자이 오류성 용어 "div plate date"를 포함하는 것으로 결정할 수도 있고, 그러므로, 단계(1008)로 진행해야 한다.
단계(1008)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트에 대응하는 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 위의 문장이 오디오 스트림에서 나타났던 시간에 대응하는 미디어 자산으로부터 비디오 프레임을 추출하게 할 수도 있다. 비디오 스트림은 인터뷰를 오버레이하는 배너에서 다음의 문장을 디스플레이하는 약간의 비디오 프레임들을 포함하는 Tom Brady의 뉴스 인터뷰일 수도 있다: "News of the Hour: Patriots quarterback serves NFL suspension". 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 이 비디오 프레임들이 문장 "It will be interesting to see how Tom Brady performs despite being in the news for div plate date"가 뉴스 상에서 공지되는 것과 실질적으로 동일한 시간에 대응하기 때문에, 이 비디오 프레임들을 추출하게 할 수도 있다.
단계(1010)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 배너 오버레이를 갖는 비디오 프레임을 분석하게 할 수도 있고, 배너로부터의 문맥적 용어들 "Patriots" 및 "NFL suspenstion"이 오류성 용어 "div plate date"와 연관되는 것으로 결정하게 할 수도 있다.
단계(1012)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트의 부분으로부터 키워드를 추출하게 할 수도 있다. 예를 들어, 오류성 용어 "div plate date"를 포함하지 않는 제 1 텍스트 세그먼트의 부분으로부터, 미디어 안내 애플리케이션은 키워드 "Tom Brady"를 추출할 수도 있다.
단계(1014)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 지식 그래프에서, 문맥적 용어 및 키워드에 대응하는 노드들을 검색하게 할 수도 있다. 위로부터의 예들을 계속하면, 미디어 안내 애플리케이션은 지식 그래프에서, 문맥적 용어 "NFL suspension" 및 키워드 "Tom Brady"에 대응하는 노드들을 검색할 수도 있다.
단계(1016)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 문맥적 용어 및 키워드와 연관된 속성들에 대하여 노드들을 분석하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "Tom Brady" 노드를 분석할 수도 있고, 생일("Aug. 3, 1977"), 키("6 ft. 4 in."), 40-야드 질주 시간(40-yard Dash Time)("5.28s"), 및 팀("New England Patriots")과 같은 속성들을 발견할 수도 있고, 이름들("Odell Beckham Jr.", "Tom Brady", "Josh Brown"...), 길이들(" 1", "4", "1"...), 및 이유들("Collision(충격)", "Deflategate(수축게이트)", "Personal Conduct(개인적 품행)"...)을 포함하는 "NFL suspension" 노드를 분석할 수도 있다. 일부 실시형태들에서, 속성들은 각각 지식 그래프에서의 하나 이상의 별개의 노드들에 대응할 수도 있다. 예를 들어, "Personal Conduct" 및 "Deflategate"는 각각 노드 뿐만 아니라, 또 다른 노드에 대한 속성일 수도 있다.
단계(1018)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 지식 그래프로부터의 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하게 할 수도 있다. 단계(1020)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 결정하는 것에 기초하여 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하게 할 수도 있다. 예를 들어, 위의 예들에서 오류성 용어에 대한 후보 정정 "Deflategate"을 식별하기 위하여, 미디어 안내 애플리케이션은 먼저, "Quarterback", "Detroit Game", 및 "Deflategate"와 같은 복수의 잠재적인 정정들을 결정할 수도 수도 있고, 각각의 잠재적인 정정에 가중치를 배정할 수도 있다.
단계(1022)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 최고 가중치와 연관되는 잠재적인 정정을 후보 정정으로서 식별하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 "Deflategate"가 최고 가중치를 배정받았기 때문에, 3 개의 잠재적인 정정들 중에서 "Deflategate"를 후보 정정으로서 식별할 수도 있다.
단계(1024)에서, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트에서의 오류성 용어를 후보 정정로 대체하게 할 수도 있다. 예를 들어, 미디어 안내 애플리케이션은 제어 회로부(704)로 하여금, 제 1 텍스트 세그먼트가 "It will be interesting to see how Tom Brady performs despite being in the news for Deflategate"를 이제 판독하도록, 오류성 용어 "div plate date"를 후보 정정 "Deflategate"로 대체하게 할 수도 있다.
위에서 논의된 프로세스들은 제한적인 것이 아니라, 예시적인 것으로 의도된 것이다. 당해 분야의 당업자는 본원에서 논의된 프로세스들의 단계들이 생략될 수도 있고, 수정될 수도 있고, 조합될 수도 있고, 및/또는 재배열될 수도 있고, 임의의 추가적인 단계들은 발명의 범위로부터 이탈하지 않으면서 수행될 수도 있다는 것을 인식할 것이다. 더 일반적으로, 상기 개시물은 제한적인 것이 아니라 예시적인 것으로 의도된다. 오직 뒤따르는 청구항들은 본 발명이 포함하는 것에 대한 경계들을 설정하도록 의도된다. 또한, 임의의 하나의 실시형태에서 설명된 특징들 및 제한들은 본원에서의 임의의 다른 실시형태에 적용될 수도 있고, 하나의 실시형태에 관련되는 플로우차트들 또는 예들은 적당한 방식으로 임의의 다른 실시형태와 조합될 수도 있거나, 상이한 순서들로 행해질 수도 있거나, 병렬로 행해질 수도 있다는 것이 주목되어야 한다. 추가적으로, 본원에서 설명된 시스템들 및 방법들은 실시간으로 수행될 수도 있다. 위에서 설명된 시스템들 및/또는 방법들은 다른 시스템들 및/또는 방법들에 적용될 수도 있거나, 다른 시스템들 및/또는 방법들에 따라 이용될 수도 있다는 것이 또한 주목되어야 한다.

Claims (51)

  1. 미디어 자산(media asset)에 대한 온-스크린 자막 텍스트(on-screen caption text)에서의 오류성 용어(erroneous term)를 정정하기 위한 방법으로서,
    상기 온-스크린 자막 텍스트의 텍스트 세그먼트에서 상기 오류성 용어를 식별하는 단계;
    상기 텍스트 세그먼트에 대응하는 상기 미디어 자산의 하나 이상의 비디오 프레임들을 식별하는 단계;
    상기 하나 이상의 비디오 프레임들로부터 상기 오류성 용어에 관련된 문맥적 용어(contextual term)를 식별하는 단계;
    상기 문맥적 용어 및 상기 텍스트 세그먼트의 부분에 기초하여 후보 정정을 식별하기 위하여 지식 그래프(knowledge graph)를 액세스하는 단계; 및
    상기 오류성 용어를 상기 후보 정정으로 대체하는 단계
    를 포함하는, 미디어 자산에 대한 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  2. 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법으로서,
    상기 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 상기 미디어 자산의 오디오 스트림(audio stream)을 분석하는 단계;
    상기 온-스크린 자막 텍스트의 상기 제1 텍스트 세그먼트에서 오류성 용어를 식별하는 단계;
    상기 제 1 텍스트 세그먼트에 대응하는 상기 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하는 단계;
    상기 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 상기 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하는 단계;
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 부분에 기초하여 상기 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하는 단계; 및
    폐쇄형 자막화 텍스트(closed captioning text)의 상기 제 1 텍스트 세그먼트에서의 상기 오류성 용어를 상기 부호 정정으로 대체하는 단계
    를 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  3. 제 2 항에 있어서,
    상기 제 1 텍스트 세그먼트에서 상기 오류성 용어를 식별하는 단계는 상기 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 상기 제 1 텍스트 세그먼트에 대한 자연어 프로세싱(natural language processing)을 수행하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  4. 제 2 항에 있어서,
    상기 온-스크린 자막 텍스트의 상기 제 1 텍스트 세그먼트는 시간-스탬핑(time-stamp)되고, 상기 제 1 비디오 프레임은 상기 시간-스탬핑된 제 1 텍스트 세그먼트에서의 상기 오류성 용어의 포지션(position)에 대응하는 상기 미디어 자산의 포지션에서 추출되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  5. 제 2 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는,
    상기 제 1 텍스트 세그먼트의 상기 부분으로부터 키워드(keyword)를 추출하는 단계;
    상기 지식 그래프에서, 상기 문맥적 용어 및 상기 키워드에 대응하는 상기 노드들을 검색하는 단계;
    상기 문맥적 용어 및 상기 키워드와 연관된 속성(property)들에 대하여 상기 노드들을 분석하는 단계; 및
    상기 문맥적 용어 및 상기 키워드와 연관된 상기 속성들에 기초하여 적어도 하나의 다른 노드 - 상기 적어도 하나의 다른 노드는 상기 후보 정정에 대응함 - 를 결정하는 단계
    를 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  6. 제 2 항에 있어서,
    상기 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 상기 오류성 용어를 식별하는 단계;
    상기 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 상기 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석하는 단계;
    상기 제 1 문맥적 용어, 상기 제 2 문맥적 용어, 상기 제 1 텍스트 세그먼트의 상기 부분, 및 상기 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계; 및
    상기 온-스크린 자막 텍스트의 상기 제 2 텍스트 세그먼트에서의 상기 오류성 용어를 상기 업데이팅된 후보 정정으로 대체하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  7. 제 6 항에 있어서,
    상기 제 1 텍스트 세그먼트에서의 상기 후보 정정을 상기 업데이팅된 후보 정정으로 대체하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  8. 제 2 항에 있어서,
    상기 오류성 용어에 대한 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는,
    상기 지식 그래프로부터의 상기 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하는 단계;
    상기 결정하는 것에 기초하여 상기 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하는 단계; 및
    최고 가중치와 연관된 잠재적인 정정을 상기 후보 정정으로서 식별하는 단계
    를 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  9. 제 8 항에 있어서,
    상기 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정은 더 높은 가중치를 배정받는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  10. 제 8 항에 있어서,
    표음적 알고리즘(phonetic algorithm)에 기초하여 잠재적인 후보 정정과 상기 오류성 용어 사이의 표음적 유사성 점수를 결정하는 단계; 및
    더 높은 표음적 유사성 점수를 갖는 상기 잠재적인 후보 정정에 더 높은 가중치를 배정하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  11. 제 2 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는 상기 지식 그래프의 현존하는 노드들을 업데이팅하는 단계를 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  12. 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템으로서,
    지식 그래프를 저장하는 메모리; 및
    제어 회로부
    를 포함하고,
    상기 제어 회로부는,
    상기 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 상기 미디어 자산의 오디오 스트림을 분석하고;
    상기 온-스크린 자막 텍스트의 상기 제1 텍스트 세그먼트에서 오류성 용어를 식별하고;
    상기 제 1 텍스트 세그먼트에 대응하는 상기 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하고;
    상기 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 상기 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하고;
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 부분에 기초하여 상기 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하고;
    폐쇄형 자막화 텍스트의 상기 제 1 텍스트 세그먼트에서의 상기 오류성 용어를 상기 부호 정정으로 대체하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  13. 제 12 항에 있어서,
    상기 제어 회로부는 또한, 상기 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 상기 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행함으써, 상기 제 1 텍스트 세그먼트에서 상기 오류성 용어를 식별하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  14. 제 12 항에 있어서,
    상기 온-스크린 자막 텍스트의 상기 제 1 텍스트 세그먼트는 시간-스탬핑되고, 상기 제 1 비디오 프레임은 상기 시간-스탬핑된 제 1 텍스트 세그먼트에서의 상기 오류성 용어의 포지션에 대응하는 상기 미디어 자산의 포지션에서 추출되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  15. 제 12 항에 있어서,
    상기 제어 회로부는 또한,
    상기 제 1 텍스트 세그먼트의 상기 부분으로부터 키워드를 추출하고;
    상기 지식 그래프에서, 상기 문맥적 용어 및 상기 키워드에 대응하는 상기 노드들을 검색하고;
    상기 문맥적 용어 및 상기 키워드와 연관된 속성들에 대하여 상기 노드들을 분석하고;
    상기 문맥적 용어 및 상기 키워드와 연관된 상기 속성들에 기초하여 적어도 하나의 다른 노드 - 상기 적어도 하나의 다른 노드는 상기 후보 정정에 대응함 - 를 결정함으로써,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  16. 제 12 항에 있어서,
    상기 제어 회로부는 또한,
    상기 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 상기 오류성 용어를 식별하고;
    상기 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 상기 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석하고;
    상기 제 1 문맥적 용어, 상기 제 2 문맥적 용어, 상기 제 1 텍스트 세그먼트의 상기 부분, 및 상기 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하고;
    상기 온-스크린 자막 텍스트의 상기 제 2 텍스트 세그먼트에서의 상기 오류성 용어를 상기 업데이팅된 후보 정정으로 대체하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  17. 제 16 항에 있어서,
    상기 제어 회로부는 또한, 상기 제 1 텍스트 세그먼트에서의 상기 후보 정정을 상기 업데이팅된 후보 정정으로 대체하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  18. 제 12 항에 있어서,
    상기 제어 회로부는 또한,
    상기 지식 그래프로부터의 상기 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하고;
    상기 결정하는 것에 기초하여 상기 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하고;
    최고 가중치와 연관된 잠재적인 정정을 상기 후보 정정으로서 식별함으로써,
    상기 오류성 용어에 대한 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  19. 제 18 항에 있어서,
    상기 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정은 더 높은 가중치를 배정받는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  20. 제 18 항에 있어서,
    상기 제어 회로부는 또한,
    표음적 알고리즘에 기초하여 잠재적인 후보 정정과 상기 오류성 용어 사이의 표음적 유사성 점수를 결정하고;
    더 높은 표음적 유사성 점수를 갖는 상기 잠재적인 후보 정정에 더 높은 가중치를 배정하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  21. 제 12 항에 있어서,
    상기 제어 회로부는 또한, 상기 지식 그래프의 현존하는 노드들을 업데이팅함으로써 상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하도록 구성되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 시스템.
  22. 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치로서,
    상기 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 상기 미디어 자산의 오디오 스트림을 분석하기 위한 수단;
    상기 온-스크린 자막 텍스트의 상기 제1 텍스트 세그먼트에서 오류성 용어를 식별하기 위한 수단;
    상기 제 1 텍스트 세그먼트에 대응하는 상기 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하기 위한 수단;
    상기 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 상기 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하기 위한 수단;
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 부분에 기초하여 상기 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하기 위한 수단; 및
    폐쇄형 자막화 텍스트의 상기 제 1 텍스트 세그먼트에서의 상기 오류성 용어를 상기 부호 정정으로 대체하기 위한 수단
    을 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  23. 제 22 항에 있어서,
    상기 제 1 텍스트 세그먼트에서 상기 오류성 용어를 식별하기 위한 수단은 상기 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 상기 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행하기 위한 수단을 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  24. 제 22 항에 있어서,
    상기 온-스크린 자막 텍스트의 상기 제 1 텍스트 세그먼트는 시간-스탬핑되고, 상기 제 1 비디오 프레임은 상기 시간-스탬핑된 제 1 텍스트 세그먼트에서의 상기 오류성 용어의 포지션에 대응하는 상기 미디어 자산의 포지션에서 추출되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  25. 제 22 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 수단은,
    상기 제 1 텍스트 세그먼트의 상기 부분으로부터 키워드를 추출하기 위한 수단;
    상기 지식 그래프에서, 상기 문맥적 용어 및 상기 키워드에 대응하는 상기 노드들을 검색하기 위한 수단;
    상기 문맥적 용어 및 상기 키워드와 연관된 속성들에 대하여 상기 노드들을 분석하기 위한 수단; 및
    상기 문맥적 용어 및 상기 키워드와 연관된 상기 속성들에 기초하여 적어도 하나의 다른 노드 - 상기 적어도 하나의 다른 노드는 상기 후보 정정에 대응함 - 를 결정하기 위한 수단
    을 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  26. 제 22 항에 있어서,
    상기 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 상기 오류성 용어를 식별하기 위한 수단;
    상기 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 상기 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석하기 위한 수단;
    상기 제 1 문맥적 용어, 상기 제 2 문맥적 용어, 상기 제 1 텍스트 세그먼트의 상기 부분, 및 상기 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 수단; 및
    상기 온-스크린 자막 텍스트의 상기 제 2 텍스트 세그먼트에서의 상기 오류성 용어를 상기 업데이팅된 후보 정정으로 대체하기 위한 수단
    을 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  27. 제 26 항에 있어서,
    상기 제 1 텍스트 세그먼트에서의 상기 후보 정정을 상기 업데이팅된 후보 정정으로 대체하기 위한 수단
    을 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  28. 제 22 항에 있어서,
    상기 오류성 용어에 대한 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 수단은,
    상기 지식 그래프로부터의 상기 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하기 위한 수단;
    상기 결정하는 것에 기초하여 상기 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하기 위한 수단; 및
    최고 가중치와 연관된 잠재적인 정정을 상기 후보 정정으로서 식별하기 위한 수단
    을 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  29. 제 28 항에 있어서,
    상기 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정은 더 높은 가중치를 배정받는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  30. 제 28 항에 있어서,
    표음적 알고리즘에 기초하여 잠재적인 후보 정정과 상기 오류성 용어 사이의 표음적 유사성 점수를 결정하기 위한 수단; 및
    더 높은 표음적 유사성 점수를 갖는 상기 잠재적인 후보 정정에 더 높은 가중치를 배정하기 위한 수단
    을 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  31. 제 22 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 수단은 상기 지식 그래프의 현존하는 노드들을 업데이팅하기 위한 수단
    을 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 장치.
  32. 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위하여 그 상에서 인코딩된 명령어들을 갖는 메모리를 포함하는 비일시적 머신-판독가능한 매체로서, 상기 명령어들은,
    상기 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 상기 미디어 자산의 오디오 스트림을 분석하기 위한 명령어들;
    상기 온-스크린 자막 텍스트의 상기 제1 텍스트 세그먼트에서 오류성 용어를 식별하기 위한 명령어들;
    상기 제 1 텍스트 세그먼트에 대응하는 상기 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하기 위한 명령어들;
    상기 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 상기 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하기 위한 명령어들;
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 부분에 기초하여 상기 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하기 위한 명령어들; 및
    폐쇄형 자막화 텍스트의 상기 제 1 텍스트 세그먼트에서의 상기 오류성 용어를 상기 부호 정정으로 대체하기 위한 명령어들을 포함하는 것인, 비일시적 머신-판독가능한 매체.
  33. 제 32 항에 있어서,
    상기 제 1 텍스트 세그먼트에서 상기 오류성 용어를 식별하기 위한 명령어들은 상기 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 상기 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행하기 위한 명령어들을 더 포함하는 것인, 비일시적 머신-판독가능한 매체.
  34. 제 32 항에 있어서,
    상기 온-스크린 자막 텍스트의 상기 제 1 텍스트 세그먼트는 시간-스탬핑되고, 상기 제 1 비디오 프레임은 상기 시간-스탬핑된 제 1 텍스트 세그먼트에서의 상기 오류성 용어의 포지션에 대응하는 상기 미디어 자산의 포지션에서 추출되는 것인, 비일시적 머신-판독가능한 매체.
  35. 제 32 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 명령어들은,
    상기 제 1 텍스트 세그먼트의 상기 부분으로부터 키워드를 추출하기 위한 명령어들;
    상기 지식 그래프에서, 상기 문맥적 용어 및 상기 키워드에 대응하는 상기 노드들을 검색하기 위한 명령어들;
    상기 문맥적 용어 및 상기 키워드와 연관된 속성들에 대하여 상기 노드들을 분석하기 위한 명령어들; 및
    상기 문맥적 용어 및 상기 키워드와 연관된 상기 속성들에 기초하여 적어도 하나의 다른 노드 - 상기 적어도 하나의 다른 노드는 상기 후보 정정에 대응함 - 를 결정하기 위한 명령어들
    을 더 포함하는 것인, 비일시적 머신-판독가능한 매체.
  36. 제 32 항에 있어서,
    상기 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 상기 오류성 용어를 식별하기 위한 명령어들;
    상기 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 상기 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석하기 위한 명령어들;
    상기 제 1 문맥적 용어, 상기 제 2 문맥적 용어, 상기 제 1 텍스트 세그먼트의 상기 부분, 및 상기 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 명령어들; 및
    상기 온-스크린 자막 텍스트의 상기 제 2 텍스트 세그먼트에서의 상기 오류성 용어를 상기 업데이팅된 후보 정정으로 대체하기 위한 명령어들
    을 더 포함하는, 비일시적 머신-판독가능한 매체.
  37. 제 36 항에 있어서,
    상기 제 1 텍스트 세그먼트에서의 상기 후보 정정을 상기 업데이팅된 후보 정정으로 대체하기 위한 명령어들
    을 더 포함하는, 비일시적 머신-판독가능한 매체.
  38. 제 32 항에 있어서,
    상기 오류성 용어에 대한 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 명령어들은,
    상기 지식 그래프로부터의 상기 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하기 위한 명령어들;
    상기 결정하는 것에 기초하여 상기 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하기 위한 명령어들; 및
    최고 가중치와 연관된 잠재적인 정정을 상기 후보 정정으로서 식별하기 위한 명령어들
    을 더 포함하는 것인, 비일시적 머신-판독가능한 매체.
  39. 제 38 항에 있어서,
    상기 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정은 더 높은 가중치를 배정받는 것인, 비일시적 머신-판독가능한 매체.
  40. 제 38 항에 있어서,
    표음적 알고리즘에 기초하여 잠재적인 후보 정정과 상기 오류성 용어 사이의 표음적 유사성 점수를 결정하기 위한 명령어들; 및
    더 높은 표음적 유사성 점수를 갖는 상기 잠재적인 후보 정정에 더 높은 가중치를 배정하기 위한 명령어들
    을 더 포함하는, 비일시적 머신-판독가능한 매체.
  41. 제 32 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하기 위한 명령어들은 상기 지식 그래프의 현존하는 노드들을 업데이팅하기 위한 명령어들
    을 더 포함하는, 비일시적 머신-판독가능한 매체.
  42. 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법으로서,
    상기 온-스크린 자막 텍스트의 제 1 텍스트 세그먼트를 결정하기 위하여 상기 미디어 자산의 오디오 스트림을 분석하는 단계;
    상기 온-스크린 자막 텍스트의 상기 제1 텍스트 세그먼트에서 오류성 용어를 식별하는 단계;
    상기 제 1 텍스트 세그먼트에 대응하는 상기 미디어 자산의 비디오 스트림으로부터 하나 이상의 비디오 프레임들을 추출하는 단계;
    상기 오류성 용어와 연관된 문맥적 용어를 결정하기 위하여 상기 하나 이상의 비디오 프레임들의 제 1 비디오 프레임을 분석하는 단계;
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 부분에 기초하여 상기 오류성 용어에 대한 후보 정정을 식별하기 위하여 지식 그래프를 액세스하는 단계; 및
    폐쇄형 자막화 텍스트의 상기 제 1 텍스트 세그먼트에서의 상기 오류성 용어를 상기 부호 정정으로 대체하는 단계
    를 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  43. 제 42 항에 있어서,
    상기 제 1 텍스트 세그먼트에서 상기 오류성 용어를 식별하는 단계는 상기 제 1 텍스트 세그먼트를 복수의 문법 규칙들에 대하여 비교하기 위하여 상기 제 1 텍스트 세그먼트에 대한 자연어 프로세싱을 수행하는 단계를 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  44. 제 42 항 및 제 43 항 중 어느 한 항에 있어서,
    상기 온-스크린 자막 텍스트의 상기 제 1 텍스트 세그먼트는 시간-스탬핑되고, 상기 제 1 비디오 프레임은 상기 시간-스탬핑된 제 1 텍스트 세그먼트에서의 상기 오류성 용어의 포지션에 대응하는 상기 미디어 자산의 포지션에서 추출되는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  45. 제 42 항 내지 제 44 항 중 어느 한 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는,
    상기 제 1 텍스트 세그먼트의 상기 부분으로부터 키워드(keyword)를 추출하는 단계;
    상기 지식 그래프에서, 상기 문맥적 용어 및 상기 키워드에 대응하는 상기 노드들을 검색하는 단계;
    상기 문맥적 용어 및 상기 키워드와 연관된 속성들에 대하여 상기 노드들을 분석하는 단계; 및
    상기 문맥적 용어 및 상기 키워드와 연관된 상기 속성들에 기초하여 적어도 하나의 다른 노드 - 상기 적어도 하나의 다른 노드는 상기 후보 정정에 대응함 - 를 결정하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  46. 제 42 항 내지 제 45 항 중 어느 한 항에 있어서,
    상기 온-스크린 자막 텍스트의 제 2 텍스트 세그먼트에서 상기 오류성 용어를 식별하는 단계;
    상기 오류성 용어와 연관된 제 2 문맥적 용어를 결정하기 위하여 상기 제 2 텍스트 세그먼트에 대응하는 제 2 비디오 프레임을 분석하는 단계;
    상기 제 1 문맥적 용어, 상기 제 2 문맥적 용어, 상기 제 1 텍스트 세그먼트의 상기 부분, 및 상기 제 2 텍스트 세그먼트의 부분에 기초하여 업데이팅된 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계; 및
    상기 온-스크린 자막 텍스트의 상기 제 2 텍스트 세그먼트에서의 상기 오류성 용어를 상기 업데이팅된 후보 정정으로 대체하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  47. 제 46 항에 있어서,
    상기 제 1 텍스트 세그먼트에서의 상기 후보 정정을 상기 업데이팅된 후보 정정으로 대체하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  48. 제 42 항 내지 제 47 항 중 어느 한 항에 있어서,
    상기 오류성 용어에 대한 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는,
    상기 지식 그래프로부터의 상기 오류성 용어에 대한 복수의 잠재적인 정정들을 결정하는 단계;
    상기 결정하는 것에 기초하여 상기 복수의 잠재적인 정정들의 각각의 잠재적인 정정에 가중치를 배정하는 단계; 및
    최고 가중치와 연관된 잠재적인 정정을 상기 후보 정정으로서 식별하는 단계
    를 더 포함하는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  49. 제 48 항에 있어서,
    상기 복수의 잠재적인 정정들의 더 최근의 잠재적인 정정은 더 높은 가중치를 배정받는 것인, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  50. 제 48 항에 있어서,
    표음적 알고리즘에 기초하여 잠재적인 후보 정정과 상기 오류성 용어 사이의 표음적 유사성 점수를 결정하는 단계; 및
    더 높은 표음적 유사성 점수를 갖는 상기 잠재적인 후보 정정에 더 높은 가중치를 배정하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
  51. 제 42 항 내지 제 50 항 중 어느 한 항에 있어서,
    상기 문맥적 용어 및 상기 제 1 텍스트 세그먼트의 상기 부분에 기초하여 상기 후보 정정을 식별하기 위하여 상기 지식 그래프를 액세스하는 단계는 상기 지식 그래프의 현존하는 노드들을 업데이팅하는 단계
    를 더 포함하는, 미디어 자산의 온-스크린 자막 텍스트에서의 오류성 용어를 정정하기 위한 방법.
KR1020197011962A 2016-09-30 2016-09-30 자막 텍스트에서의 에러들을 정정하기 위한 시스템들 및 방법들 KR102612355B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2016/054689 WO2018063293A1 (en) 2016-09-30 2016-09-30 Systems and methods for correcting errors in caption text

Publications (2)

Publication Number Publication Date
KR20190055204A true KR20190055204A (ko) 2019-05-22
KR102612355B1 KR102612355B1 (ko) 2023-12-08

Family

ID=57137291

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197011962A KR102612355B1 (ko) 2016-09-30 2016-09-30 자막 텍스트에서의 에러들을 정정하기 위한 시스템들 및 방법들

Country Status (10)

Country Link
US (3) US10834439B2 (ko)
EP (1) EP3520427A1 (ko)
JP (1) JP6936318B2 (ko)
KR (1) KR102612355B1 (ko)
CN (1) CN110235449A (ko)
AU (1) AU2016424629A1 (ko)
BR (1) BR112019006118A2 (ko)
CA (1) CA3038797A1 (ko)
MX (1) MX2019003637A (ko)
WO (1) WO2018063293A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3520427A1 (en) 2016-09-30 2019-08-07 Rovi Guides, Inc. Systems and methods for correcting errors in caption text
JP7210938B2 (ja) * 2018-08-29 2023-01-24 富士通株式会社 テキスト生成装置、テキスト生成プログラムおよびテキスト生成方法
WO2020049622A1 (ja) * 2018-09-03 2020-03-12 日本電気株式会社 情報処理装置、分析システム、分析方法及び分析プログラムが格納された非一時的なコンピュータ可読媒体
KR102345625B1 (ko) 2019-02-01 2021-12-31 삼성전자주식회사 자막 생성 방법 및 이를 수행하는 장치
US10991370B2 (en) 2019-04-16 2021-04-27 International Business Machines Corporation Speech to text conversion engine for non-standard speech
US11328712B2 (en) 2019-08-02 2022-05-10 International Business Machines Corporation Domain specific correction of output from automatic speech recognition
US11093755B2 (en) * 2019-11-19 2021-08-17 International Business Machines Corporation Video segmentation based on weighted knowledge graph
US11429876B2 (en) * 2020-03-10 2022-08-30 International Business Machines Corporation Infusing knowledge into natural language processing tasks using graph structures
CN111787363B (zh) * 2020-06-24 2021-08-24 腾讯科技(深圳)有限公司 一种多媒体数据处理方法、装置、设备及可读存储介质
CN111897535A (zh) * 2020-07-30 2020-11-06 平安科技(深圳)有限公司 语法纠错方法、装置、计算机系统及可读存储介质
CN112738640B (zh) * 2020-12-28 2022-08-19 出门问问(武汉)信息科技有限公司 一种视频流的字幕的确定方法、装置及可读存储介质
CN113722513B (zh) * 2021-09-06 2022-12-20 抖音视界有限公司 多媒体数据的处理方法及设备
US11778280B1 (en) 2022-05-17 2023-10-03 Microsoft Technology Licensing, Llc Geolocation-specific subtitle generation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070118374A1 (en) * 2005-11-23 2007-05-24 Wise Gerald B Method for generating closed captions
US20070118357A1 (en) * 2005-11-21 2007-05-24 Kas Kasravi Word recognition using ontologies
US20090185074A1 (en) * 2008-01-19 2009-07-23 Robert Streijl Methods, systems, and products for automated correction of closed captioning data

Family Cites Families (30)

* Cited by examiner, † Cited by third party
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
US5493677A (en) * 1994-06-08 1996-02-20 Systems Research & Applications Corporation Generation, archiving, and retrieval of digital images with evoked suggestion-set captions and natural language interface
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 联合视频制品公司 交互式电视节目导视系统及其方法
EP1986425B2 (en) 1998-07-17 2019-01-30 Rovi Guides, Inc. Interactive television program guide system having multiple devices within a household
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
US7165098B1 (en) 1998-11-10 2007-01-16 United Video Properties, Inc. On-line schedule system with personalization features
US6473778B1 (en) * 1998-12-24 2002-10-29 At&T Corporation Generating hypermedia documents from transcriptions of television programs using parallel text alignment
AU2002250350B2 (en) 2001-02-21 2007-12-20 Rovi Guides, Inc. Systems and methods for interactive program guides with personal video recording features
EP1848192A4 (en) * 2005-02-08 2012-10-03 Nippon Telegraph & Telephone END DEVICE, SYSTEM, METHOD AND PROGRAM FOR INFORMATION COMMUNICATION AND RECORDING MEDIUM WHICH RECORDED THE PROGRAM
CN100536532C (zh) * 2005-05-23 2009-09-02 北京大学 自动加配字幕的方法和系统
US20070118364A1 (en) * 2005-11-23 2007-05-24 Wise Gerald B System for generating closed captions
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
US7296218B2 (en) * 2006-02-08 2007-11-13 Dittrich William A Instant note capture/presentation apparatus, system and method
JP4158937B2 (ja) * 2006-03-24 2008-10-01 インターナショナル・ビジネス・マシーンズ・コーポレーション 字幕修正装置
JP4734155B2 (ja) * 2006-03-24 2011-07-27 株式会社東芝 音声認識装置、音声認識方法および音声認識プログラム
US9049477B2 (en) * 2008-11-13 2015-06-02 At&T Intellectual Property I, Lp Apparatus and method for managing media content
US8281231B2 (en) * 2009-09-11 2012-10-02 Digitalsmiths, Inc. Timeline alignment for closed-caption text using speech recognition transcripts
US8307396B2 (en) * 2010-06-28 2012-11-06 At&T Intellectual Property I, L.P. Systems and methods for producing processed media content
US9262397B2 (en) * 2010-10-08 2016-02-16 Microsoft Technology Licensing, Llc General purpose correction of grammatical and word usage errors
US10031968B2 (en) * 2012-10-11 2018-07-24 Veveo, Inc. Method for adaptive conversation state management with filtering operators applied dynamically as part of a conversational interface
US20160035392A1 (en) 2012-11-22 2016-02-04 Didja, Inc. Systems and methods for clipping video segments
KR102129536B1 (ko) * 2013-08-06 2020-07-03 삼성전자주식회사 모바일 단말기 및 그의 제어 방법
US9189742B2 (en) * 2013-11-20 2015-11-17 Justin London Adaptive virtual intelligent agent
CA2938064A1 (en) * 2014-01-28 2015-08-06 Somol Zorzin Gmbh Method for automatically detecting meaning and measuring the univocality of text
US20150242386A1 (en) * 2014-02-26 2015-08-27 Google Inc. Using language models to correct morphological errors in text
US9830321B2 (en) * 2014-09-30 2017-11-28 Rovi Guides, Inc. Systems and methods for searching for a media asset
US9626001B2 (en) * 2014-11-13 2017-04-18 International Business Machines Corporation Speech recognition candidate selection based on non-acoustic input
KR102380833B1 (ko) * 2014-12-02 2022-03-31 삼성전자주식회사 음성 인식 방법 및 음성 인식 장치
EP3520427A1 (en) 2016-09-30 2019-08-07 Rovi Guides, Inc. Systems and methods for correcting errors in caption text

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070118357A1 (en) * 2005-11-21 2007-05-24 Kas Kasravi Word recognition using ontologies
US20070118374A1 (en) * 2005-11-23 2007-05-24 Wise Gerald B Method for generating closed captions
US20090185074A1 (en) * 2008-01-19 2009-07-23 Robert Streijl Methods, systems, and products for automated correction of closed captioning data

Also Published As

Publication number Publication date
US20190215545A1 (en) 2019-07-11
US20240089516A1 (en) 2024-03-14
US11863806B2 (en) 2024-01-02
JP2019537307A (ja) 2019-12-19
CN110235449A (zh) 2019-09-13
AU2016424629A1 (en) 2019-04-11
WO2018063293A1 (en) 2018-04-05
US20210037274A1 (en) 2021-02-04
MX2019003637A (es) 2019-09-26
BR112019006118A2 (pt) 2019-06-18
KR102612355B1 (ko) 2023-12-08
US10834439B2 (en) 2020-11-10
JP6936318B2 (ja) 2021-09-15
CA3038797A1 (en) 2018-04-05
EP3520427A1 (en) 2019-08-07

Similar Documents

Publication Publication Date Title
US11863806B2 (en) Systems and methods for correcting errors in caption text
AU2021245232B2 (en) Systems and methods for determining context switching in conversation
US10198498B2 (en) Methods and systems for updating database tags for media content
US10031967B2 (en) Systems and methods for using a trained model for determining whether a query comprising multiple segments relates to an individual query or several queries
US11687729B2 (en) Systems and methods for training a model to determine whether a query with multiple segments comprises multiple distinct commands or a combined command
US20190073995A1 (en) Systems and methods for identifying content corresponding to a language spoken in a household
US9398343B2 (en) Methods and systems for providing objects that describe media assets
US20160321313A1 (en) Systems and methods for determining whether a descriptive asset needs to be updated
US11762947B2 (en) Methods and systems for training a machine learning system using a reduced data set
US11921780B2 (en) Systems and methods for modifying spelling of a list of names based on a score associated with a first name

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