KR101579025B1 - 미디어 출력의 선택적 미러링 - Google Patents

미디어 출력의 선택적 미러링 Download PDF

Info

Publication number
KR101579025B1
KR101579025B1 KR1020147019238A KR20147019238A KR101579025B1 KR 101579025 B1 KR101579025 B1 KR 101579025B1 KR 1020147019238 A KR1020147019238 A KR 1020147019238A KR 20147019238 A KR20147019238 A KR 20147019238A KR 101579025 B1 KR101579025 B1 KR 101579025B1
Authority
KR
South Korea
Prior art keywords
media
destination device
media element
mirror
zone
Prior art date
Application number
KR1020147019238A
Other languages
English (en)
Other versions
KR20140107425A (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 KR20140107425A publication Critical patent/KR20140107425A/ko
Application granted granted Critical
Publication of KR101579025B1 publication Critical patent/KR101579025B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/04Display device controller operating with a plurality of display units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

몇몇 양태들에 따르면, 이 개시는, 소스 디바이스의 네이티브 미디어 출력을 상이한 목적지 디바이스를 통해 미러링하기 위한 기술들을 설명한다. 소스 디바이스는 목적지 디바이스와 연관된 출력 인터페이스를 통한 미디어에 대해 목적지 디바이스를 제어할 수도 있다. 소스 디바이스는, 네이티브 미디어의 미디어 엘리먼트를 수신하고, 이에 응답하여, 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 미디어 엘리먼트를 포함하는 네이티브 미디어를 출력 (미러링) 할지 여부를 결정할 수도 있다. 다른 양태들에 따르면, 이 개시는, 적어도 하나의 미디어 엘리먼트가, 다른 네이티브 미디어를 미러링하도록 동작하는 목적지 디바이스를 통해 미러링되는 것을 방지하기 위한 기술들을 설명한다. 일예로서, 소스 디바이스는, 적어도 하나의 구역과 연관된 미디어 출력을 동결하기 위해, 미디어 엘리먼트와 연관된 적어도 하나의 구역을 소스 디바이스가 어떻게 인코딩하는지를 변화시킬 수도 있다.

Description

미디어 출력의 선택적 미러링{SELECTIVE MIRRORING OF MEDIA OUTPUT}
본 개시는 일반적으로 하나 이상의 사용자들에게 미디어 출력 (예를 들어, 오디오 및/또는 시각적 출력) 을 제공하도록 구성된 디바이스들에 관한 것이다.
근년, 컴퓨팅 디바이스들은 사용자들에게 하나 이상의 기능성을 제공하도록 끊임없이 발달하였다. 예를 들어, 스마트 폰, 태블릿 컴퓨터, 랩톱 컴퓨터, 또는 다른 컴퓨팅 디바이스는 사용자에게 기능성을 각각 제공하는 복수의 상이한 소프트웨어 애플리케이션들을 실행하도록 구성될 수도 있다. 몇몇 예들에서, 이러한 컴퓨팅 디바이스는 컴퓨팅 디바이스의 디스플레이 및/또는 오디오 스피커들과 같은, 적어도 하나의 네이티브 출력 인터페이스를 포함할 수도 있다.
몇몇 예들에서, 이러한 컴퓨팅 디바이스는, 컴퓨팅 디바이스로 하여금, 컴퓨팅 디바이스의 네이티브 출력 인터페이스 (예를 들어, 디스플레이, 스피커들) 를 통해 사용자에게 하나 이상의 메시지들을 포함하는 하나 이상의 미디어 엘리먼트들을 출력하게 하는 하나 이상의 통신 애플리케이션들 (예를 들어, 음성 호, 텍스트-메시징, 전자 메일, 화상 전화, 쇼셜 네트워킹) 을 포함할 수도 있다. 예를 들어, 텍스트-메시징 애플리케이션은 텍스트 메시지를 수신하고, 사용자에게 그 들어오는 텍스트 메시지를 알림/통지하기 위해 컴퓨팅 디바이스의 네이티브 출력 인터페이스를 통해 출력될 미디어 엘리먼트 (예를 들어, 팝-업 통지 및/또는 연관된 가청 사운드) 를 생성할 수도 있다.
다른 예에서, 이러한 컴퓨팅 디바이스는, 사운드 (예를 들어, mp3 플레이어, 디지털 라디오 스테이션, 클라우드 뮤직 네트워크) 및/또는 비디오 (예를 들어, 디지털 비디오 플레이어, 스트리밍 비디오 애플리케이션) 와 같은 하나 이상의 미디어 엘리먼트들을 컴퓨팅 디바이스의 네이티브 출력 인터페이스를 통해 출력하도록 구성된 하나 이상의 미디어 애플리케이션들을 포함할 수도 있다. 다른 예들에서, 컴퓨팅 디바이스는, 하나 이상의 게이밍, 사진 보기, 캘린더, 알람, 또는, 컴퓨팅 디바이스로 하여금 하나 이상의 미디어 엘리먼트들을 포함하는 네이티브 미디어를 컴퓨팅 디바이스의 네이티브 출력 인터페이스를 통해 출력하게 하도록 구성된 다른 애플리케이션들을 포함할 수도 있다.
이 개시는 소스 디바이스의 오디오 및/또는 시각적 미디어 출력과 같은 네이티브 미디어 출력을 목적지 디바이스를 통해 미러링하기 위한 기술들에 관한 것이다.
이들 기술들에 따르면, 소스 디바이스 (source device) 는, 소스 디바이스의 네이티브 미디어 출력의 미디어 엘리먼트들과 실질적으로 유사한 미디어의 하나 이상의 미디어 엘리먼트들이 목적지 디바이스 (destination device) 를 통해 출력되도록 하는 미러링 (mirroring) 모드에서 동작할 수도 있다. 또한, 이들 기술들에 따르면, 소스 디바이스는 미디어의 다른 미디어 엘리먼트를 수신할 수도 있다. 수신된 미디어 엘리먼트를 수신하는 것에 응답하여, 소스 디바이스는 수신된 미디어 엘리먼트의 적어도 하나의 특성들을 적어도 하나의 파라미터에 대해 비교하고, 그 비교에 기초하여 목적지 디바이스로 하여금 적어도 하나의 수신된 미디어 엘리먼트를 미러링하게 할지 여부를 결정할 수도 있다.
몇몇 예들에서, 소스 디바이스는, 미디어 엘리먼트의 미러링 상태가 (예를 들어 적어도 하나의 파라미터에 기초하여) 해결될 때까지, 수신된 미디어 엘리먼트가 목적지 디바이스를 통해 출력되는 것을 방지하면서, 목적지 디바이스로 하여금 소스 디바이스의 다른 네이티브 미디어를 출력하게 할 수도 있다.
일예에 따르면, 목적지 디바이스를 통해 소스 디바이스의 네이티브 (native) 미디어를 미러링하는 방법이 본 명세서에 설명된다. 이 방법은, 소스 디바이스의 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하는 단계를 포함한다. 방법은 또한, 목적지 디바이스로 하여금, 목적지 디바이스와 연관된 출력 인터페이스를 통해 제 1 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 하는 단계를 더 포함한다. 방법은 또한, 소스 디바이스의 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하는 단계를 더 포함한다. 방법은 또한, 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 할지 여부를 결정하는 단계를 더 포함한다.
다른 예에 따르면, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하도록 구성된 소스 디바이스가 본 명세서에서 설명된다. 소스 디바이스는, 소스 디바이스의 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하고, 목적지 디바이스로 하여금, 목적지 디바이스와 연관된 출력 인터페이스를 통해 제 1 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 하며, 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하고, 그리고, 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 할지 여부를 결정하도록 구성되는 미러링 모듈을 포함한다.
다른 예에 따르면, 명령들을 저장한 컴퓨터 판독가능 저장 매체가 본 명세서에서 설명된다. 이 명령들은 컴퓨팅 디바이스로 하여금, 소스 디바이스의 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하게 하도록 구성된다. 이 명령들은 또한, 컴퓨팅 디바이스로 하여금, 목적지 디바이스로 하여금, 목적지 디바이스와 연관된 출력 인터페이스를 통해 제 1 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하도록 하게 하도록 구성된다. 명령들은 또한, 컴퓨팅 디바이스로 하여금, 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하게 하도록 구성된다. 명령들은 또한, 컴퓨팅 디바이스로 하여금, 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 할지 여부를 결정하게 하도록 구성된다.
다른 예에 따르면, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하도록 구성된 소스 디바이스가 본 명세서에서 설명된다. 이 디바이스는, 소스 디바이스의 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하는 수단을 포함한다. 디바이스는, 목적지 디바이스로 하여금, 목적지 디바이스와 연관된 출력 인터페이스를 통해 제 1 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 하는 수단을 더 포함한다. 디바이스는, 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하는 수단을 더 포함한다. 디바이스는, 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하게 할지 여부를 결정하는 수단을 더 포함한다.
다른 예에 따르면, 비디오 데이터의 프레임을 인코딩하는 방법이 본 명세서에서 설명된다. 이 방법은, 동결 (freeze) 할 비디오 데이터의 프레임의 적어도 하나의 구역 (region) 을 식별하는 단계를 포함한다. 방법은, 식별된 적어도 하나의 구역의 외부에 있는 비디오 프레임에서의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하는 단계를 더 포함한다. 방법은, 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 단계를 더 포함한다. 방법은, 비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 프레임이 목적지 디바이스를 통해 출력될 때 식별된 적어도 하나의 구역이 프레임 내에서 시각적으로 동결되게 하는 단계를 더 포함한다.
다른 예에 따르면, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스가 본 명세서에서 설명된다. 이 디바이스는, 동결할 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하도록 구성된 미러링 모듈을 포함한다. 디바이스는, 식별된 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하고; 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하며; 그리고 비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 프레임이 목적지 디바이스를 통해 출력될 때 식별된 적어도 하나의 구역이 프레임 내에서 시각적으로 동결되게 하도록 구성된 비디오 인코더를 더 포함한다.
다른 예에 따르면, 명령들을 저장한 컴퓨터 판독가능 저장 매체가 본 명세서에서 설명된다. 이 명령들은 컴퓨팅 디바이스로 하여금, 동결할 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하게 하도록 구성된다. 명령들은 또한, 컴퓨팅 디바이스로 하여금, 식별된 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하게 하도록 구성된다. 명령들은 또한, 컴퓨팅 디바이스로 하여금, 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하게 하도록 구성된다. 명령들은 또한, 컴퓨팅 디바이스로 하여금, 비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 프레임이 목적지 디바이스를 통해 출력될 때 식별된 적어도 하나의 구역이 프레임 내에서 시각적으로 동결되도록 하게 하도록 구성된다.
다른 예에 따르면, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스가 본 명세서에서 설명된다. 이 디바이스는, 동결할 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하는 수단을 포함한다. 디바이스는, 식별된 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하는 수단을 더 포함한다. 디바이스는, 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 수단을 더 포함한다. 디바이스는, 비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 프레임이 목적지 디바이스를 통해 출력될 때 식별된 적어도 하나의 구역이 프레임 내에서 시각적으로 동결되게 하는 수단을 더 포함한다.
본 발명의 하나 이상의 실시형태들의 상세들은 첨부 도면들 및 이하의 상세한 설명에서 전개된다. 본 발명의 다른 특징들, 목적들, 및 이점들은 상세한 설명, 도면들, 및 청구항들로부터 명백하게 될 것이다.
도 1 은 이 개시의 하나 이상의 양태들과 일치하는, 적어도 하나의 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어 출력을 미러링하도록 구성된 소스 디바이스의 일예를 나타낸 개념도이다.
도 2 는 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스 및 목적지 디바이스에 의한 미디어 출력의 스크린 샷 예들을 나타내는 개념도이다.
도 3 은 이 개시의 하나 이상의 양태들과 일치하는, 적어도 하나의 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어 출력을 미러링하도록 구성된 소스 디바이스의 일예를 나타내는 블록도이다.
도 4 는 이 개시의 하나 이상의 양태들과 일치하는, 네이티브 미디어 출력의 적어도 하나의 미디어를 미러링하도록 목적지 디바이스를 제어하는 방법의 일예를 나타내는 흐름도이다.
도 5 는 이 개시의 하나 이상의 양태들과 일치하는, 사용자에게 제공될 수도 있는 사용자 인터페이스의 일예를 나타내는 개념도이다.
도 6 은 이 개시의 하나 이상의 양태들과 일치하는, 사용자에게 제공될 수도 있는 사용자 인터페이스의 다른 예를 나타내는 개념도이다.
도 7 은 이 개시의 하나 이상의 양태들과 일치하는, 네이티브 미디어 출력을 미러링하도록 목적지 디바이스를 제어하는 방법의 일예를 나타내는 흐름도이다.
도 8 은 이 개시의 하나 이상의 양태들과 일치하는, 비디오 인코더를 포함하는 소스 디바이스 및 비디오 디코더를 포함하는 목적지 디바이스의 일예를 나타내는 블록도이다.
도 9 및 도 10 은 이 개시의 하나 이상의 양태들과 일치하는, 목적지 디바이스에 의해 출력되는 프레임 미디어에서 적어도 하나의 식별된 구역을 시각적으로 동결하는 기술의 일예를 나타내는 개념도이다.
도 11 은 이 개시의 하나 이상의 양태들과 일치하는, 목적지 디바이스에 의해 출력되는 프레임 미디어에서 적어도 하나의 식별된 구역을 시각적으로 동결하는 방법의 일예를 나타내는 흐름도이다.
도 12 는 이 개시의 하나 이상의 양태들과 일치하는, 목적지 디바이스를 통해 미디어를 미러링하는 방법의 일예를 나타내는 흐름도이다.
도 1 은 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스 (110)의 네이티브 미디어를 출력하도록 적어도 하나의 목적지 디바이스 (114) 를 제어하도록 구성된 소스 컴퓨팅 디바이스 (110) 의 일예를 나타내는 개념도이다. 소스 디바이스 (110) 는 오디오 및/또는 시각적 미디어와 같은 미디어를 출력하도록 구성된 적어도 하나의 네이티브 출력 인터페이스를 포함하는 임의의 디바이스를 포함할 수도 있다. 예를 들어, 도 1 에 나타낸 소스 디바이스 (110) 는, 디스플레이 스크린 (112) 을 포함하는 제 1 출력 인터페이스, 및 소스 디바이스에 고유한 (native) 하나 이상의 스피커들 (도 1 에 미도시) 을 포함하는 제 2 출력 인터페이스를 포함하는 스마트 폰 또는 태블릿 컴퓨터를 포함한다. 다른 예들에서, 소스 디바이스 (110) 는 랩톱 컴퓨터, 데스크톱 컴퓨터, 게이밍 컨트롤러, 또는 소스 디바이스 (110) 의 적어도 하나의 네이티브 출력 인터페이스를 제어하도록 구성되거나 포함하는 임의의 다른 디바이스를 포함할 수도 있다.
도 1 의 예에서 나타난 바와 같이, 소스 디바이스 (110) 의 스크린 (112) 은 네이티브 그래픽 출력 (native graphical output) (130) 을 출력하도록 구성될 수도 있다. 네이티브 그래픽 출력 (130) 은 예를 들어 하나 이상의 스틸 (still) 또는 비디오 이미지들을 포함할 수도 있다. 도 1 의 예에서, 소스 디바이스 (110) 의 스피커들은 네이티브 오디오 출력 (131) 을 제공하도록 구성된다. 네이티브 오디오 출력 (131) 은 하나 이상의 가청 사운드들을 포함할 수도 있다. 이러한 오디오 출력 (131) 은 그래픽 출력 (130) 과 연관 (예를 들어, 그래픽 출력과 함께 출력되도록 구성) 될 수도 있다. 예를 들어, 네이티브 그래픽 출력 (130) 이 비디오 또는 이미지 콘텐츠를 포함하는 경우, 오디오 출력 (131) 은 비디오 또는 이미지와 연관된 가청 사운드들을 포함할 수도 있다.
도 1 에 도시된 바와 같이, 소스 디바이스 (110) 는 적어도 하나의 목적지 디바이스(들) (114) (이하, "목적지 디바이스 (114)") 에 통신가능하게 (communicatively) 커플링된다. 목적지 디바이스 (114) 는 소스 디바이스 (110) 의 네이티브 미디어 출력을 미러링하기 위해, 목적지 디바이스 (114) 와 연관된 하나 이상의 출력 인터페이스들 (120, 124) 을 동작시키도록 소스 디바이스 (110) 에 의해 사용될 수도 있다. 본원에서 기술된 바와 같은 "미러링" 이라는 용어는 소스 디바이스 (110) 의 네이티브 오디오, 비디오, 및/또는 이미지 미디어 출력과 같은 네이티브 미디어의 적어도 부분을 출력하도록 소스 디바이스 (110) 에 의해 목적지 디바이스 (114) 를 제어하는 것을 지칭할 수도 있다.
소스 디바이스 (110) 는 목적지 디바이스 (114) 와 연관된 하나 이상의 출력 인터페이스 (120, 124) 를 통해 소스 디바이스 (110) 의 미디어 출력을 미러링하도록 목적지 디바이스 (114) 를 제어할 수도 있다. 예를 들어, 도 1 에 도시된 바와 같이, 소스 디바이스 (110) 는, 소스 디바이스 (110) 의 네이티브 그래픽 출력 (130) 과 실질적으로 유사한 그래픽 출력을 포함할 수도 있는 미러링된 그래픽 출력 (132) 을 출력하도록 외부 디스플레이 인터페이스 (120) 를 제어할 수도 있다. 미러링된 그래픽 출력 (132) 은 네이티브 그래픽 출력 (130) 과 동일한 하나 이상의 이미지들을 포함할 수도 있지만, 이러한 이미지들은 외부 디스플레이 인터페이스 (120) 를 통한 제시 (presentation) 를 위해 프로세싱, 사이징, 포맷팅, 및/또는 그외에 변형될 수도 있다.
도 1 에서도 나타난 바와 같이, 소스 디바이스 (110) 는 도 1 에 나타난 오디오 출력 (131) 과 실질적으로 유사한 오디오 출력을 포함할 수도 있는 미러링된 오디오 출력 (136) 을 출력하도록 외부 오디오 인터페이스 (124) 를 제어할 수도 있다. 미러링딘 오디오 출력 (136) 은 네이티브 그래픽 출력 (130) 과 동일한 가청 사운드들을 포함할 수도 있지만, 외부 오디오 인터페이스 (124) 를 통해 출력되도록 프로세싱, 포맷팅, 및/또는 그외에 변형될 수도 있다. 몇몇 예들에서, 소스 디바이스 (110) 는, 소스 디바이스 (310) 의 네이티브 그래픽 출력 (130) 및 네이티브 오디오 출력 (136) 을 포함하는 미디어를 출력하도록 목적지 디바이스 (114) 를 제어할 수도 있다.
도 1 에 도시된 바와 같이, 몇몇 예들에서, 목적지 디바이스 (114) 는, 이미지들을 뷰어 (viewer) 에게 제시 (present) 하도록 구성된 스크린 (122) 을 포함하는, 텔리비젼 디스플레이, 컴퓨터 모니터 등과 같은 외부 디스플레이 인터페이스 (120), 및/또는 스피커들 또는 스테레오 시스템과 같은 외부 오디오 인터페이스 (124) 중 하나 이상에 커플링되는 디바이스를 포함할 수도 있다. 예를 들어, 목적지 디바이스 (114) 는, 셋톱 박스 (예를 들어, GOOGLE TV, APPLE TV, ROKU), 게이밍 콘솔 (예를 들어, NINTENDO WII, SONY PLAYSTATION 3, MICROSOFT XBOX), 디지털 비디오 디스크 (DVD) 플레이어, BLURAY 플레이어, 또는 도 1 의 예에서 도시된 바와 같이 외부 오디오 디바이스 및/또는 외부 디스플레이 디바이스에 커플링된 다른 별개의 유닛을 포함할 수도 있다. 도 1 에 도시되지 않은 다른 예들에서, 목적지 디바이스 (114), 외부 디스플레이 인터페이스 (120), 및/또는 외부 오디오 인터페이스 (124) 중 하나 이상은 단일 디바이스로서 결합될 수도 있다. 예를 들어, 텔레비젼 또는 컴퓨터 모니터와 같은 디스플레이 디바이스는 스크린 (122) 및 하나 이상의 스피커들 양자 모두를 포함할 수도 있다. 다른 예들에서, 동일 또는 다른 목적지 디바이스 (114) 가 그 하나 이상의 목적지 디바이스 (114) 와 별개인 하나 이상의 오디오 또는 비디오 출력 인터페이스를 제어할 수도 있다. 또 다른 예들에 따르면, 본원에서 기술된 바와 같이 목적지 디바이스 (114) 에 의해 수행되는 기능은 외부 디스플레이 디바이스 및/또는 외부 오디오 디바이스 중 하나 이상에 의해 수행될 수도 있다. 예를 들어, 텔레비젼 디스플레이 및/또는 스테레오 수신기는, 소스 디바이스 (110) 의 네이티브 미디어가 텔레비젼 디스플레이 또는 스테레오 수신기에 미러링될 수도 있도록, 소스 디바이스 (110) 와 텔레비젼 및/또는 스테레오를 통신가능하게 커플링하도록 구성된 하드웨어 및/또는 소프트웨어 를 포함할 수도 있다.
몇몇 예들에서, 소스 디바이스 (110) 는, 고화질 멀티미디어 인터페이스 (high definition multimedia interface; HDMI), 디지털 비디오 인터페이스 (DVI), 또는 다른 유선 연결 중 하나 이상과 같은, 유선 연결을 통해 소스 디바이스 (110) 의 미디어 출력을 미러링하도록 목적지 디바이스 (114) 에 통신가능하게 커플링될 수도 있다. 다른 예들에서, 소스 디바이스 (110) 는 무선으로 미디어 출력을 미러링하도록 목적지 디바이스 (114) 에 커플링될 수도 있다. 예를 들어, 목적지 디바이스 (114) 는 소스 디바이스가, WiFi, BLUETOOTH, 셀룰러 네트워크, 또는 무선 통신의 임의의 다른 형태와 같은, 하나 이상의 무선 통신 프로토콜들을 통해 목적지 디바이스에 네이티브 미디어 출력을 전송하는 것을 가능하게 하도록 구성된 하나 이상의 통신 컴포넌트들을 포함할 수도 있다.
전술한 바와 같이, 소스 디바이스 (110) 는 목적지 디바이스 (114) 를 통해 소스 디바이스 (110) 의 미디어 출력을 미러링하도록 구성될 수도 있다. 예를 들어, 소스 디바이스 (110) 는, 네이티브 오디오 미디어, 시각적 미디어, 또는 양자 모두가 목적지 디바이스 (114) 를 통해 출력되는 미러링 모드를 활성화시킬지 또는 활성화해제시킬지에 관한 사용자-선택가능 옵션을 사용자에게 제공할 수도 있다. 표준 동작 모드에서, 소스 디바이스 (110) 는 복수의 미디어 엘리먼트들의 형태로 미디어를 수신하고, 그 복수의 미디어 엘리먼트들을 포함하는 미디어를 출력하도록 소스 디바이스 (110) 의 하나 이상의 네이티브 출력 인터페이스들 (112, 131) 을 제어할 수도 있다. 이러한 미러링 모드에서, 목적지 디바이스 (114), 소스 디바이스 (110) 는, 소스 디바이스 (110) 가 표준 동작 모드에서 하나 이상의 네이티브 출력 인터페이스들 (112, 131) 을 이용하여 출력하였을 네이티브 그래픽 출력 (130) 및/또는 네이티브 오디오 출력 (131) 과 실질적으로 동일한 미디어를 출력하도록 목적지 디바이스 (114) 를 제어할 수도 있다. 예를 들어, 이러한 미러링 모드에서, 소스 디바이스 (110) 가 하나 이상의 소스들로부터 (예를 들어, 소스 디바이스 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들로부터) 미디어 엘리먼트들을 수신함에 따라, 소스 디바이스 (110) 는 목적지 디바이스를 통한 출력을 위해 그 수신된 미디어 엘리먼트들을 프로세싱하고 그 프로세싱된 미디어 엘리먼트들의 각각을 목적지 디바이스 (114) 에 전송하여 출력되도록 할 수도 있다. 미디어 출력을 미러링하도록 동작할 때, 소스 디바이스 (110) 는 그 자신이 네이티브 출력 인터페이스들 (130, 131) 을 통해 네이티브 미디어 (130, 131) 를 출력하는 것을 계속할 수도 있고, 또는 계속하지 않을 수도 있다.
이 개시는 하나 이상의 목적지 디바이스(들) (114) 을 통한 소스 디바이스 (110) 의 미디어 출력의 미러링을 제어하는 기술들에 관한 것이다. 이들 기술들에 따르면, 미러링 모드에서 동작될 때, 소스 디바이스 (110) 는 선택적으로 하나 이상의 수신된 미디어 엘리먼트들이 목적지 디바이스 (114) 를 통해 미러링되는 것을 방지할 수도 있다. 예를 들어, 소스 디바이스 (110) 는 네이티브 미디어의 제 1 미디어 엘리먼트들 수신하고, 목적지 디바이스 (114) 를 통해 그 네이티브 미디어의 제 1 미디어 엘리먼트를 포함하는 네이티브 미디어를 미러링하도록 목적지 디바이스 (114) 를 제어할 수도 있다. 소스 디바이스 (110) 는 또한 네이티브 미디어의 제 2 미디어 엘리먼트를 수신할 수도 있다. 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 소스 디바이스 (110) 는 제 2 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 파라미터에 대해 비교할 수도 있다. 그 비교에 기초하여, 소스 디바이스 (110) 는 하나 이상의 목적지 디바이스 (114) 를 통해 제 2 미디어 엘리먼트를 미러링할지 안할지 여부를 결정할 수도 있다. 몇몇 예들에서, 소스 디바이스 (110) 는, 소스 디바이스 (110) 가 제 2 미디어 엘리먼트를 미러링할지 안할지 여부를 결정하는 동안, 제 2 미디어 엘리먼트를 미러링함이 없이 미디어를 미러링하는 것을 계속하도록 목적지 디바이스 (114) 를 제어할 수도 있다. 예를 들어, 소스 디바이스 (110) 는 목적지 디바이스 (114) 로 하여금 네이티브 미디어의 제 1 미디어 엘리먼트의 비디오 및/또는 오디오를 출력하는 것을 계속하게 할 수도 있지만, 제 2 미디어 엘리먼트와 연관된 비디오 및/또는 오디오는 출력하지 않게 할 수도 있다.
하나의 비제한적 예시로서, 제 1 미디어 엘리먼트는, 그 제 1 미디어 엘리먼트를 출력하는 소스 디바이스 (110) 상에서 실행되는 디지털 비디오 플레이어 애플리케이션의 출력을 포함할 수도 있다. 제 1 미디어 엘리먼트에 응답하여, 소스 디바이스 (110) 는 제 1 미디어 엘리먼트와 연관된 비디오 및/또는 오디오를 출력하도록 목적지 디바이스 (114) 를 제어할 수도 있다. 소스 디바이스는 그 다음 제 2 미디어 엘리먼트를 수신할 수도 있다. 이 예에 따르면, 제 2 미디어 엘리먼트는 소스 디바이스 (110) 상에서 실행되는 통신 애플리케이션들로부터의 메시지를 포함할 수도 있다. 예를 들어, 제 2 미디어 엘리먼트는, 이메일, 텍스트-메시지, 음성 호, 음성메일, 또는 다른 메시지가 하나 이상의 메시징, 전화, 소셜 네트워킹, 또는 다른 애플리케이션들로부터 수신되었다는 표시를 포함할 수도 있다. 이 개시의 기술들에 따르면, 제 2 미디어 엘리먼트의 수신 시에, 소스 디바이스 (110) 는 제 2 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 파라미터에 대해 비교하고, 그 비교에 기초하여 제 2 미디어 엘리먼트를 제시하도록 목적지 디바이스 (114) 를 제어할지 여부를 결정할 수도 있다. 본원에서 설명된 기술들에 따르면, 사용자 또는 다른 뷰어는 제 1 미디어 엘리먼트 (재생되는 비디오) 및 제 1 미디어 엘리먼트와 연관된 오디오 미디어 (그 비디오와 연관된 오디오 트랙) 를 포함하는 비디오 미디어를 보는 것을 계속하지만 사용자에 대해 사적 및/또는 개인적이거나 그 외에 목적지 디바이스 (114) 를 통해 공유하기에 바람직하지 않을 수도 있는 그 수신된 제 2 미디어 엘리먼트와 연관된 오디오 또는 비디오 미디어는 미러링하지 않을 수도 있다. 대신에, 제 2 미디어 엘리먼트는 오직 소스 디바이스 (110) 의 네이티브 출력 인터페이스를 통해서만 디스플레이될 수도 있다. 이와 같이, 목적지 디바이스 (114) 의 하나 이상의 출력 인터페이스들에 대한 액세스 (예를 들어, 보기 및/또는 듣기) 를 갖는 다른 사용자는 제 1 미디어 엘리먼트에 대한 액세스가 주어지지 않을 수도 있다. 이러한 방식으로, 소스 디바이스 (110) 의 사용자는, 다른 미디어의 기밀성은 유지하거나 그외에 사용자가 착신 메시지와 같이 타인들과 공유하기를 원하지 않는 미디어의 미러링은 방지하면서, 선택적 기초 상에서 소스 디바이스 (110) 의 일부 네이티브 미디어 (예를 들어, 전술한 비디오 및 연관된 오디오 재생) 를 공유하는 것이 가능할 수도 있다.
몇몇 예들에서, 소스 디바이스 (110) 는, 메모리에 저장된 미리결정된 (predetermined) 파라미터를 포함하는 적어도 하나의 파라미터에 기초하여 수신된 미디어 엘리먼트를 미러링할지 여부 (전술한 바와 같은, 미디어 엘리먼트의 "미러링 상태") 를 결정할 수도 있다. 예를 들어, 소스 디바이스 (110) 는 본원에서 설명된 하나 이상의 목적지 디바이스 (114) 를 통한 미디어의 미러링에 관한 하나 이상의 옵션들을 사전-선택하기 위해 사용자가 사용할 수도 있는 사용자-인터페이스를 제공하도록 동작할 수도 있다. 예를 들어, 소스 디바이스 (110) 는 사용자가 미디어의 미러링에 관한 애플리케이션-특정 옵션들을 선택하는 것을 허용하는 사용자 인터페이스를 제공할 수도 있다. 일 구체적인 예로서, 제 2 미디어 엘리먼트가 통신 애플리케이션으로부터 수신되는 경우에, 소스 디바이스 (110) 는, 통신 애플리케이션으로부터 수신된 모든 미디어가 미러링되어야 하는 것, 통신 애플리케이션으로부터 수신된 어떤 미디어도 미러링되지 않아야 하는 것, 및/또는, 하나 이상의 특정 사용자들로부터의 메시지와 연관된 미디어가 미러링되어야 하거나 미러링되지 않아야 하는 것을 사용자가 나타내는 것을 가능하게 하는 사용자 인터페이스를 제공할 수도 있다. 다른 예들에서, 이러한 사용자 인터페이스는 또한, 사용자가, 소스 디바이스 (110) 가 하나 이상의 애플리케이션들 또는 사용자들로부터 수신된 미디어를 허가하는 사용자 입력을 요청 및 수신하여야 하는 것을 나타내는 것을 가능하게 할 수도 있다.
메모리에 저장된 이러한 하나 이상의 미리결정된 파라미터들에 기초하여, 소스 디바이스 (110) 는 수신된 제 2 미디어 엘리먼트를 목적지 디바이스 (114) 를 통해 미러링할지 아니면 미러링하지 않을지 여부를 결정할 수도 있다. 예를 들어, 이러한 미리결정된 파라미터가, 사용자 "존 스미스 (John Smith)" 로부터의 모든 메시지들은 미러링되는 것이 방지되어야 하는 것을 나타내는 경우에, 소스 디바이스 (110) 는 목적지 디바이스를 통해 사용자 "존 스미스" 로부터의 텍스트 메시지 또는 음성 호를 포함하는 수신된 제 2 미디어 엘리먼트를 출력하지 않을 수도 있다.
본원에서 설명된 기술들과 일치하는 다른 예들에 따르면, 소스 디바이스 (110) 는, 하나 이상의 동적으로 결정된 파라미터들에 기초하여 제 2 멀티미디어 엘리먼트를 목적지 디바이스 (114) 를 통해 미러링할지 아니면 미러링하지 않을지 여부를 결정할 수도 있다. 예를 들어, 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 소스 디바이스 (110) 는, 사용자가 수신된 제 2 미디어 엘리먼트를 미러링할지 안할지 여부를 선택하는 것을 허용하는 사용자 인터페이스를 제공할 수도 있다. 몇몇 이러한 예들에서, 소스 디바이스 (110) 는, 제 2 미디어 엘리먼트의 미러링 상태가 해결되지 않는다면, 목적지 디바이스 (114) 를 통해 제 2 미디어 엘리먼트를 미러링하도록 동작하지 않을 수도 있다. 예를 들어, 소스 디바이스 (110) 는, 소스 디바이스 (110) 가 적어도 하나의 파라미터에 기초하여 제 2 미디어 엘리먼트가 미러링되어야 하는 것을 결정하지 않는다면, 제 2 미디어 엘리먼트를 미러링하지 않을 수도 있다. 몇몇 예들에서, 소스 디바이스 (110) 가 제 2 미디어 엘리먼트의 미러링 상태를 결정하는 동안, 소스 디바이스 (110) 는 제 2 미디어 엘리먼트를 미러링함이 없이, 목적지 디바이스 (114) 를 통해 소스 디바이스 (110) 의 다른 네이티브 미디어 출력을 미러링하는 것을 계속할 수도 있다. 예를 들어, 소스 디바이스 (110) 는 목적지 디바이스 (114) 를 통해 제 1 미디어 엘리먼트와 연관된 오디오 출력을 미러링하는 것을 계속할 수도 있지만, 제 2 미디어 엘리먼트와 연관된 오디오 출력은 미러링하지 않을 수도 있다. 다른 예로서, 소스 디바이스 (110) 는 목적지 디바이스 (114) 로 하여금, 동결된 또는 미러링된 미디어 출력으로부터 제거된 제 2 미디어 엘리먼트에 대응하는 미러링된 그래픽 미디어의 적어도 하나의 구역으로 소스 디바이스 (110) 의 네이티브 그래픽 미디어를 포함하는 미디어를 미러링하게 할 수도 있다.
본원에서 설명된 기술들은, 소스 디바이스 (110) 가 목적지 디바이스 (114) 를 통해 소스 디바이스 (110) 의 네이티브 미디어를 미러링하도록 미러링 모드에서 동작될 때, 소스 디바이스 (110) 는 사용자에게, 네이티브 미디어의 하나 이상의 수신된 미디어 엘리먼트들이 목적지 디바이스 (114) 를 통해 미러링되는지 여부를 제어하는 능력을 제공할 수 있기 때문에, 이로울 수도 있다. 이러한 제어는, 사용자가 소스 디바이스 (110) 에 고유한 일부 미디어의 적어도 일부 관련없는 엘리먼트들은 기밀을 유지하고 및/또는 미러링을 회피하기 위해, 소스 디바이스 (110) 의 네이티브 미디어의 전부가 아닌 일부를 미러링하기를 원할 수도 있기 때문에, 바람직할 수도 있다. 본원에서 설명된 기술들은, 사용자 및/또는 다른 뷰어가, 사용자가 목적지 디바이스 (114) 를 통해 미러링하기를 원하는 소스 디바이스 (110) 의 다른 네이티브 미디어를 즐기는 것을 계속하도록 여전히 허용하면서도, 사용자가 새롭게 수신된 네이티브 미디어 엘리먼트들의 미러링을 제어하는 것을 추가적으로 이롭게 가능하게 할 수도 있다. 이러한 방식으로, 목적지 디바이스 (114) 를 통해 미디어를 미러링하기 위해 소스 디바이스 (110) 를 사용하는 사용자 경험이 향상될 수도 있다.
도 2 는 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스 (210) 의 네이티브 그래픽 출력 (230) 의 일예의 스크린 샷 (screen shot), 및 목적지 디바이스 (214) 와 연관된 외부 디스플레이 인터페이스 (220) 의 미러링된 그래픽 출력 (232) 의 일예의 스크린 샷을 나타내는 개념도이다. 도 2 에 도시된 바와 같이 소스 디바이스 (210) 는 복수의 미디어 엘리먼트들 (235, 236, 237, 및 239) 을 포함하는 네이티브 미디어 출력 (도 2 의 예에서의 그래픽 출력 (230)) 을 출력하도록 동작된다. 소스 디바이스 (210) 는 또한, (소스 디바이스 (210) 에 포함된 또는 소스 디바이스 (210) 에 커플링된) 소스 디바이스 (210) 와 연관된 하나 이상의 네이티브 스피커들을 통해 오디오 미디어를 출력하도록 동작할 수도 있다. 복수의 미디어 엘리먼트들 (235, 236, 237, 및 239) 은 소스 디바이스 (210) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들과 같은 임의의 소스로부터 수신될 수도 있다.
예를 들어, 도 2 에 도시된 바와 같이, 제 1 미디어 엘리먼트 (236) 는 개의 이미지이다. 제 1 미디어 엘리먼트 (236) 는 예를 들어 비디오 플레이어 또는 사진 보기 애플리케이션과 같은 미디어 디스플레이 애플리케이션으로부터 수신된 비디오 또는 스틸 이미지를 포함할 수도 있다. 도 2 에 도시된 바와 같이, 미디어 엘리먼트 (235) 는 디지털 클록 (clock) 을 포함하고, 미디어 엘리먼트 (239) 는 알람 (alarm) 을 포함한다. 미디어 엘리먼트들 (235, 237) 은 소스 디바이스 (210) 상에서 실행되는 클록 및/또는 알람 애플리케이션으로부터 수신될 수도 있다. 도 2 에서도 도시된 바와 같이, 미디어 엘리먼트 (237) 는 현재 날짜를 포함한다. 미디어 엘리먼트 (237) 는 소스 디바이스 (210) 상에서 실행되는 캘린더 애플리케이션 (calendar application) 으로부터 수신될 수도 있다. 도 2 에서는 나타나지 않지만, 몇몇 예들에서, 소스 디바이스 (210) 는 또한 미디어 엘리먼트들 (235, 236, 237, 및 239) 중 하나 이상과 연관된 오디오 미디어를 출력할 수도 있다.
도 2 에서도 도시된 바와 같이, 소스 디바이스 (210) 는 소스 디바이스 (210) 의 미디어 출력 (예를 들어, 도 2 의 예에서의 네이티브 그래픽 출력 (230) 및 도 2 에 나타나지 않은 네이티브 오디오 출력) 을 미러링하도록 목적지 디바이스 (214) 를 제어하도록 동작할 수도 있다. 예를 들어, 도 2 에 도시된 바와 같이, 디스플레이 인터페이스 (220) 는 네이티브 그래픽 출력 (230) 과 실질적으로 유사한 미디어를 포함하는 미러링된 그래픽 출력 (232) 을 제시하도록 동작된다. 예를 들어, 도 2 에 도시된 바와 같이, 미디어 엘리먼트들 (235, 236, 237, 및 239) 은 비록 외부 디스플레이 인터페이스 (220) 를 통한 제시를 위해 프로세싱 (예를 들어, 재포맷팅, 재사이징, 재성형, 재배열, 재배향, 및/또는 그외에 변형) 되었지만, 네이티브 그래픽 출력 (230) 과 실질적으로 유사한 출력일 수도 있다.
도 2 의 예에서도 도시된 바와 같이, 소스 디바이스 (210) 가 미디어 엘리먼트들 (235, 236, 237, 및 239) 을 포함하는 네이티브 그래픽 출력 (230) 을 제시하도록 동작되는 동안 (그리고, 목적지 디바이스 (214) 가 미디어 엘리먼트들 (235, 236, 237, 및 239) 을 미러링하도록 동작되는 동안), 소스 디바이스 (210) 는 제 2 미디어 엘리먼트 (238) 를 수신할 수도 있다. 도 2 의 예에서, 제 2 미디어 엘리먼트 (238) 는 소스 디바이스 (210) 가 "존 스미스" 라는 이름의 사용자로부터 텍스트 메시지를 수신하였다는 그래픽 통지를 포함하지만, 제 2 미디어 엘리먼트는 임의의 가시 및/또는 가청 미디어를 포함하는 임의의 형태의 미디어를 포함할 수도 있다. 본원에서 설명된 기술들에 따르면, 소스 디바이스 (210) 가 제 2 미디어 엘리먼트 (238) 를 출력하도록 목적지 디바이스 (214) 를 제어하기 전에, 소스 디바이스 (210) 는 제 2 미디어 엘리먼트 (238) 의 미러링 상태를 해결 (resolve) 한다. 예를 들어, 소스 디바이스 (210) 는 제 2 미디어 엘리먼트 (238) 의 하나 이상의 특성들을 적어도 하나의 파라미터에 대해 비교하고, 그 비교에 기초하여 목적지 디바이스 (214) 를 통해 제 2 미디어 엘리먼트 (238) 를 미러링할지 아니면 미러링하지 않을지 여부를 결정할 수도 있다. 몇몇 예들에서, 제 2 미디어 엘리먼트 (238) 의 미러링 상태가 해결되는 동안, 소스 디바이스 (210) 는 도 2 의 예에서 도시된 바와 같이, 소스 디바이스 (310) 에 고유한 하나 이상의 네이티브 오디오 또는 디스플레이 인터페이스들을 통해 제 2 미디어 엘리먼트 (238) 를 출력할 수도 있다.
몇몇 예들에서, 소스 디바이스 (210) 는 메모리에 저장된 적어도 하나의 미리결정된 파라미터에 기초하여 제 2 미디어 엘리먼트 (238) 의 미러링 상태를 해결할 수도 있다. 예를 들어, 소스 디바이스 (210) 는, 사용자가, 예를 들어 특정 미디어 엘리먼트들, 미디어 엘리먼트들의 타입들 또는 미디어 엘리먼트들의 카테고리들의 미러링에 관한 하나 이상의 옵션들을 사전-선택하기 위해 이용할 수도 있는 사용자-인터페이스를 제공할 수도 있다. 소스 디바이스 (210) 는, 소스 디바이스 (210) 에 의해 수신된 미디어 엘리먼트들을 미러링할지 여부를 결정하고 그에 의해 하나 이상의 수신된 미디어 엘리먼트들의 디스플레이 상태를 해결하기 위해 나중에 이용하기 위한 파라미터로서 메모리에 하나 이상의 이러한 선택된 옵션들의 표시를 저장할 수도 있다.
일예로서, 이러한 사용자 인터페이스는 사용자가, 미디어 엘리먼트가 수신되는 소스의 타입에 기초하여 하나 이상의 옵션들을 선택하는 것을 가능하게 할 수도 있다. 예를 들어, 이러한 사용자 인터페이스는 사용자가, 통신 애플리케이션들 (예를 들어, 전자 메일, 텍스트 메시징, 비디오 전화, 소셜 네트워킹 애플리케이션들) 로부터 수신된 모든 미디어 엘리먼트, 또는 모든 비디오 애플리케이션들이 목적지 디바이스를 통해 미러링되어야하는지 미러링되지 않아야 하는지를 나타내는 것을 가능하게 할 수도 있다. 다른 예로서, 소스 디바이스 (110) 는 사용자가 미디어의 미러링에 관한 애플리케이션-특정 옵션들을 선택하는 것을 허용하는 사용자 인터페이스를 제공할 수도 있다. 예를 들어, 이러한 사용자 인터페이스는 사용자가, 특정 텍스트-메시징 또는 특정 비디오 애플리케이션과 같은 하나 이상의 특정 애플리케이션들로부터 수신된 미디어가 목적지 디바이스를 통해 미러링되어야 하는지 또는 미러링되지 않아야 하는지를 나타내는 것을 가능하게 할 수도 있다. 또 다른 예들에 따르면, 이러한 사용자 인터페이스는 사용자가, 미디어의 미러링에 관한 사용자-특정 옵션들을 선택하는 것을 가능하게 할 수도 있다. 예를 들어, 이러한 사용자 인터페이스는 사용자가, 특정 사용자와 연관된 모든 미디어, 또는, 하나 이상의 특정 타입들의 애플리케이션 또는 특정 사용자와 연관된 특정 애플리케이션으로부터의 미디어가 목적지 디바이스를 통해 미러링되어야 하는지 또는 미러링되지 않아야 하는지를 나타내는 것을 가능하게 할 수도 있다. 하나의 구체적인 예로서, 이러한 사용자 인터페이스는 사용자가, 모든 미디어, 또는 하나 이상의 타입들의 애플리케이션 또는 특정 애플리케이션들에 의해 수신된 미디어가 목적지 디바이스를 통해 미러링되어야 하는지 또는 미러링되지 않아야 하는지를 나타내는 것을 가능하게 할 수도 있다. 몇몇 예들에서, 소스 디바이스 (210) 는, 전술한 바와 같이 하나 이상의 사용자 인터페이스들을 통해 수신된 사용자 입력에 기초하여, 수신된 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 미리결정된 파라미터들에 대해 비교함으로써, 도 2 에 나타난 제 2 미디어 엘리먼트 (238) 와 같은, 수신된 미디어 엘리먼트의 디스플레이 상태를 해결할 수도 있다.
다른 예들에서, 소스 디바이스 (210) 는 하나 이상의 동적으로 결정된 파라미터들에 기초하여, 수신된 미디어 엘리먼트의 디스플레이 상태를 해결할 수도 있다. 예를 들어, 제 2 미디어 엘리먼트 (238) 를 수신하는 것에 응답하여, 소스 디바이스 (210) 는 사용자가, 목적지 디바이스 (214) 를 통해, 수신된 제 2 미디어 엘리먼트 (238) 를 미러링할지 또는 미러링하지 않을지 여부를 선택하는 것을 가능하게 하는 사용자 인터페이스로 사용자에게 제시할 수도 있다. 예를 들어, 소스 디바이스 (210) 는, 소스 디바이스 (210) 의 하나 이상의 네이티브 미디어 인터페이스들 (예를 들어, 도 2 에 도시된 스크린 (212) 및/또는 소스 디바이스 (210) 와 연관된 스피커들) 을 통해, 사용자가, 1) 목적지 디바이스 (214) 를 통해 제 2 미디어 엘리먼트 (238) 를 미러링할지, 또는, 2) (소스 디바이스 (210) 의 하나 이상의 네이티브 미디어 인터페이스들을 통해 제 2 미디어 엘리먼트 (238) 를 출력하는 것을 계속하면서) 제 2 미디어 엘리먼트 (238) 가 미러링되는 것을 방지할지 여부를 선택하는 것을 허용하는 연관된 사용자 인터페이스와 함께 제 2 미디어 엘리먼트 (238) 를 출력할 수도 있다. 하나의 구체적인 예로서, 이러한 사용자 인터페이스는, "외부 디바이스 상에 존 스미스로부터의 텍스트 메시지의 미러링을 허용" 이라고 진술할 수도 있고, 사용자가 예 또는 아니오를 선택하는 것을 가능하게 할 수도 있다. 몇몇 예들에서, 소스 디바이스 (210) 는 이러한 사용자 인터페이스에 응답하여 수신된 사용자 입력에 기초하여 정의되는 하나 이상의 동적으로 결정된 파라미터들에 기초하여 디스플레이 상태를 해결할 수도 있다. 몇몇 예들에서, 소스 디바이스 (210) 는 또한, 수신된 제 2 미디어 엘리먼트 (238) 를 전체적으로 기각하는 수신된 디스플레이 엘리먼트 사용자 인터페이스 입력의 미러링 상태를 해결할 수도 있다. 이들 예들에 따르면, 사용자는, 제 2 미디어 엘리먼트 (238) 가 소스 디바이스 (210) 의 네이티브 미디어 출력으로부터 제거되게 하도록 소스 디바이스 (210) 와 상호작용할 수도 있다.
전술한 바와 같이, 몇몇 예들에서, 소스 디바이스 (210) 는, 제 2 미디어 엘리먼트 (238) 의 미러링 상태가 소스 디바이스 (210) 에 의해 해결될 때까지, 제 2 미디어 엘리먼트 (238) 를 미러링하도록 목적지 디바이스 (214) 를 제어하지 않을 수도 있다. 예를 들어, 소스 디바이스 (210) 는, 전술한 바와 같이, 적어도 하나의 미리결정된 또는 동적으로 결정된 파라미터에 대한 비교에 기초하여 제 2 미디어 엘리먼트 (238) 가 미러링되어야 하는 것을 소스 디바이스 (210) 가 결정하지 않으면, 목적지 디바이스 (210) 가 제 2 미디어 엘리먼트 (238) 를 미러링하지 않게 할 수도 있다.
몇몇 예들에서, 수신된 미디어 엘리먼트의 미러링 상태가 해결될 때까지, 소스 디바이스 (210) 는 목적지 디바이스가 네이티브 그래픽 출력 (230) 의 미디어의 적어도 부분을 활성적으로 미러링하는 것을 중지하게 할 수도 있다. 예를 들어, 소스 디바이스 (210) 는 목적지 디바이스 (214) 가 제 1 미디어 엘리먼트 (236) 와 연관된 오디오 미디어 (예를 들어, 제 1 미디어 엘리먼트와 연관된 이미지와 연관된 오디오 트랙) 를 미러링하지만, 제 2 미디어 엘리먼트 (238) 와 연관된 오디오 미디어는 미러링하지 않게 할 수도 있다.
소스 디바이스 (210) 는 목적지 디바이스 (214) 가, 제 1 미디어 엘리먼트 (236) 와 연관된 비디오 미디어를 미러링하게 하지만, 제 2 미디어 엘리먼트 (238) 와 연관된 비디오 미디어는 미러링하지 않게 할 수도 있다. 예를 들어, 소스 디바이스 (210) 는, 제 2 미디어 엘리먼트 (238) 의 미러링 상태가 해결될 때까지, 목적지 디바이스의 그래픽 출력의 적어도 부분이 시각적으로 "동결 (frozen)" 되게 함으로써, 예를 들어, 주어진 프레임의 비디오, 이미지 또는 그래픽 데이터를 반복함으로써, 또는, 목적지 디바이스 (214) 가 오디오 및/또는 시각적 미디어를 모두 함께 출력하는 것을 중지하게 함으로써, 목적지 디바이스 (214) 에 의해 제 2 미디어 엘리먼트가 출력되는 것을 방지할 수도 있다.
예를 들어, 소스 디바이스 (210) 는, 제 2 미디어 엘리먼트 (238) 를 포함하지 않는 미리 제시된 프레임을 표현하는 데이터를 목적지 디바이스 (214) 에 계속 전송함으로써, 또는, "동결된" 프레임을 출력하기 위해 수신된 미디어의 프로세싱을 수정하도록 목적지 디바이스 (214) 에게 지시하는 하나 이상의 명령들을 목적지 디바이스 (214) 에 전송함으로써, 미러링된 그래픽 출력 (232) 의 전체 프레임을 동결할 수도 있다. 다른 예에 따르면, 소스 디바이스 (210) 는, 오디오 및/또는 시각적 미디어를 목적지 디바이스 (214) 에 전송하는 것을 중지하고, 그에 의해 목적지 디바이스 (214) 가 오디오 및/또는 시각적 미디어를 모두 함께 출력하는 것을 중지하게 할 수도 있다.
이 개시의 몇몇 양태들에 따르면, 소스 디바이스 (210) 는, 목적지 디바이스 (214) 가, 소스 디바이스 (210) 의 일부 네이티브 미디어 출력을 미러링하도록 계속 제어하지만, 소스 디바이스 (210) 의 다른 네이티브 미디어 출력은 미러링하지 않도록 할 수도 있다. 도 2 의 예를 참조하면, 소스 디바이스 (210) 는, 목적지 디바이스 (214) 가, 제 1 미디어 엘리먼트 (236) (및/또는 미디어 엘리먼트들 (235, 237 및 239)) 를 포함하는 네이티브 그래픽 미디어 출력을 미러링하게 하지만, 제 2 미디어 엘리먼트 (238) 와 연관된 미러링된 그래픽 미디어의 적어도 하나의 영역을 제거 및/또는 동결함으로써 제 2 미디어 엘리먼트 (238) 를 포함하는 네이티브 그래픽 미디어 출력은 미러링하지 않게 할 수도 있다. 몇몇 예들에서, 소스 디바이스 (210) 는 또한, 제 1 미디어 엘리먼트 (236) (및/또는 미디어 엘리먼트들 (235, 237 및 239)) 와 연관된 소스 디바이스 (210) 의 네이티브 오디오 미디어 출력은 미러링하지만, 제 2 미디어 엘리먼트 (238) 와 연관된 네이티브 오디오 미디어 출력은 미러링하지 않을 수도 있다.
도 2 를 참조하면, 제 1 미디어 엘리먼트 (236) 는 개의 이미지 (비디오 시퀀스에 반대되는 화상) 을 포함한다. 도 2 의 예에서 도시된 바와 같이, 제 1 미디어 엘리먼트 (236) 의 가장 좌측 아래쪽 부분 (즉, 도 2 에 도시되지 않은, 개의 이미지의 앞다리들) 은 제 2 미디어 엘리먼트 (238) 가 디스플레이되는 것을 방지하기 위해 디스플레이되지 않는다.
몇몇 예들에서, 제 2 미디어 엘리먼트 (238) 의 미러링 상태가 해결될 때까지, 소스 디바이스 (210) 는 구역 (233) 이 도 2 의 예에서 도시된 바와 같이 미러링된 그래픽 출력 (232) 으로부터 제거되지 않게 할 수도 있다. 대신에, 소스 디바이스 (210) 는 미러링된 그래픽 출력 (232) 의 구역 (233) 이, 제 2 미디어 엘리먼트 (238) 를 포함하지 않는 적어도 하나의 이전 프레임으로부터의 이미지를 포함하게 할 수도 있다. 이러한 방식으로, 소스 디바이스 (210) 는 구역 (233) 에 대응하는 이전 이미지 데이터를 시각적으로 "동결 (freeze)" 할 수도 있고, 이는, 도 2 에서 도시된 미러링된 그래픽 출력 (232) 의 미디어 엘리먼트들 (235, 236, 237, 및 239) 과 같은, 다른 미디어의 디스플레이의 방해를 최소화할 수도 있다. 따라서, 사용자가, 도 2 의 예에서 도시된 바와 같이 목적지 디바이스 (214) 를 통해 개의 스틸 사진을 미러링하기 위해 소스 디바이스 (210) 를 사용한 경우, 제 1 미디어 엘리먼트의 가장 아래 좌측 부분은 (도 2 의 예에서 보이지 않는, 개 이미지의 앞다리들에 대응) 사용자에 의해 여전히 디스플레이되고 보일 수 있을 수도 있다.
몇몇 예들에서, 전술한 바와 같은 사전에 디스플레이된 이미지 데이터에 기초하여 제 2 미디어 엘리먼트 (238) 와 연관된 구역 (233) 이 시각적으로 "동결" 되게 하기 위해, 소스 디바이스 (210) 는, 목적지 디바이스 (214) 로 하여금, 소스 디바이스 (210) 의 다른 네이티브 미디어를 미러링하기 위해 수신된 이미지 데이터를 이용하면서, 구역 (233) 과 연관된 이미지들을 출력하기 위해 반복적으로 이미지 데이터를 읽도록 그것의 동작을 수정하게 하는 하나 이상의 명령들을 목적지 디바이스 (214) 에 전송할 수도 있다.
몇몇 예들에서, 이러한 명령은, 미디어를 미러링하기 위해 사용되는 목적지 디바이스와 소스 디바이스 (310) 사이에 통신 링크의 주파수 대역 내에서 통신되는, 대역내 신호를 포함할 수도 있다. 예를 들어, 통신 링크가 WI-FI 통신 링크를 포함하는 경우, 이러한 명령은 WI-FI 신호의 주파수 대역 내에서 통신될 수도 있다.
다른 예들에 따르면, 이러한 명령은 대역외 신호를 포함할 수도 있다. 예를 들어, 통신 링크가 WI-FI 통신 링크를 포함하는 경우, 이러한 명령은 WI-FI 에 대해 정의된 것과 상이한 주파수 대역을 이용하고/하거나 상이한 무선 프로토콜을 이용하여 통신될 수도 있다. 예를 들어, 이러한 명령은 BLUETOOTH 통신 프로토콜과 같은 하나 이상의 저전력 통신 프로토콜들을 이용하여 통신될 수도 있다.
예를 들어, 소스 디바이스 (210) 는 목적지 디바이스 (214) 로 하여금, 구역 (233) 의 외부에서 디스플레이되는 미러링된 그래픽 데이터의 부분들과 상이하게 구역 (233) 과 연관된 이미지들을 프로세싱하도록 그것의 동작을 수정하도록 하기 위해, 목적지 디바이스 (214) 에 하나 이상의 대역외 신호들을 통신할 수도 있다.
다른 예들에 따르면, 소스 디바이스 (210) 는, 제 2 미디어 엘리먼트 (238) 가, 목적지 디바이스 (214) 를 통해 출력될 때 미러링된 그래픽 출력 (232) 에 포함되지 않도록, 미러링된 그래픽 출력 (232) 을 발생시키기 위해 소스 디바이스 (210) 에 의해 네이티브 그래픽 출력 (230) 과 같은 네이티브 미디어가 프로세싱되는 방식을 수정할 수도 있다. 예를 들어, 이하 도 8 내지 도 11 을 참조하여 보다 자세히 설명되는 바와 같이, 소스 디바이스 (210) 는, 그래픽 데이터가 목적지 디바이스 (214) 에 의해 디코딩될 때 미러링된 그래픽 미디어가 전술한 바와 같이 구역 (233) 이 시각적으로 동결된 상태에서 제시되도록, 소스 디바이스 (210) 에 의해 그래픽 데이터가 인코딩되는 방식을 수정할 수도 있다.
본원에서 설명된 기술들에 따르면, 미러링 모드에서 동작될 때, 소스 디바이스 (210) 는 사용자에게, 제 2 미디어 엘리먼트 (238) 와 같은 어떤 미디어를, 목적지 디바이스 (214) 와 연관된 출력 인터페이스의 다른 뷰어들로부터 비밀을 유지하는 능력을 제공할 수도 있다. 또한, 본원에서 설명된 기술들에 따르면, 소스 디바이스 (210) 는, 목적지 디바이스 (214) 를 통해 미러링된 소스 디바이스 (210) 의 다른 네이티브 미디어를 즐기는 사용자의 능력의 방해를 최소화하면서, 소스 디바이스 (210) 에 고유한 수신된 미디어가 목적지 디바이스를 통해 미러링되는 것을 방지하게 할 수도 있다.
도 3 은, 이 개시의 하나 이상의 양태들과 일치하는, 적어도 하나의 목적지 디바이스 (예를 들어, 도 1 및 도 2 에 도시된 목적지 디바이스 (114, 214)) 를 통해 네이티브 미디어 출력을 미러링하도록 구성된 소스 디바이스 (310) 의 일예를 나타내는 블록도이다. 도 3 에 도시된 바와 같이, 디바이스 (210) 는 센서 모듈 (340), 사용자 입력 모듈 (345), 메모리 (341), 통신 모듈 (342), 그래픽 프로세싱 모듈 (343), 프로세서 (344), 네이티브 디스플레이 스크린 (312), 및 전원 (349) 을 포함한다. 프로세서 (344) 는 명령들을 실행하도록 구성된 디바이스 (310) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 예를 들어, 프로세서 (344) 는 하나 이상의 중앙 프로세싱 유닛 (CPU) 들, 애플리케이션 특정 집적 회로 (ASIC) 들, 필드 프로그래머블 게이트 어레이 (FPGA) 들, 이산 로직 컴포넌트들, 또는 디바이스 (310) 의 동작을 제어하는 명령들을 실행하도록 구성된 다른 컴포넌트를 포함할 수도 있다.
메모리 (341) 는, 하나 이상의 자기적 저장 컴포넌트들, 광학적 저장 컴포넌트들, 랜덤 액세스 메모리 (RAM) 저장 컴포넌트들, FLASH 메모리 저장 컴포넌트들, 또는 명령들 및/또는 데이터를 저장하도록 구성된 임의의 다른 컴포넌트와 같은, 데이터 및/또는 명령들을 저장하도록 구성된 디바이스 (310) 의 하나 이상의 컴포넌트들을 포함한다. 예를 들어, 메모리 (341) 는 미디어를 출력하도록 디바이스 (310) 를 동작시키는 하나 이상의 소프트웨어 프로그램들을 저장할 수도 있다. 또한 또는 대신에, 메모리 (341) 는 디바이스 (310) 에 의해 출력될 수도 있는 미디어를 표현하는 데이터를 저장하도록 구성될 수도 있다. 예를 들어, 메모리 (310) 는 가청 사운드들, 스틸 이미지들, 비디오, 또는 디바이스 (310) 에 의해 출력될 수도 있는 다른 미디어의 하나 이상의 디지털 표현들을 저장할 수도 있다.
통신 모듈 (342) 은 디바이스 (310) 가 하나 이상의 다른 디바이스들과 통신하는 것을 가능하게 하도록 구성된 디바이스 (310) 의 하나 이상의 하드웨어 및/또는 소프트웨어를 포함할 수도 있다. 예를 들어, 통신 모듈 (342) 은, 무선 통신 (예를 들어, WI-FI, BLUETOOTH, 및 3G 및 4G 셀룰러 네트워크들과 같은 셀룰러 네트워크들) 또는 유선 통신 (예를 들어, ETHERNET) 중 하나 이상을 가능하게 하는 하나 이상의 컴포넌트들을 포함할 수도 있다. 몇몇 예들에서, 통신 모듈 (342) 은 도 1 에 도시된 목적지 디바이스 (114) 와 같은 다른 디바이스가 디바이스 (310) 의 네이티브 미디어 출력을 미러링하도록 제어하기 위해 디바이스 (310) 에 의해 사용될 수도 있다. 예를 들어, 소스 디바이스 (310) 는, 소스 디바이스 (310) 가, 목적지 디바이스로 하여금 본원에서 설명된 기술들에 따라 데이터를 미러링하게 하는 데이터 및/또는 명령들을 통신할 수도 있도록, 통신 모듈 (342) 을 통해 목적지 디바이스에 커플링될 수도 있다.
센서 모듈 (340) 은 디바이스 (310) 의 (도 2 에는 도시되지 않은) 하나 이상의 센서들을 동작시키는 디바이스 (310) 의 하나 이상의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다. 예를 들어, 센서 모듈 (340) 은, 하나 이상의 마이크로폰들, 이미지 센서들 (예를 들어, 카메라 센서), 가속도계 센서, 자이로스코프 센서, 디바이스 (310) 의 스크린 (312) 또는 다른 부분에서 수행되는 사용자 제스쳐들 (gestures) 을 검출하도록 구성된 단일 또는 멀티 터치 디스플레이 센서들, 또는 디바이스 (310) 가 포함할 수도 있는 임의의 다른 타입의 센서를 동작시키도록 구성된 디바이스 (310) 의 하나 이상의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다.
그래픽 프로세싱 모듈 (343) 은, 그래픽 명령들 (예를 들어, OPENGL 표준에 따른 하나 이상의 명령들 등과 같은 상위 레벨 그래픽 명령들) 을 프로세싱하고 스크린 (312) 을 통해 이미지들을 제시하기 위해 사용될 수도 있는 이미지 데이터를 생성하도록 구성된 디바이스 (310) 의 하나 이상의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다. 예를 들어, 그래픽 프로세싱 모듈 (343) 은 그래픽 프로세싱 유닛 (GPU) 및/또는 그래픽들을 프로세싱하도록 구성된 다른 컴포넌트들을 포함할 수도 있다. 몇몇 예들에서, 그래픽 모듈 (343) 은 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들로부터 수신되는 그래픽 명령들에 기초하여 그래픽들을 프로세싱할 수도 있다. 다른 예들에서, 그래픽 모듈 (343) 은 메모리 (341) 및/또는 통신 모듈 (342) 로부터 수신된 그래픽 명령들에 기초하여 그래픽들을 프로세싱할 수도 있다.
전원 (349) 은, 디바이스 (310) 의 하나 이상의 컴포넌트들에 전력을 제공하기 위해 이용될 수도 있는 전기적 에너지와 같은 에너지를 저장하도록 구성된 디바이스의 하나 이상의 컴포넌트들을 포함할 수도 있다. 예를 들어, 전원 (349) 은, 디바이스 (210) 가 벽 콘센트와 같은 외부 전원에 연결되지 않을 때 디바이스 (310) 에 전력을 공급하기 위해 사용될 수도 있는 디바이스 (310) 내부의 하나 이상의 배터리들을 포함할 수도 있다. 몇몇 예들에서, 전원 (349) 은 제한된 전원일 수도 있다. 몇몇 예들에서, 디바이스 (310) 가 (예를 들어, 외부 전원에 연결됨으로써) 충전되고 있는 사이 보다 긴 기간들 동안 사용될 수도 있도록, 디바이스 (310) 를 동작시키기 위해 사용되는 전원 (349) 에 의해 저장된 에너지의 양을 감소시키는 것이 바람직할 수도 있다.
도 3 에서도 도시된 바와 같이, 디바이스 (310) 는 사용자 입력 모듈 (345) 을 포함한다. 사용자 입력 모듈 (345) 은 센서 모듈 (340) 로부터 감지된 정보의 하나 이상의 표시들을 수신 및/또는 프로세싱하고 그 감지된 정보의 하나 이상의 표시들을 디바이스 (310) 의 하나 이상의 다른 컴포넌트들에 통신하도록 구성된 디바이스 (310) 의 하나 이상의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다. 예를 들어, 사용자 입력 모듈 (345) 은, 스크린 (312) 과의 사용자 상호작용의 하나 이상의 표시들을 수신하고, 검출된 사용자 상호작용의 표시에 기초하여 사용자가 스크린 (312) (및/또는 디바이스의 다른 표면) 에서 하나 이상의 단일 및/또는 멀티 터치 제스쳐들을 수행한 것을 결정할 수도 있다. 이 예에 따르면, 사용자 입력 모듈 (345) 은 그 결정된 단일 또는 멀티 터치 제스쳐의 표시를 디바이스 (310) 의 하나 이상의 다른 컴포넌트들에 전송할 수도 있다. 예를 들어, 사용자 입력 모듈은 이러한 표시를 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들에 전송할 수도 있다. 하나 이상의 소프트웨어 애플리케이션들은 이러한 수신된 표시에 응답하여 디바이스 (310) 를 제어할 수도 있다.
도 3 에 도시된 바와 같이, 디바이스 (310) 는 디스플레이 프로세싱 모듈 (347) 및 오디오 프로세싱 모듈 (350) 을 또한 포함할 수도 있다. 디스플레이 프로세싱 모듈 (347) 은 메모리 (341), 통신 모듈 (342), 그래픽 프로세싱 모듈 (343), 및/또는 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들과 같은 하나 이상의 소스들로부터, 디스플레이를 위해 하나 이상의 이미지들을 표현하는 하나 이상의 미디어 엘리먼트들을 표현하는 이미지 데이터를 수신하도록 구성될 수도 있다. 디스플레이 프로세싱 모듈 (347) 은 하나 이상의 디스플레이를 통한 제시를 위해 이러한 수신된 데이터를 프로세싱하도록 구성될 수도 있다. 예를 들어, 도 3 에서 도시된 바와 같이, 디스플레이 프로세싱 모듈 (347) 은 소스 디바이스 (310) 의 네이티브 디스플레이 (312) 를 제어하기 위해 이미지 데이터를 프로세싱할 수도 있다.
디스플레이 프로세싱 모듈 (346) 은 또한, 소스 디바이스 (310) 외부의 하나 이상의 디스플레이들을 제어하기 위해 수신된 이미지 데이터를 다이렉팅 및/또는 프로세싱할 수도 있다. 예를 들어, 디스플레이 프로세싱 모듈 (346) 은, 외부 디스플레이 인터페이스 (348) 를 통해, 소스 디바이스 (310) 외부의 적어도 하나의 디스플레이 (예를 들어, 도 1 에 도시된 목적지 디바이스 (114) 에 통신가능하게 커플링된 외부 디스플레이 인터페이스 (120)) 를 제어할 수도 있다. 일예로서, 디스플레이 프로세싱 모듈 (346) 은, 시각적으로 즐겁게 하는 방식으로 소스 디바이스 (310) 의 그래픽 출력 미디어를 미러링하기 위해, 하나 이상의 외부 디스플레이들의 동작에 맞추어진 포맷으로 하나 이상의 외부 디스플레이들에 전송될 이미지 데이터를 프로세싱할 수도 있다. 예를 들어, 디스플레이 프로세싱 모듈 (346) 은, 시각적으로 즐겁게 하는 방식으로 소스 디바이스 (310) 외부의 하나 이상의 디스플레이들에 의해 출력되도록 이미지 데이터를, 해상도 또는 콘트래스트를 수정, 재사이징, 재성형, 재배향, 재배열, 또는 그외에 이미지 데이터를 수정하기 위해, 네이티브 그래픽 출력을 미러링할 이미지 데이터를 프로세싱할 수도 있다.
도 3 에서도 도시된 바와 같이, 소스 디바이스는 오디오 프로세싱 모듈 (350) 을 포함한다. 오디오 프로세싱 모듈 (350) 은 소스 디바이스 (310) 외부의 하나 이상의 스피커들을 제어하기 위해 수신된 이미지 데이터를 프로세싱할 수도 있다. 예를 들어, 오디오 프로세싱 모듈 (350) 은, 외부 오디오 인터페이스 (354) 를 통해, 다른 디바이스 (예를 들어, 도 1 에 도시된 목적지 디바이스 (114)) 에 통신가능하게 커플링되고 그것에 의해 제어되는 적어도 하나의 스피커 (예를 들어, 도 1 에 도시된 외부 오디오 인터페이스 (130)) 를 제어할 수도 있다. 오디오 프로세싱 모듈 (350) 은 소스 디바이스 (310) 의 네이티브 오디오 미디어 출력을 미러링하기 위해 하나 이상의 외부 오디오 인터페이스들에 전송될 오디오 데이터를 프로세싱할 수도 있다. 예를 들어, 오디오 프로세싱 모듈 (350) 은 소스 디바이스 (310) 외부의 하나 이상의 스피커들을 통한 출력을 위해 오디오 데이터의 비트 레이트, 볼륨, 오디오 인코딩 기법, 또는 다른 특성을 수정함으로써 이미지 데이터를 프로세싱할 수도 있다.
도 3 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 이 개시의 하나 이상의 양태들과 일치하는 미러링 모듈 (360) 을 포함한다. 일반적으로 말하면, 미러링 모듈 (360) 은 이 개시의 하나 이상의 양태들과 일치하는, 디스플레이 프로세싱 모듈 (347) 및/또는 오디오 프로세싱 모듈 (350) 에 의해 수신된 하나 이상의 미디어 엘리먼트들이 목적지 디바이스를 통해 미러링되는지 여부를 제어하도록 구성되는 하드웨어 및/또는 소프트웨어 컴포넌트들의 임의의 조합을 포함할 수도 있다. 예를 들어, 하나 이상의 소스들 (예를 들어, 메모리 (341), 통신 모듈 (342), 그래픽 프로세싱 모듈 (343), 및/또는 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들) 로부터 새로운 미디어 엘리먼트를 수신하는 것에 응답하여, 미러링 모듈 (360) 은 그 수신된 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 파라미터에 대해 비교할 수도 있다. 그 비교에 기초하여, 미러링 모듈 (360) 은 그 미디어 엘리먼트를 미러링할지 여부를 결정하는 것에 기초하여 그 미디어 엘리먼트에 대한 디스플레이 상태를 해결할 수도 있다. 몇몇 예들에서, 미러링 모듈 (360) 은 미디어 엘리먼트에 대한 디스플레이 상태가 해결될 때까지 (예를 들어, 적어도 하나의 파라미터와의 비교가 완료되고 미러링이 확정되거나 거절되는 것 중 어느 일방이 될 때까지) 이러한 수신된 미디어 엘리먼트가 미러링되는 것을 방지할 수도 있다.
도 3 의 예에서, 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및 미러링 모듈 (360) 은 이 개시의 기술들을 설명할 목적으로 별개의 기능적 하드웨어 및/또는 소프트웨어로서 도시되었다. 다른 예들에서, 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 과 관련하여 본원에서 기술된 기능은 단일의 하드웨어 및/또는 소프트웨어 컴포넌트에 의해 수행될 수도 있다. 다른 예들에서, 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 중 어느 하나는 본원에서 설명된 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 의 속성인 기능에 따라 결합하여 동작하는 다수의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다. 또한, 본원에서 설명된 하나 이상의 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 이 소프트웨어로 구현되는 경우에도, 본원에서 설명된 바와 같은 이러한 소프트웨어 모듈들은 그들이 하드웨어 프로세싱 컴포넌트 상에서의 실행에 의해 기능적으로 동작한다는 점에서 하드웨어를 포함할 수도 있다.
이 개시의 하나 이상의 양태들에 따르면, 소스 디바이스 (310) 가 미러링 모드에서 동작될 때, 밀링 모듈 (360) 은 하나 이상의 수신된 미디어 엘리먼트들이 목적지 디바이스 (예를 들어, 도 1 에 도시된 목적지 디바이스 (114)) 를 통해 미러링되는 것을 선택적으로 방지할 수도 있다. 예를 들어, 도 3 에 도시된 바와 같이, 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 은 제 1 미디어 엘리먼트 (336) 를 수신할 수도 있다. 디스플레이 프로세싱 모듈 (347) 및/또는 오디오 프로세싱 모듈 (350) 은 목적지 디바이스 (예를 들어, 도 1 에 도시된 목적지 디바이스 (114)) 를 통해 미러링되는 소스 디바이스의 네이티브 미디어로 하여금, 제 1 미디어 엘리먼트 (336) 를 포함하게 할 수도 있다.
도 3 에 도시된 바와 같이, 디스플레이 프로세싱 모듈 (347), 오디오 프로세싱 모듈 (350), 및/또는 미러링 모듈 (360) 은 또한 제 2 미디어 엘리먼트 (338) 를 수신할 수도 있다. 미러링 모듈 (360) 은 제 2 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 파라미터에 대해 비교할 수도 있다. 그 비교에 기초하여, 미러링 모듈 (360) 은 제 2 미디어 엘리먼트 (338) 를 적어도 하나의 목적지 디바이스를 통해 미러링할지 또는 미러링하지 않을지 여부를 결정할 수도 있다.
몇몇 예들에서, 미러링 모듈 (360) 은, 메모리에 저장된 적어도 하나의 미리결정된 파라미터에 기초하여 제 2 미디어 엘리먼트 (338) 를 미러링할지 여부를 결정할 수도 있다. 예를 들어, 미러링 모듈 (360) 은, 디스플레이 프로세싱 모듈 (347), 그래픽 프로세싱 모듈 (343), 및/또는 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들을 통해, 본원에서 설명된 바와 같이 하나 이상의 목적지 디바이스들을 통한 미디어의 미러링에 관한 하나 이상의 옵션들을 사전-선택하기 위해 사용자가 이용할 수도 있는 사용자-인터페이스를 제공할 수도 있다. 예를 들어, 미러링 모듈 (360) 은, 수신된 미디어 엘리먼트의 미러링 상태를 결정함에 있어 나중에 사용하기 위해 하나 이상의 미리결정된 파라미터들로서 메모리에 저장될 수도 있는, 미디어의 미러링에 관한 애플리케이션-특정 옵션들을 사용자가 선택하는 것을 허용하는 사용자 인터페이스를 제공할 수도 있다. 메모리에 저장된 이러한 하나 이상의 미리결정된 파라미터들에 기초하여, 미러링 모듈 (360) 은, 수신된 제 2 미디어 엘리먼트 (338) 를 미러링할지 아니면 미러링하지 않을지 여부를 확정할 수도 있고, 이에 의해, 제 2 미디어 엘리먼트 (338) 의 디스플레이 상태를 해결할 수도 있다.
다른 예들에 따르면, 미러링 모듈 (360) 은, 하나 이상의 동적으로 결정된 파라미터들에 기초하여 제 2 미디어 엘리먼트 (338) 를 출력할지 또는 출력하지 않을지 여부를 결정할 수도 있다. 예를 들어, 제 2 미디어 엘리먼트 (338) 를 수신하는 것에 응답하여, 미러링 모듈 (360) 은, 디스플레이 프로세싱 모듈 (347), 그래픽 프로세싱 모듈 (343), 및/또는 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들을 통해, 제 2 미디어 엘리먼트 (338) 를 미러링할지 또는 미러링하지 않을지 여부를 사용자가 선택하는 것을 허용하는 사용자-인터페이스를 제공할 수도 있다. 몇몇 예들에서, 이러한 사용자 인터페이스는 수신된 제 2 미디어 엘리먼트 (338) 의 미러링을 단순히 허용 또는 거절하는 옵션을 사용자에게 제공할 수도 있다. 다른 예들에서, 이러한 사용자 인터페이스는, 또한 또는 대신에, 사용자가, 추가로 미러링 모듈 (및/또는 디스플레이 프로세싱 모듈, 오디오 프로세싱 모듈 (350)) 에 의해 수신된 미디어 엘리먼트들에 적용될 수도 있는 하나 이상의 미리결정된 파라미터들을 선택하는 것을 가능하게 할 수도 있다.
몇몇 예들에서, 미러링 모듈 (360) 은, 전술한 적어도 하나의 미리결정된 또는 동적으로 결정된 파라미터에 기초하여 제 2 미디어 엘리먼트 (338) 가 목적지 디바이스 (314) 를 통해 출력되어야 하는 것을 미러링 모듈이 결정 (즉, 제 2 미디어 엘리먼트 (338) 의 미러링 상태를 해결) 하지 않는 한, 제 2 미디어 엘리먼트 (338) 가 목적지 디바이스 (314) 를 통해 미러링되지 않게 할 수도 있다. 예를 들어, 파라미터가 미리결정된 파라미터인 경우에, 미러링 모듈 (360) 은, 제 2 미디어 엘리먼트 (338) 의 적어도 하나의 특성의 적어도 하나의 미리결정된 파라미터에 대한 비교가, 제 2 미디어 엘리먼트 (338) 가 미러링되어야 하는 것을 나타내는 것을 확정하지 않는 한, 제 2 미디어 엘리먼트 (338) 가 목적지 디바이스를 통해 출력되지 않게 할 수도 있다. 다른 예들로서, 파라미터가 동적으로 결정된 파라미터인 경우에, 미러링 모듈 (360) 은, 미러링 모듈 (360) 이, 제 2 미디어 엘리먼트 (338) 를 미러링할지 여부를 사용자가 확정하는 것을 가능하게 하는 사용자 인터페이스를 소스 디바이스 (310) 의 사용자에게 제공하고 또한 소스 디바이스 (310) 가, 사용자로부터 제 2 미디어 엘리먼트가 미러링되어야만 한다는 이러한 확정을 수신할 때까지, 제 2 미디어 엘리먼트 (338) 가 목적지 디바이스를 통해 출력되게 하지 않을 수도 있다.
몇몇 예들에서, 미러링 모듈 (360) 이 제 2 미디어 엘리먼트 (338) 의 미러링 상태를 해결하는 동안, 미러링 모듈 (360) 은, 제 2 미디어 엘리먼트 (338) 가 목적지 디바이스에 의해 출력되지 않도록 목적지 디바이스에 의한 미디어의 미러링을 수정할 수도 있다. 예를 들어, 미러링 모듈 (360) 은, 디스플레이 프로세싱 모듈 (347) 및/또는 오디오 프로세싱 모듈 (350) 로 하여금, 임의의 미디어의 (예를 들어, 외부 디스플레이 인터페이스 (348), 외부 오디오 인터페이스 (354) 를 통한) 목적지 디바이스로의 미러링을 중단하게 할 수도 있다. 다른 예들에 따르면, 미러링 모듈 (360) 은, 미러링 모듈 (360) 이 제 2 미디어 엘리먼트 (338) 의 미러링 상태를 해결할 때까지, 모든 미러링된 미디어가 동결되도록 할 수도 있다.
다른 예들에 따르면, 미러링 모듈 (360) 은 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트 (338) 의 미러링 상태가 해결될 때까지 제 2 미디어 엘리먼트 (338) 를 미러링 함이 없이, 도 3 에 도시된 바와 같은 제 1 미디어 엘리먼트 (336) 를 포함하는 그래픽 미디어와 같은, 소스 디바이스 (310) 의 다른 네이티브 미디어를 미러링하는 것을 계속하게 할 수도 있다. 예를 들어, 미러링 모듈 (338) 은 미러링된 미디어에서 제 2 미디어 엘리먼트 (338) 에 대응하는 적어도 하나의 구역을 식별할 수도 있다. 이들 예들에 따르면, 미러링 모듈은, 이러한 미러링된 미디어에서의 식별된 구역이 제거 또는 동결되게 할 수도 있고, 이는 제 2 미디어 엘리먼트 (338) 가 미러링되는 것을 방지할 수도 있다.
몇몇 예들에서, 미러링 모듈 (360) 은 또한, 목적지 디바이스로 하여금, 제 2 미디어 엘리먼트 (338) 와 연관된 임의의 네이티브 오디오 미디어를 미러링된 미디어로 미러링함이 없이, 제 2 미디어 엘리먼트 (338) 의 미러링 상태가 해결될 때까지, 제 1 미디어 엘리먼트 (336) 와 연관된 네이티브 오디오 미디어를 포함하는 소스 디바이스 (310) 의 네이티브 오디오 미디어를 미러링하는 것을 계속하게 할 수도 있다. 예를 들어, 오디오 프로세싱 모듈 (350) 은, 제 2 미디어 엘리먼트 (338) 의 미러링 상태가 해결될 때까지, 제 2 미디어 엘리먼트 (338) 와 연관된 어떤 오디오 프로세싱 미디어도 프로세싱하지 않을 수도 있고, 및/또는, 제 2 미디어 엘리먼트 (338) 와 연관된 어떤 오디오 미디어도 목적지 디바이스에 전송하지 않을 수도 있다.
몇몇 예들에서, 미러링 모듈 (360) 은 제 2 미디어 엘리먼트 (338) 와 연관된 미러링된 그래픽 미디어의 적어도 하나의 구역이 목적지 디바이스를 통해 미러링된 미디어에서 시각적으로 동결되도록 할 수도 있다. 예를 들어, 미러링 모듈 (360) 은, 목적지 디바이스가, 제 2 미디어 엘리먼트 (338) 에 대응하는 미러링된 그래픽 미디어의 하나 이상의 구역들을 동결하기 위해 수신된 이미지 데이터를 프로세싱하는 그것의 동작을 수정하여야만 하는 것을 목적지 디바이스에게 나타내는 하나 이상의 대역내 또는 대역외 신호들을 전송할 수도 있다.
다른 예들에 따르면, 미러링 모듈 (360) 은, 미러링된 미디어에서의 식별된 구역이 시각적으로 동결되도록, 이미지 데이터가 목적지 디바이스에 전송되기 전에 소스 디바이스 (310) 그 자신이 이미지 데이터를 프로세싱하게 할 수도 있다. 이러한 하나의 예에 따르면, 디스플레이 프로세싱 모듈 (347) 이 비디오 인코딩 모듈을 포함하고 목적지 디바이스가 대응하는 비디오 디코딩 모듈을 포함하는 경우에, 미러링 모듈 (360) 은 하나 이상의 예측 모드들을 식별된 구역과 연관된 이미지 데이터에 할당할 수도 있고, 이는, 비디오 디코딩 모듈로 하여금 적어도 하나의 이미지를 제시하기 위해 이미지 데이터의 적어도 하나의 이전에 디스플레이된 프레임으로부터의 이미지 데이터를 이용하게 함으로써, 이미지 데이터로 하여금 일단 디코더에 의해 디코딩되면 동결되게 한다. 하나의 구체적인 예로서, 미러링 모듈 (360) 은, 디스플레이 프로세싱 모듈 (347) 의 비디오 인코딩 모듈로 하여금 식별된 구역 내의 비디오 데이터의 각 블록에 스킵 (skip) 예측 모드들을 할당하게 하여, 도 8 내지 도 12 를 참조하여 이하 더 자세히 설명되는 바와 같이, 블록들의 각각이 식별된 구역에서의 이미지들을 출력하기 위해 변경되지 않은 적어도 하나의 이전에 디코딩된 프레임의 이미지 데이터를 이용하도록 할 수도 있다.
도 4 는 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스 (320) 의 미러링 모듈 (360) 에 의해 수행될 수도 있는 방법의 일예를 나타내는 흐름도이다. 도 4 에 도시된 방법은 소스 디바이스 (320) 의 미러링 모듈 (360) 에 의해 수행되는 것으로서 도시되지만, 도 4 의 방법은 소스 디바이스 (320) 의 임의의 컴포넌트 및/또는 다른 디바이스에 의해 수행될 수도 있다.
도 4 에서 도시된 바와 같이, 소스 디바이스 (320) 의 네이티브 미디어 출력이 목적지 디바이스를 통해 미러링되도록, 소스 디바이스 (320) 가 미러링 모드에서 동작될 때, 미러링 모듈 (380) 은 네이티브 미디어 출력의 미디어 엘리먼트를 수신할 수도 있다 (401). 미디어 엘리먼트는, 예를 들어, 소스 디바이스 (320) 의 프로세서, 및/또는 임의의 다른 소스 상에서 실행되는 소프트웨어 애플리케이션으로부터 수신된 오디오 및/또는 시각적 데이터를 포함할 수도 있다.
도 4 에서도 도시된 바와 같이, 미러링 모듈 (360) 은, 수신된 미디어 엘리먼트가 미러링 모듈 (360) 에 알려졌는지 아닌지 여부를 결정할 수도 있다 (402). 예를 들어, 미러링 모듈 (360) 은, 수신된 미디어 엘리먼트가 목적지 디바이스 (114) 를 통해 미러링되어야 하는지 여부를 확정하기 위해 미러링 모듈 (360) 에 의해 사용될 수도 있는, 메모리에 저장된 임의의 미리결정된 파라미터들이 존재하는지 여부를 결정할 수도 있다.
도 4 에서도 도시된 바와 같이, 수신된 미디어 엘리먼트가 목적지 디바이스를 통해 미러링되어야 하는지 여부를 확정하는, 메모리에 저장된 임의의 미리결정된 파라미터들이 존재한다고 미러링 모듈 (360) 이 결정하는 경우, 미러링 모듈 (360) 은, 수신된 미디어 엘리먼트의 적어도 하나의 특성을 하나 이상의 미리결정된 파라미터들에 대해 비교할 수도 있다 (405). 그 비교에 기초하여, 미러링 모듈 (360) 은, 수신된 미디어 엘리먼트가 목적지 디바이스를 통해 미러링되게 할지 여부를 결정할 수도 있다 (406).
도 4 에서도 도시된 바와 같이, 미러링 모듈 (360) 이, 수신된 미디어 엘리먼트가 알려지지 않았다고 (예를 들어, 수신된 미디어 엘리먼트가 미러링되어야 하는지 여부를 확정하기 위해 사용될 수도 있는, 메모리에 저장된 임의의 미리결정된 파라미터들이 존재하지 않는다고) 결정하는 경우, 미러링 모듈 (360) 은 수신된 미디어 엘리먼트를 미러링할지 또는 미러링하지 않을지 여부의 확정을 사용자로부터 요청할 수도 있다 (403). 예를 들어, 제 2 미디어 엘리먼트 (338) 를 수신하는 것에 응답하여, 미러링 모듈 (360) 은, 디스플레이 프로세싱 모듈 (347), 그래픽 프로세싱 모듈 (343), 및/또는 프로세서 (344) 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들을 통해, 사용자가 수신된 미디어 엘리먼트를 미러링할지 안할지 여부를 구체적으로 나타내는 것을 허용하는 사용자-인터페이스를 제공할 수도 있다. 도 4 에서도 도시된 바와 같이, 미러링 모듈 (360) 은, 요청된 확정에 응답하여 수신된 사용자 입력에 기초하여 수신된 미디어 엘리먼트를 미러링하기 위한 허가 (authorization) 를 결정할 수도 있다 (404).
전술한 바와 같이, 몇몇 예들에서, 미러링 모듈 (360) 은 메모리에 저장된 하나 이상의 미리결정된 파라미터들에 기초하여 수신된 미디어 엘리먼트에 대한 미러링 상태를 결정할 수도 있다. 상기에서도 설명된 바와 같이, 미러링 모듈 (360) 은, 사용자가 이러한 미리결정된 파라미터들을 특정하는 것을 가능하게 하는 사용자-인터페이스를 사용자에게 제공하도록 동작가능할 수도 있다. 도 5 는, 이 개시의 하나 이상의 양태들과 일치하는, 사용자가 하나 이상의 이러한 미리결정된 파라미터들을 식별하는 것을 가능하게 하는 이러한 사용자 인터페이스 (501) 의 일예를 나타내는 개념도이다.
도 5 의 예에 따르면, 사용자가, 소스 디바이스 (320) 의 프로세서에 의해 실행가능한 애플리케이션, "애플리케이션 1" 과 연관된 하나 이상의 미러링 파라미터들을 특정하는 것을 가능하게 할 수도 있는 사용자 인터페이스 (501) 가 도시된다. 도 5 의 예에서 도시된 바와 같이, 사용자 인터페이스 (500) 는 사용자가 하나 이상의 애플리케이션 특정 파라미터들을 선택하는 것을 가능하게 한다. 예를 들어, 도 5 에 도시된 버튼 (501) 은 사용자가, 애플리케이션 1 로부터 출력되는 모든 미디어가 하나 이상의 목적지 디바이스들을 통해 미러링되도록 허가하는 것을 가능하게 할 수도 있다. 다른 예에서, 도 5 에서도 도시된 바와 같이, 버튼 (502) 은, 사용자가, 미러링 모듈 (360) 이, 애플리케이션 1 로부터 수신된 임의의 특정 미디어 엘리먼트를 미러링하기 전에, 그 사용자 (및/또는 다른 사용자들) 로부터의 허가를 요청하여야만 하는 것을 대신 나타내는 것을 가능하게 할 수도 있다.
도 5 에서도 도시된 바와 같이, 사용자 인터페이스 (500) 는 또한, 몇몇 예들에서, 사용자가 애플리케이션 1 과 연관된 하나 이상의 사용자-특정 셋팅들을 식별하는 것을 가능하게 할 수도 있다. 예를 들어, 도 5 에 도시된 버튼 (504) 은, 사용자가 애플리케이션 1 의 하나 이상의 다른 사용자들에 대해 특정적인 하나 이상의 미러링 옵션들을 선택하는 것을 가능하게 할 수도 있는 다른 사용자 인터페이스 (미도시) 로 사용자를 이끌 수도 있다. 예를 들어, 애플리케이션 1 이 텍스트 메시징, 전화, 소셜 네트워킹, 또는 다른 메시징 애플리케이션과 같은 메시징 애플리케이션을 포함하는 경우에, 도 5 에 도시된 버튼 (504) 은, 소스 디바이스 (310) 의 사용자가, 사용자의 하나 이상의 그룹들을 식별하고, 애플리케이션 1 로부터의 미디어 엘리먼트들이 모두 미러링되어야 하는지 아닌지, 모두 미러링되는 것이 방지되어야 하는지 아닌지, 또는 사용자 확정이 요청되고 수신되는 경우에만 미러링되어야 하느지 여부를 나타내는 것을 가능하게 할 수도 있다.
도 5 에서도 도시된 바와 같이, 소스 디바이스 (310) 가 하나보다 많은 목적지 디바이스를 통해 소스 디바이스 (310) 의 네이티브 미디어 출력을 미러링하도록 구성되는 경우에, 사용자 인터페이스 (500) 는 사용자가, 사용자 인터페이스 (500) 를 통해 사용자에 의해 표시된 하나 이상의 셋팅들을 하나 이상의 특정 목적지 디바이스들에 적용하는 것을 가능하게 할 수도 있다. 예를 들어, 도 5 에 도시된 바와 같이, 버튼 (504) 은, 사용자의 침실에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스, 사용자의 거실에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스, 및/또는 사용자의 자동차에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스에 커플링된 목적지 디바이스 중 하나 이상을 사용자가 선택하는 것을 가능하게 할 수도 있다.
전술한 바와 같이, 몇몇 예들에서, 미러링 모듈 (360) 은 하나 이상의 동적으로 결정된 파라미터들에 기초하여 수신된 미디어 엘리먼트에 대한 미러링 상태를 결정할 수도 있다. 예를 들어, 미디어 엘리먼트를 수신하는 것에 응답하여, 미러링 모듈 (360) 은, 사용자가, 하나 이상의 목적지 디바이스들을 통해 수신된 정보 엘리먼트의 미러링을 확정 또는 거절하는 것을 가능하게 하는 사용자 인터페이스를 제공할 수도 있다. 일예에서, 이러한 사용자 인터페이스는 사용자가 특정 미디어 엘리먼트의 미러링을 확정 또는 거절하는 것을 가능하게 하는 사용자-선택가능한 버튼들을 제시할 수도 있다. 또한, 소스 디바이스 (310) 가 하나보다 많은 목적지 디바이스에 대해 미디어를 미러링하도록 구성되고, 사용자가 미디어 엘리먼트의 미러링을 확정하는 경우, 이러한 사용자 인터페이스는 또한 사용자가 미디어 엘리먼트를 미러링하는 하나 이상의 목적지 디바이스들을 식별하는 것을 가능하게 할 수도 있다.
다른 예들에서, 이러한 수신된 미디어 엘리먼트에 대한 응답으로 제공된 이러한 사용자 인터페이스는 또한, 미러링 모듈에 의해 수신된 하나 이상의 다른 미디어 엘리먼트들의 미러링 상태를 결정하기 위해 미러링 모듈 (360) 에 의해 나중에 사용될 수도 있는 하나 이상의 파라미터들을 사용자가 선택하는 것을 가능하게 할 수도 있다. 도 6 은 수신된 미디어 엘리먼트에 응답하여 제시될 수도 있는 이러한 사용자 인터페이스의 일예를 나타내는 개념도이다. 도 6 에 도시된 바와 같이, 사용자 인터페이스 (600) 는 수신된 미디어 엘리먼트의 표시 (identification) (610) 를 포함한다. 예를 들어, 도 6 에 도시된 바와 같이, 표시 (610) 는, 미디어 엘리먼트가 애플리케이션 "애플리케이션 1" 을 통한 사용자 존 스미스로부터의 메시지의 통지를 포함한다.
도 6 의 예에서도 도시된 바와 같이, 사용자 인터페이스 (600) 는 사용자가 수신된 미디어 엘리먼트의 미러링에 관한 하나 이상의 사용자 및/또는 애플리케이션 특정 옵션들을 선택하는 것을 가능하게 한다. 예를 들어, 버튼 (606) 은, 표시 (610) 에 의해 식별된 특정 메시지가 미러링되어야만 하는 것을 사용자가 나타내는 것을 가능하게 할 수도 있고; 하지만, 미러링 모듈은 애플리케이션 1 로부터 수신된 추가적인 미디어 엘리먼트들을 미러링하기 위한 허가를 요청하는 것을 계속하여야 한다. 다른 예로서, 버튼 (607) 은, 애플리케이션 1 을 통해 수신된 모든 미디어 출력이 하나 이상의 목적지 디바이스들을 통해 미러링되어야만 하는 것을 사용자가 나타내는 것을 가능하게 할 수도 있다. 다른 예로서, 버튼 (608) 은, 애플리케이션 1 로부터 수신된 아무런 미디어 출력도 미러링되어야 하지 않는다는 것을 사용자가 나타내는 것을 가능하게 할 수도 있다. 다른 예에서, 버튼 (609) 은, 사용자 존 스미스로부터 애플리케이션 1 을 통해 수신된 모든 미디어 출력은 미러링되어야 하는 것을 사용자가 나타내는 것을 가능하게 할 수도 있다. 다른 예로서, 버튼 (611) 은, 사용자 존 스미스로부터의 애플리케이션 1 의 아무런 출력도 미러링되어야 하지 않는 것을 사용자가 나타내는 것을 가능하게 할 수도 있다. 다른 예로서, 버튼 (612) 은, 사용자 존 스미스와 연관된 임의의 애플리케이션으로부터의 아무런 미디어 출력도 미러링되어야 하지 않는 것을 사용자가 나타내는 것을 가능하게 할 수도 있다.
도 6 에서도 도시된 바와 같이, 소스 디바이스 (310) 가 하나 보다 많은 목적지 디바이스를 통해 미디어 출력을 미러링하도록 구성되는 경우, 사용자 인터페이스 (600) 는, 사용자가, 사용자 인터페이스 (600) 를 통해 사용자에 의해 표시된 하나 이상의 셋팅들을 하나 이상의 특정 목적지 디바이스들에 적용하는 것을 가능하게 할 수도 있다. 예를 들어, 도 6 에 도시된 바와 같이, 버튼 (604) 은, 사용자의 침실에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스, 사용자의 거실에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스, 및/또는 사용자의 자동차에 위치한 디스플레이 및/또는 연관된 오디오 출력 디바이스에 커플링된 목적지 디바이스 중 하나 이상을 사용자가 선택하는 것을 가능하게 할 수도 있다.
도 7 은, 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스의 미디어 출력을 적어도 하나의 목적지 디바이스를 통해 미러링하도록 소스 디바이스를 동작시키는 방법의 일예를 나타내는 흐름도이다. 도 7 에 도시된 방법은 도 3 에 도시된 소스 디바이스 (310) 에 의해 수행되는 것으로서 설명되었지만, 도 7 의 방법은 임의의 디바이스에 의해 수행될 수도 있다.
도 7 에 도시된 바와 같이, 소스 디바이스 (310) 는 출력 인터페이스 (예를 들어, 외부 디스플레이 인터페이스 (120), 목적지 디바이스와 연관된 외부 오디오 인터페이스) 를 통해 미디어를 출력하도록 목적지 디바이스 (예를 들어, 도 1 에 도시된 목적지 디바이스 (114)) 를 제어할 수도 있다 (701). 예를 들어, 소스 디바이스 (310) 는 소스 디바이스에 고유한 미디어를 미러링하도록 목적지 디바이스를 제어할 수도 있다. 도 7 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 미디어의 제 1 미디어 엘리먼트 (예를 들어, 도 2 에 도시된 제 1 미디어 엘리먼트 (236), 도 3 에 도시된 제 1 미디어 엘리먼트 (336)) 를 수신할 수도 있다 (702). 예를 들어, 소스 디바이스 (310) 는, 소스 디바이스 (310) 상에서 실행되는 적어도 하나의 소프트웨어 애플리케이션으로부터 미디어의 제 1 미디어 엘리먼트를 수신할 수도 있다.
도 7 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 제 1 미디어 엘리먼트를 포함하는 미디어를 목적지 디바이스에 출력할 수도 있다 (703). 도 7 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 미디어의 제 2 미디어 엘리먼트 (예를 들어, 도 2 에 도시된 제 2 미디어 엘리먼트 (238), 도 3 에 도시된 제 2 미디어 엘리먼트 (338)) 를 수신할 수도 있다 (704). 도 7 에서도 도시된 바와 같이, 소스 디바이스 (310) 는, 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 제 2 미디어 엘리먼트를 포함하는 미디어를 출력할 지 여부를 결정할 수도 있다 (705). 예를 들어, 소스 디바이스 (310) 는, 제 2 미디어 엘리먼트의 적어도 하나의 특성을 적어도 하나의 파라미터에 대해 비교하고, 제 2 미디어 엘리먼트를 포함하는 미디어를 목적지 디바이스에 출력할지 여부를 결정할 수도 있다. 몇몇 예들에서, 적어도 하나의 파라미터는, 사전에 수신된 사용자 인터페이스 입력에 기초할 수도 있는, 메모리에 저장된 미리 결정된 파라미터를 포함할 수도 있다. 다른 예에서, 적어도 하나의 파라미터는 소스 디바이스 (310) 에 의해 동적으로 결정될 수도 있다. 예를 들어, 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 소스 디바이스 (310) 는, 제 2 미디어 엘리먼트를 포함하는 미디어를 목적지 디바이스에 미러링할지 또는 미러링하지 않을지 여부를 사용자가 명시하는 것을 가능하게 하는 사용자 인터페이스를 사용자에게 제공할 수도 있다.
몇몇 예들에서, 소스 디바이스 (310) 는, 소스 디바이스가 제 2 미디어 엘리먼트의 미러링 상태를 해결하지 않는 한, 제 2 미디어 엘리먼트를 포함하는 미디어를 출력하지 않을 수도 있다. 예를 들어, 소스 디바이스 (310) 는, 소스 디바이스 (310) 가 사용자 인터페이스를 통해 제 2 미디어를 포함하는 미디어를 미러링하기 위한 사용자로부터의 확정을 수신하지 않는 한 제 2 미디어 엘리먼트를 포함하는 미디어를 출력하지 않을 수도 있다. 몇몇 예들에서, 소스 디바이스 (310) 가 제 2 미디어 엘리먼트의 미러링 상태를 해결하는 동안, 소스 디바이스 (310) 는 제 1 미디어 엘리먼트를 포함하는 미디어와 같은 다른 미디어를 출력하도록 목적지 디바이스를 제어하거나 제어하지 않을 수도 있다.
도 8 은, 이 개시의 하나 이상의 양태들과 일치하는, 소스 디바이스 (810) 의 미디어 출력을 적어도 하나의 목적지 디바이스 (814) 를 통해 미러링하도록 구성된 소스 디바이스 (810) 의 일예를 나타내는 블록도이다. 도 8 에 도시된 바와 같이, 소스 디바이스 (810) 는 디스플레이 프로세싱 모듈 (847) 을 포함한다. 디스플레이 프로세싱 모듈 (847) 은 비디오 데이터를 포함하는 미디어 데이터를 수신할 수도 있고, 소스 디바이스 (810) 의 네이티브 디스플레이 (도 8 의 예에서는 미도시) 및/또는 목적지 디바이스 (814) 의 또는 목적지 디바이스 (814) 에 통신가능하게 커플링된 외부 디스플레이 인터페이스 (821) 와 같은 하나 이상의 디스플레이들에 의해 출력될 수신된 미디어 데이터를 프로세싱할 수도 있다. 도 8 에서도 도시된 바와 같이, 목적지 디바이스 (814) 는 디스플레이 프로세싱 모듈 (882) 을 더 포함할 수도 있다. 디스플레이 프로세싱 모듈 (882) 은 소스 디바이스 (810) 로부터의 비디오 데이터와 같은 미디어 데이터의 하나 이상의 표현들을 수신하고, 수신된 미디어 데이터와 일치하는 이미지들을 제시하도록 외부 디스플레이 인터페이스 (821) 를 동작시키도록 동작가능할 수도 있다.
도 8 의 예에 따르면, 디스플레이 프로세싱 모듈 (847) 은 비디오 인코더 (820) 를 포함할 수도 있다. 일반적으로 말하면, 비디오 인코더 (820) 는 미디어 데이터가 재생을 위해 다른 디바이스에 전송되기 전에, 미디어 데이터를 압축하거나 미디어 데이터의 사이즈를 감소시키기 위해 미디어 데이터를 인코딩하도록 구성될 수도 있다. 예를 들어, 비디오 인코더 (820) 는, 소스 디바이스 (810) 가 목적지 디바이스 (814) 에 미디어 데이터를 전송하기 전에, 비디오 데이터를 포함하는 미디어 데이터를 압축할 수도 있다. 일예로서, 비디오 인코더 (820) 는 수신된 미디어를 압축하여 인코딩된 비트 스트림을 생성할 수도 있다. 이러한 인코딩된 비트 스트림은, 몇몇 예들에서, 목적지 디바이스 (814) 와 같은 다른 디바이스에 전송될 수도 있다.
도 8 에 도시된 바와 같이, 목적지 디바이스 (814) 의 디스플레이 프로세싱 모듈 (882) 은 또한 대응하는 비디오 디코더 (830) 를 포함할 수도 있다. 일반적으로 말하면, 비디오 디코더 (830) 는, 도 8 에 도시된 통신 링크 (816) 및/또는 저장 매체 (832) 를 통해 소스 디바이스 (810) 로부터 인코딩된 비트 스트림과 같은 압축된 데이터를 수신하고, 하나 이상의 디스플레이들을 통해 출력될 포맷으로 비디오 데이터를 재구성 (reconstruct) 하기 위해 그 압축된 데이터를 압축해제, 또는 디코딩할 수도 있다.
도 8 에서도 도시된 바와 같이, 전술한 바와 같이, 이 개시의 몇몇 양태들에 따르면, 소스 디바이스 (810) 는 목적지 디바이스 (814) 를 통해 소스 디바이스 (810) 의 미디어 출력을 미러링하도록 목적지 디바이스 (814) 를 제어한다. 예를 들어, 소스 디바이스 (810) 는 제 1 미디어 엘리먼트 (836) 를 수신할 수도 있고, 목적지 디바이스 (814) 로 하여금 외부 디스플레이 (821) 를 통해 제 1 미디어 엘리먼트 (836) 를 포함하는 비디오 미디어를 출력하게 할 수도 있다.
소스 디바이스 (810) 는 또한 제 2 미디어 엘리먼트 (838) 를 수신할 수도 있다. 도 3 에 도시된 소스 디바이스 (310) 와 관련하여 전술한 바와 같이, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 의 미러링 상태가 해결될 때까지, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 미러링되는 것을 방지할 수도 있다. 예를 들어, 소스 디바이스 (810) 는, 전술한 바와 같이, 적어도 하나의 미리결정된 또는 동적으로 결정된 파라미터에 기초하여, 제 2 미디어 엘리먼트 (838) 가 미러링되어야 하는 것을 소스 디바이스 (810) 가 확정하지 않는 한, 제 2 미디어 엘리먼트 (838) 가 출력되는 것을 방지할 수도 있다.
상기에서도 설명한 바와 같이, 몇몇 예들에서, 소스 디바이스 (810) 는 목적지 디바이스 (814) 로 하여금 모든 미디어를 출력하는 것을 중지하게 함으로써 제 2 미디어 엘리먼트 (838) 가 미러링되는 것을 방지할 수도 있다. 예를 들어, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 의 미러링 상태를 소스 디바이스 (810) 가 해결할 때까지, 목적지 디바이스 (814) 에 추가적인 미디어를 전송하는 것을 중지할 수도 있다.
다른 예들에서, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 가 미러링되는 것을 방지하여 목적지 디바이스 (814) 로 하여금 제 2 미디어 엘리먼트 (838) 를 포함하지 않는 목적지 디바이스 (814) 에 의해 현재 출력되는 미디어의 프레임을 동결하는 것을 야기할 수도 있다. 예를 들어, 소스 디바이스 (810) 는 목적지 디바이스 (814) 에 하나 이상의 대역내 (in-band) 또는 대역외 (out-of-band) 명령들을 통신하여, 목적지 디바이스 (814) 로 하여금, 소스 디바이스 (810) 가 제 2 미디어 엘리먼트 (838) 의 디스플레이 상태를 해결할 때까지, 메모리로부터 이미지 데이터의 이전에 디스플레이된 프레임을 판독하는 것을 계속하게 할 수도 있다. 다른 예로서, 소스 디바이스 (810) 는 비디오 미디어의 이전에 디스플레이된 프레임을 목적지 디바이스 (814) 에 표현하는 데이터를 반복적으로 전송할 수도 있다.
또 다른 예에 따르면, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 미러링되는 것을 방지하면서, 목적지 디바이스 (814) 를 통해 미디어를 활성적으로 미러링하는 것을 계속할 수도 있다. 예를 들어, 도 2 와 관련하여 전술한 바와 같이, 소스 디바이스 (810) 는, 소스 디바이스 (810) 의 네이티브 미디어 출력에서 제 2 미디어 엘리먼트 (838) 에 대응하는, 목적지 디바이스 (814) 를 통해 제시될 미디어에서의 적어도 하나의 구역 (예를 들어, 도 2 에 도시된 구역 (233)) 을 식별할 수도 있다.
상기에서도 설명한 바와 같이, 소스 디바이스 (810) 는, 다른 미러링된 미디어는 여전히 출력하면서, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 에 의해 미러링된 미디어에 포함되는 것을 방지하기 위해, 제 2 미디어 엘리먼트 (838) 와 연관된 이러한 식별된 구역의 미디어 출력 (예를 들어, 비디오 출력) 을 동결 및/또는 제거하도록 동작할 수도 있다.
몇몇 이러한 예들에 따르면, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 에 대응하는 이러한 식별된 구역의 미디어 출력을 동결 및/또는 제거하도록 목적지 디바이스 (814) 에게 지시하는 전술한 바와 같은 하나 이상의 대역내 또는 대역외 명령 신호들을 목적지 디바이스 (814) 에 통신할 수도 있다. 이들 예들에 따르면, 목적지 디바이스 (814) 는 이러한 명령 신호를 해석하고 이러한 수신된 명령 신호에 응답하여 동작하도록 구성될 수도 있다. 예를 들어, 이러한 명령 신호에 응답하여, 목적지 디바이스 (814) 는, 식별된 구역에 대응하는 수신된 미디어 데이터는 프로세싱 및/또는 출력하지 않음으로써 이러한 식별된 구역에 대응하는 미디어 출력을 제거할 수도 있다. 다른 예에 따르면, 이러한 명령 신호에 응답하여, 목적지 디바이스는, 제 2 미디어 엘리먼트 (838) 의 미러링 상태가 소스 디바이스 (810) 에 의해 해결될 때까지, 메모리로부터 이전에 디스플레이된 프레임의 미디어 데이터를 반복적으로 판독함으로써, 그 식별된 구역에 대응하는 미디어 출력을 동결하도록 구성될 수도 있다. 이 예에 따르면, 목적지 디바이스 (814) 는 식별된 구역 외부의 미러링된 미디어를 정상적으로 디스플레이하기 위해 데이터를 수신 및/또는 프로세싱하는 것을 계속할 수도 있다.
다른 예들에 따르면, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 가 다른 미디어와 함께 미러링되는 것을 방지하기 위해 목적지 디바이스 (814) 의 동작이 변경되게 하는 하나 이상의 이러한 명령 신호들을 통신하지 않을 수도 있다. 이들 예들에 따르면, 소스 디바이스 (810) 는, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 미러링된 다른 미디어에 포함되지 않도록, 목적지 디바이스 (814) 에 전송될 미디어 데이터를 그 자신이 프로세싱할 수도 있다. 예를 들어, 제 2 미디어 엘리먼트 (838) 가 다른 미러링된 미디어와 함께 출력되는 것을 방지하기 위해, 소스 디바이스 (810) 의 미러링 모듈 (860) 은 디스플레이 프로세싱 모듈 (847) 의 동작을 수정할 수도 있다.
일예로서, 미러링 모듈 (860) 은, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 다른 미러링된 미디어와 함께 출력되는 것을 방지하기 위해, 디스플레이 프로세싱 모듈 (847) 의 비디오 인코더 (820) 의 동작을 수정할 수도 있다. 예를 들어, 미러링 모듈 (860) 은 비디오 인코더 (820) 로 하여금, 식별된 구역 외부의 미디어를 표현하는 데이터와 상이하게 제 2 미디어 엘리먼트 (838) 에 대응하는 적어도 하나의 식별된 구역의 미디어를 나타내는 데이터를 인코딩하게 할 수도 있다.
일예로서, 미러링 모듈 (860) 은 비디오 인코더 (820) 로 하여금, 디코더에게 비트 스트림을 디코딩하도록 지시하는 하나 이상의 신택스 엘리먼트들 (syntax elements) 을, 목적지 디바이스 (814) 를 통해 미러링될 미디어를 표현하는 인코딩된 비트 스트림의 일부로서 인코딩하게 할 수도 있다. 예를 들어, 본원에서 설명된 기술들에 따르면, 비디오 인코더 (820) 는, 디코더가 적어도 하나의 식별된 구역에서 이미지들을 디스플레이하기 위해 어떤 수정 없이 이미지 데이터의 적어도 하나의 이전 프레임의 데이터를 사용하여야 하는 것을 나타내는 이러한 신택스 엘리먼트들을 시그널링할 수도 있다. 이러한 방식으로, 미러링 모듈 (860) 은, 제 2 미디어 엘리먼트 (838) 와 연관된 적어도 하나의 식별된 구역을 비디오 인코더 (830) 가 동작하는 방식을 변경함으로써, 제 2 미디어 엘리먼트 (838) 가 미러링된 미디어에서 출력되는 것을 방지하면서, 소스 디바이스 (810) 의 네이티브 미디어가 목적지 디바이스 (814) 를 통해 계속 활성적으로 미러링되게 할 수도 있다.
몇몇 예들에 따르면, 비디오 인코더 (820) 및 비디오 디코더 (830) 는 현재 개발 중인 고효율 비디오 코딩 (High Efficiency Video Codin; HEVC) 표준과 같은 비디오 압축 표준에 따라 동작할 수도 있고, HEVC 테스트 모델 (HM) 에 호환될 수도 있다. 대안적으로, 비디오 인코더 (820) 및 비디오 디코더 (830) 는, ITU-T H.264 표준, 대안적으로 MPEG-4, Part 10, 어드밴스드 비디오 코딩 (Advanced Video Coding; AVC) 으로서 지칭되는 것과 같은 다른 독점적 또는 산업 표준들, 또는 이러한 표준들의 확장판들에 따라 동작할 수도 있다. 이 개시의 기술들은 하지만 어떤 특정 코딩 표준에 제한되지 않는다. 비디오 압축 표준들의 다른 예들은 MPEG-2 및 ITU-T H.263 을 포함한다.
인코딩 프로세스 동안, 비디오 인코더 (820) 는 다수의 코딩 기술들 또는 동작들을 실행할 수도 있다. 일반적으로, 비디오 인코더 (820) 는 비디오 블록을 인코딩하기 위해 개별 비디오 프레임들 내의 비디오 블록들 (또는 슬라이스들과 같은 다른 독립적으로 코딩된 유닛들) 에 대해 동작한다. 프레임들, 슬라이스들, 프레임들의 부분들, 화상들 (즉, 프레임들) 의 그룹들, 또는 다른 데이터 구조들은 복수의 비디오 블록들을 포함하는 독립적인 데이터 유닛들로서 정의될 수도 있고, 이러한 상이한 독립적인 데이터 유닛들과 연관된 신택스 엘리먼트들이 포함될 수도 있다. 독립적인 데이터 유닛들 내의 비디오 블록들은 고정된 또는 변화하는 사이즈들을 가질 수도 있고, 특정된 코딩 표준에 따라 사이즈가 상이할 수도 있다. 몇몇 경우들에서, 각 비디오 프레임은 일련의 독립적으로 디코딩가능한 슬라이스들을 포함할 수도 있고, 각 슬라이스는 하나 이상의 매크로블록들 또는 LCU 들을 포함할 수도 있다.
매크로블록들은 ITU H.264 표준 및 다른 표준들에 의해 정의된 비디오 블록의 일 유형이다. 매크로블록들은 통상적으로 데이터의 16×16 블록들을 지칭한다. ITU H.264 표준은, 루마 (luma) 성분들을 위해 16×16, 8×8, 또는 4×4, 및 크로마 (chroma) 성분들을 위해 8×8 과 같은 다양한 블록 사이즈 들에서의 인트라 예측 (intra prediction), 및 루마 성분들을 위한 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, 및 4×4, 및 크로마 성분들을 위한 대응하는 스케일링된 사이즈들과 같은 다양한 블록 사이즈들에서의 인터 예측 (inter prediction) 을 지원한다.
최근 생겨난 HEVC 표준은 비디오 블록들에 대한 새로운 용어들을 정의한다. 특히, HEVC 의 경우, 비디오 블록들 (또는 그것의 파티션들) 은 "코딩된 유닛들 (coded units)" 로서 지칭될 수도 있다. HEVC 표준의 경우, 최대 코딩된 유닛 (largest coded unit; LCU) 들은 보다 작게 분할될 수도 있고 쿼드트리 파티셔닝 방식에 따라 더 작은 코딩된 유닛 (CU) 들로 분할될 수도 있으며, 이 방식에서 정의되는 상이한 CU 들은 소위 예측 유닛 (prediction unit; PU) 들 및/또는 변환 유닛 (transform unit; TU) 들로 추가로 파티셔닝될 수도 있다. LCU 들, CU 들, 및 PU 들, 및 TU 들은 이 개시의 의미 내의 모든 비디오 블록들이다. 비디오 블록들의 다른 유형들 또한 HEVC 표준 또는 다른 비디오 코딩 표준들과 일치하여 사용될 수도 있다. 따라서, "블록 (block)" 이라는 문구는 임의의 사이즈의 비디오 블록을 지칭한다. 또한, 비디오 블록들은 때로는 픽셀 도메인에서의 비디오 데이터의 블록들, 또는 이산 코사인 변환 (DCT) 도메인, DCT 와 유사한 도메인, 웨이브릿 도메인, 또는 기타 등등과 같은 변환 도메인에서의 데이터의 블록들을 지칭할 수도 있다.
도 8 을 참조하면, 비디오 인코더 (820) 는, 코딩되는 비디오 블록이 예측 블록을 식별하기 위해 비디오 데이터의 다른 블록에 대해 비교되는 예측 코딩을 수행할 수도 있다. 프레임들에 걸친 예측 코딩의 이러한 프로세스는 종종 모션 추정 (motion estimation) 및 모션 보상 (motion compensation) 으로서 지칭된다. 모션 추정은 하나 이상의 예측 프레임들 (또는 다른 코딩된 유닛들) 의 하나 이상의 예측 비디오 블록들에 대한 비디오 블록 모션을 추정한다. 모션 보상은 하나 이상의 예측 프레임들 또는 다른 코딩된 유닛들로부터 원하는 예측 비디오 블록을 생성한다. 모션 보상은, 분수 픽셀 정확도로 예측 데이터를 생성하기 위해 보간 필터링 (interpolation filtering) 이 수행되는 보간 프로세스를 포함한 수도 있다. 예측 코딩의 이러한 프로세스는 또한 프레임 내에서 수행될 수 있고, 여기서, 현재 블록에 대해 동일 프레임 내에서 공간적으로 이웃하는 픽셀들이 예측 블록을 생성하기 위해 이용된다.
예측 블록을 생성한 후에, 코딩되고 있는 현재 비디오 블록과 예측 블록 사이의 차이들은 잔차 블록 (residual block) 으로서 코딩되고, (모션 벡터와 같은) 예측 신택스가 예측 블록을 식별하기 위해 사용된다. 예를 들어, 비디오 인코더 (820) 는 수개의 예측 모드들 중 하나를 이용하여 각 블록 (즉, HEVC 에 따른 각 CU) 을 코딩할 수도 있다. 예를 들어, HEVC 에 따르면, 예측 모드들은, 예를 들어, 스플릿 (split) 모드, 스킵 (skip) 모드, 다이렉트 (direct) 모드, 및 인터_2N×2N, 인터_N×2N, 인터_2N×N, 인터_N×N, 인터_2N×nU, 인터_2N×nD, 인터_nL×2N, 인터_nR×2N, 인트라_2N×2N, 및 인트라_N×N 을 위한 추가적인 모드들을 포함할 수도 있고, 여기서, 이러한 모드들은 PU 들의 사이즈들 및 모드가 인트라-예측 모드인지 또는 인터-예측 모드인지 여부를 가리킨다. 스킵 모드에 따르면, 현재 CU (예를 들어, 현재 PU) 는 잔차 데이터 없이 참조 프레임에서의 공동위치된 (co-located) 블록에 기초하여 재구성되고, 이는 현재 CU 가 참조 프레임에서의 공동위치된 블록과 동일한 결과를 초래한다. 다이렉트 모드에서, 현재 CU 는 잔차 데이터를 갖는 참조 프레임에서의 공동위치된 블록에 기초하여 재구성되고, 이는, 현재 PU 가 참조 블록 플러스 (plus) 잔차 데이터에 대응하는 결과를 초래한다. 몇몇 예들에서, 이러한 예측 모드들은 일반적으로 서로 배타적일 수도 있고, 이는, 임의의 주어진 CU 는 모드들 중 오직 하나를 이용하여 코딩될 수도 있다.
이 개시는, 도 8 에 도시된 소스 디바이스 (810) 와 같은 소스 디바이스에 의해, 다른 것, 목적지 디바이스 (814) 에 의해 디스플레이될 비디오 내의 구역, 동결할 비디오 출력의 적어도 하나의 구역을 식별하고, 비디오 출력의 식별된 적어도 하나의 구역이 미디어 출력에서 시각적으로 동결되게 하기 위해 인코더 (820) 의 동작을 수정하기 위한 기술들을 설명한다. 몇몇 예들에서, 동결할 비디오 출력의 적어도 하나의 구역은 도 8 에 도시된 미러링 모듈 (860) 에 의해 결정될 수도 있다. 이들 예들에 따르면, 미러링 모듈 (860) 은, 제 2 미디어 엘리먼트 (838) 가 제 1 미디어 엘리먼트 (836) 를 포함하는 미디어와 같은, 다른 미러링된 미디어 (예를 들어, 다른 미러링된 비디오) 와 함께 출력되는 것을 방지하기 위해, 제 2 미디어 엘리먼트 (838) 와 연관된 소스 디바이스 (810) 의 네이티브 비디오 출력에서 대응하는 구역에 기초하여 적어도 하나의 구역을 식별할 수도 있다. 전술한 바와 같이, 미러링 모듈 (860) 은, 제 2 미디어 엘리먼트 (838) 의 미러링 상태가 해결될 때까지, 제 2 미디어 엘리먼트 (838) 가 디스플레이되는 것을 방지하기 위해 비디오 인코더 (820) 의 동작을 수정할 수도 있다.
비디오 데이터를 인코딩하기 위해, 비디오 인코더 (820) 는 비디오 데이터의 프레임 또는 슬라이스를 복수의 비디오 데이터의 블록들 (예를 들어, HEVC 에 따른 복수의 CU) 로 나눌 수도 있다. 인코딩 프로세스의 일부로서, 비디오 인코더 (820) 는, 비디오 데이터를 디코딩하는 디코더에게, 비디오 데이터의 동일 또는 상이한 프레임 또는 슬라이스에서의 다른 블록들에 대한 각 특정 블록의 콘텐츠를 어떻게 예측하는지를 시그널링하는, 하나 이상의 예측 모드들을 할당할 수도 있다.
이 개시의 몇몇 양태들에 따르면, 동결되어야만 하는 미러링된 비디오에서의 적어도 하나의 구역을 식별하는 것에 응답하여, 소스 디바이스 (810) 는 비디오 인코더 (820) 로 하여금 식별된 구역 내의 각 블록에 스킵 예측 모드를 할당하게 할 수도 있다. 도 9 는 비디오 데이터의 프레임 (901) 의 일예를 나타내는 개념도이다. 몇몇 예들에서, 프레임 (901) 은 디스플레이될 비디오 데이터의 전체 프레임에 대응할 수도 있다. 다른 예들에서, 프레임 (901) 은 비디오 데이터의 슬라이스 또는 보다 큰 블록 (예를 들어, 전술한 LCU 와 같은, 매크로블록 또는 상위-레벨 CU) 과 같은, 비디오 데이터의 프레임의 서브셋트 (subset) 를 포함할 수도 있다. 도 9 의 예에서 도시된 바와 같이, 비디오 인코더 (820) 는 프레임 (901) 을 비디오 데이터의 복수의 블록들 (903) 로서 인코딩할 수도 있다.
전술한 바와 같이, 정상 동작 하에서, 비디오 인코더 (820) 가 블록들 (903) 을 인코딩함에 따라, 비디오 인코더 (820) 는 프레임 (901) 의 각 블록 (903) 에 예측 모드를 할당할 수도 있다. 복수의 블록들의 각각에 대한 예측 모드는, 프레임 (901) 을 나타내는 비디오 데이터의 인코딩된 비트 스트림의 일부로서 디코더에, 각 개별 블록과 연관된 하나 이상의 신택스 엘리먼트들로서 시그널링될 수도 있다. 예를 들어, 도 9 에 도시된 바와 같이, 인코딩의 결과로서, 프레임 (901) 의 각 블록 (903) 은 스플릿 모드, 스킵 모드, 다이렉트 모드, 또는 인트라 모드 또는 인터 모드 중 하나를 할당받았다. 도 9 에 도시된 프레임 (901) 은 오직 예시적 목적을 위해서만 제공된다. 다른 예들에서, 비디오 인코더 (820) 는 도 9 의 예에서 도시되지 않은 하나 이상의 다른 예측 모드들을 프레임 (901) 의 하나 이상의 블록들 (903) 에 할당할 수도 있다. 예를 들어, H.264 비디오 코딩 표준에 따르면, 비디오 인코더 (820) 는 프레임 (901) 의 각 블록 (903) 에 9 개의 상이한 예측 모드들 중 하나를 할당할 수도 있다. 다른 예로서, 비디오 코딩을 위한 제안된 HEVC 표준에 따르면, 비디오 인코더 (820) 는 프레임 (901) 의 각 블록 (903) 에 33 개의 예측 모드들 중 하나를 할당할 수도 있다.
도 9 에서도 도시된 바와 같이, 소스 디바이스 (810) 는 프레임 (901) 에서 동결할 구역 (905) 을 식별할 수도 있다. 예를 들어, 전술한 바와 같이, 소스 디바이스 (810) 의 미러링 모듈 (860) 은, 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 미러링되는 것을 방지하기 위해, 도 8 에 도시된 제 2 미디어 엘리먼트 (838) 에 대응하는 것으로서 구역 (905) 을 식별할 수도 있다.
도 9 에서 도시된 바와 같이, 정상 동작 하에서, 비디오 인코더 (820) 는 프레임 (901) 의 비디오 데이터의 블록들 (903) 모두에 복수의 예측 모드들 중 하나를 할당할 수도 있다. 예를 들어, 정상 동작 하에서, 비디오 인코더 (820) 는, 블록을 디코딩하는 디코더가 프레임을 재구성하기 위해 인코딩된 블록에 어떤 잔차 블록을 적용하지 않도록, 변화하지 않는 프레임의 부분에서의 비디오 데이터의 블록에 스킵 예측 모드를 할당할 수도 있다. 대신에, 디코더는 블록을 재구성하기 위해 예측 블록만을 단독으로 사용할 수도 있다. 다른 예에서, 정상 동작 하에서, 비디오 인코더 (820) 는, 인코딩된 프레임을 재구성하기 위해 예측 블록에 잔차 블록을 적용하도록 디코더에게 지시하는 복수의 다른 예측 모드들 중의 예측 모드를 이미지들이 변화하는 하나 이상의 블록들에 할당할 수도 있다.
이 개시의 몇몇 양태들에 따르면, 비디오 인코더 (820) 가 식별된 구역의 블록들에 스플릿, 스킵, 다이렉트, 또는 인트라 및/또는 인터 예측 모드들 중 하나의 모드와 같은 상이한 예측 모드들을 할당하는 대신에, 비디오 인코더는 대신에, 도 10 의 예에서 도시된 바와 같이, 프레임과 이전 프레임 사이의 차이들에 상관 없이, 식별된 구역 (905) 의 모든 블록들에 동일한 예측 모드를 할당할 수도 있다. 예를 들어, 도 10 에 도시된 바와 같이, 비디오 인코더 (820) 는 프레임 (911) 의 식별된 구역 (905) 내의 비디오 데이터의 각 블록에 스킵 예측 모드를 할당할 수도 있다. 이러한 방식으로, 비디오 인코더 (820) 는 표준 예측 모드와는 상이하게 구역 내의 블록들을 인코딩할 수도 있고, 여기서, 구역 내의 블록들의 적어도 일부는 하나 이상의 다른 예측 모드들을 갖도록 할당받을 수도 있을 것이고, 이는, 디코더로 하여금 블록을 재구성하기 위해 예측 블록에 데이터의 잔차 블록을 적용하게 한다.
몇몇 예들에서, 프레임 (901) 에서 동결할 구역 (905) 을 식별하는 것에 응답하여, 비디오 인코더 (820) 는, 식별된 구역 (905) 의 각 블록에 할당된 스킵 예측 모드들을 시그널링하는 하나 이상의 신택스 엘리먼트들을 포함하는, 도 10 에 도시된 프레임 (911) 을 나타내는 인코딩된 비트 스트림을 생성할 수도 있다. 비디오 인코더 (820) 는 인코딩된 비트 스트림을, 도 8 에 도시된 목적지 디바이스 (814) 의 비디오 디코더 (830) 와 같은 비디오 디코더에 전송할 수도 있다. 비디오 디코더 (830) 는, 도 8 에 도시된 다이렉트 통신 링크 (816) 를 통해, 또는 저장 디바이스 (832) 와 같은 저장 매체를 통해, 인코더 (820) 로부터 인코딩된 비트 스트림을 수신할 수도 있다. 비디오 디코더 (830) 는 외부 디스플레이 (821) 를 통해 프레임 (911) 을 출력하기 위해 프레임 (911) 을 재구성하기 위해, 수신된 인코딩된 비트 스트림을 디코딩할 수도 있다.
수신된 인코딩된 비트 스트림을 디코딩하기 위해, 비디오 디코더 (830) 는 정상적으로 동작할 수도 있고, 비디오 인코더 (820) 가 할당한 시그널링된 스킵 예측 모드들을 식별된 구역 (905) 내의 각 블록에 적용할 수도 있으며, 이는 비디오 디코더 (830) 로 하여금, 비디오 데이터의 프레임 (911) 을 재구성하기 위해 잔차 블록과 같은 임의의 변화를 적용하지 않게 할 수도 있다. 이러한 방식으로, 소스 디바이스 (810) 의 인코더 (820) 는 적어도 하나의 구역 (905) 과 연관된 미디어를 출력 (디스플레이) 하기 위해 적어도 하나의 이전에 제시된 프레임의 변화되지 않은 데이터를 사용할 수도 있고, 이는 그 적어도 하나의 구역이 뷰어에게 시각적으로 동결된 것처럼 보이게 할 수도 있다. 몇몇 예들에서, 소스 디바이스 (810) (예를 들어, 미러링 모듈 (860)) 는, 인코더 (820) 로 하여금, 식별된 구역 (905) 과 연관된 도 8 에 도시된 바와 같은 제 2 미디어 엘리먼트 (838) 가 목적지 디바이스 (814) 를 통해 미러링되는 것을 방지하기 위해, 전술한 바와 같이 식별된 구역 (905) 에 대응하는 비디오 출력의 이러한 부분을 동결하게 할 수도 있다.
도 11 은 이 개시의 하나 이상의 양태들과 일치하는, 비디오 데이터를 인코딩하는 방법의 일예를 나타내는 흐름도이다. 도 11 의 예는 도 8 의 예에서 도시된 소스 디바이스 (810) 에 의해 수행되는 것으로서 설명되지만, 임의의 디바이스가 도 11 의 방법을 수행하기 위해 사용될 수도 있다.
도 11 에 도시된 바와 같이, 소스 디바이스 (810) 는 목적지 디바이스를 통해 출력할 때 동결될 비디오 데이터의 프레임의 적어도 하나의 구역 (903) 을 식별할 수도 있다 (1101). 도 11 에서도 도시된 바와 같이, 소스 디바이스 (810) (예를 들어, 비디오 인코더 (820)) 는 식별된 구역 외부에 있는 프레임의 복수의 블록들의 각각에 복수의 예측 모드들 중 하나를 할당할 수도 있다 (1102). 예를 들어, 소스 디바이스 (810) 는 복수의 블록들의 각각에, 스플릿 모드, 스킵 모드, 다이렉트 모드, 또는 인트라 모드 또는 인터 모드, 또는 다른 예측 모드 중 하나를 할당할 수도 있다. 몇몇 예들에서, 소스 디바이스 (810) 는, 식별된 구역 외부의 복수의 블록들의 적어도 일부에, 블록들의 각각과, 그 블록을 재구성하기 위해 사용될 수도 있는 적어도 하나의 예측 블록 사이의 하나 이상의 차이들에 기초하여, 예측 모드를 할당할 수도 있다. 예를 들어, 식별된 구역의 외부의 블록 사이에 차이들이 존재하는 경우, 소스 디바이스 (810) 는, 블록을 재구성하기 위해 예측 블록에 의해 적용될 수도 있는 잔차 블록을 결정하기 위해 디코더에 의해 사용될 수도 있는, 다이렉트, 인트라, 또는 인터 예측 모드 중 하나를 블록에 할당할 수도 있다. 다른 예들에서, 식별된 구역 외부의 블록과, 그 블록을 재구성하기 위해 사용될 수도 있는 예측 블록 사이에 차이들이 존재하지 않는 경우, 소스 디바이스 (810) 는 그 블록에 스킵 예측 모드를 할당할 수도 있다.
도 11 에서도 도시된 바와 같이, 소스 디바이스 (810) 는 식별된 구역 내에 있는 프레임의 복수의 블록들의 모두에게 동일한 예측 모드를 할당할 수도 있다. 예를 들어, 소스 디바이스 (810) 는 식별된 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당할 수도 있다 (1103). 몇몇 예들에서, 소스 디바이스 (810) 는, 블록과, 그 블록을 재구성하기 위해 디코더에 의해 사용될 수도 있는 예측 블록 사이에 어떤 차이가 존재하는지 여부에 관계 없이, 식별된 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당할 수도 있다.
도 11 에 도시된 바와 같이, 소스 디바이스 (810) 는, 프레임이 목적지 디바이스를 통해 출력될 때 식별된 적어도 하나의 구역이 프레임에서 시각적으로 동결되게 하도록, 목적지 디바이스 (예를 들어, 도 8 에 도시된 목적지 디바이스 (814)) 에 비디오 데이터의 프레임을 출력할 수도 있다 (1104). 예를 들어, 목적지 디바이스는 비디오 디코더 (830) 를 포함할 수도 있고, 비디오 데이터의 프레임은 인코딩된 비트 스트림으로서 비디오 디코더에 의해 수신될 수도 있다. 비디오 디코더는, 인코딩된 비트 스트림에서 시그널링되는 비디오 데이터의 블록들과 연관된 하나 이상의 예측 모드들을 이용하여, 수신된 인코딩된 비트 스트림을 디코딩할 수도 있다. 이 예에 따르면, 식별된 구역 내의 비디오 데이터의 블록들이 모두 전술한 바와 같이 스킵 모드들을 할당받기 때문에, 비디오 디코더가 블록들을 디코딩하기 위해 정상적으로 동작할 때, 이전에 출력된 (예를 들어, 디스플레이된) 이미지 데이터가 식별된 적어도 하나의 구역에 대해 비디오 디코더에 의해 사용될 수도 있다. 이러한 방식으로, 디스플레이된 이미지에서의 식별된 적어도 하나의 구역은 뷰어에게 시각적으로 동결된 것처럼 보일 수도 있다.
도 3 의 예를 다시 돌아가 참조하면, 이 개시의 몇몇 양태들에 따르면, 소스 디바이스 (310) 는, 목적지 디바이스 (314) 를 통해, 오디오 및/또는 비디오 미디어를 포함하는, 소스 디바이스의 네이티브 미디어를 미러링하기 위해 미러링 모드에서 동작할 수도 있다. 전술한 바와 같이, 소스 디바이스 (310) 는, 목적지 디바이스 (314) 를 통해 미러링될 미디어의 미디어 엘리먼트 (예를 들어, 도 3 에 도시된 제 2 미디어 엘리먼트 (336)) 를 수신하고, 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 그 수신된 미디어 엘리먼트를 미러링할 또는 미러링하지 않을지 여부를 결정할 수도 있다. 수신된 미디어 엘리먼트는 소스 디바이스 (310) 의 네이티브 오디오 또는 디스플레이 인터페이스에 의해 출력될 수도 있고 또는 출력되지 않을 수도 있다. 상기에서도 설명한 바와 같이, 소스 디바이스 (310) 는, 미디어 엘리먼트의 미러링 상태가 소스 디바이스 (310) 에 의해 해결될 때까지, (예를 들어, 미러링된 미디어에서 소스 디바이스 (310) 에 고유한 미디어에서의 미디어 엘리먼트와 연관된 하나 이상의 구역을 동결 또는 제거함으로써) 미디어 엘리먼트가 목적지 디바이스 (314) 를 통해 출력되는 것을 방지하도록 동작할 수도 있다. 이렇게 하기 위해, 소스 디바이스 (310) 는, 수신된 미디어 엘리먼트가 목적지 디바이스 (314) 를 통해 출력되지 않도록 수정된, 소스 디바이스의 다른 네이티브 미디어 출력을 미러링하는 것을 계속할 수도 있다. 몇몇 예들에서, 일단 소스 디바이스 (310) 가 미디어 엘리먼트의 미러링 상태를 해결 (다른 미디어로 미디어 엘리먼트를 미러링할지 안할지 여부를 결정) 하면, 소스 디바이스 (310) 는, 수신된 미디어가 목적지 디바이스 (314) 를 통해 출력되지 않도록, 소스 디바이스 (310) 에 미러링된 네이티브 미디어 출력을 수정하는 것을 중지할 수도 있다. 대신에, 소스 디바이스 (310) 는 다른 네이티브 미디어 출력을 통상과 같이 미러링하는 것으로 복귀할 수도 있다.
몇몇 예들에 따르면, 비디오 시퀀스는 일련의 비디오 프레임들 또는 화상들을 포함할 수도 있다. 프레임들 또는 화상들은, 일반적으로 일련의 하나 이상의 비디오 화상들을 포함하는 복수의 화상들의 그룹 (group of pictures; GOP) 내로 배열될 수도 있다. GOP 는, GOP 내에 포함된 화상들을 설명하는, GOP 의 헤더, 하나 이상의 화상들의 헤더, 또는 다른 곳에 신택스 데이터를 포함할 수도 있다. 몇몇 예들에서, GOP 의 헤더 내의 신택스 데이터는, 액세스 포인트가 비디오 시퀀스의 재생을 위한 시작 포인트로서 사용될 수도 있음에 따라, GOP 의 화상을 식별할 수도 있다. 몇몇 예들에서, 이러한 액세스 포인트는 비디오 시퀀스의 독립적으로 디코딩가능한 프레임을 포함할 수도 있다. 독립적으로 디코딩가능한 프레임은 디코더에 의해 디코딩될 임의의 다른 프레임들로부터의 데이터에 의존하지 않을 수도 있다.
전술한 바와 같이, 소스 디바이스 (310) 는, 소스 디바이스 (310) 의 네이티브 미디어 출력을 목적지 디바이스 (314) 를 통해 미러링하기 위해 정상 모드에서 동작하는 것으로부터, 네이티브 미디어의 하나 이상의 미디어 엘리먼트들이 목적지 디바이스를 통해 미러링되는 것을 방지하기 위해 수정된 모드에서 동작하는 것으로 천이할 수도 있다. 이 개시의 몇몇 실시형태들에 따르면, 소스 디바이스 (310) 가 전술한 바와 같이 모드들 사이를 천이할 때, 소스 디바이스 (310) 는 새로운 GOP 에서 (예를 들어, 새로운 GOP 의 식별된 액세스 포인트에서) 미러링된 미디어 (예를 들어, 미러링된 비디오 미디어) 를 출력하는 것을 시작하도록 목적지 디바이스 (814) 를 제어할 수도 있다. 몇몇 예들에서, 소스 디바이스 (310) 가 수정된 모드에서 동작하는 것으로 천이할 때, 소스 디바이스는 미디어를 출력하는 것을 시작하기 위해 보다 긴 GOP 를 사용할 수도 있다. 몇몇 예들에서, 소스 디바이스가 정상 동작 모드로 다시 돌아오는 천이를 할 때, 소스 디바이스 (310) 는 미디어를 출력하는 것을 시작하기 위해 보다 짧은 GOP 를 사용할 수도 있다.
도 12 는, 이 개시의 하나 이상의 양태들과 일치하는, 목적지 디바이스 (314) 를 통해 네이티브 미디어를 미러링하기 위한 기술의 일예를 나타내는 흐름도이다. 도 12 에 도시된 바와 같이, 소스 디바이스 (310) 는, 비디오 미디어를 포함하는, 소스 디바이스 (310) 의 네이티브 미디어가, 목적지 디바이스 (314) 를 통해 미러링되게 하도록 동작될 수도 있다 (1201). 도 12 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 동결될 미러링된 미디어의 적어도 부분을 식별할 수도 있다 (1202). 예를 들어, 소스 디바이스 (310) 는, 전술한 바와 같이, 소스 디바이스 (310) 의 적어도 하나의 수신된 네이티브 미디어 엘리먼트가 목적지 디바이스를 통해 미러링되는 것을 방지하기 위해 동결될 미러링된 미디어의 적어도 부분을 식별할 수도 있다. 도 12 에서도 도시된 바와 같이, (예를 들어, 미디어의 새로운 미디어 엘리먼트의 수신에 응답하여) 동결될 미러링된 미디어의 적어도 하나의 구역을 식별하는 것에 응답하여, 소스 디바이스 (310) 는 목적지 디바이스 (314) 로 하여금, 미디어의 미러링을 개시하기 위해 제 1 GOP 를 이용하여 동결된 식별된 구역을 갖는 미디어를 미러링하게 할 수도 있다 (1203). 예를 들어, 소스 디바이스 (310) 는 목적지 디바이스로 하여금, 제 1 GOP 의 식별된 액세스 포인트 화상에서 시작하는 동결된 식별된 구역을 갖는 미디어를 미러링하게 할 수도 있다. 도 12 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 적어도 하나의 동결된 구역이 미러링된 미디어에서 해동 (unfrozen) 되는지를 결정할 수도 있다 (1204). 도 12 에서도 도시된 바와 같이, 소스 디바이스 (310) 는 목적지 디바이스로 하여금, 제 1 GOP 와는 상이한 제 2 GOP 를 이용하여 해동되는 식별된 구역을 갖는 미디어를 미러링하게 할 수도 있다 (1205). 예를 들어, 소스 디바이스 (310) 는 목적지 디바이스로 하여금, 제 2 GOP 의 식별된 제 2 포인트 화상에서 시작하는 미디어를 미러링하게 할 수도 있다. 몇몇 예들에서, 소스 디바이스 (310) 는 제 2 GOP 보다 더 긴 길이를 가지도록 제 1 GOP 를 선택할 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 그것을 통해 전송될 수도 있으며, 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터-판독가능 매체는, 데이터 저장 매체와 같은 유형의 저장 매체에 대응하는 컴퓨터 판독가능 저장 매체, 또는, 예를 들어 통신 프로토콜에 따라, 한 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체를 포함할 수도 있다. 이러한 방식으로, 컴퓨터 판독가능 매체는 일반적으로, (1) 비-일시적인 유형의 컴퓨터 판독가능 저장 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 일반적으로 대응한다. 데이터 저장 매체는 이 개시에서 설명된 기술들의 구현을 위해 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
제한이 아닌 예시로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기적 저장 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하기 위해 이용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 연결이 적절하게 컴퓨터 판독가능 매체로 지칭된다. 예를 들어, 명령들이 동축 케이블, 광섬유 케이블, 트위스트 페어, 디지털 가입자 회선 (DSL), 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술들을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 그 동축 케이블, 광섬유 케이블, 트위스트 페어, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술들은 매체의 정의 내에 포함된다. 하지만, 컴퓨터 판독가능 저장 매체 및 데이터 저장 매체는 연결들, 반송파들, 신호들, 또는 다른 일시성 매체를 포함하지 않고 대신에 비-일시적, 유형의 저장 매체로 지향된다는 것을 이해하여야 한다. 본원에서 사용된 디스크 (disk) 및 디스크 (disc) 는 콤팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루-레이 디스크를 포함하고, 여기서, 디스크 (disk) 들은 통상적으로 데이터를 자기적으로 재생하는 한편, 디스크 (disc) 들은 데이터를 레이저들을 이용하여 광학적으로 재생한다. 상기한 것들의 조합들 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은, 하나 이상의 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그래머블 게이트 어레이 (FPGA) 또는 다른 동등한 집적된 또는 이산 로직 회로와 같은 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 본원에서 사용된 "프로세서" 라는 용어는 본원에 설명된 기술들의 구현에 적합한 전술한 구조 또는 임의의 다른 구조 중 임의의 것을 지칭할 수도 있다. 또한, 몇몇 양태들에서, 본원에 설명된 기능은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나 결합된 코덱 내에 통합될 수도 있다. 또한, 기술들은 하나 이상의 회로들 또는 로직 엘리먼트들에서 충분히 구현될 수 있을 것이다.
이 개시의 기술들은, 무선 핸드셋, 집적 회로 (IC) 또는 IC 들의 셋트 (예를 들어, 칩 셋) 를 포함하는, 광범위하게 다양한 디바이스들 또는 장치들에서 구현될 수도 있다. 다양한 컴포넌트들, 모듈들, 또는 유닛들이 개시된 기술들을 수행하도록 구성된 디바이스들의 기능적 양태들을 강조하기 위해 이 개시에서 설명되지만, 반드시 상이한 하드웨어 유닛들에 의한 구현을 필요로 하지 않는다. 오히려, 전술한 바와 같이, 다양한 유닛들은, 적합한 소프트웨어 및/또는 펌웨어와 함께, 전술된 바와 같은 하나 이상의 프로세서들을 포함하는, 코덱 하드웨어 내에 결합되거나 통합적 하드웨어 유닛들의 집합에 의해 제공될 수도 있다.
본 발명의 다양한 실시형태들이 설명되었다. 이들 및 다른 실시형태들은 첨부된 청구항들의 범위 내이다.

Claims (56)

  1. 목적지 디바이스를 통해 소스 디바이스의 네이티브 (native) 미디어를 미러링하는 방법으로서, 상기 방법은 상기 소스 디바이스에 의해 수행되고, 상기 방법은,
    상기 소스 디바이스의 상기 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하는 단계;
    상기 목적지 디바이스로 하여금, 상기 목적지 디바이스와 연관된 출력 인터페이스를 통해 상기 제 1 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 하는 단계;
    상기 소스 디바이스의 상기 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하는 단계;
    상기 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 상기 목적지 디바이스로 하여금, 상기 제 2 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 할지 여부를 결정하는 단계;
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 제 2 미디어 엘리먼트에 대응하는 상기 네이티브 미디어의 구역을 식별하는 단계; 및
    상기 목적지 디바이스로 하여금, 식별된 상기 구역에서, 식별된 상기 구역의 이미지 데이터의 이전 프레임의 이미지 데이터를 디스플레이하게 하는 단계를 포함하며,
    상기 목적지 디바이스로 하여금 비디오 데이터의 상기 이전 프레임의 상기 이미지 데이터를 디스플레이하게 하는 것은, 상기 목적지 디바이스가 상기 제 2 미디어 엘리먼트를 디스플레이하는 것을 방지하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 파라미터는 사용자 입력에 기초하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  3. 제 2 항에 있어서,
    상기 적어도 하나의 파라미터는 메모리에 저장된 사전에 수신된 사용자 입력에 기초하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  4. 제 2 항에 있어서,
    상기 적어도 하나의 파라미터는, 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여 수신된 동적으로 결정된 사용자 입력에 기초하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  5. 제 4 항에 있어서,
    적어도 하나의 소프트웨어 애플리케이션으로부터 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 사용자가 상기 제 2 미디어 엘리먼트를 미러링하도록 상기 목적지 디바이스를 제어할지 여부를 나타내는 것을 가능하게 하는 사용자 인터페이스를 상기 사용자에게 제공하는 단계를 더 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  6. 제 1 항에 있어서,
    상기 목적지 디바이스로 하여금, 상기 적어도 하나의 파라미터에 기초하여 상기 제 2 미디어 엘리먼트를 미러링할지 여부가 결정될 때까지 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 단계를 더 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  7. 제 6 항에 있어서,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안, 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하게 하는 단계를 더 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  8. 제 7 항에 있어서,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하게 하는 단계는,
    상기 목적지 디바이스로 하여금, 메모리에 저장된 적어도 일부 사전에 출력된 미디어를 판독하는 것을 포함하는, 상기 제 1 미디어 엘리먼트를 미러링하게 하는 단계를 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  9. 제 7 항에 있어서,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하게 하는 단계는,
    상기 제 1 미디어 엘리먼트를 포함하고 상기 제 2 미디어 엘리먼트는 포함하지 않는 상기 미디어를 상기 목적지 디바이스에 전송하는 단계를 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  10. 제 9 항에 있어서,
    상기 미디어는 비디오 미디어를 포함하고,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하게 하는 단계는,
    상기 목적지 디바이스에 의해 미러링될 미러링된 미디어를 생성하기 위해 상기 네이티브 미디어를 인코딩하는 단계를 포함하고,
    상기 네이티브 미디어를 인코딩하는 단계는,
    복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들에 할당하는 단계;
    상기 미디어의 상기 식별된 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 단계; 및
    비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때, 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하는 단계를 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  11. 제 10 항에 있어서,
    상기 복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들에 할당하는 단계는,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 하나 이상의 예측 모드들을 할당하는 단계를 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  12. 제 1 항에 있어서,
    상기 제 1 미디어 엘리먼트를 수신하는 것 및 상기 제 2 미디어 엘리먼트를 수신하는 것은, 적어도 하나의 컴퓨팅 디바이스 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들로부터 상기 제 1 및 제 2 미디어 엘리먼트들을 수신하는 것을 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  13. 제 12 항에 있어서,
    적어도 하나의 소프트웨어 애플리케이션은,
    비디오 재생 애플리케이션;
    사진 보기 애플리케이션;
    오디오 재생 애플리케이션;
    전화 애플리케이션;
    텍스트 메시징 애플리케이션;
    전자메일 (이메일) 애플리케이션; 및
    게임 애플리케이션
    으로 이루어지는 그룹으로부터 선택된 하나 이상의 소프트웨어 애플리케이션들을 포함하는, 목적지 디바이스를 통해 소스 디바이스의 네이티브 미디어를 미러링하는 방법.
  14. 목적지 디바이스를 통해 소스 디바이스의 네이티브 (native) 미디어를 미러링하도록 구성된 상기 소스 디바이스로서,
    미러링 모듈을 포함하고,
    상기 미러링 모듈은,
    상기 소스 디바이스의 상기 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하고;
    목적지 디바이스로 하여금, 상기 목적지 디바이스와 연관된 출력 인터페이스를 통해 상기 제 1 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 하며;
    상기 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하고;
    상기 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 상기 목적지 디바이스로 하여금, 상기 제 2 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 할지 여부를 결정하며;
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 제 2 미디어 엘리먼트에 대응하는 상기 네이티브 미디어의 구역을 식별하고; 그리고
    상기 목적지 디바이스로 하여금, 식별된 상기 구역에서, 식별된 상기 구역의 이미지 데이터의 이전 프레임의 이미지 데이터를 디스플레이하게 하도록 구성되며,
    상기 소스 디바이스는 상기 목적지 디바이스가 상기 제 2 미디어 엘리먼트를 디스플레이하는 것을 방지하기 위해 상기 목적지 디바이스로 하여금 비디오 데이터의 상기 이전 프레임의 상기 이미지 데이터를 디스플레이하게 하는, 소스 디바이스.
  15. 제 14 항에 있어서,
    상기 적어도 하나의 파라미터는 사용자 입력에 기초하는, 소스 디바이스.
  16. 제 15 항에 있어서,
    상기 적어도 하나의 파라미터는 메모리에 저장된 사전에 수신된 사용자 입력에 기초하는, 소스 디바이스.
  17. 제 15 항에 있어서,
    상기 적어도 하나의 파라미터는, 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여 수신된 동적으로 결정된 사용자 입력에 기초하는, 소스 디바이스.
  18. 제 17 항에 있어서,
    상기 미러링 모듈은,
    적어도 하나의 소프트웨어 애플리케이션으로부터 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 사용자가 상기 제 2 미디어 엘리먼트를 미러링하도록 상기 목적지 디바이스를 제어할지 여부를 나타내는 것을 가능하게 하는 사용자 인터페이스를 상기 사용자에게 제공하도록 더 구성되는, 소스 디바이스.
  19. 제 14 항에 있어서,
    상기 미러링 모듈은,
    상기 목적지 디바이스로 하여금, 상기 적어도 하나의 파라미터에 기초하여 상기 제 2 미디어 엘리먼트를 미러링할지 여부가 결정될 때까지 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하도록 더 구성되는, 소스 디바이스.
  20. 제 19 항에 있어서,
    상기 미러링 모듈은,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안, 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하게 하도록 더 구성되는, 소스 디바이스.
  21. 제 20 항에 있어서,
    상기 미러링 모듈은,
    상기 목적지 디바이스로 하여금, 메모리에 저장된 적어도 일부 사전에 출력된 미디어를 판독하는 것에 기초하여, 상기 제 1 미디어 엘리먼트를 미러링하게 하도록 더 구성되는, 소스 디바이스.
  22. 제 19 항에 있어서,
    상기 미러링 모듈은,
    상기 제 1 미디어 엘리먼트를 포함하고 상기 제 2 미디어 엘리먼트는 포함하지 않는 상기 미디어를 상기 목적지 디바이스에 전송하도록 더 구성되는, 소스 디바이스.
  23. 제 22 항에 있어서,
    상기 미디어는 비디오 미디어를 포함하고,
    상기 미러링 모듈은,
    상기 목적지 디바이스에 의해 미러링될 미러링된 미디어를 생성하기 위해 상기 네이티브 미디어를 인코딩하도록 더 구성되며,
    상기 네이티브 미디어를 인코딩하는 것은,
    복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들에 할당하는 것;
    상기 미디어의 상기 식별된 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 것; 및
    비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때, 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하는 것을 포함하는, 소스 디바이스.
  24. 제 23 항에 있어서,
    상기 미러링 모듈은,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 상기 복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들의 각각에 할당하도록 더 구성되는, 소스 디바이스.
  25. 제 14 항에 있어서,
    상기 제 1 미디어 엘리먼트를 수신하는 것 및 상기 제 2 미디어 엘리먼트를 수신하는 것은, 적어도 하나의 컴퓨팅 디바이스 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들로부터 상기 제 1 및 제 2 미디어 엘리먼트들을 수신하는 것을 포함하고,
    적어도 하나의 소프트웨어 애플리케이션은,
    비디오 재생 애플리케이션;
    사진 보기 애플리케이션;
    오디오 재생 애플리케이션;
    전화 애플리케이션;
    텍스트 메시징 애플리케이션;
    전자메일 (이메일) 애플리케이션; 및
    게임 애플리케이션
    으로 이루어지는 그룹으로부터 선택된 하나 이상의 소프트웨어 애플리케이션들을 포함하는, 소스 디바이스.
  26. 명령들을 저장한 비-일시적 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은 컴퓨팅 디바이스가,
    소스 디바이스의 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하게 하고;
    목적지 디바이스로 하여금, 상기 목적지 디바이스와 연관된 출력 인터페이스를 통해 상기 제 1 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하도록 하게 하며;
    상기 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하게 하고;
    상기 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 상기 목적지 디바이스로 하여금, 상기 제 2 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 할지 여부를 결정하게 하고;
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 제 2 미디어 엘리먼트에 대응하는 상기 네이티브 미디어의 구역을 식별하게 하고; 그리고
    상기 목적지 디바이스로 하여금, 식별된 상기 구역에서, 식별된 상기 구역의 이미지 데이터의 이전 프레임의 이미지 데이터를 디스플레이하도록 하게 하도록 구성되며,
    상기 컴퓨팅 디바이스가 상기 목적지 디바이스로 하여금 비디오 데이터의 상기 이전 프레임의 상기 이미지 데이터를 디스플레이하도록 하게 하는 것은, 상기 목적지 디바이스가 상기 제 2 미디어 엘리먼트를 디스플레이하는 것을 방지하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  27. 제 26 항에 있어서,
    상기 적어도 하나의 파라미터는 사용자 입력에 기초하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  28. 제 27 항에 있어서,
    상기 적어도 하나의 파라미터는 메모리에 저장된 사전에 수신된 사용자 입력에 기초하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  29. 제 27 항에 있어서,
    상기 적어도 하나의 파라미터는, 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여 수신된 동적으로 결정된 사용자 입력에 기초하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  30. 제 29 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    적어도 하나의 소프트웨어 애플리케이션으로부터 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 사용자가 상기 제 2 미디어 엘리먼트를 미러링하도록 상기 목적지 디바이스를 제어할지 여부를 나타내는 것을 가능하게 하는 사용자 인터페이스를 상기 사용자에게 제공하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  31. 제 26 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스가,
    상기 목적지 디바이스로 하여금, 상기 적어도 하나의 파라미터에 기초하여 상기 제 2 미디어 엘리먼트를 미러링할지 여부가 결정될 때까지 상기 제 2 미디어 엘리먼트를 미러링하지 않도록 하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  32. 제 31 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스가,
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 동안, 상기 목적지 디바이스로 하여금 상기 제 1 미디어 엘리먼트를 포함하는 다른 네이티브 미디어를 미러링하도록 하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  33. 제 32 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스가,
    상기 목적지 디바이스로 하여금, 메모리에 저장된 적어도 일부 사전에 출력된 미디어를 판독하는 것에 기초하여, 상기 제 1 미디어 엘리먼트를 미러링하도록 하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  34. 제 32 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    상기 제 1 미디어 엘리먼트를 포함하고 상기 제 2 미디어 엘리먼트는 포함하지 않는 상기 미디어를 상기 목적지 디바이스에 전송하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  35. 제 34 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    상기 목적지 디바이스에 의해 미러링될 미러링된 미디어를 생성하기 위해 상기 네이티브 미디어를 인코딩하게 하며,
    상기 네이티브 미디어를 인코딩하는 것은,
    복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들에 할당하는 것;
    상기 미디어의 상기 식별된 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 것; 및
    비디오 데이터의 프레임을 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때, 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하는 것을 포함하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  36. 제 35 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 상기 복수의 예측 모드들 중 하나를 할당하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  37. 제 26 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금, 적어도 컴퓨팅 디바이스 상에서 실행되는 하나 이상의 소프트웨어 애플리케이션들로부터 상기 제 1 미디어 엘리먼트 및 상기 제 2 미디어 엘리먼트를 수신하게 하고,
    적어도 하나의 소프트웨어 애플리케이션은,
    비디오 재생 애플리케이션;
    사진 보기 애플리케이션;
    오디오 재생 애플리케이션;
    전화 애플리케이션;
    텍스트 메시징 애플리케이션;
    전자메일 (이메일) 애플리케이션; 및
    게임 애플리케이션
    으로 이루어지는 그룹으로부터 선택된 하나 이상의 소프트웨어 애플리케이션들을 포함하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  38. 목적지 디바이스를 통해 소스 디바이스의 네이티브 (native) 미디어를 미러링하도록 구성된 상기 소스 디바이스로서,
    상기 소스 디바이스의 상기 네이티브 미디어의 제 1 미디어 엘리먼트를 수신하는 수단;
    목적지 디바이스로 하여금, 상기 목적지 디바이스와 연관된 출력 인터페이스를 통해 상기 제 1 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 하는 수단;
    상기 네이티브 미디어의 제 2 미디어 엘리먼트를 수신하는 수단;
    상기 제 2 미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여, 상기 목적지 디바이스로 하여금, 상기 제 2 미디어 엘리먼트를 포함하는 상기 네이티브 미디어를 미러링하게 할지 여부를 결정하는 수단;
    상기 목적지 디바이스로 하여금 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 제 2 미디어 엘리먼트에 대응하는 상기 네이티브 미디어의 구역을 식별하는 수단; 및
    상기 목적지 디바이스로 하여금, 식별된 상기 구역에서, 식별된 상기 구역의 이미지 데이터의 이전 프레임의 이미지 데이터를 디스플레이하게 하는 수단을 포함하며,
    상기 목적지 디바이스로 하여금 비디오 데이터의 상기 이전 프레임의 상기 이미지 데이터를 디스플레이하게 하는 수단은, 상기 목적지 디바이스가 상기 제 2 미디어 엘리먼트를 디스플레이하는 것을 방지하는, 소스 디바이스.
  39. 제 38 항에 있어서,
    사용자 입력에 기초하여 상기 적어도 하나의 파라미터를 결정하는 수단을 더 포함하는, 소스 디바이스.
  40. 제 39 항에 있어서,
    메모리에 저장된 사전에 수신된 사용자 입력에 기초여 상기 적어도 하나의 파라미터를 결정하는 수단을 더 포함하는, 소스 디바이스.
  41. 제 39 항에 있어서,
    상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여 수신된 사용자 입력을 동적으로 결정하는 수단을 더 포함하는, 소스 디바이스.
  42. 제 41 항에 있어서,
    적어도 하나의 소프트웨어 애플리케이션으로부터 상기 제 2 미디어 엘리먼트를 수신하는 것에 응답하여, 사용자가 상기 제 2 미디어 엘리먼트를 미러링하도록 상기 목적지 디바이스를 제어할지 여부를 나타내는 것을 가능하게 하는 사용자 인터페이스를 상기 사용자에게 제공하는 수단을 더 포함하는, 소스 디바이스.
  43. 제 41 항에 있어서,
    상기 목적지 디바이스로 하여금, 상기 적어도 하나의 파라미터에 기초하여 상기 제 2 미디어 엘리먼트를 미러링할지 여부가 결정될 때까지 상기 제 2 미디어 엘리먼트를 미러링하지 않게 하는 수단을 더 포함하는, 소스 디바이스.
  44. 비디오 데이터의 프레임을 인코딩하는 방법으로서, 상기 방법은 소스 디바이스에 의해 수행되고, 상기 방법은,
    미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하게 할지 여부를 결정하는 단계;
    상기 미디어 엘리먼트에 대응하는 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하는 단계;
    식별된 상기 적어도 하나의 구역의 외부에 있는 비디오 프레임에서의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하는 단계;
    상기 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 식별된 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 단계; 및
    상기 비디오 데이터의 프레임을 상기 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때 상기 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하는 단계를 포함하는, 비디오 데이터의 프레임을 인코딩하는 방법.
  45. 제 44 항에 있어서,
    식별된 상기 구역 외부의 복수의 비디오 데이터 블록들에 상기 복수의 예측 모드들 중 하나를 할당하는 단계는,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 하나 이상의 예측 모드들을 할당하는 단계를 포함하는, 비디오 데이터의 프레임을 인코딩하는 방법.
  46. 제 44 항에 있어서,
    상기 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하는 단계는, 상기 미디어 엘리먼트가 상기 소스 디바이스에 고유한 다른 미디어와 함께 상기 목적지 디바이스를 통해 미러링되는 것을 방지하기 위해 상기 적어도 하나의 구역을 식별하는 단계를 포함하는, 비디오 데이터의 프레임을 인코딩하는 방법.
  47. 제 44 항에 있어서,
    상기 적어도 하나의 구역 내의 상기 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 단계가, 개별 블록과, 상기 개별 블록을 재구성하기 위해 디코더에 의해 사용될 수도 있는 예측 블록 사이에 어떤 차이들이 존재하는지 여부에 상관 없이 상기 블록들의 각각에 상기 스킵 예측 모드를 할당하는 단계를 포함하는 것을 더 포함하는, 비디오 데이터의 프레임을 인코딩하는 방법.
  48. 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스로서,
    미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하게 할지 여부를 결정하고;
    상기 미디어 엘리먼트에 대응하는 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하도록
    구성된 미러링 모듈; 및
    식별된 상기 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하고;
    상기 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 식별된 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하며; 그리고
    상기 비디오 데이터의 프레임을 상기 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때 상기 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하도록
    구성된 비디오 인코더를 포함하는, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스.
  49. 제 48 항에 있어서,
    상기 비디오 인코더는,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들에 할당하도록 구성되는, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스.
  50. 제 48 항에 있어서,
    상기 미러링 모듈은 또한, 상기 미디어 엘리먼트가 소스 디바이스에 고유한 다른 미디어와 함께 상기 목적지 디바이스를 통해 미러링되는 것을 방지하기 위해 상기 적어도 하나의 구역을 식별하는 것에 기초하여, 상기 비디오 데이터의 프레임의 상기 적어도 하나의 구역을 식별하도록 구성되는, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스.
  51. 제 48 항에 있어서,
    상기 비디오 인코더는 또한,
    상기 적어도 하나의 구역 내의 상기 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 것이, 개별 블록과, 상기 개별 블록을 재구성하기 위해 디코더에 의해 사용될 수도 있는 예측 블록 사이에 어떤 차이들이 존재하는지 여부에 상관 없이 상기 블록들의 각각에 상기 스킵 예측 모드를 할당하는 것을 포함하도록 구성되는, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스.
  52. 명령들을 저장한 비-일시적 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은 컴퓨팅 디바이스로 하여금,
    미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하게 할지 여부를 결정하게 하고;
    상기 미디어 엘리먼트에 대응하는 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하게 하며;
    식별된 상기 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하게 하고;
    상기 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 식별된 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하게 하며; 그리고
    상기 비디오 데이터의 프레임을 상기 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때 상기 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되도록 하게 하도록 구성되는, 비-일시적 컴퓨터 판독가능 저장 매체.
  53. 제 52 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    스플릿 (split) 모드;
    스킵 (skip) 모드;
    다이렉트 (direct) 모드;
    인트라 (intra) 모드; 및
    인터 (inter) 모드
    로 이루어지는 그룹으로부터 선택된 복수의 예측 모드들 중 하나를 상기 식별된 구역 외부의 복수의 비디오 데이터 블록들의 각각에 할당하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  54. 제 52 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    상기 미디어 엘리먼트가 소스 디바이스에 고유한 다른 미디어와 함께 상기 목적지 디바이스를 통해 미러링되는 것을 방지하기 위해, 상기 비디오 데이터의 프레임의 상기 적어도 하나의 구역을 식별하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  55. 제 52 항에 있어서,
    상기 명령들은 또한 상기 컴퓨팅 디바이스로 하여금,
    개별 블록과, 상기 개별 블록을 재구성하기 위해 디코더에 의해 사용될 수도 있는 예측 블록 사이에 어떤 차이들이 존재하는지 여부에 상관 없이 상기 식별된 적어도 하나의 구역 내의 상기 블록들의 각각에 상기 스킵 예측 모드를 할당하게 하는, 비-일시적 컴퓨터 판독가능 저장 매체.
  56. 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스로서,
    미디어 엘리먼트와 연관된 적어도 하나의 파라미터에 기초하여 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하게 할지 여부를 결정하는 수단;
    상기 미디어 엘리먼트에 대응하는 비디오 데이터의 프레임의 적어도 하나의 구역을 식별하는 수단;
    식별된 상기 적어도 하나의 구역 외부의 복수의 비디오 데이터 블록들의 각 블록에 복수의 예측 모드들 중 하나를 할당하는 수단;
    상기 목적지 디바이스로 하여금 상기 미디어 엘리먼트를 미러링하지 않게 하도록 결정하는 것에 응답하여, 상기 식별된 적어도 하나의 구역 내의 복수의 블록들의 각각에 스킵 예측 모드를 할당하는 수단; 및
    상기 비디오 데이터의 프레임을 상기 목적지 디바이스에 출력하여, 상기 프레임이 상기 목적지 디바이스를 통해 출력될 때 상기 식별된 적어도 하나의 구역이 상기 프레임 내에서 시각적으로 동결되게 하는 수단을 포함하는, 비디오 데이터의 프레임을 인코딩하도록 구성된 디바이스.
KR1020147019238A 2011-12-12 2012-11-13 미디어 출력의 선택적 미러링 KR101579025B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/323,399 2011-12-12
US13/323,399 US9008177B2 (en) 2011-12-12 2011-12-12 Selective mirroring of media output
PCT/US2012/064830 WO2013089954A1 (en) 2011-12-12 2012-11-13 Selective mirroring of media output

Publications (2)

Publication Number Publication Date
KR20140107425A KR20140107425A (ko) 2014-09-04
KR101579025B1 true KR101579025B1 (ko) 2015-12-18

Family

ID=47297442

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147019238A KR101579025B1 (ko) 2011-12-12 2012-11-13 미디어 출력의 선택적 미러링

Country Status (7)

Country Link
US (1) US9008177B2 (ko)
EP (1) EP2791777B1 (ko)
JP (2) JP5989797B2 (ko)
KR (1) KR101579025B1 (ko)
CN (1) CN103988166B (ko)
IN (1) IN2014CN04121A (ko)
WO (1) WO2013089954A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230102251A (ko) 2021-12-30 2023-07-07 현대자동차주식회사 자동차용 폐단면 부품의 제조 방법 및 자동차용 폐단면 부품

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5991742B2 (ja) * 2011-08-29 2016-09-14 キヤノン株式会社 情報処理装置、表示状態復元方法及びプログラム
US9277230B2 (en) 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices
US9665339B2 (en) 2011-12-28 2017-05-30 Sonos, Inc. Methods and systems to select an audio track
KR102027357B1 (ko) * 2012-04-24 2019-10-01 삼성전자주식회사 외부 기기의 스크린 상에 디스플레이된 정보를 탐색하는 터치 스크린을 가지는 휴대용 기기 및 그의 정보 탐색 방법
US9632648B2 (en) * 2012-07-06 2017-04-25 Lg Electronics Inc. Mobile terminal, image display device and user interface provision method using the same
JP2014225863A (ja) * 2013-04-16 2014-12-04 株式会社リコー 情報処理装置、画像表示装置、情報処理システム及び情報処理方法
KR20140140957A (ko) * 2013-05-30 2014-12-10 삼성전자주식회사 화면 데이터의 미러링 방법, 저장 매체 및 전자 장치
EP2816761A1 (en) * 2013-06-17 2014-12-24 Thomson Licensing Wifi display compatible network gateway
US8819268B1 (en) * 2013-06-19 2014-08-26 Google Inc. Systems and methods for notification of device mirroring
KR102213490B1 (ko) 2013-09-03 2021-02-08 삼성전자주식회사 스크린을 제어하는 전자 장치 및 방법
KR102088384B1 (ko) * 2013-09-04 2020-05-28 삼성전자주식회사 디스플레이 기기의 제어 방법, 그에 따른 싱크 기기 및 그에 따른 미러링 시스템
KR102078867B1 (ko) * 2013-09-17 2020-02-18 삼성전자주식회사 제어권 관리 방법, 그에 따른 클라이언트 기기 및 그에 따른 마스터 기기
US9226137B2 (en) * 2013-09-30 2015-12-29 Qualcomm Incorporated Method and apparatus for real-time sharing of multimedia content between wireless devices
IN2013CH04818A (ko) * 2013-10-25 2015-08-07 Samsung India Software Operations Pvt Ltd
KR102227661B1 (ko) * 2014-01-08 2021-03-15 삼성전자주식회사 화면 미러링 방법 및 그에 따른 장치
JP6484914B2 (ja) * 2014-01-14 2019-03-20 船井電機株式会社 情報処理機器および操作システム
US9263000B2 (en) * 2014-01-23 2016-02-16 Nvidia Corporation Leveraging compression for display buffer blit in a graphics system having an integrated graphics processing unit and a discrete graphics processing unit
KR101510041B1 (ko) 2014-02-18 2015-04-07 현대자동차주식회사 자동차용 헤드유닛의 스마트기기 미러링 제어 시스템 및 방법
US9226072B2 (en) 2014-02-21 2015-12-29 Sonos, Inc. Media content based on playback zone awareness
US20150295973A1 (en) * 2014-04-10 2015-10-15 Screenovate Technologies Ltd. Method for real-time multimedia interface management
US9672213B2 (en) 2014-06-10 2017-06-06 Sonos, Inc. Providing media items from playback history
US20160062966A1 (en) * 2014-08-26 2016-03-03 Microsoft Corporation Full screen pop-out of objects in editable form
US20160092152A1 (en) * 2014-09-25 2016-03-31 Oracle International Corporation Extended screen experience
CN104683764B (zh) * 2015-02-03 2018-10-16 青岛大学 基于fpga图像压缩技术的3g远程传输网络摄像头
KR102273751B1 (ko) * 2015-07-24 2021-07-06 엘지전자 주식회사 디지털 디바이스 및 상기 디지털 디바이스에서 데이터 처리 방법
US11027199B2 (en) 2015-11-12 2021-06-08 Nvidia Corporation System and method for network coupled gaming
US10630773B2 (en) * 2015-11-12 2020-04-21 Nvidia Corporation System and method for network coupled cloud gaming
EP3264802A1 (en) * 2016-06-30 2018-01-03 Nokia Technologies Oy Spatial audio processing for moving sound sources
US10284492B2 (en) 2016-08-10 2019-05-07 Microsoft Technology Licensing, Llc Control of casting to a media renderer
JP6356857B1 (ja) * 2017-03-30 2018-07-11 西日本電信電話株式会社 ログ記録装置、ログ記録方法及びログ記録プログラム
EP4163771A1 (en) 2017-06-16 2023-04-12 Huawei Technologies Co., Ltd. Screen locking method and apparatus
KR102563314B1 (ko) 2018-08-30 2023-08-04 삼성전자주식회사 전자 장치 및 단축 명령어의 바로가기 생성 방법
US11636855B2 (en) 2019-11-11 2023-04-25 Sonos, Inc. Media content based on operational data
KR20220098010A (ko) * 2020-04-01 2022-07-08 구글 엘엘씨 제1 스크린 디바이스 상에 제공된 미디어 피처들이 제2 스크린 디바이스 상에 제시될 수 있도록 하기
CN115623257A (zh) * 2020-04-20 2023-01-17 华为技术有限公司 投屏显示方法、系统、终端设备和存储介质
CN111338744B (zh) * 2020-05-22 2020-08-14 北京小米移动软件有限公司 图像显示方法及装置、电子设备、存储介质
CN113342247B (zh) * 2021-08-04 2021-11-02 北京达佳互联信息技术有限公司 素材处理方法、装置、电子设备及存储介质
WO2023106463A1 (ko) * 2021-12-10 2023-06-15 엘지전자 주식회사 디스플레이 디바이스 및 그 제어 방법
WO2024101552A1 (ko) * 2022-11-07 2024-05-16 삼성전자 주식회사 사용자에게 민감한 내용이 외부 디스플레이 장치를 통해 다른 사람에게 노출되지 않게 하는 휴대 전자 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110225542A1 (en) 2010-03-09 2011-09-15 Microsoft Corporation Application sharing with occlusion removal

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0475581A3 (en) * 1990-08-30 1993-06-23 Hewlett-Packard Company Method and apparatus for window sharing between computer displays
US6046750A (en) 1993-06-25 2000-04-04 International Business Machines Corporation Method and apparatus for controlling presentations of objects on a user interface of a data processing system
JP3753207B2 (ja) * 1997-08-11 2006-03-08 富士ゼロックス株式会社 共同作業支援システムおよび共同作業支援方法
US6385772B1 (en) 1998-04-30 2002-05-07 Texas Instruments Incorporated Monitoring system having wireless remote viewing and control
JP4573957B2 (ja) 2000-07-04 2010-11-04 キヤノン株式会社 画像制御装置、画像制御方法及びテレビ受信機
JP2002142226A (ja) 2000-10-31 2002-05-17 Toshiba Corp 画像符号化方法及び装置並びに携帯電話機
US20030017846A1 (en) 2001-06-12 2003-01-23 Estevez Leonardo W. Wireless display
BR0213596A (pt) 2001-09-26 2004-10-26 Interact Devices Inc Sistema e metodo para transmitir sinais de midia
US7515634B2 (en) 2002-06-28 2009-04-07 Qualcomm Incorporated Computationally constrained video encoding
KR100534207B1 (ko) 2002-12-09 2005-12-08 삼성전자주식회사 비디오 부호화기의 움직임 추정기 및 그 방법
US7039247B2 (en) 2003-01-31 2006-05-02 Sony Corporation Graphic codec for network transmission
US20050091610A1 (en) 2003-10-22 2005-04-28 International Business Machines Corporation Selective display of windows on an auxiliary output device
US20050243922A1 (en) 2004-04-16 2005-11-03 Modulus Video, Inc. High definition scalable array encoding system and method
TWI238651B (en) 2004-04-30 2005-08-21 Benq Corp Method and apparatus for determining frame status of video data
GB0413413D0 (en) 2004-06-16 2004-07-21 Ibm Apparatus,method,and program for controlling a presentation display
US7953283B2 (en) 2005-01-27 2011-05-31 Panasonic Corporation Portable terminal
CN1855028A (zh) * 2005-04-21 2006-11-01 微星科技股份有限公司 具有扩展视频输出功能的影音多媒体计算机系统
CN101556533A (zh) * 2005-04-21 2009-10-14 微星科技股份有限公司 具有扩展视频输出功能的影音多媒体计算机系统
JP4779435B2 (ja) 2005-05-17 2011-09-28 ソニー株式会社 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム
JP4751647B2 (ja) * 2005-06-03 2011-08-17 株式会社リコー 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体
EP1908303A4 (en) 2005-07-01 2011-04-06 Sonic Solutions METHOD, DEVICE AND SYSTEM FOR USE IN MULTIMEDIA SIGNAL CODING
US8879856B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
JP4925697B2 (ja) 2006-03-23 2012-05-09 ソニー株式会社 ネットワーク伝送用の映像信号符号化システム及び映像信号符号化方法,信号変換装置
US8826348B2 (en) 2006-12-04 2014-09-02 Samsung Electronics Co., Ltd. System and method for wireless communication of uncompressed video having a relay device for power saving
JP2008211379A (ja) 2007-02-23 2008-09-11 Fujitsu Ltd 表示制御プログラムおよび携帯端末装置
JP4636058B2 (ja) 2007-08-08 2011-02-23 コニカミノルタビジネステクノロジーズ株式会社 会議システム、データ処理装置、データ出力方法およびデータ出力プログラム
WO2009079754A1 (en) 2007-12-20 2009-07-02 Ati Technologies Ulc Adjusting video processing in a system having a video source device and a video sink device
US20090282437A1 (en) * 2008-05-09 2009-11-12 Tap.Tv System and Method for Controlling Media at a Plurality of Output Devices
US8602564B2 (en) 2008-06-17 2013-12-10 The Invention Science Fund I, Llc Methods and systems for projecting in response to position
JP4789979B2 (ja) 2008-06-30 2011-10-12 パナソニック株式会社 端末装置及びデータ処理方法
KR20100045737A (ko) 2008-10-24 2010-05-04 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US8254704B2 (en) * 2008-10-30 2012-08-28 Microsoft Corporation Remote computing platforms providing high-fidelity display and interactivity for clients
US9083958B2 (en) 2009-08-06 2015-07-14 Qualcomm Incorporated Transforming video data in accordance with three dimensional input formats
JP5253328B2 (ja) * 2009-08-19 2013-07-31 キヤノン株式会社 画像補正装置及び画像補正方法
EP3913923A1 (en) * 2010-01-19 2021-11-24 Samsung Electronics Co., Ltd. Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block
TWI416961B (zh) 2010-04-02 2013-11-21 Univ Nat Chiao Tung 用於可調式視訊編碼系統之選擇性移動向量預測方法、移動估測方法及其裝置
JP5216810B2 (ja) * 2010-05-28 2013-06-19 株式会社オプティム 遠隔画面共有を実行する方法、ユーザ端末、プログラム及びシステム
US9357229B2 (en) * 2010-07-28 2016-05-31 Qualcomm Incorporated Coding motion vectors in video coding
US20120183039A1 (en) 2011-01-13 2012-07-19 Qualcomm Incorporated Coding static video data with a baseline encoder
US9277230B2 (en) 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110225542A1 (en) 2010-03-09 2011-09-15 Microsoft Corporation Application sharing with occlusion removal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230102251A (ko) 2021-12-30 2023-07-07 현대자동차주식회사 자동차용 폐단면 부품의 제조 방법 및 자동차용 폐단면 부품

Also Published As

Publication number Publication date
EP2791777A1 (en) 2014-10-22
EP2791777B1 (en) 2022-12-21
KR20140107425A (ko) 2014-09-04
US9008177B2 (en) 2015-04-14
JP5989797B2 (ja) 2016-09-07
IN2014CN04121A (ko) 2015-07-10
US20130148720A1 (en) 2013-06-13
CN103988166B (zh) 2017-08-25
CN103988166A (zh) 2014-08-13
WO2013089954A1 (en) 2013-06-20
JP2015505189A (ja) 2015-02-16
JP2016173830A (ja) 2016-09-29

Similar Documents

Publication Publication Date Title
KR101579025B1 (ko) 미디어 출력의 선택적 미러링
EP3195606B1 (en) Direct streaming for wireless display
KR101741940B1 (ko) 3d 비디오 코딩을 위한 예측 파라미터 상속
US9277230B2 (en) Display mode-based video encoding in wireless display devices
KR102133531B1 (ko) 컨텐츠 재생 방법 및 그에 따른 단말, 그에 따른 시스템
KR20160006190A (ko) 무선 통신 시스템의 비디오 스트리밍
KR20150024398A (ko) 크기 기반 변환 유닛 컨텍스트 도출
JPWO2016002496A1 (ja) 情報処理装置および方法
KR102566276B1 (ko) 원격 단말을 위한 몰입형 원격 회의 및 텔레프레즌스를 위한 오버레이 처리용 파라미터
TW201637454A (zh) 無線帶寬在編碼器中的減少
US20140297720A1 (en) Client apparatus, server apparatus, multimedia redirection system, and method thereof
US20210400334A1 (en) Method and apparatus for loop-playing video content
CN109379630B (zh) 视频处理方法、装置、电子设备及存储介质
US20170048532A1 (en) Processing encoded bitstreams to improve memory utilization
WO2013145699A1 (ja) 画像転送システム、画像転送方法、端末装置、画像送信方法、及び、画像送信プログラムが格納された非一時的なコンピュータ可読媒体
TWI578763B (zh) 編碼單元位元數限制
CN115379251A (zh) 一种视频直播流的转码方法、装置、系统及可读存储介质
JP2014053959A (ja) 映像表示システム、映像表示装置、その制御方法及びプログラム
JP2015119486A (ja) 制御装置、映像表示装置、表示制御システム、制御方法、映像表示方法、プログラム及び情報記憶媒体

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 5