KR101335247B1 - 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 - Google Patents

원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 Download PDF

Info

Publication number
KR101335247B1
KR101335247B1 KR1020120017578A KR20120017578A KR101335247B1 KR 101335247 B1 KR101335247 B1 KR 101335247B1 KR 1020120017578 A KR1020120017578 A KR 1020120017578A KR 20120017578 A KR20120017578 A KR 20120017578A KR 101335247 B1 KR101335247 B1 KR 101335247B1
Authority
KR
South Korea
Prior art keywords
sink
display
virtual
display device
frame data
Prior art date
Application number
KR1020120017578A
Other languages
English (en)
Other versions
KR20130096059A (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 주식회사 팬택
Priority to KR1020120017578A priority Critical patent/KR101335247B1/ko
Priority to US13/666,434 priority patent/US20130215142A1/en
Priority to EP12192487.2A priority patent/EP2631901A2/en
Publication of KR20130096059A publication Critical patent/KR20130096059A/ko
Application granted granted Critical
Publication of KR101335247B1 publication Critical patent/KR101335247B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

무선랜을 통해 통신하는 원격의 싱크 장치를 표시하기 위한 소스 장치는, 싱크 장치에 대한 디스플레이 정보를 수신하고, 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 싱크 장치로 전송하는 가상 표시 장치 구동부, 가상 표시 장치 구동부의 싱크 장치 등록을 위한 호출에 따라 싱크 장치의 등록 명령을 전달하는 명령 전달부 및 등록 명령에 따라 싱크 장치를 가상 표시 장치로 등록하고, 프레임 데이터를 쓰기 위한 가상 디바이스 파일을 생성하는 가상 디바이스 파일 생성부를 포함한다. 이에 따라, 원격의 싱크 장치를 소스 장치의 로컬 표시 장치로 가상화하여 화면을 전송하므로, 무선랜을 통하여 싱크 장치에 응용 프로그램을 독립적으로 표시할 수 있다.

Description

원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템{DISPLAYING METHOD OF REMOTE SINK DEVICE, SOURCE DEVICE AND SYSTEM FOR THE SAME}
본 발명은 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 관한 것으로서, 더욱 상세하게는 무선랜 기반의 네트워크에서 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 관한 것이다.
최근 전자, 통신 기술이 발달함에 따라 통신 분야뿐만 아니라 서비스 분야를 포함한 전 산업 분야에서 무선통신기술을 이용한 기술이 폭 넓게 사용되고 있는 추세이다. 이에 따라 무선통신망(wireless network)을 기반으로 음성통화, 데이터 전송, 인터넷 등의 다양한 서비스가 제공되고 있는데, 이와 같은 무선통신망을 기반으로 하는 대표적인 무선통신기술로는 와이브로(WiBro: Wireless Broadband internet), 와이파이(WiFi: Wireless Fidelity) 등이 있다.
와이파이는 IEEE 802.11를 표준안으로 하는 근거리 무선통신기술 중 하나로서, 하이파이(Hi-Fi, High Fidelity)에 무선기술을 접목한 것으로 고성능 무선통신을 가능하게 하는 무선랜(Wireless Local Area Network) 기술이다. 무선랜 기술이란 네트워크 구축시 유선을 사용하지 않고 전파나 빛 등을 이용하여 네트워크를 구축하는 방식이다.
이러한 와이파이 기술을 이용하면 노트북 컴퓨터 등의 휴대용 컴퓨터를 주위에서 무선으로 연결하여 사용할 수 있게 된다. 또한, 와이파이 기술을 이용하면 복수개의 PC를 연결하고 큰 파일이나 그래픽, 비디오 및 오디오를 전송할 수 있게 된다. 와이파이의 무선 이더넷은 초당 11 Mbps의 속도를 제공하며 최적의 조건에서는 반경 500 m 내에는 가정이나 직장 어느 곳에서든 사용할 수 있다.
더군다나, 최근에는 와이파이를 사용할 수 있는 노트북 컴퓨터 등의 휴대용 컴퓨터뿐만 아니라, 스마트폰이 출시와 함께 사용자들이 각자 자신의 PC와 같이 스마트폰을 이용함과 동시에 이를 이용하여 와이파이의 접속이 가능해졌다.
그러나, 와이파이를 이용하여 통신하는 스마트폰 및 PC 등을 각각 소스 장치 및 싱크 장치로 사용하여 응용 프로그램을 표시하는 경우, 싱크 장치는 소스 장치로부터 화면을 전달받아 표시한다. 따라서, 싱크 장치는 소스 장치가 표시하는 화면과 동일한 화면만을 표시하게 되므로, 싱크 장치의 표시부의 해상도 등의 특징이 반영되지 않고 일률적으로 소스 장치로부터 제공되는 화면만을 표시할 수 있다.
따라서, 두 개 이상의 장치를 사용하더라도 동일한 화면만을 표시하므로, 싱크 장치의 활용이 제한되는 문제점이 있다. 또한, 두 개 이상의 싱크 장치를 사용하는 경우 각 싱크 장치에 따른 무선 인터페이스가 요구되는 문제점이 있다.
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 원격의 싱크 장치를 로컬 표시 장치로 가상화하여 화면을 전송하는 소스 장치를 제공하는 것이다.
본 발명의 다른 목적은 상기 소스 장치를 포함하는 무선랜 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 상기 소스 장치를 이용하여 원격의 싱크 장치를 표시하는 방법을 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 소스 장치는, 무선랜을 통해 통신하는 원격의 싱크 장치에 대한 디스플레이 정보를 수신하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 싱크 장치로 전송하는 가상 표시 장치 구동부; 상기 가상 표시 장치 구동부의 상기 싱크 장치 등록을 위한 호출에 따라 상기 싱크 장치의 등록 명령을 전달하는 명령 전달부; 및 상기 등록 명령에 따라 상기 싱크 장치를 가상 표시 장치로 등록하고, 상기 프레임 데이터를 쓰기 위한 가상 디바이스 파일을 생성하는 가상 디바이스 파일 생성부를 포함한다.
본 발명의 실시예에서, 상기 가상 표시 장치 구동부는, 상기 싱크 장치로부터 상기 싱크 장치에 대한 디스플레이 정보를 수신하는 수신부; 상기 싱크 장치에 대한 디스플레이 정보를 해석하여 최적의 해상도를 결정하고, 상기 명령 전달부를 호출하는 정보 처리부; 상기 가상 디바이스 파일에 쓰여진 상기 프레임 데이터를 상기 최적의 해상도로 인코딩하는 코딩부; 및 상기 인코딩된 프레임 데이터를 상기 싱크 장치에 전송하는 전송부를 포함할 수 있다.
본 발명의 실시예에서, 상기 싱크 장치에 대한 디스플레이 정보는 확장된 와이파이 디스플레이 프로토콜 메시지로 전달될 수 있다.
본 발명의 실시예에서, 상기 수신부는 상기 확장된 와이파이 디스플레이 프로토콜 메시지의 확장필드에 저장된 데이터에 따라, 상기 싱크 장치의 EDID 정보를 상기 정보 처리부로 전송할 수 있다.
본 발명의 실시예에서, 상기 정보 처리부는 상기 EDID 정보를 파싱하여 파싱된 타이밍 정보를 상기 코딩부로 전송할 수 있다.
본 발명의 실시예에서, 상기 가상 표시 장치 구동부 및 상기 명령 전달부는 운영체제의 커널 영역에 형성될 수 있다.
본 발명의 실시예에서, 디스커버리(discovery)된 원격의 싱크 장치가 복수개인 경우, 각 싱크 장치에 전송되는 프레임 데이터를 쓰기 위한 복수개의 가상 디바이스 파일을 생성할 수 있다.
본 발명의 실시예에서, 상기 소스 장치는 상기 응용 프로그램을 표시하는 로컬 표시 장치; 상기 로컬 표시 장치에 상기 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 로컬 디바이스 파일; 및 상기 프레임 데이터를 상기 로컬 표시 장치로 출력하는 로컬 표시 장치 구동부를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 로컬 표시 장치는 상기 소스 장치와 다른 영상을 표시할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 무선랜 시스템은, 소스 장치 및 적어도 하나 이상의 싱크 장치를 포함하며, 상기 소스 장치는 상기 싱크 장치에 대한 디스플레이 정보를 수신하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 싱크 장치로 전송하는 가상 표시 장치 구동부, 상기 가상 표시 장치 구동부의 상기 싱크 장치 등록을 위한 호출에 따라 상기 싱크 장치의 등록 명령을 전달하는 명령 전달부 및 상기 등록 명령에 따라 상기 싱크 장치를 가상 표시 장치로 등록하고, 상기 프레임 데이터를 쓰기 위한 가상 디바이스 파일을 생성하는 가상 디바이스 파일 생성부를 포함한다. 또한, 상기 싱크 장치는 상기 소스 장치에 디스플레이 정보를 제공하고 상기 프레임 데이터를 수신하는 싱크 표시 장치 구동부 및 상기 프레임 데이터를 이용하여 상기 응용 프로그램을 표시하는 싱크 표시 장치를 포함한다.
본 발명의 실시예에서, 상기 가상 표시 장치 구동부는, 상기 싱크 장치로부터 상기 싱크 장치에 대한 디스플레이 정보를 수신하는 수신부; 상기 싱크 장치에 대한 디스플레이 정보를 해석하여 최적의 해상도를 결정하고, 상기 명령 전달부를 호출하는 정보 처리부; 상기 가상 디바이스 파일에 쓰여진 상기 프레임 데이터를 상기 최적의 해상도로 인코딩하는 코딩부; 및 상기 인코딩된 프레임 데이터를 상기 싱크 장치에 전송하는 전송부를 포함할 수 있다.
본 발명의 실시예에서, 상기 싱크 표시 장치 구동부는, 상기 싱크 표시 장치의 디스플레이 정보를 수집하는 정보 수집부; 상기 디스플레이 정보를 기초로 확장된 와이파이 디스플레이 프로토콜 메시지를 생성하는 메시지 생성부; 상기 와이파이 디스플레이 프로토콜 메시지를 상기 소스 장치로 전송하는 전송부; 및 상기 소스 장치로부터 전송된 프레임 데이터를 수신하는 수신부를 포함할 수 있다.
본 발명의 실시예에서, 상기 소스 장치와 상기 싱크 장치는 와이파이(WiFi) 네트워크를 통하여 통신할 수 있다.
본 발명의 실시예에서, 상기 싱크 표시 장치는 상기 소스 장치와 다른 영상을 표시할 수 있다.
본 발명의 실시예에서, 상기 싱크 표시 장치는 상기 응용 프로그램의 출력 화면을 상기 소스 장치와 통합, 분할 또는 복사하여 표시할 수 있다.
본 발명의 실시예에서, 상기 싱크 표시 장치 구동부와 상기 싱크 표시 장치는 별개의 장치로 구성되며, 인터페이스로 연결될 수 있다.
본 발명의 실시예에서, 상기 싱크 표시 장치 구동부와 상기 싱크 표시 장치는 하나의 장치로 구성될 수 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 무선랜을 통해 통신하는 원격의 싱크 장치를 소스 장치에 의해 표시하기 위한 방법은, 상기 싱크 장치에 대한 디스플레이 정보를 수신하여 해석하는 단계; 상기 싱크 장치를 가상 표시 장치로 등록하기 위해 장치등록 명령을 전달하는 단계; 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 가상 디바이스 파일을 생성하는 단계; 및 상기 프레임 데이터를 상기 싱크 장치로 전송하는 단계를 포함한다.
본 발명의 실시예에서, 상기 장치등록 명령을 전달하는 단계는, 상기 싱크 장치의 등록을 위한 시스템 콜을 호출하는 단계; 및 상기 시스템 콜에 따라 장치등록의 이벤트를 전달하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 프레임 데이터를 상기 싱크 장치로 전송하는 단계는, 상기 가상 디바이스 파일에 상기 응용 프로그램의 프레임 데이터를 쓰는 단계; 및 상기 프레임 데이터를 상기 싱크 장치에 적합한 해상도로 인코딩하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 싱크 장치에 대한 디스플레이 정보는 확장된 와이파이 디스플레이 프로토콜 메시지에 의해 전달될 수 있다.
본 발명의 실시예에서, 상기 싱크 장치는 상기 소스 장치와 다른 영상을 표시할 수 있다.
이와 같은 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 따르면, 원격의 싱크 장치를 소스 장치의 로컬 표시 장치로 가상화하여 화면을 전송하므로, 무선랜을 통하여 싱크 장치에 응용 프로그램을 독립적으로 표시할 수 있다. 또한, 응용 프로그램의 출력 화면을 상기 싱크 장치에 통합, 분할 또는 복사하여 출력할 수 있으므로, 싱크 장치의 다양하고 편리한 사용을 지원할 수 있다.
나아가, 복수개의 응용 프로그램을 실행하는 경우, 소스 장치 및 싱크 장치에 각각 다른 응용 프로그램을 표시할 수 있다. 또한, 복수개의 싱크 장치가 있는 경우, 별도의 무선 인터페이스가 없이도 하나의 소스 장치를 이용하여 복수개의 싱크 장치에 용이하게 표시할 수 있다.
도 1은 본 발명의 일 실시예에 따른 무선랜 시스템의 블록도이다.
도 2는 도 1의 소스 장치와 싱크 장치에 표시되는 영상을 보여주기 위한 개념도이다.
도 3은 도 1의 싱크 표시 장치 구동부가 싱크 표시 장치의 EDID 정보를 수집하기 위한 코드의 일례이다.
도 4는 도 1의 싱크 표시 장치의 EDID 정보를 설명하기 위한 일례이다.
도 5는 도 1의 싱크 표시 장치의 EDID 정보가 전달되는 메시지의 개념도이다.
도 6은 도 1의 가상 표시 장치 구동부가 EDID 정보를 해석하는 코드의 일례이다.
도 7은 본 발명의 다른 실시예에 따른 무선랜 시스템의 소스 장치의 블록도이다.
도 8은 본 발명의 또 다른 실시예에 따른 무선랜 시스템의 소스 장치의 블록도이다.
도 9는 본 발명의 일 실시예에 따른 원격의 싱크 표시 장치를 표시하는 방법의 흐름도이다.
이하, 도면들을 참조하여 무선랜(Wireless Local Area Network) 기반의 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1을 참조하면, 본 발명에 따른 무선랜 시스템(1)은 소스 장치(10) 및 소스 장치(10)와 소정의 거리만큼 이격되어 위치하는 싱크 장치(30)를 포함한다.
소스 장치(10)는 스마트 폰, 태블릿 컴퓨터, 넷북, 피디에이(PDA), 피엠피(PMP) 등 인터넷에 접속할 수 있는 다양한 형태의 모바일(mobile) 컴퓨터를 모두 포함할 수 있고, 운영체제(Operation System; OS)를 기반으로 다양한 응용 프로그램을 실행할 수 있다.
상기 운영체제는 응용 프로그램이 컴퓨터의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터에 탑재할 수 있는 운영체제를 모두 포함할 수 있다.
상기 응용 프로그램은 컴퓨터를 이용하여 특정한 작업을 수행할 수 있도록 개발된 프로그램으로서, 각종 어플리케이션뿐 아니라 게임, 동영상, 사진 등의 각종 멀티미디어 컨텐츠(contents) 또는 상기 멀티미디어 컨텐츠를 실행하는 이미지 뷰어, 동영상 재생기 등의 실행 프로그램을 모두 포함할 수 있다.
싱크 장치(30)는 모바일 컴퓨터뿐만 아니라 데스크 탑 컴퓨터, 스마트 TV 등 소스 장치(10)와 무선랜을 통해 통신 가능한 모든 통신 장치를 포함할 수 있다. 싱크 장치(30)는 소스 장치(10)로부터 제공되는 프레임 데이터(fd1)를 표시하여 소스 장치(10)에서 실행되는 응용 프로그램(A1)을 표시할 수 있다.
소스 장치(10) 및 싱크 장치(30)는 무선랜 통신을 지원하는 플랫폼을 포함하고, 서로 무선랜을 통하여 통신한다. 상기 무선랜은 유선을 사용하지 않고 전파나 적외선 등을 이용하여 일정한 거리 안에서 초고속 인터넷을 할 수 있는 방식으로, 와이파이(WiFi: Wireless Fidelity) 등의 근거리 무선통신기술을 모두 포함할 수 있다.
소스 장치(10)가 무선랜 시스템 상의 싱크 장치(30)를 디스커버리(discovery)하는 과정에서 싱크 장치(30)가 발견되면 싱크 장치(30)로부터 디스플레이 정보를 수신하고, 싱크 장치(30)를 가상 표시 장치로 등록한다.
소스 장치(10)는 가상 표시 장치로 등록된 싱크 장치(30)를 로컬 표시 장치로 인식하고, 싱크 장치(30)에 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 싱크 장치(30)로 전송한다. 이를 위해, 소스 장치(10)는 응용 프로그램(A1)이 싱크 장치(30)에 접근할 수 있도록 가상 디바이스 파일(df1)을 생성한다. 이에 대한 자세한 설명은 후술한다.
소스 장치(10)는 싱크 장치(30)를 구동하기 위한 구성들 이외에 소스 장치(10) 자체에 응용 프로그램(A1)을 표시하기 위한 로컬 디바이스 파일(df0), 로컬 표시 장치 구동부(210) 및 로컬 표시 장치(270)를 더 포함할 수 있다.
로컬 표시 장치(270)는 소스 장치(10)에서 실행되는 응용 프로그램(A1)을 표시한다. 로컬 디바이스 파일(df0)은 로컬 표시 장치(270)에 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd0)가 쓰여지는 파일로서, 새로 생성되는 가상 디바이스 파일(df1)과 다르게 소스 장치(10)에 포함된다. 로컬 표시 장치 구동부(210)는 프레임 데이터(fd0)를 로컬 표시 장치(270)로 출력한다.
소스 장치(10)가 로컬 표시 장치(270)를 포함하지 않는 경우, 소스 장치(10)는 연결 케이블이나 무선 인터페이스가 없이도 원격에 위치한 싱크 장치(30)를 마치 소스 장치(10)의 로컬 표시 장치와 같이 인식하여 화면을 표시하게 한다.
반면, 소스 장치(10)가 로컬 표시 장치(270)를 포함하는 경우, 무선랜으로 연결된 싱크 장치(30)를 로컬 표시 장치와 같이 인식하므로, 로컬 표시 장치(270)와 싱크 장치(30)를 소스 장치(10)의 다중 로컬 표시 장치로 활용할 수 있다. 이에 따라, 응용 프로그램(A1)의 출력 화면을 소스 장치(10) 및 싱크 장치(30)에 통합, 분할 또는 복사하여 다양하게 표시할 수 있다.
도 2를 참조하면, 소스 장치(10) 및 싱크 장치(30)에 다른 화면이 출력되어, 하나의 통합화면을 표시하는 것을 보여준다. 종래의 싱크 장치는 소스 장치와 동일한 화면만을 표시할 수 있었으나, 본 발명에 따르면 소스 장치(10)가 싱크 장치(30)를 가상의 로컬 표시 장치로 인식하여 싱크 장치(30)에 소스 장치(10)와 독립적으로 다양한 화면을 표시할 수 있다. 도 2에서는 무선접속장치(Access Point; AP, 60)를 도시하였으나, 이를 생략할 수도 있다.
싱크 장치(30)에 대해 구체적으로 설명하면, 싱크 장치(30)는 자신의 디스플레이 정보를 소스 장치(10)로 제공하고, 소스 장치(10)로부터 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 수신하여 표시한다.
이를 위해, 싱크 장치(30)는 소스 장치(10)에 디스플레이 정보를 제공하고 프레임 데이터(fd1)를 수신하는 싱크 표시 장치 구동부(310) 및 프레임 데이터(fd1)를 이용하여 응용 프로그램(A1)을 표시하는 싱크 표시 장치(370)를 포함한다.
싱크 표시 장치 구동부(310)와 싱크 표시 장치(370)는 하나의 장치로 이루어진 올인원(all-in-one) 형태의 장치일 수 있다. 또는, 싱크 표시 장치 구동부(310)와 싱크 표시 장치(370)는 별개의 장치로 구성되며, 무선 또는 유선의 인터페이스로 연결될 수도 있다.
싱크 표시 장치 구동부(310)는 정보 수집부(313), 메시지 생성부(315), 전송부(317) 및 수신부(319)를 포함한다. 싱크 표시 장치 구동부(310)는 싱크 장치(30)의 커널 영역에 형성될 수 있다. 전송부(317) 및 수신부(319)는 별개의 블록으로 도시하였으나 하나의 구성으로 이루어질 수 있다.
정보 수집부(313)는 싱크 표시 장치(370)의 디스플레이 정보를 수집한다. 정보 수집부(313)는 소스 장치(10)로부터 디스커버리 요청을 받는 경우, 상기 요청에 기초하여 디스플레이 정보의 수집을 개시할 수 있다. 싱크 표시 장치(370)의 디스플레이 정보는 EDID(extended display identification data) 형태로 전송될 수 있다. EDID 란, 디스플레이 측으로부터 호스트 측으로 디스플레이 정보를 전달하기 위한 규격으로서, 디스플레이의 능력을 호스트에 전달하기 위한 데이터 형식이다.
예를 들어, 싱크 표시 장치 구동부(310)와 싱크 표시 장치(370)는 HDMI(High-Definition Multimedia Interface) 인터페이스로 연결될 수 있고, 이 경우, HDMI 인터페이스는 싱크 표시 장치(370)의 입력 및 출력 포트로 매핑(mapping)되어 시스템 레지스터(register)를 통하여 싱크 표시 장치(370)에 접근(access)이 가능하다.
도 3을 참조하면, 정보 수집부(313)가 싱크 표시 장치(370)의 EDID 정보를 수집하기 위한 코드의 예를 보여준다. 정보 수집부(313)는 상기 코드를 통해 싱크 표시 장치(370)의 EDID 정보를 수집할 수 있다.
도 4(a)는 싱크 표시 장치(370)의 디스플레이 정보의 일례로서, 128 바이트(byte)로 이루어진 EDID 미가공 데이터(raw data)이다. 또한, 도 4(b)는 도 4(a)의 EDID 미가공 데이터가 포함하고 있는 실제 정보를 보여주는 일례이다.
도 4(b)에 보여지는 바와 같이, 싱크 표시 장치(370)가 모니터일 경우, 모델명, 제조사, 시리얼 넘버, 제조일 등의 장치 정보 및 RGB 데이터 정보, 타이밍 정보, 해상도 등의 디스플레이 정보를 포함하고 있다. 상기 장치 정보는 싱크 장치(30)가 소스 장치(10)에 연결(session)되는데 필요한 정보이고, 상기 디스플레이 정보는 소스 장치(10)가 싱크 장치(30)에 프레임 데이터(fd1)를 전송하는데 필요한 정보이다.
메시지 생성부(315)는 정보 수집부(313)로부터 수신된 싱크 표시 장치(370)의 EDID 정보를 소스 장치(10)에 전송하기 위한 메시지를 생성한다. 메시지 생성부(315)는 무선랜 통신에서 표준으로 사용하는 정보요소(information element)를 확장하여 메시지를 구성할 수 있다. 상기 정보요소는 식별자, 정보 요소 길이, 정보의 내용으로 구성될 수 있으며, 와이파이 디스플레이 프로토콜 메시지 형식으로 전달될 수 있다.
도 5를 참조하면, 메시지 생성부(315)가 생성한 확장된 와이파이 디스플레이 프로토콜 메시지의 일례를 보여준다. 정보요소를 나타내는 프로토콜 메시지(410)는 256 바이트의 데이터로서, 253 내지 255 번째 바이트를 확장하여 사용한다. 프로토콜 메시지(410)의 253 번째 바이트(401)는 확장 정보의 유무를 나타낸다.
구체적으로, 프로토콜 메시지(410)의 253 번째 바이트(401)의 데이터가 '0'인 경우 확장 정보가 존재하지 않는 것을 나타내며, 253 번째 바이트(401)의 데이터가 '1'인 경우 확장 정보가 존재하는 것을 나타낸다. 프로토콜 메시지(410)의 253 번째 바이트(401)의 데이터가 '1'인 경우, 이후 254 및 255 번째 바이트(402)는 확장 정보의 크기를 나타낸다.
싱크 표시 장치(370)의 EDID 정보를 포함하고 있는 확장 정보(420)는 상기 254 및 255 번째 바이트(402)가 나타내는 정보의 크기를 갖는다. 확장 정보(420)는 EDID 헤더(header), 표준 디스플레이 패널 파라미터(parameter) 및 체크섬(checksum) 등을 포함할 수 있다. 상기 표준 디스플레이 패널 파라미터는 싱크 표시 장치(370)의 해상도 및 상기 해상도에 따른 대역폭 등의 정보를 포함하며, 디스플레이의 옵션 정보를 더 포함할 수 있다. 확장 정보(420)의 실제 구성은 2진(binary) 코드로 구성될 수 있다.
전송부(317)는 메시지 생성부(315)가 생성한 확장된 와이파이 디스플레이 프로토콜 메시지를 소스 장치(10)로 전송한다. 상기 확장된 와이파이 디스플레이 프로토콜 메시지는 소스 장치(10)가 싱크 장치(30)로 프레임 데이터(fd1)를 전송하는데 이용된다.
이후, 싱크 장치(30)가 소스 장치(10)에 연결되고, 소스 장치(10)가 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 전송하면, 수신부(319)가 프레임 데이터(fd1)를 수신하여 싱크 표시 장치(370)로 전달한다. 프레임 데이터(fd1)는 싱크 표시 장치(370)에 사용되는 데이터로 디코딩하거나 타이밍 제어한 후 싱크 표시 장치(370)로 전달될 수도 있다.
싱크 표시 장치(370)는 프레임 데이터(fd1)를 표시하여 응용 프로그램(A1)의 일부 또는 전체 화면을 표시할 수 있다. 싱크 표시 장치(370)는 소스 장치(10)의 가상의 로컬 표시 장치와 같이 동작하여 소스 장치(10)의 로컬 표시 장치(270)와 독립적인 화면 표시가 가능하다.
소스 장치(10)에 대해 구체적으로 설명하면, 싱크 장치(30)를 로컬 표시 장치로 가상화하여 구동하기 위한 구성들로서, 가상 표시 장치 구동부(110), 명령 전달부(130) 및 가상 디바이스 파일 생성부(150)를 포함한다.
명령 전달부(130) 및 가상 디바이스 파일 생성부(150)는 소스 장치(10)의 운영체제의 커널 영역에 형성되고, 가상 디바이스 파일 생성부(150)는 응용 프로그램의 인터페이스 영역, 즉 사용자 영역에 형성될 수 있다. 커널 영역은 인터럽트 처리, 프로세스 관리, 메모리 관리, 파일 시스템 관리, 프로그래밍 인터페이스를 제공하는 등 컴퓨터 운영체제의 가장 중요한 핵심으로서 컴퓨터의 가장 기본적인 장치들을 관리하고 제어하는 영역이다. 따라서, 커널 영역은 일반적으로 접근이 불가능한 메모리에 로드(load)되며, 하드웨어를 제어하기 위한 일종의 API(Application Program Interface)라고 볼 수 있다.
가상 표시 장치 구동부(110)는 싱크 장치(30)의 디스플레이 정보를 수신하고, 싱크 장치(30)에 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 싱크 장치(30)로 전송한다. 이를 위해, 가상 표시 장치 구동부(110)는 수신부(111), 정보 처리부(113), 코딩부(115) 및 전송부(117)를 포함한다. 수신부(111)및 전송부(117)는 별개의 블록으로 도시하였으나 하나의 구성으로 이루어질 수 있다.
수신부(111)는 소스 장치(10)가 싱크 장치(30)와 무선랜 통신을 가능하도록 제어하며, 싱크 장치(30)로부터 확장된 와이파이 디스플레이 프로토콜 메시지를 수신한다. 수신부(111)는 확장된 와이파이 디스플레이 프로토콜 메시지의 253 번째 바이트(401)의 데이터가 '1'인 경우, 이후에 따르는 확장 정보(420)를 정보 처리부(113)로 전달한다. 확장 정보(420)는 수신부(111)로부터 정보 처리부(113)로 버퍼(buffer)를 통하여 전달될 수 있다.
정보 처리부(113)는 싱크 장치(30)의 디스플레이 정보를 해석하기 위하여 확장 정보(420)를 파싱한다. 도 6을 참조하면, 정보 처리부(113)의 EDID 정보의 각 섹션(section)별 파싱(parsing) 과정을 보여준다. 도 6(a) 및 도 6(b)는 나누어 도시되었으나 연속되는 일련의 코드이다.
정보 처리부(113)는 해석된 EDID 정보의 해상도 중 무선통신 네트워크 상의 대역폭(bandwidth)을 고려하여 지연(latency)이 최소화된 최적의 해상도를 결정한다. 또한, 정보 처리부(113)는 파싱된 EDID 정보 중 타이밍(timing description) 정보는 코딩부(115)로 전달한다. 또한, 정보 처리부(113)는 싱크 장치(30)의 디스플레이 정보를 제공받은 경우 싱크 장치(30)를 등록하기 위해 명령 전달부(130)의 장치등록을 위한 시스템 콜을 호출한다.
명령 전달부(130)는 장치등록을 위한 시스템 콜을 제공하며 소스 장치(10)의 운영체제의 커널 영역에 형성되어 있다. 예를 들어, 상기 운영체제가 구글사의 안드로이드인 경우, 명령 전달부(130)는 리눅스 커널일 수 있다.
정보 처리부(113)가 명령 전달부(130)의 장치등록을 위한 시스템 콜을 호출하는 경우, 명령 전달부(130)는 가상 표시 장치 구동부(110)를 커널 영역의 메모리에 로드(load)하고, 장치등록의 이벤트(event)를 가상 디바이스 파일 생성부(150)로 전송한다.
가상 디바이스 파일 생성부(150)는 명령 전달부(130)로부터 전달된 장치등록의 이벤트(event)에 응답하여 싱크 장치(30)를 가상 표시 장치로 등록하고, 싱크 장치(30)를 위한 가상 디바이스 파일(df1)을 생성한다. 예를 들어, 상기 운영체제가 구글사의 안드로이드인 경우, 가상 디바이스 파일 생성부(150)는 udevd 또는 udev라는 리눅스 커널의 디바이스 매니저(device manager)일 수 있다. 상기 udevd 또는 udev는 동적인 디바이스 파일의 생성 및 삭제의 기능을 담당하는 데몬(daemon) 프로세스로서 주기적인 서비스 요청을 처리하기 위해 계속 실행되는 프로그램이다.
가상 디바이스 파일(df1)은 응용 프로그램(A1)이 가상 표시 장치 구동부(110)에 접근할 수 있도록 하는 인터페이스 역할을 하며, 응용 프로그램(A1)이 시스템 콜을 시용하여 가상 표시 장치 구동부(110)와 상호작용을 할 수 있게 한다. 가상 디바이스 파일(df1)은 응용 프로그램(A1)이 실행되는 동안에만 존재하거나, 일정 시간 동안 사용하지 않는 경우 자동으로 삭제될 수 있다.
생성된 가상 디바이스 파일(df1)은 장치등록 과정에서 로드된 가상 표시 장치 구동부(110)의 코딩부(115)와 매핑(mapping)되고, 응용 프로그램(A1)이 싱크 장치(30)에 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 가상 디바이스 파일(df1)에 쓴다(write).
코딩부(115)는 가상 디바이스 파일(df1)을 통해 전달된 프레임 데이터(fd1)를 정보 처리부(113)에서 결정한 최적의 해상도로 인코딩하여 전송부(117)로 전달한다.
전송부(117)는 인코딩된 프레임 데이터(fd1)를 싱크 장치(30)로 전송하고, 이를 수신한 싱크 장치(30)는 응용 프로그램(A1)을 표시할 수 있다.
본 실시예에 따라, 싱크 장치에 복사된 화면만을 전송하는 종래 기술과 달리, 응용 프로그램(A1)의 화면을 소스 장치(10)와 싱크 장치(30)에 통합, 분할 또는 복사하여 출력하여 사용자에게 편리한 사용환경을 제공할 수 있다. 예를 들어, 화면 통합의 경우, 도 2에 도시된 바와 같이, 소스 장치(10)와 싱크 장치(30)에 표시되는 화면이 하나의 통합화면을 구성할 수 있다. 화면 분할의 경우, 응용 프로그램(A1)이 게임 어플리케이션인 경우 소스 장치(10)의 로컬 표시 장치(270)에는 게임을 컨트롤하기 위한 콘솔(console)을 표시하고, 싱크 장치(30)의 싱크 표시 장치(370)에는 게임화면을 분할하여 표시할 수 있다. 화면 복사의 경우, 종래 기술과 같이 소스 장치(10)와 싱크 장치(30)에 동일한 화면을 표시할 수 있으나, 싱크 장치(30)의 디스플레이 정보를 이용하여 최적의 해상도로 표시할 수 있다.
본 실시예에 따른 소스 장치(10) 및 시스템(1)에 따르면, 원격의 싱크 장치(30)를 가상의 로컬 표시 장치로 인식하여 별도의 무선 인터페이스가 없이도 싱크 장치(30)에 응용 프로그램(A1)을 표시할 수 있다.
또한, 소스 장치(10)와 싱크 장치(30)의 출력 화면은 독립적으로 표시가 가능하므로, 사용자의 선택 또는 응용 프로그램(A1)의 특성에 따라 다양하게 활용할 수 있다. 나아가, 싱크 장치(30)로부터 다양한 출력 디스플레이 정보의 옵션을 제공받아 상황에 따른 최적의 해상도를 선택할 수 있어 가변적인 화면 전송 방식을 구현할 수 있다.
도 7을 참조하면, 본 실시예에 따른 무선랜 시스템(3)은 소스 장치(12)가 두 개의 응용 프로그램(A2, A3)을 실행하는 것을 제외하고, 도 1의 무선랜 시스템(1)의 소스 장치(10) 및 싱크 장치(30)와 실질적으로 동일하다. 따라서, 도 1의 소스 장치(10) 및 싱크 장치(30)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
본 실시예에 따른 소스 장치(12)는 제1 응용 프로그램(A2) 및 제2 응용 프로그램(A3)을 동시에 실행하고 있다. 소스 장치(12)가 무선랜 시스템 상의 싱크 장치(32)를 디스커버리(discovery)하는 과정에서 싱크 장치(32)가 발견되면 싱크 장치(32)로부터 디스플레이 정보를 수신하고, 싱크 장치(32)를 가상 표시 장치로 등록한다.
소스 장치(12)는 가상 표시 장치로 등록된 싱크 장치(32)를 로컬 표시 장치로 인식하고, 싱크 장치(30)에 제1 응용 프로그램(A2) 또는 제2 응용 프로그램(A3)을 표시하기 위한 프레임 데이터(fd2)를 싱크 장치(32)에 전송한다. 이를 위해, 가상 디바이스 파일 생성부(150)는 제1 응용 프로그램(A2) 또는 제2 응용 프로그램(A3)이 가상 표시 장치 구동부(110)에 접근할 수 있도록 가상 디바이스 파일(df2)을 생성한다.
본 실시예에서 제1 응용 프로그램(A2)은 소스 장치(10)의 로컬 표시 장치(270)에 표시하고, 제2 응용 프로그램(A3)은 싱크 장치(30)의 싱크 표시 장치(370)에 표시할 수 있다. 이 경우, 제1 응용 프로그램(A2)을 표시하기 위한 프레임 데이터(fd0)는 로컬 디바이스 파일(df0)에 쓰여지고, 로컬 표시 장치(270)로 출력된다. 또한, 제2 응용 프로그램(A3)을 표시하기 위한 프레임 데이터(fd2)는 가상 디바이스 파일(df2)에 쓰여지고, 싱크 장치(32)로 전송되어 표시된다.
본 실시예에서는 소스 장치(12)에 두 개의 응용 프로그램(A2, A3)을 실행하고, 이를 각각 소스 장치(12) 및 싱크 장치(32)에서 표시하는 것으로 설명하였으나, 응용 프로그램은 두 개 이상 동시에 실행될 수 있고, 사용자의 선택 또는 응용 프로그램(A1)의 특성에 따라 소스 장치(12) 또는 싱크 장치(32)에 표시될 수 있다. 나아가, 싱크 장치(32)는 두 개 이상일 수 있으며, 필요에 따라 활용할 수 있다.
본 실시예에 따른 소스 장치(12) 및 시스템(3)에 따르면, 별도의 무선 인터페이스를 구비하지 않고도, 복수개의 응용 프로그램을 각 소스 장치(12) 또는 싱크 장치(32)에 표시하여 장치의 활용성 및 편리성을 높일 수 있다.
도 8을 참조하면, 본 실시예에 따른 무선랜 시스템(5)은 두 개 이상의 싱크 장치들(33, 34, 35)을 포함하는 것을 제외하고, 도 1의 무선랜 시스템(1)의 소스 장치(10) 및 싱크 장치(30)와 실질적으로 동일하다. 따라서, 도 1의 소스 장치(10) 및 싱크 장치(30)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
본 실시예에 따른 무선랜 시스템(5)은 세 개의 싱크 장치, 즉, 제1 싱크 장치(33), 제2 싱크 장치(34) 및 제3 싱크 장치(35)를 포함한다. 소스 장치(14)가 무선랜 시스템 상의 싱크 장치들(33, 34, 35)을 디스커버리(discovery)하는 과정에서 싱크 장치들(33, 34, 35)이 발견되면 싱크 장치들(33, 34, 35)로부터 디스플레이 정보를 수신하고, 싱크 장치들(33, 34, 35)을 가상 표시 장치로 등록한다. 싱크 장치들(33, 34, 35)의 등록은 순서대로 또는 동시에 진행될 수 있다.
소스 장치(14)는 가상 표시 장치로 등록된 싱크 장치들(33, 34, 35)을 로컬 표시 장치들로 인식하고, 응용 프로그램(A4)을 표시하기 위한 프레임 데이터들(fd3, fd4, fd5)를 각 싱크 장치들(33, 34, 35)에 전송한다. 이를 위해, 가상 디바이스 파일 생성부(150)는 응용 프로그램(A4)이 가상 표시 장치 구동부(110)에 접근할 수 있도록 가상 디바이스 파일들(df3, df4, df5)을 생성한다.
즉, 생성된 제1 가상 디바이스 파일(df3)에 응용 프로그램(A4)의 제1 프레임 데이터(fd3)가 쓰여지고, 가상 표시 장치 구동부(110)를 거쳐 제1 싱크 장치(33)로 전송되어 표시된다. 마찬가지로, 생성된 제2 가상 디바이스 파일(df4)에 응용 프로그램(A4)의 제2 프레임 데이터(fd4)가 쓰여지고, 가상 표시 장치 구동부(110)를 거쳐 제2 싱크 장치(34)로 전송되어 표시되고, 생성된 제3 가상 디바이스 파일(df5)에 응용 프로그램(A4)의 제3 프레임 데이터(fd5)가 쓰여지고, 가상 표시 장치 구동부(110)를 거쳐 제3 싱크 장치(35)로 전송되어 표시된다.
본 실시예에 따라, 응용 프로그램(A4)의 화면을 소스 장치(14), 제1 싱크 장치(33), 제2 싱크 장치(34) 및 제3 싱크 장치(35)에 통합, 분할 또는 복사하여 출력할 수 있다. 본 실시예에서는 세 개의 싱크 장치들(33, 34, 35)을 포함하는 것으로 설명하였으나, 싱크 장치는 두 개 이상일 수 있고, 사용자의 선택 또는 응용 프로그램(A4)의 특성에 따라 소스 장치(14), 제1 싱크 장치(33), 제2 싱크 장치(34) 및 제3 싱크 장치(35)에 응용 프로그램(A4)의 화면을 일부 또는 전부 표시할 수 있다.
본 실시예에 따른 소스 장치(14) 및 시스템(5)에 따르면, 각 싱크 장치들(33, 34, 35)에 따른 별도의 무선 인터페이스를 구비하지 않고도, 가상 디바이스 파일 생성부(150)가 생성한 가상 디바이스 파일들(df3, df4, df5)에 의해 싱크 장치들(33, 34, 35)에 응용 프로그램(A4)을 표시하기 위한 프레임 데이터들(fd3, fd4, fd5)을 전송할 수 있다.
도 9를 참조하면, 본 실시예에 따라 원격의 싱크 표시 장치를 표시하는 방법은, 도 1의 무선랜 시스템(1)의 소스 장치(10) 및 싱크 장치(30)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1의 소스 장치(10) 및 싱크 장치(30)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
본 실시예에 따른 원격의 싱크 표시 장치를 표시하는 방법에서, 싱크 표시 장치 구동부(310)는 싱크 표시 장치(370)의 디스플레이 정보를 수집한다(S11). 싱크 표시 장치 구동부(310)는 상기 디스플레이 정보를 소스 장치(10)에 전송하기 위한 메시지를 생성한다(S13). 상기 메시지는 확장된 와이파이 디스플레이 프로토콜 메시지로 구성될 수 있으며, 소스 장치(10)로 전송된다(S15).
가상 표시 장치 구동부(110)는 상기 메시지를 해석하고(S21), 싱크 장치(30)의 등록을 위한 시스템 콜을 호출한다(S23). 명령 전달부(130)는 가상 표시 장치 구동부(110)를 커널 영역의 메모리에 로드하고(S25), 장치등록의 이벤트(event)를 가상 디바이스 파일 생성부(150)로 전송한다(S27).
가상 디바이스 파일 생성부(150)는 명령 전달부(130)로부터 전달된 장치등록의 이벤트(event)에 응답하여 싱크 장치(30)를 가상 표시 장치로 등록하고, 싱크 장치(30)를 위한 가상 디바이스 파일(df1)을 생성한다(S29).
가상 디바이스 파일(df1)은 응용 프로그램(A1)이 가상 표시 장치 구동부(110)에 접근할 수 있도록 하는 인터페이스 역할을 하며, 응용 프로그램(A1)이 시스템 콜을 시용하여 가상 표시 장치 구동부(110)와 상호작용을 할 수 있게 한다.
응용 프로그램(A1)은 싱크 장치(30)에 응용 프로그램(A1)을 표시하기 위한 프레임 데이터(fd1)를 가상 디바이스 파일(df1)에 쓰고(write)(S31), 프레임 데이터(fd1)는 가상 디바이스 파일 생성부(150)로 전달된다(S33). 프레임 데이터(fd1)는 싱크 장치(30)에 최적의 해상도로 인코딩되어(S33), 싱크 표시 장치 구동부(310)로 출력된다(S37).
싱크 표시 장치 구동부(310)는 프레임 데이터(fd1)를 디코딩하거나 타이밍 제어하여, 싱크 표시 장치(370)로 전달한다(S41). 싱크 표시 장치(370)는 프레임 데이터(fd1)를 표시하여 응용 프로그램(A1)의 일부 또는 전체 화면을 표시할 수 있다(S43).
본 실시예에 따른 원격의 싱크 표시 장치를 표시하는 방법에 따르면, 원격의 싱크 장치(30)를 가상의 로컬 표시 장치로 인식하여 별도의 무선 인터페이스가 없이도 싱크 장치(30)에 응용 프로그램(A1)을 표시할 수 있다. 또한, 소스 장치(10)와 싱크 장치(30)의 출력 화면은 독립적으로 표시가 가능하므로, 사용자의 선택 또는 응용 프로그램(A1)의 특성에 따라 다양하게 활용할 수 있다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
1, 3, 5: 무선랜 시스템 10, 12, 14: 소스 장치
30, 32, 33, 34, 35: 싱크 장치 110: 가상 표시 장치 구동부
111: 수신부 113: 정보 처리부
115: 코딩부 117: 전송부
130: 명령 전달부 150: 가상 디바이스 파일 생성부
210: 로컬 표시 장치 구동부 270: 로컬 표시 장치
310: 싱크 표시 장치 구동부 313: 정보 수집부
315: 메시지 생성부 317: 전송부
319: 수신부 370: 싱크 표시

Claims (22)

  1. 응용 프로그램을 표시하는 로컬 표시 장치;
    상기 로컬 표시 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 로컬 표시 장치로 출력하는 로컬 표시 장치 구동부;
    무선랜을 통해 통신하는 원격의 싱크 장치에 대한 디스플레이 정보를 수신하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 싱크 장치로 전송하는 가상 표시 장치 구동부;
    상기 가상 표시 장치 구동부의 상기 싱크 장치 등록을 위한 호출에 따라 상기 싱크 장치의 등록 명령을 전달하는 명령 전달부; 및
    상기 등록 명령에 따라 상기 싱크 장치를 가상 표시 장치로 등록하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 가상 디바이스 파일을 생성하는 가상 디바이스 파일 생성부를 포함하는 소스 장치.
  2. 제1항에 있어서, 상기 가상 표시 장치 구동부는,
    상기 싱크 장치로부터 상기 싱크 장치에 대한 디스플레이 정보를 수신하는 수신부;
    상기 싱크 장치에 대한 디스플레이 정보를 해석하여 최적의 해상도를 결정하고, 상기 명령 전달부를 호출하는 정보 처리부;
    상기 가상 디바이스 파일에 쓰여진 프레임 데이터를 상기 최적의 해상도로 인코딩하는 코딩부; 및
    상기 인코딩된 프레임 데이터를 상기 싱크 장치에 전송하는 전송부를 포함하는 것을 특징으로 하는 소스 장치.
  3. 제2항에 있어서,
    상기 싱크 장치에 대한 디스플레이 정보는 확장된 와이파이 디스플레이 프로토콜 메시지로 전달되는 것을 특징으로 하는 소스 장치.
  4. 제3항에 있어서,
    상기 수신부는 상기 확장된 와이파이 디스플레이 프로토콜 메시지의 확장필드에 저장된 데이터에 따라, 상기 싱크 장치의 EDID 정보를 상기 정보 처리부로 전송하는 것을 특징으로 하는 소스 장치.
  5. 제4항에 있어서,
    상기 정보 처리부는 상기 EDID 정보를 파싱하여 파싱된 타이밍 정보를 상기 코딩부로 전송하는 것을 특징으로 하는 소스 장치.
  6. 제2항에 있어서,
    상기 가상 표시 장치 구동부 및 상기 명령 전달부는 운영체제의 커널 영역에 형성되는 것을 특징으로 하는 소스 장치.
  7. 제1항에 있어서,
    디스커버리(discovery)된 원격의 싱크 장치가 복수개인 경우, 각 싱크 장치에 전송되는 프레임 데이터를 쓰기 위한 복수개의 가상 디바이스 파일을 생성하는 것을 특징으로 하는 소스 장치.
  8. 제1항에 있어서,
    상기 로컬 표시 장치에 상기 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 로컬 디바이스 파일을 더 포함하는 것을 특징으로 하는 소스 장치.
  9. 제8항에 있어서,
    상기 로컬 표시 장치는 상기 소스 장치와 다른 영상을 표시하는 것을 특징으로 하는 소스 장치.
  10. 소스 장치 및 적어도 하나 이상의 싱크 장치를 포함하는 무선랜 시스템에 있어서,
    응용 프로그램을 표시하는 로컬 표시 장치, 상기 로컬 표시 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 로컬 표시 장치로 출력하는 로컬 표시 장치 구동부, 상기 싱크 장치에 대한 디스플레이 정보를 수신하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터를 상기 싱크 장치로 전송하는 가상 표시 장치 구동부, 상기 가상 표시 장치 구동부의 상기 싱크 장치 등록을 위한 호출에 따라 상기 싱크 장치의 등록 명령을 전달하는 명령 전달부 및 상기 등록 명령에 따라 상기 싱크 장치를 가상 표시 장치로 등록하고, 상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 가상 디바이스 파일을 생성하는 가상 디바이스 파일 생성부를 포함하는 소스 장치; 및
    상기 소스 장치에 디스플레이 정보를 제공하고 상기 프레임 데이터를 수신하는 싱크 표시 장치 구동부 및 상기 프레임 데이터를 이용하여 응용 프로그램을 표시하는 싱크 표시 장치를 포함하는 싱크 장치를 포함하는 무선랜 시스템.
  11. 제10항에 있어서, 상기 가상 표시 장치 구동부는,
    상기 싱크 장치로부터 상기 싱크 장치에 대한 디스플레이 정보를 수신하는 수신부;
    상기 싱크 장치에 대한 디스플레이 정보를 해석하여 최적의 해상도를 결정하고, 상기 명령 전달부를 호출하는 정보 처리부;
    상기 가상 디바이스 파일에 쓰여진 프레임 데이터를 상기 최적의 해상도로 인코딩하는 코딩부; 및
    상기 인코딩된 프레임 데이터를 상기 싱크 장치에 전송하는 전송부를 포함하는 것을 특징으로 하는 무선랜 시스템.
  12. 제10항에 있어서, 상기 싱크 표시 장치 구동부는,
    상기 싱크 표시 장치의 디스플레이 정보를 수집하는 정보 수집부;
    상기 디스플레이 정보를 기초로 확장된 와이파이 디스플레이 프로토콜 메시지를 생성하는 메시지 생성부;
    상기 와이파이 디스플레이 프로토콜 메시지를 상기 소스 장치로 전송하는 전송부; 및
    상기 소스 장치로부터 전송된 프레임 데이터를 수신하는 수신부를 포함하는 것을 특징으로 하는 무선랜 시스템.
  13. 제10항에 있어서,
    상기 소스 장치와 상기 싱크 장치는 와이파이(WiFi) 네트워크를 통하여 통신하는 것을 특징으로 하는 무선랜 시스템.
  14. 제10항에 있어서,
    상기 싱크 표시 장치는 상기 소스 장치와 다른 영상을 표시하는 것을 특징으로 하는 무선랜 시스템.
  15. 제14항에 있어서,
    상기 싱크 표시 장치는 응용 프로그램의 출력 화면을 상기 소스 장치와 통합, 분할 또는 복사하여 표시하는 것을 특징으로 하는 무선랜 시스템.
  16. 제10항에 있어서,
    상기 싱크 표시 장치 구동부와 상기 싱크 표시 장치는 별개의 장치로 구성되며, 인터페이스로 연결된 것을 특징으로 하는 무선랜 시스템.
  17. 제10항에 있어서,
    상기 싱크 표시 장치 구동부와 상기 싱크 표시 장치는 하나의 장치로 구성되는 것을 특징으로 하는 무선랜 시스템.
  18. 무선랜을 통해 통신하는 원격의 싱크 장치를 소스 장치에 의해 표시하기 위한 방법에 있어서,
    상기 싱크 장치에 대한 디스플레이 정보를 수신하여 해석하는 단계;
    상기 싱크 장치를 가상 표시 장치로 등록하기 위해 시스템 콜을 호출하는 단계;
    상기 시스템 콜에 따라 장치등록의 이벤트를 전달하는 단계;
    상기 싱크 장치에 응용 프로그램을 표시하기 위한 프레임 데이터가 쓰여지는 가상 디바이스 파일을 생성하는 단계; 및
    상기 프레임 데이터를 상기 싱크 장치로 전송하는 단계를 포함하는 원격의 싱크 장치를 표시하는 방법.
  19. 삭제
  20. 제18항에 있어서, 상기 프레임 데이터를 상기 싱크 장치로 전송하는 단계는,
    상기 가상 디바이스 파일에 응용 프로그램의 프레임 데이터를 쓰는 단계; 및
    상기 프레임 데이터를 상기 싱크 장치에 적합한 해상도로 인코딩하는 단계를 포함하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법.
  21. 제18항에 있어서,
    상기 싱크 장치에 대한 디스플레이 정보는 확장된 와이파이 디스플레이 프로토콜 메시지에 의해 전달되는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법.
  22. 제18항에 있어서,
    상기 싱크 장치는 상기 소스 장치와 다른 영상을 표시하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법.
KR1020120017578A 2012-02-21 2012-02-21 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 KR101335247B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020120017578A KR101335247B1 (ko) 2012-02-21 2012-02-21 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템
US13/666,434 US20130215142A1 (en) 2012-02-21 2012-11-01 Apparatus and method for displaying an image on a sink device
EP12192487.2A EP2631901A2 (en) 2012-02-21 2012-11-13 Apparatus and method for displaying an image on a sink device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120017578A KR101335247B1 (ko) 2012-02-21 2012-02-21 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템

Publications (2)

Publication Number Publication Date
KR20130096059A KR20130096059A (ko) 2013-08-29
KR101335247B1 true KR101335247B1 (ko) 2013-11-29

Family

ID=47351426

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120017578A KR101335247B1 (ko) 2012-02-21 2012-02-21 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템

Country Status (3)

Country Link
US (1) US20130215142A1 (ko)
EP (1) EP2631901A2 (ko)
KR (1) KR101335247B1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9525998B2 (en) * 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
WO2016048065A1 (ko) * 2014-09-24 2016-03-31 엘지전자 주식회사 무선 통신 시스템에서 wfd 소스가 듀얼 스크린에 관한 신호를 송수신 방법 및 장치
KR102274400B1 (ko) * 2014-11-24 2021-07-08 현대엠엔소프트 주식회사 외부 기기로의 데이터 전송 방법 및 그 장치
CN104994153B (zh) * 2015-06-30 2018-09-14 Tcl移动通信科技(宁波)有限公司 一种wifi display的图像传输方法及系统
CN105739937B (zh) * 2016-01-27 2020-03-17 努比亚技术有限公司 一种移动终端投影方法、终端设备及系统
KR102196873B1 (ko) 2019-01-18 2020-12-31 대한민국(국립특수교육원장) 장애인의 전자장치 사용을 위한 보조 장치
CN110990068B (zh) * 2019-11-29 2023-05-12 龙芯中科(西安)科技有限公司 一种显示方法、装置、电子设备及存储介质
CN113259613B (zh) * 2020-02-07 2022-12-06 广东博华超高清创新中心有限公司 一种改进hdmi显示数据流压缩互通互联的方法
ES2850280A1 (es) * 2020-02-26 2021-08-26 Univ Vigo Procedimiento y sistema para mejorar la experiencia de usuario utilizando capacidades de un dispositivo electrónico diferente
TWI747682B (zh) * 2020-12-24 2021-11-21 元太科技工業股份有限公司 電泳顯示裝置與電泳顯示裝置的驅動方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008035517A (ja) * 2006-02-14 2008-02-14 Matsushita Electric Ind Co Ltd 無線通信システム
JP2011114353A (ja) * 2009-11-24 2011-06-09 Panasonic Corp ソース装置用アダプタ装置、ソース装置用アダプタ装置の制御方法、シンク装置用アダプタ装置、シンク装置用アダプタ装置の制御方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8325107B2 (en) * 2006-02-10 2012-12-04 Qualcomm Incorporated Wireless monitor proxy
US9241062B2 (en) * 2009-05-20 2016-01-19 Citrix Systems, Inc. Methods and systems for using external display devices with a mobile computing device
US8594002B2 (en) * 2010-09-15 2013-11-26 Intel Corporation Method and system of mapping displayport over a wireless interface
US8704732B2 (en) * 2010-09-29 2014-04-22 Qualcomm Incorporated Image synchronization for multiple displays

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008035517A (ja) * 2006-02-14 2008-02-14 Matsushita Electric Ind Co Ltd 無線通信システム
JP2011114353A (ja) * 2009-11-24 2011-06-09 Panasonic Corp ソース装置用アダプタ装置、ソース装置用アダプタ装置の制御方法、シンク装置用アダプタ装置、シンク装置用アダプタ装置の制御方法

Also Published As

Publication number Publication date
US20130215142A1 (en) 2013-08-22
EP2631901A2 (en) 2013-08-28
KR20130096059A (ko) 2013-08-29

Similar Documents

Publication Publication Date Title
KR101335247B1 (ko) 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템
US8832328B2 (en) Data redirection for universal serial bus devices
CN108702480B (zh) 电子设备和用于驱动其显示器的方法
KR101576238B1 (ko) 디스플레이 인터페이스를 통한 시리얼 버스 지원의 유연한 구현
CN107003968B (zh) 虚拟显示器输出端口配置
US20130050271A1 (en) Mobile terminal, image display device mounted on vehicle and data processing method using the same
US11764996B2 (en) Streaming on diverse transports
JP2015513805A (ja) 電子デバイス通信のための方法および装置
JP2013542515A (ja) 異環境間リダイレクション
KR20160069443A (ko) 웹 어플리케이션 서비스 제공 장치 및 방법, 그리고 이를 위한 사용자 장치
CN103257839A (zh) 跨设备进行显示的方法、系统和移动终端
WO2016142713A1 (en) System for connecting external displays to a mobile device
JP2008089886A (ja) 無線伝送方法
JP2014534522A (ja) マルチタッチインターフェース方式
WO2016206195A1 (zh) 一种信息处理方法、终端、系统及计算机存储介质
WO2018049939A1 (zh) 数据迁移方法及相关产品
TWI486786B (zh) 隨著使用情境進行資料傳輸動態調整之方法與裝置及計算機程式產品
KR101484045B1 (ko) 스마트폰용 다중 디스플레이 장치
JP6354854B2 (ja) 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム
KR20130062078A (ko) 모바일 디바이스에서 외부 디스플레이 장치의 해상도에 맞는 화면을 제공하는 방법
TW201409396A (zh) 圖像處理裝置及外接圖像裝置
KR102678121B1 (ko) 컨테이너 화면 미러링을 위한 전자 장치 및 방법
KR20230081250A (ko) 컨테이너 화면 미러링을 위한 전자 장치 및 방법
CN105100670B (zh) 实施移动高清传输技术的方法及其电子装置
CN116996645A (zh) 摄像头数据传输方法、装置、电子设备及介质

Legal Events

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

Payment date: 20170508

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190430

Year of fee payment: 6