KR102432310B1 - 그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기 - Google Patents

그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기 Download PDF

Info

Publication number
KR102432310B1
KR102432310B1 KR1020207028823A KR20207028823A KR102432310B1 KR 102432310 B1 KR102432310 B1 KR 102432310B1 KR 1020207028823 A KR1020207028823 A KR 1020207028823A KR 20207028823 A KR20207028823 A KR 20207028823A KR 102432310 B1 KR102432310 B1 KR 102432310B1
Authority
KR
South Korea
Prior art keywords
content
graphical interface
data
computing device
image content
Prior art date
Application number
KR1020207028823A
Other languages
English (en)
Other versions
KR20200128730A (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 KR20200128730A publication Critical patent/KR20200128730A/ko
Application granted granted Critical
Publication of KR102432310B1 publication Critical patent/KR102432310B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/908Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/17Image acquisition using hand-held instruments

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Library & Information Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 개시내용은 콘텐츠 소스의 그래픽 인터페이스를 광학적으로 분석함으로써 콘텐츠 소스로부터 미디어 항목들의 세트를 가져오기 위한 기술을 제공한다. 예시적인 방법은 처리 디바이스에 의해, 콘텐츠 소스로부터의 미디어 항목들의 세트의 가져오기를 개시하는 단계; 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 단계; 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 단계; 이미지 콘텐츠로부터의 데이터에 기초하여 콘텐츠 소스의 미디어 항목을 식별하는 단계; 및 미디어 항목에 대한 참조를 저장하는 단계를 포함한다.

Description

그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기
본 개시내용은 콘텐츠 소스들 사이에서 미디어 항목들의 세트를 가져오는 것의 분야에 관한 것이고, 특히 콘텐츠 소스의 그래픽 인터페이스를 분석함으로써 미디어 항목들의 세트를 가져오는 것의 분야에 관한 것이다.
최신 컴퓨팅 디바이스들은 다수의 상이한 콘텐츠 제공자로부터의 미디어 콘텐츠에 액세스할 수 있다. 콘텐츠 제공자들 각각은 미디어 콘텐츠를 컴퓨팅 디바이스에 공급하고, 컴퓨팅 디바이스가 미디어 콘텐츠를 하나 이상의 사용자에게 제시하는 것을 가능하게 할 수 있다. 콘텐츠 제공자들은, 미디어 콘텐츠를 방송하고 수신자가 디지털 비디오 레코더(digital video recorder)(DVR)를 사용하여 미디어 콘텐츠를 로컬로 저장하는 것을 가능하게 하는 케이블 회사들을 포함할 수 있다. 다른 콘텐츠 제공자들은 온-디맨드로 요청될 수 있고 후속하여 컴퓨팅 디바이스로 다운로드되거나 스트리밍될 수 있는 미디어 콘텐츠를 제공할 수 있다. 사용자는 특정 미디어 콘텐츠를 선택하도록 컴퓨팅 디바이스를 수정할 수 있고, 사용자에 연관된 라이브러리에 이러한 선택들을 저장할 수 있다. 다음으로, 사용자는 라이브러리를 탐색하여 미디어 콘텐츠를 선택하거나 소비할 수 있다.
이하는 본 개시내용의 일부 양태들의 기본적인 이해를 제공하기 위한 본 개시내용의 간략화된 요약이다. 이러한 요약은 본 개시내용의 포괄적인 개요가 아니다. 이는 본 개시내용의 핵심적인 또는 중요한 요소들을 식별하거나, 본 개시내용의 특정 구현들의 임의의 범위 또는 청구항들의 임의의 범위를 설명하도록 의도되지 않는다. 이것의 유일한 목적은 나중에 제시되는 보다 상세한 설명의 서두로서, 본 개시내용의 일부 개념들을 단순화된 형태로 제시하는 것이다.
본 개시내용의 제1 양태에서, 방법이 설명된다. 방법은 처리 디바이스에 의해, 콘텐츠 소스로부터의 미디어 항목들의 세트의 가져오기를 개시하는 단계; 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 단계; 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 단계; 이미지 콘텐츠로부터의 데이터에 기초하여 콘텐츠 소스의 미디어 항목을 식별하는 단계; 및 미디어 항목에 대한 참조를 저장하는 단계를 포함한다.
콘텐츠 소스는 개인 콘텐츠 라이브러리를 포함할 수 있고, 미디어 항목에 대한 참조를 저장하는 단계는 제2 콘텐츠 소스의 개인 콘텐츠 라이브러리를 업데이트하는 단계를 포함할 수 있다.
콘텐츠 소스의 개인 콘텐츠 라이브러리 및 제2 콘텐츠 소스의 개인 콘텐츠 라이브러리 중 하나 또는 둘 다는 디지털 비디오 레코더(DVR), 콘텐츠 스트리밍 애플리케이션, 또는 콘텐츠 저장소 중 적어도 하나에 대응할 수 있다.
그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 단계는 이미지 콘텐츠에 대한 광학 인식을 수행하여 콘텐츠 소스로부터의 미디어 항목들의 세트의 하나 이상의 미디어 항목에 관련된 데이터를 검출하는 단계를 포함할 수 있다.
하나 이상의 미디어 항목에 관련된 데이터는 텍스트 및 그래픽 중 임의의 것을 포함할 수 있다.
이미지 콘텐츠를 캡처하는 단계는 제2 컴퓨팅 디바이스에 의해 제공되는 그래픽 인터페이스의 이미지 콘텐츠를 캡처하기 위해 제1 컴퓨팅 디바이스의 카메라 동작을 개시하는 단계를 포함할 수 있다. 제1 디바이스는 이동 전화기이고, 제2 디바이스는 텔레비전이다.
이미지 콘텐츠를 캡처하는 단계는 그래픽 인터페이스의 이미지 콘텐츠를 캡처하기 위해 컴퓨팅 디바이스의 스크린 캡처 동작을 개시하는 단계를 포함할 수 있으며, 그래픽 인터페이스는 이미지 콘텐츠를 캡처하는 컴퓨팅 디바이스에서 실행되는 콘텐츠 소스의 애플리케이션에 의해 제공될 수 있다.
그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 단계는 스크롤 동작 동안 그래픽 인터페이스의 비디오를 캡처하는 단계를 포함하고, 스크롤 동작은 복수의 미디어 항목의 세부사항들을 노출하고, 수평 스크롤 또는 수직 스크롤 중 적어도 하나를 포함할 수 있다.
임의적으로, 제1 양태의 방법은 그래픽 인터페이스의 복수의 이미지를 분석하는 단계 - 복수의 이미지는 복수의 비디오 프레임 또는 복수의 정지 이미지를 포함함 -; 및 스티칭된 이미지 콘텐츠를 생성하기 위해, 복수의 이미지 중 하나 이상의 이미지의 이미지 콘텐츠를 스티칭하는 단계 - 스티칭된 이미지 콘텐츠는 그래픽 인터페이스의 이동에 의해 노출된 미디어 항목의 세부사항들을 포함함 - 를 더 포함할 수 있다.
상기 콘텐츠 소스의 미디어 항목을 식별하는 단계는: 이미지 콘텐츠로부터의 데이터 항목을 이용하여 라이브러리 서비스의 검색을 수행하는 단계; 검색의 결과들을 이미지 콘텐츠로부터의 다른 데이터 단편과 비교하는 단계; 및 이미지 콘텐츠의 데이터와 일치하는 결과들로부터 미디어 항목을 선택하는 단계를 포함할 수 있다.
제1 양태의 방법은 그래픽 인터페이스의 이미지 콘텐츠에 기초하여 미디어 항목이 소비되었는지를 결정하는 단계를 더 포함할 수 있다.
상기 미디어 항목은 비디오, 오디오 녹음, 사진, 책, 또는 애플리케이션 중 적어도 하나를 포함할 수 있다.
본 개시내용의 제2 양태에서, 시스템이 제공된다. 시스템은 메모리; 및 메모리에 통신가능하게 결합된 처리 디바이스를 포함한다. 처리 디바이스는 제1 양태의 방법을 수행하도록 구성된다.
본 개시내용의 제3 양태에서, 실행될 때, 처리 디바이스로 하여금 제1 양태의 방법에 따른 동작들을 수행하게 하는 명령어들을 저장하는 비-일시적 머신 판독가능한 저장 매체가 제공된다.
본 개시내용의 일 양태의 임의적 특징들은 본 개시내용의 다른 양태들과 결합될 수 있다.
본 개시내용은 첨부 도면 중의 도면들에서 제한이 아닌 예로서 도시된다.
도 1은 본 개시내용의 구현에 따른 예시적인 시스템 아키텍처를 도시한다.
도 2는 본 개시내용의 구현에 따라 콘텐츠 소스의 그래픽 인터페이스를 광학적으로 분석함으로써 콘텐츠 소스로부터 미디어 항목들의 세트를 가져오기 위한 예시적인 컴퓨팅 디바이스를 도시한다.
도 3은 본 개시내용의 구현에 따라 콘텐츠 소스의 그래픽 인터페이스를 광학적으로 분석함으로써 콘텐츠 소스로부터 미디어 항목들의 세트를 가져오기 위한 방법을 도시하는 블록도이다.
도 4는 본 개시내용의 구현에 따라 미디어 항목들의 세트를 보기 위한 예시적인 그래픽 인터페이스이다.
도 5는 본 개시내용의 구현에 따른 예시적인 컴퓨터 시스템을 도시하는 블록도이다.
최신의 컴퓨팅 디바이스들은 여러 상이한 콘텐츠 소스로부터의 미디어 콘텐츠에 액세스할 수 있다. 각각의 콘텐츠 소스를 사용하면, 사용자는 사용자가 소비하려고 의도하거나 소비를 시작했거나 이전에 소비한 콘텐츠로 콘텐츠 라이브러리(예를 들어, 미디어 선택들의 세트)를 구축할 수 있다. 콘텐츠 소스들 중 다수가 동일하거나 유사한 미디어 콘텐츠를 제공할 수 있다. 사용자가 콘텐츠 소스들 사이에서 전환할 때, 사용자의 개인 콘텐츠 라이브러리는 새로운 콘텐츠 소스로부터 입수가능하지 않을 수 있다. 사용자는 개인 라이브러리(예를 들어, 시청 목록)를 포기하거나 새로운 콘텐츠 소스에 대한 개인 라이브러리를 수동으로 재구축해야 할 수 있다.
기존의 내보내기, 동기화, 또는 복제 기술들은 원본 콘텐츠 소스에 의해 지원되지 않을 수 있기 때문에, 개인 라이브러리를 재구축하는 것은 수작업일 수 있고 시간 소모적인 프로세스일 수 있다. 사용자는 개인 라이브러리를 수작업으로 다시 채움으로써 새로운 콘텐츠 소스에 대한 개인 라이브러리를 업데이트할 수 있다. 이것은 사용자가 원본 콘텐츠 소스와 새로운 콘텐츠 소스 둘 다의 그래픽 인터페이스들에 액세스하는 것을 수반할 수 있다. 예를 들어, 사용자는 제1 디바이스(예를 들어, DVR)에서 원본 콘텐츠 소스의 그래픽 인터페이스를 볼 수 있고, 각각의 미디어 항목에 대해, 사용자는 대응하는 미디어 항목을 찾기 위해 새로운 콘텐츠 소스를 검색할 수 있다. 사용자는 상이한 디스플레이 디바이스들(예를 들어, 원본을 위한 텔레비전 스크린 및 새로운 콘텐츠를 위한 모바일 디바이스 스크린)을 사용하여 상이한 콘텐츠 소스들의 그래픽 인터페이스들에 액세스할 수 있거나, 둘 다가 동일한 디스플레이 디바이스를 공유할 수 있으며, 이는 재구축 프로세스를 더욱 어렵게 만들 수 있다.
본 개시내용의 양태들 및 구현들은 제1 콘텐츠 소스의 미디어 항목들의 세트를 제2 콘텐츠 소스로 가져오기 위한 기술에 관한 것이다. 미디어 항목들의 세트는 하나 이상의 미디어 항목을 참조하는 데이터 구조일 수 있으며, 개인 콘텐츠 라이브러리, 시청 목록, 재생 목록, 읽기 목록, 즐겨찾기 목록, 다른 세트, 또는 이들의 조합과 동일하거나 유사할 수 있다. 세트 내의 미디어 항목들은 사용자가 소비하려고 하거나 소비를 시작했거나 이전에 소비한 콘텐츠에 대응할 수 있다. 기술은 컴퓨팅 디바이스가 제1 콘텐츠 소스의 그래픽 인터페이스의 이미지를 캡처하는 것을 가능하게 할 수 있다. 그래픽 인터페이스는 동일한 컴퓨팅 디바이스 또는 상이한 컴퓨팅 디바이스(예를 들어, DVR)에 의해 제공될 수 있으며, 하나 이상의 미디어 항목의 세트의 세부사항들을 사람이 읽을 수 있는 형태로 디스플레이할 수 있다. 컴퓨팅 디바이스는 그래픽 인터페이스의 이미지를 분석할 수 있고, 하나 이상의 광학 인식 동작을 사용하여 이미지로부터 데이터를 추출할 수 있다. 추출된 데이터는 텍스트 데이터, 그래픽 데이터, 레이아웃 데이터, 다른 데이터 또는 이들의 조합을 포함할 수 있다. 추출된 데이터는, 컴퓨팅 디바이스가 제1 콘텐츠 소스의 세트 내에 어느 미디어 항목들이 있는지를 식별하고 이러한 미디어 항목들을 제2 소스에 대한 세트에 추가하는 것을 가능하게 할 수 있다. 본 개시내용의 양태들 및 구현들은 상이한 데이터 구조들 사이에서 데이터를 마이그레이션하는 방법에 연관된 문제들을 다룬다. 제1 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠를 캡처하고 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출함으로써, 식별된 데이터가 제2 콘텐츠 소스에 자동으로 추가될 수 있다. 따라서, 제1 및 제2 콘텐츠 소스가 서로 간에 데이터의 직접 전송을 제공하지 않는 경우들에도, 데이터가 하나의 콘텐츠 소스로부터 다른 콘텐츠 소스로 효율적으로 복사된다.
그래픽 인터페이스의 복잡성은 콘텐츠 소스에 따라 달라질 수 있으며, 각각의 콘텐츠 소스는 자신의 커스텀화된 그래픽 인터페이스를 제공할 수 있다. 그래픽 인터페이스는 미디어 항목들의 세부사항들을 체계화하거나 배열하도록 의도되는 다양한 특징들을 포함할 수 있다. 미디어 콘텐츠가 체계화되는 방식은 특정 시점에서 미디어 항목들의 서브세트 또는 특정 미디어 항목들에 대한 세부사항들의 서브세트만이 그래픽 인터페이스에 의해 디스플레이되는 결과를 초래할 수 있다. 예를 들어, 그래픽 인터페이스는 그래픽 인터페이스에 의해 디스플레이되는 콘텐츠를 변경하는 다양한 이동을 지원할 수 있으며, 스크롤(예를 들어, 수평 및 수직 스크롤), 드롭다운 확장(예를 들어, 항목 선택 시 디스플레이되는 세부사항들), 다른 특징들, 또는 이들의 조합을 포함할 수 있다. 사용자가 콘텐츠를 더 효율적으로 캡처할 수 있도록 하기 위해, 사용자가 콘텐츠를 탐색할 때(예를 들어, 스크롤, 페이지, 확장, 이동), 사용자는 그래픽 인터페이스의 비디오를 캡처할 수 있다. 다음으로, 컴퓨팅 디바이스는 비디오를 분석하고 복수의 이미지(예를 들어, 비디오 프레임)를 함께 스티칭하며, 그에 의해 단일 이미지가 그래픽 인터페이스의 움직임에 의해 노출된 콘텐츠를 캡처하게 된다.
본 명세서에 설명된 시스템들 및 방법들은 컴퓨팅 디바이스가 사용자에 의해 소비될 미디어 콘텐츠를 더 쉽게 식별할 수 있도록 함으로써 콘텐츠 공유 플랫폼들의 기술분야를 향상시키는 기술을 포함한다. 특히, 개시된 기술은 컴퓨팅 디바이스가 예를 들어 사용자의 개인 콘텐츠 라이브러리를 제1 콘텐츠 소스(예를 들어, 케이블 TV)로부터 제2 소스(예를 들어, 인터넷 TV)로 마이그레이션하는 것을 가능하게 할 수 있다. 기존의 데이터 마이그레이션 기술들은 종종 제1 소스가 컴퓨팅 디바이스에 의해 가져오기될 수 있는 형식으로 원시 데이터를 내보내는 것을 수반한다. 일부 콘텐츠 소스들은 내보내기 특징들을 피하거나, 사용자들이 다른 콘텐츠 소스(예를 들어, 경쟁업체)로 마이그레이션하는 것을 막기 위한 노력으로, 독점적이거나 부담스러운 내보내기 메커니즘들을 포함할 수 있다. 본 명세서에 개시된 기술은 이미지 캡처 및 추출 동작들과 함께 콘텐츠 소스에 의해 제공되는 그래픽 인터페이스를 활용하여, 데이터 내보내기 특징의 결핍에도 불구하고 제1 콘텐츠 소스의 개인 콘텐츠 라이브러리가 제2 콘텐츠 소스로 가져오기되는 것을 가능하게 할 수 있다.
도 1은 본 개시내용의 일 구현에 따른 예시적인 시스템 아키텍처(100)를 도시한다. 시스템 아키텍처(100)는 하나 이상의 콘텐츠 소스(110A-Z), 하나 이상의 컴퓨팅 디바이스(120A-B), 라이브러리 서비스(130) 및 네트워크(140)를 포함한다.
콘텐츠 소스들(110A-Z)은 미디어 콘텐츠의 임의의 소스일 수 있으며, 하나 이상의 미디어 항목(112)의 형태로 미디어 콘텐츠를 저장 및 제공할 수 있다. 미디어 항목들(112)은 컴퓨팅 디바이스에 제공될 수 있고 컴퓨팅 디바이스에 의해 사람이 해석할 수 있는 형식으로 하나 이상의 사용자에게 제시될 수 있는 형식의 미디어 콘텐츠를 포함할 수 있다. 미디어 항목들(112)은 비디오 콘텐츠, 오디오 콘텐츠, 사진 콘텐츠, 텍스트 콘텐츠, 실행가능한 콘텐츠, 다른 콘텐츠, 또는 이들의 조합을 포함할 수 있다. 비디오 콘텐츠는 영화, 텔레비전 쇼, 스포츠 이벤트, 뮤직 비디오, 뉴스 클립, 리뷰, 광고, 사용자 생성 비디오, 다른 콘텐츠 또는 이들의 조합을 포함할 수 있다. 오디오 콘텐츠는 오디오 클립, 노래, 앨범, 팟 캐스트, 오디오 북, 다른 콘텐츠 또는 이들의 조합을 포함할 수 있다. 텍스트 콘텐츠는 심볼, 문자, 단어, 다른 콘텐츠 또는 이들의 조합을 포함할 수 있다. 텍스트 콘텐츠는 다른 콘텐츠(예를 들어, 그래픽 콘텐츠)를 동반할 수 있으며, 디지털 서적, 신문, 잡지 또는 다른 형태로 배열될 수 있다. 실행가능한 콘텐츠는 미디어 콘텐츠를 사용자에게 제시하기 위해 컴퓨팅 디바이스에 의해 액세스(예를 들어, 로딩) 및 실행될 수 있는 하나 이상의 애플리케이션(예를 들어, 스마트 폰 앱, 웹 앱)을 포함할 수 있다.
도 1에 도시된 예에서, 콘텐츠 소스들(110A-Z)은 케이블 서비스들(예를 들어, 110A), 콘텐츠 스트리밍 서비스들(예를 들어, 110B), 콘텐츠 공유 플랫폼들(예를 들어, 110C), 미디어 저장소들(예를 들어, 110Z), 다른 콘텐츠 서비스들 또는 이들의 조합과 같은 하나 이상의 콘텐츠 서비스를 포함할 수 있다. 케이블 서비스들은 방송 또는 주문형 미디어 콘텐츠를 제공하는 지상파 서비스들 또는 위성 서비스들을 포함할 수 있고, Comcast®, Verizon FIOS®, Xfinity®, Dish Network®, 다른 서비스 제공자 또는 이들의 조합을 포함할 수 있다. 콘텐츠 스트리밍 서비스들은 네트워크 접속(예를 들어, 인터넷 접속)을 통해 콘텐츠를 스트리밍하여 미디어 항목들을 제공할 수 있으며, Netflix®, Hulu®, Sling®, Prime Video®, HBO Go®, Showtime Anytime®, 다른 스트리밍 서비스들 또는 이들의 조합을 포함할 수 있다. 콘텐츠 공유 플랫폼들은 사용자 생성 콘텐츠를 공유하기 위한 콘텐츠 호스팅 서비스들을 포함할 수 있으며, 비디오 공유 서비스들(YouTube®, Vimeo®) 또는 소셜 네트워크들(Facebook®, Google+®, Myspace®), 다른 서비스 또는 이들의 조합을 포함할 수 있다. 미디어 스토어들은 미디어 항목들을 구매하거나 대여할 수 있게 하는 서비스를 포함할 수 있으며, Apple iTunes®, Google Play®, Amazon Prime®, 다른 서비스, 또는 이들의 조합을 포함할 수 있다. 콘텐츠 소스들(110A-Z)은 미디어 항목들(112)을 컴퓨팅 디바이스(120A) 및/또는 컴퓨팅 디바이스(120B)에 제공할 수 있다.
컴퓨팅 디바이스(120A)는 미디어 항목들(112) 중 하나를 수신하고, 사용자에게 제시하기 위해 미디어 항목을 제공할 수 있는 임의의 컴퓨팅 디바이스일 수 있다. 컴퓨팅 디바이스(120A)는 디스플레이 디바이스(예를 들어, 통합된 디스플레이 디바이스)를 포함할 수 있거나, 콘텐츠를 별도의 디스플레이 디바이스(예를 들어, 접속된 디스플레이 디바이스)에 전송할 수 있다. 디스플레이 디바이스는 스크린 또는 프로젝션 메커니즘을 포함할 수 있으며, 텔레비전 스크린, 모니터, 프로젝터 스크린, 모바일 디스플레이, 헤드 업 디스플레이, 헤드 마운트 디스플레이, 홀로그램 디스플레이, 다른 디스플레이 기술, 또는 이들의 조합을 사용하여 콘텐츠를 디스플레이할 수 있다. 컴퓨팅 디바이스(120A)의 일부 예들은 텔레비전(예를 들어, 기존 텔레비전 또는 스마트 텔레비전), 셋톱 박스(예를 들어, DVR, 케이블 박스, Apple TV®, Roku®, FireTV®), 마이크로 콘솔(예를 들어, Playstation®), 개인용 컴퓨터(예를 들어, 데스크톱 컴퓨터, 워크스테이션), 모바일 디바이스(예를 들어, 이동 전화기, 태블릿, 랩톱, 스마트 워치, 스마트 글래스, 스마트 컨택트), 다른 디바이스, 또는 이들의 조합을 포함할 수 있다. 컴퓨팅 디바이스(120A)는 그래픽 인터페이스 컴포넌트(121)를 사용하여 디스플레이하기 위한 미디어 항목들의 세트를 제공할 수 있다.
그래픽 인터페이스 컴포넌트(121)는 컴퓨팅 디바이스(120A)가 그래픽 인터페이스를 하나 이상의 사용자에게 제공하는 것을 가능하게 할 수 있다. 일례에서, 컴퓨팅 디바이스(120A)는 컴퓨팅 디바이스(120A)의 스크린에 그래픽 인터페이스를 디스플레이함으로써 그래픽 인터페이스를 제공할 수 있다. 다른 예에서, 그래픽 인터페이스를 제공하는 것은 그래픽 인터페이스를 디스플레이하지 않고서, 신호를 다른 디바이스에 전송하는 것을 수반할 수 있다. 이는 컴퓨팅 디바이스(120A)에 스크린이 없기 때문에(예를 들어, 디스플레이 없음, 스크린 없음, 헤드 없음), 또는 컴퓨팅 디바이스(120A)가 신호를 상이한 스크린에 보낼 수 있기 때문에(예를 들어, 더 큰 스크린으로의 스트리밍, 캐스팅, 또는 플링잉(flinging)) 발생할 수 있다. 그래픽 인터페이스는 사용자들이 콘텐츠 소스들(110) 중 하나 이상의 미디어 콘텐츠와 상호작용하는 것을 가능하게 하는 임의의 사용자 인터페이스일 수 있다. 그래픽 인터페이스는 특정 콘텐츠 소스(110) 또는 특정 유형의 컴퓨팅 디바이스(120A)에 특정할 수 있거나, 다수의 상이한 콘텐츠 소스(110A-Z) 또는 컴퓨팅 디바이스(120A)에 일반적일 수 있다. 그래픽 인터페이스는 사용자가 하나 이상의 콘텐츠 소스(110A-Z)의 콘텐츠를 탐색하는 것을 가능하게 할 수 있고, 미디어 항목 세트(123A)의 세부사항들을 디스플레이할 수 있다.
미디어 항목 세트(123A)는 콘텐츠 소스의 특정 사용자에 연관된 미디어 항목들의 세트를 저장하는 데이터 구조일 수 있다. 사용자는 특정 개인, 가족, 그룹, 비즈니스 엔티티, 다른 엔티티, 또는 이들의 조합에 대응하는 프로필, 계정 또는 식별자에 의해 표현될 수 있다. 일례에서, 미디어 항목 세트(123A)는 1명 이상의 사람에 대응할 수 있고, 개인 콘텐츠 라이브러리라고 지칭될 수 있다. 미디어 항목들의 세트는 빈 세트일 수 있거나, 사용자를 위해 선택된 하나 이상의 미디어 항목을 포함할 수 있다. 미디어 항목 세트(123A)는 세트 내의 미디어 항목들의 세부사항들을 저장할 수 있고, 미디어 항목들은 사용자, 콘텐츠 소스, 제3자 소스 또는 이들의 조합에 의해 선택될 수 있다. 선택은 사용자 입력, 소비되거나 소비되지 않은 콘텐츠, 이전에 선택되거나 선택되지 않은 콘텐츠, 피어 데이터, 이력 데이터, 프로필 데이터, 계정 데이터, 다른 데이터 또는 이들의 조합에 기초할 수 있다. 일례에서, 미디어 항목 세트(123A)는 미디어 항목들(예를 들어, 비디오 콘텐츠)의 콘텐츠를 저장하지 않고서, 미디어 항목의 세부사항들(예를 들어, 타이틀, 커버 아트, 소비 상태)을 포함할 수 있다. 콘텐츠는 방송, 다운로드, 스트리밍, 또는 이들의 조합을 통해 후속하여 수신될 수 있다. 다른 예에서, 미디어 항목 세트(123A)는 미디어 항목의 세부사항들 및 미디어 항목의 콘텐츠(예를 들어, 비디오 콘텐츠)를 포함할 수 있다.
컴퓨팅 디바이스(120B)는 컴퓨팅 디바이스(120A)와 동일하거나 유사할 수 있고, 미디어 항목 세트(123A)의 하나 이상의 미디어 항목을 가져오기 위해, 컴퓨팅 디바이스(120A)에 의해 제공되는 그래픽 인터페이스에 액세스할 수 있다. 가져오기는 도 1에서 미디어 세트 가져오기(125)로 표시된 화살표로서 표현된다. 미디어 세트 가져오기(125)는 미디어 항목 세트(123A)의 콘텐츠를 미디어 항목 세트(123B)에 복제, 중복화, 동기화, 마이그레이션, 복사 또는 추가하기 위한 하나 이상의 동작을 포함할 수 있다. 미디어 항목 세트(123B)는 미디어 항목 세트(123A)와 동일하거나 유사할 수 있지만 상이한 콘텐츠 소스에 대응할 수 있다. 미디어 항목 세트(123B)는 미디어 세트 가져오기(125) 시에 비어 있거나 하나 이상의 미디어 항목을 포함할 수 있다.
컴퓨팅 디바이스(120B)는 미디어 세트 가져오기(125)를 수행하기 위한 하나 이상의 실행가능한 컴포넌트를 포함할 수 있고, 컴포넌트들은 이미지 캡처 컴포넌트(122), 데이터 추출 컴포넌트(124), 및 미디어 식별 컴포넌트(126)를 포함할 수 있다. 이미지 캡처 컴포넌트(122)는 컴퓨팅 디바이스(120B)가 컴퓨팅 디바이스(120B)에 의해 제공되는 그래픽 인터페이스의 이미지 콘텐츠(127)를 캡처하는 것을 가능하게 할 수 있다. 이미지 콘텐츠의 캡처는 컴퓨팅 디바이스(120B)가 그래픽 인터페이스의 하나 이상의 이미지를 기록하는 이미지 캡처 동작(예를 들어, 카메라 사진 또는 비디오)을 개시하는 것을 수반할 수 있다. 데이터 추출 컴포넌트(124)는 컴퓨팅 디바이스(120B)가 이미지 콘텐츠(127)를 분석하고 미디어 항목 세트(123)의 하나 이상의 미디어 항목의 세부사항들에 관련된 데이터를 추출하는 것을 가능하게 할 수 있다. 미디어 식별 컴포넌트(126)는 컴퓨팅 디바이스가 추출된 데이터를 분석하고, 다른 콘텐츠 소스로부터의 하나 이상의 대응하는 미디어 항목을 식별하는 것을 가능하게 할 수 있다. 미디어 식별 컴포넌트(126)는 라이브러리 서비스(130), 콘텐츠 소스들(110A-C)(소스 또는 목적지 콘텐츠 소스), 또는 이들의 조합의 미디어 데이터에 기초하여 미디어 항목을 식별할 수 있다.
컴퓨팅 디바이스들(120A-B)의 기능들은 단일 컴퓨팅 디바이스에 의해 수행 될 수 있다. 단일 컴퓨팅 디바이스는 그래픽 인터페이스 컴포넌트(121) 및 이미지 캡처 컴포넌트(122)를 포함할 수 있다. 이 상황에서, 이미지 캡처 컴포넌트(122)는 스크린 샷(예를 들어, 사진), 스크린 캐스트(예를 들어, 비디오), 다른 동작, 또는 이들의 조합을 수반하는 이미지 캡처 동작을 사용하여 그래픽 인터페이스의 이미지 콘텐츠를 캡처할 수 있다. 컴포넌트들(122, 124, 및 126) 및 그들의 기능들에 대한 추가 설명은 도 2와 관련하여 아래에서 더 상세하게 설명된다. 다른 예들에서, 컴퓨팅 디바이스들(120A-B)과 관련하여 논의된 하나 이상의 특징은 또한 또는 대안 적으로 서버 디바이스, 클라이언트 디바이스, 다른 디바이스, 또는 콘텐츠 소스(110C)와 같은 콘텐츠 서비스의 일부를 포함하거나 포함하지 않을 수 있는 이들의 조합에 의해 수행될 수 있다.
콘텐츠 소스(110C)는 사용자에게 미디어 항목들에의 액세스를 제공하고/거나 미디어 항목들을 사용자에게 제공하기 위해 사용될 수 있는 하나 이상의 컴퓨팅 디바이스(예컨대, 랙마운트 서버, 라우터 컴퓨터, 서버 컴퓨터, 개인용 컴퓨터, 메인프레임 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 데스크탑 컴퓨터 등), 데이터 저장소(예를 들어, 하드 디스크, 메모리, 데이터베이스), 네트워크, 소프트웨어 컴포넌트, 및/또는 하드웨어 컴포넌트를 포함할 수 있는 콘텐츠 공유 플랫폼일 수 있다. 예를 들어, 콘텐츠 공유 플랫폼은 사용자가 공유된 미디어 항목들을 소비하거나, 업로드하거나, 검색하거나, 승인하거나("좋아요"), 싫어요, 댓글을 다는 것을 허용할 수 있다. 콘텐츠 공유 플랫폼은 또한 사용자에게 미디어 항목들(112)에 대한 액세스를 제공하기 위해 사용될 수 있는 웹사이트(예를 들어, 웹 애플리케이션) 또는 애플리케이션(예를 들어, 스마트 폰 애플리케이션) 및 백엔드 소프트웨어를 포함할 수 있다. 콘텐츠 공유 플랫폼은 적절한 애플리케이션 프로그래밍 인터페이스들을 경유하여 하나 이상의 서버를 통해 다른 시스템들 또는 컴퓨팅 디바이스들에 제공되는 서비스로서 액세스될 수 있으므로, 웹 사이트에서 사용하는 것으로 제한되지 않는다.
콘텐츠 소스(110C) 및 다른 콘텐츠 소스들 A-Z 중 임의의 것은 복수의 채널(예를 들어, 채널 A 내지 Z)을 포함할 수 있다. 채널은 공통 소스로부터 입수가능한 데이터 콘텐츠, 또는 공통 토픽, 테마 또는 내용을 갖는 데이터 콘텐츠일 수 있다. 데이터 콘텐츠는 사용자에 의해 선택된 디지털 콘텐츠, 사용자에 의해 이용가능하게 된 디지털 콘텐츠, 사용자에 의해 업로드된 디지털 콘텐츠, 콘텐츠 제공자에 의해 선택된 디지털 콘텐츠, 방송사에 의해 선택된 디지털 콘텐츠 등일 수 있다. 예를 들어, 채널 X는 비디오 Y 및 Z를 포함할 수 있다. 채널은 채널에서 액션들을 수행할 수 있는 사용자인 소유자에 연관될 수 있다. 소유자가 채널에서 디지털 콘텐츠를 사용할 수 있게 하는 것, 소유자가 다른 채널에 연관된 디지털 콘텐츠를 선택(예를 들어, 좋아요)하는 것, 소유자가 다른 채널에 연관된 디지털 콘텐츠에 댓글을 다는 등과 같은 소유자의 액션들에 기초하여, 상이한 활동들이 채널에 연관될 수 있다. 채널에 연관된 활동들은 채널에 대한 활동 피드로 수집될 수 있다. 채널 소유자가 아닌 사용자들은 관심있는 하나 이상의 채널을 구독할 수 있다. "구독"의 개념은 "좋아요", "팔로잉", "친구맺기" 등으로도 지칭될 수 있다. "사용자"는 단일 개인으로서 표현될 수 있다. 그러나, 본 개시내용의 다른 구현들은 사용자들의 세트 및/또는 자동화된 소스에 의해 제어되는 엔티티인 "사용자"를 포괄한다. 예를 들어, 소셜 네트워크에서 커뮤니티로 연합된 개별 사용자들의 세트는 사용자로 고려될 수 있다. 다른 예에서, 자동화된 소비자는 콘텐츠 공유 플랫폼의 토픽 채널과 같은 자동화된 섭취 파이프라인(automated ingestion pipeline)일 수 있다.
본 명세서에서 논의된 시스템들이 사용자들에 관한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 상황들에서, 사용자들은 콘텐츠 공유 플랫폼이 사용자 정보(예를 들어, 사용자의 소셜 네트워크, 소셜 액션들 또는 활동들, 직업, 사용자의 선호도들, 또는 사용자의 현재 위치에 관한 정보)를 수집하는지 여부를 제어하거나, 사용자에 더 관련이 있을 수 있는 콘텐츠 서버로부터 콘텐츠를 수신할지 여부 및/또는 수신하는 방법을 제어할 기회를 제공받을 수 있다. 추가로, 특정 데이터는 개인 식별 정보가 제거되도록, 저장 또는 사용 전에 하나 이상의 방식으로 처리될 수 있다. 예를 들어, 사용자의 신원은 사용자에 대한 개인 식별 정보가 결정되지 못하도록 처리될 수 있거나, 위치 정보가 획득되는 사용자의 지리적 위치가 (예컨대, 도시, 우편 번호, 또는 주 수준으로) 일반화될 수 있고, 그에 의해 사용자의 구체적인 위치가 결정될 수 없게 된다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집될지 및 콘텐츠 공유 플랫폼에 의해 어떻게 사용될지에 대한 제어권을 가질 수 있다.
네트워크(140)는 공중 네트워크(예를 들어, 인터넷), 개인 네트워크(예를 들어, 근거리 네트워크(LAN) 또는 광역 네트워크(WAN)), 유선 네트워크(예를 들어, 이더넷 네트워크), 무선 네트워크(예를 들어, 802.11 네트워크 또는 Wi-Fi 네트워크), 셀룰러 네트워크(예를 들어, LTE(Long Term Evolution) 네트워크), 라우터, 허브, 스위치, 서버 컴퓨터, 및/또는 이들의 조합을 포함할 수 있다. 일 구현에서, 데이터 저장소(240)는 메모리(예를 들어, 랜덤 액세스 메모리), 캐시, 드라이브(예를 들어, 하드 드라이브), 플래시 드라이브, 데이터베이스 시스템, 또는 데이터를 저장할 수 있는 다른 유형의 컴포넌트 또는 디바이스일 수 있다. 데이터 저장소(240)는 또한 복수의 컴퓨팅 디바이스(예를 들어, 복수의 서버 컴퓨터)에 걸쳐있을 수 있는 복수의 저장 컴포넌트(예를 들어, 복수의 드라이브 또는 복수의 데이터베이스)를 또한 포함할 수 있다.
도 2는 기술의 일 구현에 따라 콘텐츠 소스의 그래픽 인터페이스를 광학적으로 분석함으로써 미디어 항목들의 세트를 가져오기 위한 예시적인 컴퓨팅 디바이스(120B)를 도시한다. 컴퓨팅 디바이스(120B)는 사용자 입력을 수신하는 것에 응답하여 또는 제2 콘텐츠 소스(예를 들어, 목적지 또는 타겟 소스)에 연관된 세트에 미디어를 추가하는 것이 유리할 것임을 자동으로 검출(예를 들어, 사용자 입력없이)하는 것에 응답하여, 제1 콘텐츠 소스(예를 들어, 원본 소스)로부터의 가져오기를 개시할 수 있다. 도 2에 표시된 컴포넌트들 및 모듈들은 하나 이상의 애플리케이션, 운영 체제 특징들, 또는 이들의 조합에 의해 구현될 수 있다. 위에서 논의된 바와 같이, 컴퓨팅 디바이스(120B)는 이미지 캡처 컴포넌트(122), 데이터 추출 컴포넌트(124), 미디어 식별 컴포넌트(126), 및 데이터 저장소(240)를 포함할 수 있다. 더 많거나 더 적은 컴포넌트 또는 모듈이 일반성의 손실없이 포함될 수 있다. 예를 들어, 2개 이상의 컴포넌트가 단일 컴포넌트로 결합될 수 있거나, 컴포넌트의 특징들이 2개 이상의 컴포넌트로 분할될 수 있다. 일 구현에서, 컴포넌트들 또는 모듈들의 특징들 중 하나 이상은 상이한 컴퓨팅 디바이스들(예를 들어, 상이한 클라이언트 디바이스, 상이한 서버 디바이스들 또는 이들의 조합)에 상주할 수 있다.
이미지 캡처 컴포넌트(122)는 컴퓨팅 디바이스(120B)가 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠(127)를 캡처하는 것을 가능하게 할 수 있다. 이것은 컴퓨팅 디바이스(120B)가 그래픽 인터페이스의 하나 이상의 이미지를 기록하는 이미지 캡처 동작(예를 들어, 카메라 사진 또는 비디오)을 개시하는 것을 수반할 수 있다. 일례에서, 이미지 캡처 컴포넌트(122)는 개시 모듈(212), 카메라 모듈(214A), 스크린 캡처 모듈(214B) 및 콘텐츠 스티칭 모듈(216)을 포함할 수 있다.
개시 모듈(212)은 이미지 캡처 동작을 활성화함으로써 콘텐츠 소스로부터의 미디어 항목들의 세트의 가져오기를 개시할 수 있다. 이미지 캡처 동작은 컴퓨팅 디바이스(120B)의 그래픽 제어 요소를 활성화하는 사용자 입력에 응답하여 발생할 수 있다. 일례에서, 그래픽 제어 요소는 애플리케이션이 기존 소스로부터 미디어 항목들을 가져올 수 있음을 사용자에게 표시하는 애플리케이션(예를 들어, 스마트 폰 앱)의 버튼 제어 요소일 수 있다. 소스는 디지털 비디오 레코더(DVR), 콘텐츠 스트리밍 서비스 또는 미디어 스토어, 또는 다른 콘텐츠 소스 중 적어도 하나로부터의 기존 미디어 항목 세트일 수 있다. 세트는 콘텐츠 소스에 연관된 애플리케이션을 사용하여 액세스될 수 있는 사용자의 개인 콘텐츠 라이브러리에 기초할 수 있다. 개시 모듈(212)에 의해 활성화된 이미지 캡처 동작은 카메라 모듈(214A), 스크린 캡처 모듈(214B), 또는 이들의 조합을 사용할 수 있다.
카메라 모듈(214A)은 컴퓨팅 디바이스(120B)가 카메라와 같은 광학 이미지 캡처 디바이스를 사용하여 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 것을 가능하게 할 수 있다. 카메라 모듈(214A)은 이미지 콘텐츠(예를 들어, 이미지)를 검출하기 위해 카메라의 하나 이상의 포토 센서를 사용할 수 있고, 이미지 콘텐츠를 하나 이상의 저장 디바이스에 기록할 수 있다. 카메라는 컴퓨팅 디바이스 내에 통합될 수 있거나, 컴퓨팅 디바이스로부터 분리되어 컴퓨팅 디바이스(120B)와 통신가능하게 결합될 수 있다. 카메라는 하나 이상의 사진(예를 들어, 정지 이미지), 동영상(예를 들어, 비디오 프레임) 또는 이들의 조합을 캡처할 수 있을 수 있다. 일례에서, 컴퓨팅 디바이스(120B)는 통합된 카메라를 갖는 모바일 디바이스(예를 들어, 이동 전화기)일 수 있고, 목적지 콘텐츠 소스(예를 들어, 새로운 콘텐츠 소스)에 연관된 애플리케이션을 실행하고 있을 수 있다. 애플리케이션은 카메라 모듈(214A)을 사용하여 다른 컴퓨팅 디바이스에 의해 제공되는 그래픽 인터페이스의 광학 이미지(예를 들어, 카메라 사진 또는 비디오)를 캡처하기 위해 이미지 캡처 동작을 개시할 수 있다. 다른 컴퓨팅 디바이스는 사용자에게 디스플레이하기 위해 디스플레이 디바이스(예를 들어, 텔레비전 스크린, 컴퓨터 스크린)에 그래픽 인터페이스를 제공하는 DVR 기능을 갖는 케이블 박스 일 수 있다.
스크린 캡처 모듈(214B)은 컴퓨팅 디바이스(120B)가 스크린 캡처 동작을 사용하여 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 것을 가능하게 할 수 있다. 스크린 캡처 동작은 컴퓨팅 디바이스(120B)가 카메라 모듈(214A)과 관련하여 위에서 논의된 바와 같이 다른 컴퓨팅 디바이스에 의해 제공되는 그래픽 인터페이스를 캡처하는 것과는 대조적으로 컴퓨팅 디바이스(120B)에 의해 제공되는 그래픽 인터페이스를 캡처하는 것을 가능하게 할 수 있다. 스크린 캡처 동작은 스크린 출력이 컴퓨팅 디바이스(120B)에 제공되고 컴퓨팅 디바이스(120B)에 연관된 디스플레이 디바이스에 디스플레이되기 전에, 동안에, 또는 후에, 컴퓨팅 디바이스(120B)의 스크린 출력을 검출하고 기록할 수 있다. 스크린 캡처 동작은 하나 이상의 사진(예를 들어, 정지 이미지, 스크린 샷, 스크린 그랩들)을 캡처할 수 있거나, 동영상(예를 들어, 비디오 프레임들, 스크린캐스트)을 캡처할 수 있다. 일례에서, 컴퓨팅 디바이스(120B)는 복수의 애플리케이션(예를 들어, 스마트 폰 앱)을 실행할 수 있고, 제1 애플리케이션은 목적지 콘텐츠 소스(예를 들어, 콘텐츠 공유 플랫폼)에 연관될 수 있고, 제2 애플리케이션은 가져오기되고 있는 콘텐츠 소스에 연관될 수 있다. 제1 애플리케이션(예를 들어, YouTube® 앱)은 제2 애플리케이션(예를 들어, DVR, Netflix®, HBO Go®, Showtime Anytime®, Prime Video®을 위한 앱)의 그래픽 인터페이스의 스크린 샷 또는 스크린 캐스트를 캡처하기 위해 이미지 캡처 동작을 개시할 수 있다.
콘텐츠 스티칭 모듈(216)은 컴퓨팅 디바이스(120A)가 복수의 이미지로부터의 이미지 콘텐츠를 블렌딩하는 것을 가능하게 할 수 있다. 콘텐츠 스티칭 모듈(216)은 객체 인식, 이미지 등록, 정렬 및 블렌딩을 수행하기 위한 하나 이상의 광학 인식 동작을 포함할 수 있다. 객체 인식은 그래픽 인터페이스를 디스플레이하는 디스플레이 디바이스(예를 들어, TV 디스플레이)에 연관된 이미지의 일부를 식별하는 것을 수반할 수 있다. 이미지 콘텐츠를 스티칭할 때, 그래픽 인터페이스의 이미지 콘텐츠는 이미지 콘텐츠의 다른 부분들(예를 들어, TV 스탠드, 거실 벽)의 콘텐츠를 블렌딩하지 않고서 블렌딩될 수 있다. 이미지 맞춤은 그래픽 인터페이스의 부분들에 연관된 구별가능한 이미지 특징들(예를 들어, 고유 특징들)을 식별하는 것을 수반할 수 있다. 이미지 정렬은 복수의 이미지의 구별가능한 이미지 특징들을 검색하고, 상이한 이미지들로부터 일치하는 특징들을 찾을 수 있다. 이러한 일치하는 특징들은 상이한 이미지들을 정렬하기 위해 사용될 수 있다. 이미지 블렌딩은 제1 이미지의 이미지 콘텐츠를 제2 이미지의 이미지 콘텐츠와 블렌딩하는 것을 수반할 수 있으며, 움직임 보상 및 콘텐츠 중복 제거를 포함할 수 있다.
이미지 콘텐츠를 스티칭하는 것은 복수의 이미지로부터의 그래픽 인터페이스의 이미지 콘텐츠를 더 적은 이미지(예를 들어, 단일 이미지)로 통합하여 후속 이미지 분석(예를 들어, 광학 인식)의 속도 또는 품질을 향상시킬 수 있기 때문에 유리할 수 있다. 개별 이미지들로부터의 이미지 콘텐츠를 스티칭하는 것은, 그래픽 인터페이스의 상이한 부분들에 디스플레이되는 미디어 세부사항들의 컨텍스트를 향상시키거나 컨텍스트를 제공할 수 있다. 예를 들어, 그래픽 인터페이스는 복수의 미디어 항목을 그래픽 구조(예를 들어, 목록, 테이블 또는 그리드)로 디스플레이할 수 있으며, 특정 행 내의 미디어 항목은 특정 미디어 항목의 모든 세부사항을 노출시키기 위해 그래픽 인터페이스의 이동(예를 들어, 수평 이동)을 필요로 할 수 있다. 제1 이미지는 그래픽 인터페이스가 (예를 들어, 제1 열을 보기 위해) 왼쪽으로 스크롤될 때 그래픽 인터페이스를 캡처할 수 있고, 복수의 미디어 항목의 세부사항들의 제1 부분(예를 들어, 타이틀 또는 다른 식별 세부사항들)을 디스플레이할 수 있다. 제2 이미지는 그래픽 인터페이스가 (예를 들어, 마지막 열을 보기 위해) 오른쪽으로 스크롤될 때 그래픽 인터페이스를 캡처할 수 있고, 복수의 미디어 항목의 세부사항들의 제2 부분(예를 들어, 시청 상태 또는 다른 상태 세부사항들)을 디스플레이할 수 있다. 컨텍스트를 제공하기 위해 콘텐츠를 정렬(예를 들어, 스티칭)하지 않고 제1 및 제2 이미지를 별도로 분석하면, 제1 이미지의 식별 세부사항들이 제2 이미지의 올바르지 않은 상태 세부사항들에 연관되는 결과를 초래할 수 있다. 이는 사용자가 수평 및 수직으로 스크롤하여 제1 이미지 내의 엔트리(예를 들어, 최상위 엔트리)가 제2 이미지의 대응하는 엔트리(예를 들어, 최상위 엔트리)에 정렬되지 않게 되는 경우에 훨씬 더 분명해질 수 있다. 이미지 스티칭을 수행함으로써, 이미지 콘텐츠는 컨텍스트 내의 모든 미디어 데이터를 제공할 수 있다(예를 들어, 단일 이미지 디스플레이).
데이터 추출 컴포넌트(124)는 컴퓨팅 디바이스(120B)가 이미지 콘텐츠(127)를 분석하고 그래픽 인터페이스에 의해 디스플레이된 미디어 항목들의 세트의 하나 이상의 미디어 항목에 대응하는 세부사항들을 추출하는 것을 가능하게 할 수 있다. 일례에서, 데이터 추출 컴포넌트(124)는 광학 인식 모듈(222), 인터페이스 분류 모듈(224), 및 미디어 세부사항 검출 모듈(226)을 포함할 수 있다.
광학 인식 모듈(222)은 컴퓨팅 디바이스(120B)가 이미지 콘텐츠(127)를 분석하고 그래픽 인터페이스에 나열된 미디어 항목들을 식별하기 위한 데이터를 추출하는 것을 가능하게 할 수 있다. 광학 인식 모듈(222)은 그래픽 인터페이스의 이미지 특징들(244)을 인식하기 위해 이미지 콘텐츠에 대해 하나 이상의 광학 인식 동작을 수행할 수 있다. 이미지 특징들(244)은 텍스트 데이터, 그래픽 데이터, 레이아웃 데이터, 다른 데이터, 또는 이들의 조합을 포함할 수 있다. 텍스트 데이터는 심볼들, 문자들, 숫자들, 단어들, 다른 데이터, 또는 이들의 조합을 포함할 수 있다. 그래픽 데이터는 커버 아트, 앨범 아트, 썸네일 이미지, 특정 비디오 프레임, 다른 그래픽, 또는 이들의 조합과 같은 미디어 그래픽을 포함할 수 있다. 레이아웃 데이터는 패널들, 창들, 메뉴들, 탭들, 행들, 열들, 드롭다운 목록들, 확장 스터브들, 버튼들, 다른 디스플레이 특징들, 또는 이들의 조합과 같은 그래픽 인터페이스의 양태들을 식별할 수 있다.
일례에서, 그래픽 인터페이스는 그래픽 인터페이스의 일부가 그래픽 인터페이스의 다른 부분과 다른 속도로 이동(예를 들어, 스크롤)하는 다중-평면 스크롤을 포함할 수 있다. 예를 들어, 미디어 항목 그래픽(예를 들어, 커버 아트) 아래의 영역은 미디어 항목에 관한 타이틀 또는 다른 세부사항들을 디스플레이하는 스크롤 데이터를 포함할 수 있다. 스크롤 데이터는 디스플레이의 영역보다 긴 텍스트 스트링을 포함할 수 있고, 이동은 전체 텍스트 스트링이 일정 기간(예를 들어, 스크롤 사이클)에 걸쳐 디스플레이되는 것을 가능하게 할 수 있다. 광학 인식 모듈(222)은 다중-평면 스크롤을 검출할 수 있고, 스크롤되고 있는 콘텐츠를 인식하기 위해 복수의 이미지의 조합을 분석할 수 있다. 이러한 특징들은 데이터 저장소(예를 들어, 이미지 콘텐츠(127), 미디어 특징들(244) 또는 미디어 세부사항들(246))에 저장될 수 있거나, 캡처된 이미지 콘텐츠 또는 스티칭된 이미지 콘텐츠에 내장되고 다른 컴포넌트 또는 모듈에 의해 액세스될 수 있다.
인터페이스 분류 모듈(224)은 컴퓨팅 디바이스(120B)가 그래픽 인터페이스를 분류하고 그래픽 인터페이스의 기원들을 검출하는 것을 가능하게 할 수 있다. 그래픽 인터페이스는 특정 콘텐츠 소스, 특정 컴퓨팅 디바이스, 또는 이들의 조합으로부터 기원할 수 있다. 일례에서, 그래픽 인터페이스는 특정 콘텐츠 소스(예를 들어, Xfinity®)에 대응할 수 있고, 동일하거나 유사하게 보일 수 있으며, 콘텐츠 소스에 액세스하기 위해 사용되는 컴퓨팅 디바이스에 독립적일 수 있다. 다른 예에서, 그래픽 인터페이스는 특정 콘텐츠 소스 및 특정 컴퓨팅 디바이스(예를 들어, 클라이언트 디바이스, 웹 브라우저, 모바일 앱)에 대응할 수 있다. 예를 들어, 케이블 서비스는 상이한 컴퓨팅 디바이스들(예를 들어, 셋톱 박스, 모바일 디바이스, 개인용 컴퓨터)로부터 액세스될 수 있으며, 각각의 컴퓨팅 디바이스는 상이한 그래픽 인터페이스를 가질 수 있다. 인터페이스 분류 모듈(224)은 복수의 미리 결정된 그래픽 인터페이스 템플릿 중 어느 것이 디스플레이된 그래픽 인터페이스에 대응하는지를 결정하기 위해, 이미지 콘텐츠(127), 추출된 데이터, 이미지 특징들, 또는 이들의 조합에 액세스하고 분석할 수 있다.
그래픽 인터페이스 템플릿은 분석의 속도 및/또는 품질을 향상시키기 위해 사용될 수 있다. 그래픽 인터페이스 템플릿은 가져오기에 필요한 미디어 세부사항들에 대응하는 디스플레이된 그래픽 인터페이스의 부분들을 나타낼 수 있으며, 그래픽 인터페이스의 다른 부분들에 대한 분석을 감소(예를 들어, 무시, 회피)시킬 수 있는 분석을 가능하게 할 수 있다. 일례에서, 그래픽 인터페이스를 분류하는 것은 컴퓨팅 디바이스(120B)가 사용자에게 미디어 항목의 세부사항들을 노출시키기 위한 지침들을 제공하는 것을 가능하게 함으로써 데이터 추출을 향상시킬 수 있다. 지침들은 그래픽 인터페이스를 조작(예를 들어, 탐색)하는 방법을 사용자에게 표시할 수 있으며, 왼쪽으로 스크롤, 항목 드롭다운 확장, 탭 선택, 창 실행, 뒤로 가기, 다른 지침, 또는 이들의 조합과 같은 지침들을 포함할 수 있다.
미디어 세부사항 검출 모듈(226)은 디스플레이된 미디어 항목 세트 내의 하나 이상의 미디어 항목의 미디어 세부사항들(246)을 검출하기 위해, 이미지 특징들(244), 이미지 콘텐츠(127), 다른 데이터, 또는 이들의 조합을 분석할 수 있다. 미디어 세부사항 검출 모듈(226)은 어느 데이터가 특정 엔트리(예를 들어, 제1 행의 미디어 항목)에 대응하는지 및 어느 데이터가 다른 엔트리(예를 들어, 제2 행의 미디어 항목)를 결정하기 위해, 레이아웃 데이터의 관점에서 텍스트 데이터 및 이미지 데이터를 분석할 수 있다. 미디어 세부사항 검출 모듈(226)은 특정 미디어 세부사항들(예를 들어, 타이틀 필드, 시청 필드, 구독 필드)에 대응하는 데이터를 포함하는 그래픽 인터페이스의 특정 영역을 결정하기 위해, 인터페이스 분류 모듈(224)의 출력에 액세스할 수 있다.
미디어 세부사항들(246)은 그래픽 인터페이스에 의해 디스플레이되는 임의의 세부사항들을 포함할 수 있고, 후속하여 특정 미디어 항목들을 식별하기 위해 사용될 수 있다. 미디어 세부사항들은 식별 데이터, 상태 데이터, 요약 데이터, 리뷰 데이터, 다른 데이터, 또는 이들의 조합을 포함할 수 있다. 식별 데이터는 미디어 항목을 식별하기 위해 사용되는 데이터일 수 있으며, 타이틀 데이터(예를 들어, 영화, 쇼, 게임, 시리즈, 에피소드의 타이틀), 설명 데이터(요약, 지속시간), 출시 데이터(예를 들어, 제작 날짜, 업로드 날짜, 출시 날짜), 제작자 데이터(예를 들어, 작가, 제작자, 감독), 미디어 참가자 데이터(예를 들어, 배우, 아티스트), 미디어 제공자(예를 들어, 스튜디오, 콘텐츠 소스), 다른 데이터, 또는 이들의 조합을 포함할 수 있다. 상태 데이터는 소비 데이터, 구독 데이터, 액세스 데이터, 또는 이들의 조합을 포함할 수 있다. 상태 데이터는 특정 미디어 항목이 소비(예를 들어, 시청, 읽기, 청취, 다운로드, 설치 또는 액세스)되었는지 여부를 나타낼 수 있다. 소비 데이터는 소비가 시작되었는지, 진행 중인지, 또는 완료되었는지를 나타낼 수 있으며, 심볼(예를 들어, 체크 표시, 비어있는 원), 레이블(예를 들어, "시청함", "시청 안 함"), 텍스트 글꼴(취소 선, 색상, 굵게), 위치(예를 들어, 시청 섹션), 그래픽 수정(예를 들어, 회색으로 표시된 커버 아트), 다른 표시자, 또는 이들의 조합에 기초할 수 있다.
미디어 식별 컴포넌트(126)는 컴퓨팅 디바이스가 새로운 콘텐츠 소스로부터 하나 이상의 대응하는 미디어 항목을 식별하기 위해 위에서 논의된 데이터를 분석하는 것을 가능하게 할 수 있다. 미디어 식별 컴포넌트(126)는 라이브러리 서비스, 콘텐츠 소스(원본 또는 새로운 콘텐츠 소스), 또는 이들의 조합을 고려하여 본 명세서에서 논의된 데이터에 기초하여 미디어 항목을 식별할 수 있다. 일례에서, 미디어 식별 컴포넌트(126)는 검색 모듈(232), 세부사항 비교 모듈(234), 매칭 모듈(236), 및 참조 저장 모듈(238)을 포함할 수 있다.
검색 모듈(232)은 위에서 논의된 하나 이상의 데이터 항목을 사용하여 미디어 항목들의 하나 이상의 검색을 수행할 수 있다. 예를 들어, 검색 모듈(232)은 이미지로부터 추출된 데이터에 액세스할 수 있고, 추출된 데이터를 이용하여 검색을 수행할 수 있다. 검색은 하나 이상의 키워드(예를 들어, 타이틀, 날짜, 참가자)에 기반한 텍스트 검색, 하나 이상의 그래픽(예를 들어, 커버 아트, 대표 프레임, 장면)에 기반한 그래픽 검색, 다른 검색, 또는 이들의 조합일 수 있다. 검색은 라이브러리 서비스로부터 단일 미디어 항목 또는 복수의 미디어 항목을 반환할 수 있다. 라이브러리 서비스는 컴퓨팅 디바이스(120A) 내부에 있거나(예를 들어, 로컬 데이터베이스) 컴퓨팅 디바이스(120B) 외부에 있을 수 있다(예를 들어, 컴퓨팅 디바이스(120B)로부터 분리되거나 원격). 외부 라이브러리 서비스는 사용자가 전환 중인 콘텐츠 소스와 통합될 수 있거나, 컴퓨팅 디바이스(120B)에 액세스가능한 제3자 라이브러리 서비스일 수 있다. 제3자 라이브러리 서비스는 미디어 항목들의 콘텐츠(예를 들어, 비디오 콘텐츠)를 제공하지 않고서 미디어 항목들에 관한 세부사항들을 제공할 수 있다.
세부사항 비교 모듈(234)은 그래픽 인터페이스로부터 추출된 세부사항들을 하나 이상의 검색으로부터 반환된 세부사항들과 비교할 수 있다. 검색은 하나 이상의 미디어 항목과 함께 검색 결과들을 반환할 수 있고, 세부사항 비교 모듈(234)은 특정 미디어 항목들의 세부사항들을 검색 결과들 내의 하나 이상의 미디어 항목의 세부사항들과 비교할 수 있다. 일례에서, 비교는 특정 미디어 항목 타이틀에 대해 반환된 결과들의 출시 데이터 또는 참가자 데이터를 비교하는 것을 수반할 수 있다.
매칭 모듈(236)은 검색 결과들 및/또는 상기 비교에 기초하여 하나 이상의 일치하는 미디어 항목을 식별할 수 있다. 매칭은 하나 이상의 검색 결과의 순위를 매길 수 있고, 하나 이상의 미디어 항목을 최상의 매칭(예를 들어, 미리 결정된 임계 값을 초과함)으로 식별할 수 있다.
참조 저장 모듈(238)은 식별된 미디어 항목에 대한 참조를 저장할 수 있다. 참조는 제1 콘텐츠 소스(예를 들어, 원본 콘텐츠 소스)의 디스플레이된 미디어 항목 세트로부터 식별될 수 있고, 제2 콘텐츠 소스(예를 들어, 새로운 콘텐츠 소스)에 대한 미디어 항목 세트에 저장될 수 있다. 참조는 제2 콘텐츠 소스가 액세스할 수 있는 미디어 항목을 나타내는 데이터를 저장할 수 있는 임의의 데이터 구조일 수 있으며, 식별자(예를 들어, 비디오 ID), 링크(예를 들어, 하이퍼링크), 다른 식별 데이터 또는 참조, 또는 이들의 조합을 포함할 수 있다.
데이터 저장소(240)는 영구 데이터 스토리지(예를 들어, 플래시 스토리지) 또는 비-영구 데이터 스토리지(예를 들어, 메모리)를 포함할 수 있고, 컴퓨팅 디바이스(120B)에 로컬이거나, 컴퓨팅 디바이스(120B)로부터 원격이거나, 이들의 조합일 수 있다. 로컬 데이터 스토리지는 컴퓨팅 디바이스(120B) 내부에 있을 수 있고, 내장된 스토리지, 이동식 스토리지, 또는 다른 유형의 스토리지를 포함할 수 있다. 원격 데이터 스토리지는 컴퓨팅 디바이스(120B)의 외부에 있을 수 있고, 네트워크 접속을 통해 컴퓨팅 디바이스(120B)에 의해 액세스가능할 수 있다. 일례에서, 컴퓨팅 디바이스(120B)의 데이터 저장소(240)는 내장된 데이터 스토리지를 포함하는 로컬 데이터 스토리지, 및 클라우드 기반 데이터 스토리지일 수 있는 원격 데이터 스토리지의 조합을 포함할 수 있다.
도 3은 기술의 일 구현에 따라 콘텐츠 소스의 그래픽 인터페이스를 광학적으로 분석함으로써 미디어 항목들의 세트를 가져오기 위한 방법(300)의 하나의 실례의 흐름도를 도시한다. 방법(300) 및 그것의 개별 기능들, 루틴들, 서브루틴들 또는 동작들 각각은 방법을 실행하는 컴퓨터 디바이스의 하나 이상의 프로세서에 의해 수행될 수 있다. 특정 구현들에서, 방법(300)은 단일 컴퓨팅 디바이스에 의해 수행될 수 있다. 대안적으로, 방법들(300)은 둘 이상의 컴퓨팅 디바이스에 의해 수행될 수 있으며, 컴퓨팅 디바이스들 각각은 방법의 하나 이상의 개별 기능, 루틴, 서브루틴 또는 동작을 실행한다.
설명의 간략화를 위해, 본 개시내용의 방법들은 일련의 동작들로서 도시되고 설명된다. 그러나, 본 개시내용에 따른 동작들은 다양한 순서로 및/또는 동시에, 그리고 본 명세서에 제시되고 설명되지 않은 다른 동작들과 함께 발생할 수 있다. 또한, 개시된 주제에 따른 방법들을 구현하기 위해, 도시된 모든 동작이 요구되는 것은 아닐 수 있다. 추가적으로, 본 기술분야의 통상의 기술자는 방법들이 상태도를 통한 일련의 상호관련된 상태들 또는 이벤트들로서 대안적으로 표현될 수 있음을 이해하고 인식할 것이다. 추가적으로, 본 명세서에 개시된 방법들은 그러한 방법들을 컴퓨팅 디바이스들에 전송 및 전달하는 것을 용이하게 하기 위해 제조 물품 상에 저장될 수 있음을 이해해야 한다. 본 명세서에서 사용될 때, "제조 물품"이라는 용어는 임의의 컴퓨터 판독가능한 디바이스 또는 저장 매체로부터 액세스가능한 컴퓨터 프로그램을 포괄하도록 의도된다. 일 구현에서, 방법(300)은 도 1 및 도 2에 도시된 바와 같은 컴퓨팅 디바이스(120B)에 의해 수행될 수 있다.
방법(300)은 서버 디바이스 또는 클라이언트 디바이스의 처리 디바이스들에 의해 수행될 수 있으며, 블록(302)에서 시작할 수 있다. 블록(302)에서, 처리 디바이스는 콘텐츠 소스로부터의 미디어 항목들의 세트의 가져오기를 개시할 수 있다. 세트는 하나 이상의 미디어 항목을 포함할 수 있으며, 디지털 비디오 레코더(DVR), 콘텐츠 스트리밍 애플리케이션(예를 들어, Netflix®, HBO Go®, Showtime Anytime®, Prime Video®), 콘텐츠 스토어(예를 들어, iTunes store®, Google play®) 또는 이들의 조합 중 적어도 하나를 포함하는 콘텐츠 소스의 개인 콘텐츠 라이브러리에 대응할 수 있다.
블록(304)에서, 처리 디바이스는 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠를 캡처할 수 있다. 이미지 콘텐츠를 캡처하는 것은 사용자 입력에 기초하여 이미지 캡처 동작을 활성화하고, 그래픽 인터페이스의 이미지 콘텐츠를 수신하고 기록하는 것을 수반할 수 있다. 이미지 캡처 동작은 카메라 동작 또는 스크린 캡처 동작을 포함할 수 있다. 일례에서, 이미지 콘텐츠를 캡처하는 것은 제2 컴퓨팅 디바이스에 의해 제공되는 그래픽 인터페이스의 이미지 콘텐츠(예를 들어, 디스플레이 디바이스의 광학 출력)를 캡처하기 위해 제1 컴퓨팅 디바이스의 카메라 동작을 개시하는 것을 수반할 수 있다. 제1 및 제2 컴퓨팅 디바이스는 각각 이동 전화기 및 텔레비전과 같은 상이한 디바이스들일 수 있다. 다른 예에서, 이미지 콘텐츠를 캡처하는 것은 그래픽 인터페이스의 이미지 콘텐츠(예를 들어, 디스플레이 디바이스를 목적지로 하는 디지털 출력)를 캡처하는 컴퓨팅 디바이스의 스크린 캡처 동작을 개시하는 것을 포함할 수 있다. 그래픽 인터페이스는 동일한 컴퓨팅 디바이스에서 실행되는 콘텐츠 소스의 애플리케이션에 의해 제공될 수 있다.
이미지 캡처 동작은 복수의 정지 이미지(예를 들어, 카메라 사진 또는 스크린 샷) 또는 복수의 비디오 이미지(예를 들어, 카메라 비디오 또는 비디오 스크린 캡처)를 캡처할 수 있다. 이미지들은 하나 이상의 스크롤 동작(예를 들어, 다중-평면 스크롤) 동안 발생하는 모션과 같은 그래픽 인터페이스의 모션을 캡처할 수 있다. 스크롤 동작은 복수의 미디어 항목의 세부사항을 노출할 수 있고, 수평 스크롤, 수직 스크롤, 다른 스크롤, 또는 이들의 조합 중 적어도 하나를 포함할 수 있다. 그래픽 인터페이스는 미디어 항목들의 세트의 서브세트를 디스플레이하는 차원들을 포함할 수 있고, 세트 내의 적어도 하나 이상의 다른 미디어 항목의 세부사항들을 갖지 않을 수 있다(예를 들어, 누락, 숨김, 부재). 일례에서, 처리 디바이스는 복수의 이미지를 분석할 수 있고, 복수의 이미지 중 하나 이상의 이미지 콘텐츠를 스티칭하여 스티칭된 이미지 콘텐츠를 생성할 수 있다. 스티칭된 이미지 콘텐츠는 그래픽 인터페이스의 이동에 의해 노출된 미디어 항목의 세부사항들을 포함할 수 있다.
블록(306)에서, 처리 디바이스는 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출할 수 있다. 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 것은 콘텐츠 소스의 세트의 하나 이상의 미디어 항목의 텍스트 및/또는 그래픽(예를 들어, 커버 아트, 앨범 아트, 섬네일 그래픽)을 검출하기 위해, 이미지 콘텐츠에 대한 광학 인식을 수행하는 것을 포함할 수 있다. 추출된 데이터는 그래픽 인터페이스의 레이아웃 데이터, 텍스트 데이터, 그래픽 데이터, 또는 다른 데이터를 포함할 수 있다. 처리 디바이스는 추출된 데이터를 분석하여 미디어 항목이 소비되었는지(예를 들어, 완전히 소비되었는지 또는 부분적으로 소비되었는지, 소비되지 않았는지)를 결정할 수 있다.
블록(308)에서, 처리 디바이스는 이미지 콘텐츠로부터의 데이터에 기초하여 콘텐츠 소스의 미디어 항목을 식별할 수 있다. 콘텐츠 소스의 미디어 항목을 식별하는 것은 이미지 콘텐츠로부터의 데이터 항목(예를 들어, 타이틀 텍스트)을 사용하여 라이브러리 서비스의 검색을 수행하는 것을 수반할 수 있다. 라이브러리 서비스는 콘텐츠 소스로부터 분리될 수 있으며, 콘텐츠 공유 플랫폼 또는 제3자 소스(예를 들어, IMDB, Gracenote)에 의해 제공할 수 있다. 처리 디바이스는 또한 검색의 결과들을 이미지 콘텐츠로부터의 다른 데이터 단편(예를 들어, 출시 날짜)과 비교하고, 이미지 콘텐츠의 데이터와 가장 잘 일치하는(예를 들어, 미리 결정된 임계 값 내에서 일치하는) 결과들로부터 미디어 항목을 선택할 수 있다.
블록(310)에서, 처리 디바이스는 미디어 항목에 대한 참조를 저장할 수 있다. 미디어 항목에 대한 참조를 저장하는 것은 미디어 항목에 대한 참조로 제2 콘텐츠 소스의 개인 콘텐츠 라이브러리를 업데이트하는 것을 수반할 수 있다. 블록(310)을 참조하여 위에서 설명된 동작들을 완료하는 것에 응답하여, 방법은 종료 될 수 있다.
도 4는 콘텐츠 소스(110A)의 예시적인 그래픽 인터페이스(421), 및 그래픽 인터페이스(421)에 의해 디스플레이되는 미디어 항목들의 세트를 가져오기 위한 예시적인 컴퓨팅 디바이스(120B)를 제공한다. 도시된 예에서, 복수의 컴퓨팅 디바이스(120A-B), 디스플레이 디바이스(422), 그래픽 인터페이스(421), 및 이미지 콘텐츠(127)가 존재한다.
컴퓨팅 디바이스(120A)는 특정 콘텐츠 소스(110A)(예를 들어, 케이블 회사)에 연관된 셋톱 박스일 수 있다. 컴퓨팅 디바이스(120A)는 유선 접속(예를 들어, HDMI, VGA, DisplayPort) 또는 무선 접속(예를 들어, 와이파이, 블루투스)을 통해 디스플레이 디바이스(422A)에 통신가능하게 결합될 수 있다. 컴퓨팅 디바이스(120A)는 디스플레이 디바이스(422)(예를 들어, 텔레비전 스크린)에 그래픽 인터페이스(421)를 제공할 수 있고, 이는 컴퓨팅 디바이스(120B)에 대한 그래픽 인터페이스를 디스플레이할 수 있다. 컴퓨팅 디바이스(120B)는 카메라를 갖는 이동 전화기일 수 있고, 그래픽 인터페이스(421)의 이미지 콘텐츠(127)를 캡처할 수 있다. 컴퓨팅 디바이스(120B)는 다른 콘텐츠 소스에 연관될 수 있고, 미디어 항목들(112A-G)의 세트를 다른 콘텐츠 소스에 가져오기 위해 도 1 내지 도 3과 관련하여 위에서 논의된 특징들을 수행할 수 있다.
도 5는 본 개시내용의 하나 이상의 양태에 따라 동작하는 컴퓨터 시스템의 블록도를 도시한다. 특정 구현들에서, 컴퓨터 시스템(500)은 (예를 들어, 근거리 통신망(LAN), 인트라넷, 엑스트라넷, 또는 인터넷과 같은 네트워크를 통해) 다른 컴퓨터 시스템들에 접속될 수 있다. 컴퓨터 시스템(500)은 클라이언트-서버 환경에서 서버 또는 클라이언트 컴퓨터의 용량으로, 또는 피어-투-피어 또는 분산 네트워크 환경에서 피어 컴퓨터로서 동작할 수 있다. 컴퓨터 시스템(500)은 해당 디바이스에 의해 취해질 액션들을 지정하는 명령어들의 세트(순차적 또는 기타)을 실행할 수 있는 개인용 컴퓨터(PC), 태블릿 PC, 셋톱 박스(STB), PDA(Personal Digital Assistant), 셀룰러 폰, 웹 기기, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 임의의 디바이스에 의해 제공될 수 있다. 또한, "컴퓨터"라는 용어는 본 명세서에 설명된 방법들 중 임의의 하나 이상을 수행하기 위해 명령어 세트(또는 복수의 명령어 세트)를 개별적으로 또는 공동으로 실행하는 컴퓨터들의 임의의 컬렉션을 포함해야 한다.
추가 양태에서, 컴퓨터 시스템(500)은 버스(508)를 통해 서로 통신할 수 있는, 처리 디바이스(502), 휘발성 메모리(504)(예를 들어, 랜덤 액세스 메모리(RAM)), 비-휘발성 메모리(506)(예를 들어, 판독 전용 메모리(ROM) 또는 전기 소거가능한 프로그래밍가능한 ROM(EEPROM)) 및 데이터 저장 디바이스(516)를 포함할 수 있다.
처리 디바이스(502)는 (예를 들어, CISC(complex instruction set computing) 마이크로프로세서, RISC(reduced instruction set computing) 마이크로프로세서, VLIW(very long instruction word) 마이크로프로세서, 다른 유형의 명령어 세트들을 구현하는 마이크로프로세서, 또는 명령어 세트들의 유형들의 조합을 구현하는 마이크로프로세서와 같은) 범용 프로세서, 또는 (예를 들어, ASIC(application specific integrated circuit), FPGA(field programmable gate array), DSP(digital signal processor), 또는 네트워크 프로세서와 같은) 특수화된 프로세서와 같은 하나 이상의 프로세서에 의해 제공될 수 있다.
컴퓨터 시스템(500)은 네트워크 인터페이스 디바이스(522)를 더 포함할 수 있다. 컴퓨터 시스템(500)은 또한 비디오 디스플레이 유닛(510)(예를 들어, LCD), 영숫자 입력 디바이스(512)(예를 들어, 키보드), 커서 제어 디바이스(514)(예를 들어, 마우스) 및 신호 생성 디바이스(520)를 포함할 수 있다.
데이터 저장 디바이스(516)는 방법(300)을 구현하기 위한 명령어들 및 도 1 및 도 2의 미디어 식별 컴포넌트(126)를 인코딩하는 명령어들을 포함하여, 본 명세서에 설명된 방법들 또는 기능들 중 임의의 하나 이상을 인코딩하는 명령어들(526)을 저장할 수 있는 비-일시적 컴퓨터 판독가능한 저장 매체(524)를 포함할 수 있다.
명령어들(526)은 또한 컴퓨터 시스템(500)에 의한 실행 동안 휘발성 메모리(504) 내에 및/또는 처리 디바이스(502) 내에 완전히 또는 부분적으로 상주할 수 있으므로, 휘발성 메모리(504) 및 처리 디바이스(502)는 또한 머신 판독가능한 저장 매체를 구성할 수 있다.
컴퓨터 판독가능한 저장 매체(524)는 실례들에서 단일 매체인 것으로 도시되어 있지만, "컴퓨터 판독가능한 저장 매체"라는 용어는 하나 이상의 실행가능한 명령어 세트를 저장하는 단일 매체 또는 복수의 매체(예를 들어, 중앙 집중식 또는 분산형 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 포함할 것이다. "컴퓨터 판독가능한 저장 매체"라는 용어는 또한 컴퓨터에 의해 실행되어 컴퓨터로 하여금 본 명세서에 설명된 방법들 중 임의의 하나 이상을 수행하게 하는 명령어 세트를 저장 또는 인코딩할 수 있는 임의의 유형의 매체를 포함할 것이다. "컴퓨터 판독가능한 저장 매체"라는 용어는 고체 상태 메모리들, 광학 매체들, 및 자기 매체들을 포함하지만 이에 제한되지는 않는다.
본 명세서에 설명된 방법들, 컴포넌트들, 및 특징들은 개별 하드웨어 컴포넌트들에 의해 구현될 수 있거나, ASICS, FPGA, DSP 또는 유사한 디바이스들과 같은 다른 하드웨어 컴포넌트들의 기능에 통합될 수 있다. 추가로, 방법들, 컴포넌트들 및 특징들은 하드웨어 디바이스들 내의 펌웨어 모듈들 또는 기능 회로에 의해 구현될 수 있다. 또한, 방법들, 컴포넌트들, 및 특징들은 하드웨어 디바이스들 및 컴퓨터 프로그램 컴포넌트들의 임의의 조합으로, 또는 컴퓨터 프로그램으로 구현될 수 있다.
달리 구체적으로 언급되지 않는 한, "검출", "결정", "해제", "파괴", "개시", "생성", "포기" 등과 같은 용어들은 컴퓨터 시스템 레지스터들 또는 메모리들 내의 물리적(전자적) 수량으로 표현된 데이터를, 컴퓨터 시스템 메모리들 또는 레지스터들, 또는 다른 그러한 정보 저장, 전송 또는 디스플레이 디바이스들 내의 물리적 수량들로서 유사하게 표현되는 다른 데이터로 조작하고 변환하는, 컴퓨터 시스템들에 의해 수행되거나 구현되는 액션들 및 프로세스들을 지칭한다. 또한, 본 명세서에서 사용되는 용어 "제1", "제2", "제3", "제4" 등은 상이한 요소들을 구별하기 위한 라벨들로서 의도되며, 그 숫자 지정에 따른 서수적 의미는 갖지 않을 수 있다.
본 명세서에 설명된 예들은 또한 본 명세서에 설명된 방법들을 수행하기 위한 장치에 관한 것이다. 이 장치는 여기에 설명된 방법들을 수행하기 위해 특별히 구성될 수 있거나, 컴퓨터 시스템에 저장된 컴퓨터 프로그램에 의해 선택적으로 프로그래밍된 범용 컴퓨터 시스템을 포함할 수 있다. 그러한 컴퓨터 프로그램은 컴퓨터 판독가능한 유형의 저장 매체에 저장될 수 있다.
본 명세서에 설명된 방법들 및 실례들은 본질적으로 임의의 특정 컴퓨터 또는 다른 장치에 관련되지 않는다. 다양한 범용 시스템들이 본 명세서에 설명된 교시에 따라 사용될 수 있거나, 방법들(500) 및/또는 그것의 개별 기능들, 루틴들, 서브루틴들 또는 동작들 각각을 수행하기 위해 보다 전문화된 장치를 구성하는 것이 편리함을 입증할 수 있다. 이러한 다양한 시스템들에 대한 구조의 예들은 위의 설명에 제시된다.
상술한 설명은 설명하기 위한 것이지 한정하도록 의도된 것은 아니다. 본 개시내용은 구체적인 실례들 및 구현들을 참조하여 설명되었지만, 본 개시내용은 설명된 예들 및 구현들에 제한되지 않음이 인식될 것이다. 본 개시내용의 범위는, 첨부된 청구항들에 부여되는 등가물들의 전체 범위와 함께, 이하의 청구항들을 참조하여 결정되어야 한다.

Claims (15)

  1. 방법으로서,
    처리 디바이스에 의해, 콘텐츠 소스로부터의 미디어 항목들의 세트의 가져오기(import)를 개시하는 단계 - 상기 콘텐츠 소스는 개인 콘텐츠 라이브러리를 포함함 -;
    상기 콘텐츠 소스의 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 단계;
    상기 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 단계;
    상기 이미지 콘텐츠로부터의 데이터에 기초하여 상기 콘텐츠 소스의 미디어 항목을 식별하는 단계; 및
    상기 미디어 항목에 대한 참조를 저장하는 단계 - 상기 미디어 항목에 대한 참조를 저장하는 단계는 제2 콘텐츠 소스의 개인 콘텐츠 라이브러리를 업데이트하는 단계를 포함함 -
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 콘텐츠 소스의 개인 콘텐츠 라이브러리 및 상기 제2 콘텐츠 소스의 개인 콘텐츠 라이브러리 중 하나 또는 둘 다는 디지털 비디오 레코더(DVR), 콘텐츠 스트리밍 애플리케이션, 또는 콘텐츠 저장소 중 적어도 하나에 대응하는, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 그래픽 인터페이스의 이미지 콘텐츠로부터 데이터를 추출하는 단계는 상기 이미지 콘텐츠에 대한 광학 인식을 수행하여 상기 콘텐츠 소스로부터의 상기 미디어 항목들의 세트의 하나 이상의 미디어 항목에 관련된 데이터를 검출하는 단계를 포함하는, 방법.
  4. 제3항에 있어서, 상기 하나 이상의 미디어 항목에 관련된 데이터는 텍스트 및 그래픽 중 임의의 것을 포함하는, 방법.
  5. 제1항 또는 제2항에 있어서, 상기 이미지 콘텐츠를 캡처하는 단계는 제2 컴퓨팅 디바이스에 의해 제공되는 상기 그래픽 인터페이스의 이미지 콘텐츠를 캡처하기 위해 제1 컴퓨팅 디바이스의 카메라 동작을 개시하는 단계를 포함하는, 방법.
  6. 제5항에 있어서, 상기 제1 컴퓨팅 디바이스는 이동 전화기이고, 상기 제2 컴퓨팅 디바이스는 텔레비전인, 방법.
  7. 제1항 또는 제2항에 있어서, 상기 이미지 콘텐츠를 캡처하는 단계는 상기 그래픽 인터페이스의 이미지 콘텐츠를 캡처하기 위해 컴퓨팅 디바이스의 스크린 캡처 동작을 개시하는 단계를 포함하며, 상기 그래픽 인터페이스는 상기 이미지 콘텐츠를 캡처하는 상기 컴퓨팅 디바이스에서 실행되는 상기 콘텐츠 소스의 애플리케이션에 의해 제공되는, 방법.
  8. 제1항 또는 제2항에 있어서, 상기 그래픽 인터페이스의 이미지 콘텐츠를 캡처하는 단계는 스크롤 동작 동안 상기 그래픽 인터페이스의 비디오를 캡처하는 단계를 포함하고, 상기 스크롤 동작은 복수의 미디어 항목의 세부사항들을 노출하고 수평 스크롤 또는 수직 스크롤 중 적어도 하나를 포함하는, 방법.
  9. 제1항 또는 제2항에 있어서,
    상기 그래픽 인터페이스의 복수의 이미지를 분석하는 단계 - 상기 복수의 이미지는 복수의 비디오 프레임 또는 복수의 정지 이미지를 포함함 -; 및
    스티칭된 이미지 콘텐츠를 생성하기 위해, 상기 복수의 이미지 중 하나 이상의 이미지의 이미지 콘텐츠를 스티칭하는 단계 - 스티칭된 이미지 콘텐츠는 상기 그래픽 인터페이스의 이동에 의해 노출된 미디어 항목의 세부사항들을 포함함 -
    를 더 포함하는 방법.
  10. 제1항 또는 제2항에 있어서, 상기 콘텐츠 소스의 미디어 항목을 식별하는 단계는:
    상기 이미지 콘텐츠로부터의 데이터 항목을 이용하여 라이브러리 서비스의 검색을 수행하는 단계;
    상기 검색의 결과들을 상기 이미지 콘텐츠로부터의 다른 데이터 단편과 비교하는 단계; 및
    상기 이미지 콘텐츠의 데이터와 일치하는 결과들로부터 미디어 항목을 선택하는 단계
    를 포함하는, 방법.
  11. 제1항 또는 제2항에 있어서, 상기 그래픽 인터페이스의 이미지 콘텐츠에 기초하여 상기 미디어 항목이 소비되었는지를 결정하는 단계를 더 포함하는, 방법.
  12. 제1항 또는 제2항에 있어서, 상기 미디어 항목은 비디오, 오디오 녹음, 사진, 책, 또는 애플리케이션 중 적어도 하나를 포함하는, 방법.
  13. 시스템으로서,
    메모리; 및
    상기 메모리에 통신가능하게 결합되고, 제1항 또는 제2항의 방법을 수행하도록 구성되는 처리 디바이스
    를 포함하는 시스템.
  14. 비-일시적 머신 판독가능한 저장 매체로서,
    실행될 때, 처리 디바이스로 하여금 제1항 또는 제2항에 따른 동작들을 수행하게 하는 명령어들을 저장하는 비-일시적 머신 판독가능한 저장 매체.
  15. 삭제
KR1020207028823A 2018-05-22 2018-05-22 그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기 KR102432310B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/033966 WO2019226157A1 (en) 2018-05-22 2018-05-22 Importing media libraries using graphical interface analysis

Publications (2)

Publication Number Publication Date
KR20200128730A KR20200128730A (ko) 2020-11-16
KR102432310B1 true KR102432310B1 (ko) 2022-08-11

Family

ID=63686058

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207028823A KR102432310B1 (ko) 2018-05-22 2018-05-22 그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기

Country Status (8)

Country Link
US (1) US11928162B2 (ko)
EP (1) EP3762837A1 (ko)
JP (1) JP7066002B2 (ko)
KR (1) KR102432310B1 (ko)
CN (1) CN111989647A (ko)
AU (1) AU2018424260B2 (ko)
CA (1) CA3096364A1 (ko)
WO (1) WO2019226157A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140181853A1 (en) * 2012-09-19 2014-06-26 Google Inc. Two Way Control of a Set Top Box using Optical Character Recognition

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947571B1 (en) 1999-05-19 2005-09-20 Digimarc Corporation Cell phones with optical capabilities, and related applications
US20030191776A1 (en) 2002-04-05 2003-10-09 Pere Obrador Media object management
KR20060005372A (ko) 2003-04-18 2006-01-17 레노보 (싱가포르) 피티이. 엘티디. 무선 인터넷 연결 지점을 통하여 방송 프로그램에 관한정보 또는 서비스에 접속하는 시스템 및 방법
BRPI0418908A (pt) 2004-05-26 2007-11-27 Nokia Corp método, programa de computador, terminal móvel e sistema de armazenagem para gerenciar os itens de mìdia
US8116537B2 (en) * 2007-04-04 2012-02-14 Sony Corporation Image recording device, player device, imaging device, player system, method of recording image, and computer program
US7882070B2 (en) * 2007-12-31 2011-02-01 Sap Ag System and method for UDDI data migration using standard UDDI v3 API
US8886683B2 (en) * 2009-03-04 2014-11-11 Panasonic Intellectual Property Corporation Of America Metadata generation management device, metadata generation system, integrated circuit for managing generation of metadata, metadata generation management method, and program
US20110289054A1 (en) * 2010-05-19 2011-11-24 Southern Company Services Content Management Migration Manager System and Method
KR101899548B1 (ko) * 2012-04-16 2018-09-17 삼성전자 주식회사 휴대단말에서 피드 정보 수집 방법 및 장치
US10735792B2 (en) * 2012-09-19 2020-08-04 Google Llc Using OCR to detect currently playing television programs
US9002815B2 (en) * 2012-12-27 2015-04-07 Dropbox, Inc. Migrating content items
CN106165436B (zh) 2014-02-28 2019-07-12 谷歌有限责任公司 使用光学字符识别对机顶盒进行双向控制
US9978095B2 (en) 2014-08-30 2018-05-22 Digimarc Corporation Methods and arrangements including data migration among computing platforms, E.G. through use of steganographic screen encoding
US20170264941A1 (en) 2016-03-10 2017-09-14 Sony Corporation Internet-centric dvr to dvr transfer of customer-selected content

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140181853A1 (en) * 2012-09-19 2014-06-26 Google Inc. Two Way Control of a Set Top Box using Optical Character Recognition

Also Published As

Publication number Publication date
WO2019226157A1 (en) 2019-11-28
US11928162B2 (en) 2024-03-12
JP2021520139A (ja) 2021-08-12
EP3762837A1 (en) 2021-01-13
AU2018424260A1 (en) 2020-10-29
KR20200128730A (ko) 2020-11-16
CN111989647A (zh) 2020-11-24
CA3096364A1 (en) 2019-11-28
AU2018424260B2 (en) 2021-10-28
US20210294836A1 (en) 2021-09-23
JP7066002B2 (ja) 2022-05-12

Similar Documents

Publication Publication Date Title
US10949052B2 (en) Social interaction in a media streaming service
US10714145B2 (en) Systems and methods to associate multimedia tags with user comments and generate user modifiable snippets around a tag time for efficient storage and sharing of tagged items
US11531442B2 (en) User interface providing supplemental and social information
JP2018085754A (ja) 動画コンテンツのハイライト映像を抽出して提供する方法およびシステム
US20150278232A1 (en) System And Method For Generating Media Bookmarks
CN107925788B (zh) 基于数据结构化的直观的视频内容再生成方法及其用户界面装置
US9774915B2 (en) System and method for media presentation with dynamic secondary content
US10390067B1 (en) Predicting video start times for maximizing user engagement
US11630862B2 (en) Multimedia focalization
US20220107978A1 (en) Method for recommending video content
WO2019117882A1 (en) Providing a video preview of search results
US11487407B1 (en) Motion stills experience
KR102432310B1 (ko) 그래픽 인터페이스 분석을 사용하여 미디어 라이브러리들을 가져오기
US20160182963A1 (en) Sentv tablet ux
US20140189769A1 (en) Information management device, server, and control method
KR102226994B1 (ko) 콘텐츠 서비스를 제공하는 방법 및 서버
US11977599B2 (en) Matching video content to podcast episodes
GB2506613A (en) User input timing data to generate a video for accompanying an audio track

Legal Events

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