KR101314472B1 - 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 - Google Patents
원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 Download PDFInfo
- Publication number
- KR101314472B1 KR101314472B1 KR1020120023831A KR20120023831A KR101314472B1 KR 101314472 B1 KR101314472 B1 KR 101314472B1 KR 1020120023831 A KR1020120023831 A KR 1020120023831A KR 20120023831 A KR20120023831 A KR 20120023831A KR 101314472 B1 KR101314472 B1 KR 101314472B1
- Authority
- KR
- South Korea
- Prior art keywords
- screen
- layer
- unit
- source device
- shared
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000004891 communication Methods 0.000 claims abstract description 28
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 21
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000010276 construction Methods 0.000 claims 1
- 230000015572 biosynthetic process Effects 0.000 abstract description 2
- 238000003786 synthesis reaction Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 18
- 230000000694 effects Effects 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 11
- 230000000875 corresponding effect Effects 0.000 description 8
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 208000006930 Pseudomyxoma Peritonei Diseases 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 229920000306 polymethylpentene Polymers 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4122—Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/41407—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
- H04N21/43637—Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/454—Content or additional data filtering, e.g. blocking advertisements
- H04N21/4545—Input to filtering algorithms, e.g. filtering a region of the image
- H04N21/45452—Input to filtering algorithms, e.g. filtering a region of the image applied to an object-based stream, e.g. MPEG-4 streams
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4882—Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
본 발명은 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 관한 것이다. 이를 위해 본 발명의 일실시예에 따른 소스 장치는 화면을 형성하는 하나 이상의 레이어를 구성하는 레이어 구성부와, 레이어 구성부에서 구성된 하나 이상의 레이어를 합성하는 레이어 합성부와, 사용자의 명령에 따라 레이어 구성부에서 구성된 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 레이어 합성부를 이용하여 미표시 레이어를 제외한 레이어를 합성시켜 원격의 싱크 장치에 전송할 공유 화면을 형성하는 제어부와, 상기 제어부의 명령에 따라 공유 화면을 싱크 장치에 무선랜을 통해 전송하는 통신부를 포함한다.
Description
본 발명은 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 관한 것으로서, 더욱 상세하게는 와이파이와 같은 근거리 통신 기반의 네트워크에서 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 관한 것이다.
최근 전자, 통신 기술이 발달함에 따라 통신 분야뿐만 아니라 서비스 분야를 포함한 전 산업 분야에서 무선통신기술을 이용한 기술이 폭 넓게 사용되고 있는 추세이다. 이에 따라 무선통신망(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 등을 각각 소스 장치 및 싱크 장치로 사용하여 소스장치의 응용 프로그램을 싱크 장치에 표시하는 경우, 싱크 장치는 소스 장치로부터 화면을 전달받아 표시한다.
따라서, 싱크 장치는 소스 장치가 표시하는 화면과 동일한 화면을 표시하게 되는데 스마트폰의 특성상 다양한 응용 프로그램이 동시에 실행될 수 있고 또한 SMS와 같은 특정 이벤트가 발생될 경우 해당 정보가 소스 장치에 표시되어 공유하고자 하는 응용 프로그램외에 다른 응용 프로그램, 이벤트 정보 또는 개인 정보가 싱크 장치에 표시될 수 있는 문제점이 있다.
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 싱크 장치에 공유하고자 하는 응용 프로그램 화면만을 선택적으로 전송하는 소스 장치를 제공하는 것이다.
본 발명의 다른 목적은 적어도 하나 이상의 화면 레이어(layer) 형태로 구성된 응용 프로그램 화면에 있어서 공유하고자 하는 레이어만을 선택적으로 전송하는 소스 장치를 제공하는 것이다.
본 발명의 또 다른 목적은 상기 소스 장치를 포함하는 선택적 화면 공유 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 상기 소스 장치를 이용하여 원격의 싱크 장치를 표시하는 방법을 제공하는 것이다.
이를 위해 본 발명의 일실시예에 따른 소스 장치는 화면을 형성하는 하나 이상의 레이어를 구성하는 레이어 구성부와, 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어를 합성하는 레이어 합성부와, 사용자의 명령에 따라 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 제외한 레이어를 합성시켜 원격의 싱크 장치에 전송할 공유 화면을 형성하는 제어부와, 상기 제어부의 명령에 따라 상기 형성된 공유 화면을 상기 싱크 장치에 무선랜을 통해 전송하는 통신부를 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 소스 장치는 상기 공유 화면을 저장하는 공유 버퍼 생성부와, 상기 공유 버퍼 생성부에 저장된 공유 화면을 캡처하는 캡처부와, 상기 캡처부에서 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 인코딩부를 더 포함할 수 있다.
또한, 상기 제어부는 사용자로부터 미표시 아이템을 입력받는 미표시 아이템 등록부와, 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어가 상기 미표시 아이템 등록부에 등록된 미표시 아이템을 포함하는지 판단하는 미표시 아이템 판단부를 포함할 수 있다.
이때, 상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어일 수 있다.
또한, 본 발명의 일실시예에 따른 소스 장치는, 상기 소스 장치에 표시할 화면을 저장하는 메인 버퍼 생성부를 더 포함하고, 상기 제어부는 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 포함한 레이어를 합성시켜 메인 화면을 형성하여 상기 메인 버퍼 생성부에 저장하고, 상기 형성된 메인 화면을 표시부를 통하여 사용자에게 제공할 수 있다.
본 발명의 일실시예에 따른 선택적 화면 공유 시스템은 소스 장치 및 적어도 하나 이상의 싱크 장치를 포함하고, 상기 소스 장치는 상기 소스 장치에 표시할 화면을 형성하는 하나 이상의 레이어를 구성하는 레이어 구성부와, 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어를 합성하는 레이어 합성부와, 사용자의 명령에 따라 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 상기 레이어 합성부를 이용하여 상기 미표시 레이러를 제외한 레이어를 합성시켜 상기 싱크 장치에 전송할 공유 화면을 형성하는 제어부와, 상기 제어부의 명령에 따라 상기 형성된 공유 화면을 무선랜을 통해 상기 싱크 장치에 전송하는 통신부를 포함하여 구성되고, 상기 싱크 장치는 상기 소스 장치로부터 수신된 상기 공유 화면을 표시할 수 있다.
상기 소스 장치는 상기 공유 화면을 저장하는 공유 버퍼 생성부와, 상기 공유 버퍼 생성부에 저장된 상기 공유 화면을 캡처하는 캡처부와, 상기 캡처부에서 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 인코딩부를 더 포함할 수 있다.
또한, 상기 제어부는 사용자로부터 미표시 아이템을 입력받는 미표시 아이템 등록부와, 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어가 상기 미표시 아이템 등록부에 등록된 미표시 아이템을 포함하는지 판단하는 미표시 아이템 판단부를 포함할 수 있다.
상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어일 수 있다.
또한, 상기 소스 장치는 상기 소스 장치에 표시할 화면을 저장하는 메인 버퍼 생성부를 더 포함하고, 상기 제어부는 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 포함하는 레이어를 합성시켜 메인 화면을 형성하여 상기 메인 버퍼 생성부에 저장하고, 상기 형성된 메인 화면을 표시부를 통하여 사용자에게 제공할 수 있다.
본 발명의 일실시예에 따른 원격의 싱크 장치를 소스 장치에 의해 표시하는 방법은, 상기 소스 장치의 화면을 형성하는 하나 이상의 레이어를 구성하는 단계와, 상기 구성된 하나 이상의 레이어 중에서 미표시 레이어를 제외하는 단계와, 상기 미표시 레이어를 제외한 레이어를 합성시켜 공유 화면을 형성하는 단계와, 상기 형성된 공유 화면을 무선랜을 통해 상기 소스 장치에 전송하는 단계를 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 원격의 싱크 장치를 표시하는 방법은, 상기 공유 화면을 공유 버퍼 생성부에 저장하는 단계와, 상기 공유 버퍼 생성부에 저장된 상기 공유 화면을 캡처하는 단계와, 상기 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 단계를 더 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 원격의 싱크 장치를 표시하는 방법은, 상기소스 장치에서 사용자로부터 미표시 아이템을 입력받는 단계와, 상기 구성된 하나 이상의 레이어가 상기 입력된 미표시 아이템을 포함하는지 판단하는 단계를 더 포함할 수 있다.
이때, 상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어일 수 있다.
또한, 본 발명의 일실시예에 따른 원격의 싱크 장치를 표시하는 방법은, 상기 구성된 하나 이상의 레이어를 합성시켜 메인 화면을 형성하는 단계와, 상기 형성된 메인 화면을 상기 소스 장치의 표시부를 통하여 사용자에게 제공하는 단계를 더 포함할 수 있다.
본 발명에 따른 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 의하면, 싱크 장치에 전송할 화면을 별도로 구성하여 전송함으로써 여러 사람에게 노출하고 싶지 않는 화면을 제외하여 공유할 수 있다.
즉, 특정 어플리케이션을 제외하여 공유하거나, 특정 어플리케이션을 구성하는 레이어 중에서 일부 레이어를 제외하여 공유함으로써, 싱크 장치와 화면 공유시 프라이버시 침해를 방지하거나, 프리젠테이션 등을 보다 더 효과적으로 진행할 수 있다.
도 1은 안드로이드 시스템의 윈도우 매니저와 뷰 시스템 간의 계층 구조도이다.
도 2는 종래 기술에 따른 화면 공유 방법을 설명하는 순서도이다.
도 3은 종래 기술에 따른 화면 공유 결과를 나타내는 순서도이다.
도 4는 안드로이드 시스템에서 와이파이 디스플레이를 위한 MPEG 데이터 생성 개념도이다.
도 5는 본 발명의 일실시예에 따른 선택적 화면 공유 시스템의 개략 구성도이다.
도 6은 도 5의 소스 장치의 제어부의 상세 구성도이다.
도 7은 안드로이드 시스템에서 SurfaceFlinger 동작 과정을 설명하는 개념도이다.
도 8은 본 발명의 일실시예에 따른 소스 장치의 메인 화면 및 공유 화면 생성 및 싱크 장치로의 공유 화면 전송 방법을 설명하는 개념도이다
도 9는 본 발명의 일실시예에 따른 소스 장치에 의해 원격의 싱크 장치를 표시하는 방법을 설명하는 순서도이다.
도 10은 본 발명의 일실시예에 따른 소스 장치의 메인 화면 및 공유 화면을 생성하는 흐름을 설명하는 순서도이다.
도 11은 본 발명의 일실시예에 따른 소스 장치의 미표시 아이템 등록부의 동작을 설명하는 순서도이다.
도 12는 본 발명의 일실시예에 따른 소스 장치의 미표시 아이템 판단부의 동작을 설명하는 순서도이다.
도 13은 본 발명의 일실시예에 따른 소스 장치의 미표시 레이어의 구분 방법을 설명하는 개념도이다.
도 14은 본 발명의 일실시예에 따른 소스 장치의 메인 버퍼 생성부에 저장되는 메인 화면의 생성 과정을 설명하는 개념도이다.
도 15는 본 발명의 일실시예에 따른 소스 장치의 공유 버퍼 생성부에 저장되는 공유 화면의 생성 과정을 설명하는 개념도이다.
도 16 및 도 17은 본 발명의 일실시예에 따른 선택적 화면 공유 시스템에서, 소스 장치의 화면에서 문자 팝업창 및 재생 툴바가 제거된 화면이 싱크 장치에 공유되는 것을 나타내는 도면이다.
도 2는 종래 기술에 따른 화면 공유 방법을 설명하는 순서도이다.
도 3은 종래 기술에 따른 화면 공유 결과를 나타내는 순서도이다.
도 4는 안드로이드 시스템에서 와이파이 디스플레이를 위한 MPEG 데이터 생성 개념도이다.
도 5는 본 발명의 일실시예에 따른 선택적 화면 공유 시스템의 개략 구성도이다.
도 6은 도 5의 소스 장치의 제어부의 상세 구성도이다.
도 7은 안드로이드 시스템에서 SurfaceFlinger 동작 과정을 설명하는 개념도이다.
도 8은 본 발명의 일실시예에 따른 소스 장치의 메인 화면 및 공유 화면 생성 및 싱크 장치로의 공유 화면 전송 방법을 설명하는 개념도이다
도 9는 본 발명의 일실시예에 따른 소스 장치에 의해 원격의 싱크 장치를 표시하는 방법을 설명하는 순서도이다.
도 10은 본 발명의 일실시예에 따른 소스 장치의 메인 화면 및 공유 화면을 생성하는 흐름을 설명하는 순서도이다.
도 11은 본 발명의 일실시예에 따른 소스 장치의 미표시 아이템 등록부의 동작을 설명하는 순서도이다.
도 12는 본 발명의 일실시예에 따른 소스 장치의 미표시 아이템 판단부의 동작을 설명하는 순서도이다.
도 13은 본 발명의 일실시예에 따른 소스 장치의 미표시 레이어의 구분 방법을 설명하는 개념도이다.
도 14은 본 발명의 일실시예에 따른 소스 장치의 메인 버퍼 생성부에 저장되는 메인 화면의 생성 과정을 설명하는 개념도이다.
도 15는 본 발명의 일실시예에 따른 소스 장치의 공유 버퍼 생성부에 저장되는 공유 화면의 생성 과정을 설명하는 개념도이다.
도 16 및 도 17은 본 발명의 일실시예에 따른 선택적 화면 공유 시스템에서, 소스 장치의 화면에서 문자 팝업창 및 재생 툴바가 제거된 화면이 싱크 장치에 공유되는 것을 나타내는 도면이다.
최근 스마트폰과 같은 단말기가 급속도로 보급되면서, 단말기가 다양한 방법으로 생활 속에서 이용되고 있다. 예를 들어, 스마트폰과 같은 작은 단말기의 화면을 TV 또는 모니터와 같은 큰 단말기의 화면에 공유시킴으로써 회의 등을 진행하는 것도 가능한 상황이다. 도 1은 안드로이드 시스템에서의 윈도우 매니저(Window Manager)와 뷰 시스템(View System) 간의 계층 구조를 나타내고 있다. 각 어플리케이션(Applications) 단 아래의 뷰(view) 시스템은 윈도우 매니저에 의해 종합 관리되게 되며, 이렇게 최종 종합된 디스플레이로 데이터(display raw data)는 디스플레이 드라이버(display driver) 단에서 메인 단말(즉, 소스 장치)에 출력되거나 타 단말기(즉, 싱크 장치)에 전송되기 위하여 프레임 버퍼(frame buffer)로 생성된다.
이때, 싱크 장치에 화면을 공유하기 위해서는 도 2에 도시된 바와 같이, 수직 뷰 레이어 구성부(1)에서 레이어를 구성한 후, 수직 뷰 레이어 합성부(2)에서 레이어를 합성한 후, 메인 버퍼 생성부(3)에 표시될 화면을 저장시킨 후 로컬(메인) 디스플레이 출력부(4)에 출력시킴과 더불어 송출 데이터 생성부(5)에서 타 단말기로 송출할 데이터를 생성하고, 송출 데이터 인코딩부(6)에서 인코딩한 다음 송출 데이터 전송부(7)를 통하여 싱크 장치로 데이터를 전송함으로써 화면을 공유하는 방식을 사용한다.
이와 같은 방법을 사용하는 경우, 도 3에 도시된 바와 같이, 소스 장치(8)와 싱크 장치(9)에 동일한 화면을 공유할 수 밖에 없게 된다. 도 3을 참조하면 특정한 사진을 공유하고 있는 중에 소스 장치(8)에 문자 메시지 팝업창이 생겨 문자 메시지 내용이 표시되고, 싱크 장치(9)에도 역시 문자 메시지 내용이 동일하게 표시되게 된다. 이러한 경우, 사용자가 여러 사람에게 공유하고 싶지 않는 화면이 공유되는 등 프라이버시 침해 문제가 발생하게 된다.
이하에서는 첨부도면을 참조하여 이러한 문제점을 해결하기 위한 본 발명에 따른 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템에 대해 상세히 설명한다. 그러나, 첨부도면 및 이하의 설명은 본 발명에 따른 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템의 가능한 일실시예에 불과하며, 본 발명의 기술적 사상은 아래의 내용에 의해 한정되지 아니한다.
도 4는 안드로이드 시스템에서 와이파이 디스플레이를 위한 MPEG 데이터 생성 개념도이다. 즉, 종래의 일반적인 소스 장치에서 싱크 장치와 와이파이(Wifi) 통신 방식으로 화면을 공유하는 경우, 소스 장치에 표시되는 화면과 동일한 화면을 전송하게 된다.
도 4를 참조하면, 맨 아랫단에서 비디오 데이터가 입력되면 비디오 드라이버를 통하여 화면을 구성한다. 이때, 표시되는 화면은 여러 개의 수직적 구조를 갖는 각각의 화면 레이어들을 종합하여 생성하게 된다. 이렇게 생성된 화면은 캡처된 후 전송용 데이터(예를 들어, MPEG 데이터)로 인코딩되어 전송부에 전송되게 된다.
종래 기술은 이런 방식으로 캡처된 화면을 메인 단말기에 표시함은 물론, 인코딩하여 타 단말기에도 전송하여 동일한 화면만을 공유할 수 있었다.
본 발명은 이와 같은 문제를 해결하기 위해, 소스 장치에 표시할 화면을 위한 버퍼와 별도로 싱크 장치에 전송할 공유 화면을 전송할 공유 버퍼를 별도로 구성하고, 수직 화면 레이어에서 사용자에 의해 선택된 레이어를 제외시킨 공유 화면을 공유 버퍼에 저장한 후 캡처하여 별도로 전송하는 방식을 채택함을 그 특징으로 한다.
이하, 도 5를 참조하여 본 발명의 일실시예에 따른 선택적 화면 공유 시스템의 구성 및 동작에 대해서 상세히 살펴보기로 한다.
도 5는 본 발명의 일실시예에 따른 선택적 화면 공유 시스템의 개략 구성도이다.
도 5를 참조하면, 본 발명의 일실시예에 따른 선택적 화면 공유 시스템(30)은 소스 장치(10)와, 소스 장치와 와이파이와 같은 무선랜으로 연결되는 싱크 장치(20)를 포함하여 구성된다.
소스 장치(10)는 스마트 폰, 태블릿 컴퓨터, 넷북, 피디에이(PDA), 피엠피(PMP) 등 인터넷에 접속할 수 있는 다양한 형태의 모바일(mobile) 컴퓨터를 모두 포함할 수 있고, 운영체제(Operation System: OS)를 기반으로 다양한 응용 프로그램을 실행할 수 있다.
상기 운영체제는 응용 프로그램이 컴퓨터의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터에 탑재할 수 있는 운영체제를 모두 포함할 수 있다.
상기 응용 프로그램은 컴퓨터를 이용하여 특정한 작업을 수행할 수 있도록 개발된 프로그램으로서, 각종 어플리케이션 분 아니라 게임, 동영상, 사진 등의 각종 멀티미디어 컨텐츠(contents) 또는 상기 멀티미디어 컨텐츠를 실행하는 이미지 뷰어, 동영상 재생기 등의 실행 프로그램을 모두 포함할 수 있다.
싱크 장치(20)는 모바일 컴퓨터 뿐만 아니라 데스크 탑 컴퓨터, 스마트 TV 등 소스 장치(10)와 무선랜을 통해 통신 가능한 모든 통신 장치를 포함할 수 있다. 싱크 장치(20)는 소스 장치(10)로부터 제공되는 프레임 데이터를 수신하여 표시함으로써 소스 장치(10)에서 실행되는 응용 프로그램을 표시할 수 있다.
소스 장치(10) 및 싱크 장치(20)는 무선랜 통신을 지원하는 플랫폼을 포함하고, 서로 무선랜을 통하여 통신한다. 상기 무선랜은 유선을 사용하지 않고 전파나 적외선 등을 이용하여 일정한 거리 안에서 초고속 인터넷을 할 수 있는 방식으로, 와이파이(WiFi) 등의 근거리 무선통신기술을 모두 포함할 수 있다.
소스 장치(10)는 구체적으로는 레이어 구성부(11)와, 레이어 합성부(12)와, 버퍼 생성부(13)와, 제어부(14)와, 캡처부(15)와, 인코딩부(16)와, 통신부(17)와, 표시부(18)를 포함하여 구성된다.
레이어 구성부(11)는 비디오 데이터를 이용하여 화면을 형성하는 하나 이상의 레이어를 구성하는 역할을 한다. 앞에서 언급한 바와 같이, 화면은 복수 개의 수직적 구조를 갖는 화면 레이어(display layer)를 합성하여 생성되는데, 이는 소스 장치(10) 상에서 구현되는 각각의 실행 어플리케이션에 의해 결정된다.
이때, 본 명세서에서 ‘어플리케이션(application)’은 소스 장치(10)의 플랫폼 상에서 구동되는 모든 종류의 실행 응용 프로그램을 총괄한다. 즉, 소스 장치(10)를 구동시키는 OS상에서 실행되고 있는 모든 어플리케이션으로써, 소스 장치(10)에 기본적으로 설치된 필수 어플리케이션은 물론 사용자가 별도로 다운로드 받아서 설치된 어플리케이션을 포함한다.
또한, 앞에서 언급한 바와 같이 소스 장치(10)를 구동시키는 OS이면 안드로이드 플랫폼, 애플사의 iOS, 윈도우 플랫폼, 삼성의 바다 등등의 어떤 종류의 OS라도 무방하다. 편의상, 이하 명세서에서는 안드로이드 플랫폼을 기준으로 설명하기로 한다. 하지만, 본 발명의 기술적 사상을 이용하는 것이라면 어떠한 OS에서의 구현도 본 발명의 권리 범위에 속하는 것은 당연하다 할 것이다.
또한, 레이어 구성부(11)에서 구성하는 레이어는 특정 어플리케이션을 나타내는 화면을 포함하는 레이어를 모두 포괄하는 것을 의미할 뿐만 아니라, 하나의 어플리케이션 속에서 해당 어플리케이션을 표시하기 위한 복수의 레이어 중 어느 하나의 레이어를 포함하는 의미이다. 즉, 후술하겠지만, 복수의 어플리케이션에 따른 UI가 화면에 표시되는 경우 특정 어플리케이션에 해당하는 UI를 모두 제외시킬 수도 있지만, 특정 어플리케이션에 따른 UI가 화면에 표시되는 경우 해당 어플리케이션의 UI를 구성하는 레이어중 특정 레이어만 제외시킬 수 있다는 것을 의미한다. 이와 관련한 예는 후술하기로 한다.
레이어 합성부(12)는 레이어 구성부(11)에서 구성된 하나 이상의 레이어를 합성하는 역할을 한다. 레이어 합성부(12)는 후술할 제어부(14)의 제어에 의해서 소스 장치(10)에 표시할 메인 화면과, 싱크 장치(20)에 전송할 공유 화면에 따라 각각 다르게 레이어를 합성하게 된다.
버퍼 생성부(13)는 제어부(14)의 제어에 의해 레이어 합성부(12)에서 생성된 화면을 일시적으로 저장하는 역할을 한다. 버퍼 생성부(13)는 소스 장치(10)에 표시할 메인 화면을 저장하는 메인 버퍼 생성부(13a)와, 싱크 장치(20)에 전송할 공유 화면을 저장하는 공유 버퍼 생성부(13b)를 포함하여 구성된다.
캡처부(15)는 버퍼 생성부(13)에 저장된 메인 화면 또는 공유 화면을 캡처하여 제어부(14) 및 인코딩부(16)로 전송하는 역할을 한다.
인코딩부(16)는 제어부(14)의 명령에 따라 캡처부(15)에서 전송된 공유 화면을 타 단말기에 전송할 데이터 형식으로 인코딩하는 역할을 한다. 예를 들어, MPEG 데이터 형식으로 인코딩할 수 있다.
통신부(17)는 싱크 장치(20)와 무선랜 방식으로 데이터를 송수신하는 역할을 하며, 제어부(14)의 명령에 의해 인코딩부(16)에서 인코딩된 공유 화면을 싱크 장치(20)에 전송할 수 있다. 예를 들어, RTP 프로토콜을 통해 전송될 수 있다.
표시부(18)는 사용자에게 각종 화면을 표시하는 역할을 한다. 특히, 제어부(14)의 명령에 따라 캡처부(15)에서 전송된 메인 화면을 사용자에게 표시할 수 있다.
제어부(14)는 앞의 장치들과 데이터를 송수신하면서, 소스 장치(10)의 전체적인 동작을 제어하는 역할을 한다. 특히, 제어부(14)는 사용자의 명령에 따라 레이어 구성부(11)에서 구성된 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 레이어 합성부(12)를 이용하여 메인 버퍼 생성부(13a)에 메인 화면을 생성하여 저장하고, 공유 버퍼 생성부(13b)에 공유 화면을 생성하여 저장한다. 즉, 제어부(14)는 레이어 구성부(11)가 구성한 모든 화면 레이어를 합성시켜 메인 화면을 생성하여 메인 버퍼 생성부(13a)에 저장하고, 상기 결정된 미표시 레이어를 제외한 레이어들을 합성시켜 공휴 화면을 생성하여 공유 버퍼 생성부(13b)에 저장한다.
이렇게 버퍼 데이터가 생성되면 캡처부(15)는 비디오 이미지를 캡처하여 제어부(14) 및 인코딩부(16)로 전송한다. 제어부(14)는 공유 화면은 별도의 인코딩 없이 바로 표시부(18)를 통하여 사용자에게 제공하며, 싱크 장치(20)에 전송할 공유 화면은 인코딩부(16)를 통하여 MPEG 데이터 형식 등으로 인코딩한 후 통신부(17)를 통하여 RTP 프로토콜 등을 통해 타 단말기에 전송한다. 이때, 싱크 장치(20)에 전송되는 공유 화면은 앞에서 언급한 바와 같이 사용자가 미리 입력한 미표시 레이어를 제외한 화면이므로 프라이버시 등이 보호될 수 있다.
도 6은 도 5의 소스 장치(10)의 제어부(14)의 상세 구성도로서, 제어부(14)는 미표시 아이템 등록부(14a)와 미표시 아이템 판단부(14b)를 포함하여 이루어진다.
미표시 아이템 등록부(14a)는 사용자로부터 미표시 아이템을 입력받는 역할을 한다. 즉, 표시부(18)를 통하여 특정 어플리케이션 또는 특정 어플리케이션의 하위 아이템 중에서 싱크 장치(20)로 전송시 표시하지 않을 미표시 아이템을 선택할 수 있도록 하는 UI를 제공하고, 사용자의 입력에 따라, 미표시 아이템을 설정한다.
미표시 아이템 판단부(14b)는 소스 장치(10)가 싱크 장치(20)와 화면 공유시에 싱크 장치(10)에 표시되는 화면을 구성하는 레이어 중에서 미표시 아이템으로 설정된 아이템을 포함하는지 판단하는 역할을 한다. 즉, 소스 장치(10)에 표시되는 화면을 구성하는 레이어와 미표시 아이템 등록부(14a)에 의해 설정된 아이템을 비교함으로써 상기 판단을 수행할 수 있다. 제어부(14)는 상기 판단에 따라 메인 버퍼 생성부(13a)에 저장될 메인 화면과 공유 버퍼 생성부(13b)에 저장될 공유 화면을 구성한다.
도 7은 안드로이드 시스템에서 서피스 플링커(SurfaceFlinger) 동작 과정을 설명하는 개념도이다.
플링거(Flinger)는 사전적으로 투수라는 의미이지만, 여기서는 어떠한 데이터를 한데 모아서 출력 쪽으로 던져주는 역할을 한다는 의미로 사용된다. 서피스 플링거는 여러가지 화면(Surface) 데이터를 한 데 모아서 프레임 버퍼로 업데이트 하는 것이고, 각 화면(Surface)를 믹싱(Mixing)하는 것이 주 기능이다.
도 7을 참조하면, 각 어플리케이션 별 화면(Surface)를 취합하여 화면에 최종적으로 표시될 화면을 구성하도록 데이터를 생성하여 프레임 버퍼(Frame Buffer)에 저장하는 역할을 한다.
도 7의 박스 부분에 표시된 내용은 안드로이드 플랫폼에서 사용되는 통상적인 방법을 표현하는 내용에 해당한다. 중요 부분을 간략히 설명하면 다음과 같다.
“Surfaceflinger::instantiate” 부분은 서피스 플링커 사용을 위한 서비스 등록 부분을 의미하며, “Surfaceflinger::readyToRun 부분은 초기화 과정을 나타내며 메인 디스플레이를 초기화하는 과정, OpenGL ES를 초기화하는 과정 등이 포함되어 있으며 이러한 초기화 과정은 다음과 같다.
1) Display 정보를 얻어서 EGL 초기화
2) Surface 생성
3) OpenGL ES의 Context 생성
4) Open ES의 Extension 정보 획득
5) 생성된 내용을 저장
6) 하드웨어 모듈 초기화
이때, “OpenGL ES”는 “Open Graphic Library for Embeded Systems”의 약자로, 모바일 임베디드 기기를 위해 제작한 3D Graphics API를 나타내며, “EGL”은 OpenGL ES, OpenVG와 같은 클라이언트 API가 그림을 그리거나, 그래픽 컨텍스트(Graphic context)를 생성하거나, native platform rendering API 뿐만 아니라 클라이언트 API에 의해서 그려진 내용을 동기화할 수 있는 렌더링 화면(rendering surface)를 생성할 수 있는 방법을 제공하는 역할을 한다.
또한, “Surfaceflinger::threadLoop” 부분은 서피스 플링거 초기화가 끝나면 쓰레드가 돌면서 지속적으로 화면들을 믹싱하고 이를 프레임 버퍼에 업데이트하는 포스팅(posting) 작업을 하는 것을 의미한다.
도 8은 본 발명의 일실시예에 따른 소스 장치(10)의 메인 화면 및 공유 화면 생성 및 싱크 장치(20)로의 공유 화면 전송 방법을 설명하는 개념도이다.
도 8에서 볼 수 있듯이, 화면을 구성할 복수의 화면 레이어가 존재하는데 View 1과 View 3은 싱크 장치(20)에 전송되어도 무방한 레이어이지만, View 2는 싱크 장치(20)로 전송되어서는 안되는 프라이버시가 포함된 레이어로 Privacy View 2로 표시되어 있다.
앞의 방법에 의해서 소스 장치(10)에 표시될 메인 버퍼(View 1 + Privacy View 2 + View 3)를 생성하여 소스 장치(10)에 표시하고, 싱크 장치(20)에 표시될 공유 버퍼(View 1 + View 3)를 생성하여 싱크 장치(20)에 전송하여 표시한다. 즉, 소스 장치(10)에는 “빨리 빚 갚아!”라는 문자 메시지 팝업이 표시되었지만, 싱크 장치(20)인 PC 모니터에는 문자 메시지 팝업이 제외되었음을 알 수 있다.
도 9는 본 발명의 일실시예에 따른 소스 장치에 의해 원격의 싱크 장치를 표시하는 방법을 설명하는 순서도이다.
도 9를 참조하면, 본 발명에 따른 소스 장치(10)는 싱크 장치(20)와 와이파이 통신 방식으로 디스플레이를 연결한다(S100). 본 명세서에서는 와이파이 방식으로 타 단말기와 화면을 공유하는 것을 예로 들었지만, 블루투스, 3G, 4G(LET 등) 등의 무선 통신 방식은 물론, 데이터 케이블 등을 통한 유선 통신 방식 등 어떠한 방식이든 화면을 공유할 수 있는 통신 방식에 적용이 가능함은 당연하다.
소스 장치(10)는 표시부(18)를 통하여 선택적 화면 전송을 위한 레이어 구성을 하겠는지를 UI 등을 통하여 사용자에게 제시한다(S102). 사용자가 선택적 화면 전송을 위한 레이어 구성을 하겠다고 선택한 경우 사용자의 입력에 따라 선택된 레이어를 제외한 화면 윈도우를 구성하고(S104), 이를 공유 버퍼 생성부(33)로 전송하여 공유 버퍼를 생성한다(S106). 캡처부(15)는 이렇게 생성된 공유 버퍼 화면을 캡처하고(S108), 인코딩부(16)로 전송하여 MPEG 비디오 데이터를 생성하도록 인코딩한다(S110). 인코딩이 완료되면 제어부(14)는 통신부(17)를 통하여 싱크 장치(20)로 데이터를 전송하고(S112), 이를 수신한 싱크 장치(20)(예를 들어, 원격 디스플레이 장치)는 수신한 데이터를 다시 디코딩하여 화면에 표시한다(S114).
만약, S102 단계에서 사용자가 선택적 화면 전송을 위한 레이어 구성을 하지 않겠다고 한 경우에는 모든 레이어를 포함한 화면 윈도우를 구성하여(S116), 이를 메인 버퍼 생성부(13a)로 전송하여 메인 버퍼를 생성한다(S118). 캡처부(15)는 이렇게 생성된 메인 버퍼 화면을 캡처하고(S120), 이를 인코딩부(16) 및 제어부(14)로 전송한다.
제어부(14)는 이 수신된 화면을 바로 표시부(18)를 통하여 소스 장치(10)의 디스플레이 장치 즉 표시부(18)에 표시하고(S122), 인코딩부(16)는 이를 인코딩하여 MPEG 비디오 데이터를 생성하고(S110), 공유 화면 데이터를 싱크 장치(20)에 전송하고(S112), 싱크 장치(20)는 이를 수신하여 디코딩하여 표시한다(S114).
도 10은 본 발명의 일실시예에 따른 소스 장치(10)의 메인 화면 및 공유 화면을 생성하는 흐름을 설명하는 순서도이다.
도 10을 참조하여 메인 화면 및 공유 화면 생성 흐름을 간단히 설명하면 다음과 같다. 미표시 아이템 등록부(14a)에서 사용자의 명령에 따라 미표시 아이템이 결정된 후, 미표시 아이템 판단부(14b)는 레이어 구성부(11)의 데이터를 검색하여 해당 레이어가 미표시 아이템을 포함하는지 판단한 후, 제어부(14)에 의해 레이어 합성부(12)에서 메인 버퍼 생성부(13a) 및 공유 버퍼 생성부(13b)에 저장된 버퍼가 생성된다. 이렇게 버퍼가 생성되면 메인 버퍼 데이터는 바로 소스 장치(10)의 표시부(18)에 표시되고, 공유 버퍼 데이터는 인코딩부(15)를 통하여 인코딩되어 통신부(17)를 통하여 싱크 장치(20)에 전송된다.
도 11은 본 발명의 일실시예에 따른 소스 장치(10)의 미표시 아이템 등록부(14a)의 동작을 설명하는 순서도이다.
앞에서 설명한 바와 같이, 미표시 아이템 등록부(14a)가 실행되면(S200), 표시부(18)를 통하여 사용자에게 미표시 아이템을 선택할 수 있도록 하는 UI 등이 표시된다. 사용자는 이때 미표시 아이템을 선택하고(S202), 선택된 미표시 아이템이 저장된 후(S204), 미표시 아이템 등록부(14a)는 종료된다(S206).
도 12는 본 발명의 일실시예에 따른 소스 장치(10)의 미표시 아이템 판단부(14b)의 동작을 설명하는 순서도이다.
미표시 아이템 등록부(14a)에 의해 미표시 아이템이 등록된 후, 미표시 아이템 판단부가 시작되면(S300), 화면을 구성하는 레이어가 모두 로드된다(S302). 이때, 로드된 레이어가 미리 등록된 미표시 아이템을 포함하는지 판단한다(S304).
미표시 아이템을 포함한다고 판단되면, 해당 레이어는 미표시 레이어로 판단하고(S306), 미표시 아이템을 포함하지 않는다고 판단되면, 해당 레이어는 표시 레이어로 판단한다(S306). 제어부(14)는 이러한 방식으로 미리 설정된 데이터베이스에 근거하여 화면에 구성될 각각의 레이어들을 분류한다.
도 13은 본 발명의 일실시예에 따른 소스 장치(10)의 미표시 레이어의 구분 방법을 설명하는 개념도이다.
기존 종래의 기술은 미표시 윈도우(invisible window)의 선택을 사용자가 직접 수동으로 처리하는 방식을 사용하였다. 그러나, 본 발명의 경우 사전에 등록된 테이블 내의 카테고리 항목을 조회하여 자동으로 처리한다.
도 13은 프레임워크(Framework) 단의 인텐트 처리 메커니즘을 나타내고 있다. 안드로이드 플랫폼 상에서 발생하는 모든 인텐트는 우선적으로 액티비티매니저(ActivityManager) 서비스에 전달되게 된다. 이를 통해 미표시 레이어로 등록된 카테고리를 담고 있는 테이블을 통해 해당 액티비티가 미표시인지 아닌지를 판단할 수 있게 된다. 즉, 액티비티매니저의 동작으로 해당 액티비티가 미표시인지 아닌지를 판단함으로써 어플리케이션 별 미표시 여부를 구분하는 것이다.
또 다른 방법으로는 액티비티 또는 어플리케이션에 미표시 공유(invisible share) 속성을 추가하여 액티비티 매니저에서 해당 속성을 쿼리하여 미표시 여부를 판단하는 것이 있을 수 있다. 이는, 액티비티 또는 어플리케이션의 하위 속성으로 미표시 공유 속성을 추가함으로써 하나의 어플리케이션에서 미표시 항목을 구분할 수 있게 하는 방법이다.
도 13을 참조하면, 컴포넌트(400)에서 인텐트가 발생하면, 이 인텐트가 액티비티 매니저(410)로 전달되고, 액티비티 매니저(410)는 인텐트 라우팅(420) 동작을 통하여 지정된 컴포넌트(430)에 인텐트를 전달하게 된다. 도 13에 표시된 안드로이드 플랫폼 상의 용어의 의미를 간단히 설명하면 다음과 같다.
인텐트(Intent)는 안드로이드 플랫폼 상에서 특정 어플리케이션의 컴포넌트를 선택하여 사용하기 위해 사용되는 일종의 메시지로서, 명시적 인텐트 및 암시적 인텐트로 구분된다. 명시적 인텐트는 해당 메시지를 받아 처리할 특정 어플리케이션의 호출 대상을 명시하는 인텐트이며, 암시적 인텐트는 호출 대상이 특별히 정해진 것이 아니고, 특성만을 설정해주고 메시지를 보내게 되면 어플리케이션이 자신이 갖고 있는 인텐트 필터를 이용해 자신이 처리할 수 있는 메시지인지 판단하여 실행될 수 있게 하는 인텐트이다.
액티비티(Activity)는 안드로이드 플랫폼에서 하나의 화면을 의미한다. 예를 들어, 하나의 어플리케이션에서는 여러 화면을 갖게 되므로 여러 액티비티가 존재하게 되며, 액티비티는 안드로이드 어플리케이션을 구성하는 컴포넌트 중의 하나이다.
서비스(Service)는 화면에 표시되지 않고 백그라운드(background) 상에서 실행되는 안드로이드 컴포넌트 중의 하나이며, 브로드캐스트리시버(BroadcastReceiver)는 시스템의 상태에 관련된 메시지(배터리 상태 등등) 혹은 어플리케이션의 메시지 등이 방송 송출과 같이 전파되었을 때 이를 잡아내는 수신자를 의미한다.
인텐트 라우팅(Intent Routing)은 인텐트와 인텐트 필터를 서로 연결해 주는 과정을 의미한다. 즉, 인텐트 필터는 인텐트 속성에 따라 인텐트를 통과시키는 것을 결정하게 되는데, 수신되는 인텐트를 인텐트 필터로 연결하여 인텐트를 분류하는 역할을 하는 것이다.
서피스 플링거(Surface Flinger)는 앞의 도 7에서 설명한 바와 같이 화면 데이터를 프레임 버퍼로 업데이트 하는 역할을 하며, 액티비티 매니저(Activity Manager)는 어플리케이션을 전체 동작을 총괄하는 역할을 한다. 구체적으로, 안드로이드 플랫폼 상에서 발생하는 모든 인텐트는 우선적으로 액티비티 매니저 서비스에 전달되는데, 액티비티 매니저 서비스는 인텐트를 수신하며 패키지 매니저 서비스(Package Manager Service)에 해당 인텐트에 가장 잘 부합하는 컴포넌트가 무엇인지 물어보고 그 결과를 바탕으로 인텐트를 타겟 컴포넌트에 전달해주는 역할을 한다. 즉, 액티비티 매니저 서비스는 말 그대로 작동중인 컴포넌트들의 상태 정보의 추가로 활성화된 패키지들의 상태 정보를 모두 관리하고 있기 때문에 타겟 컴포넌트의 현재 상태를 확인할 수 있다.
도 14는 본 발명의 일실시예에 따른 소스 장치(10)의 메인 버퍼 생성부(13a)에 저장되는 메인 화면의 생성 과정을 설명하는 개념도이며, 도 15는 본 발명의 일실시예에 따른 소스 장치(10)의 공유 버퍼 생성부(13b)에 저장되는 공유 화면의 생성 과정을 설명하는 개념도이다.
도 14를 참조하면, A, B, C의 총 3개의 화면 레이어가 있는 경우를 나타내며 모든 레이어가 표시 레이어에 속하고, 미표시 레이어가 없어서 세 개의 레이어를 모두 합성하여 메인 화면 D를 생성한 것을 알 수 있다.
반면에 도 15에는 유사하게 A, B, C의 총 3개의 화면 레이어가 있는 경우를 나타내지만 C 레이어가 미표시 레이어로 분류되어 C 레이어를 제외한 화면 레이어만을 합성하여 공유 화면 D를 생성한 것을 알 수 있다.
도 16 및 도 17은 본 발명의 일실시예에 따른 소스 장치(10)가 싱크 장치(20)와 화면 공유시 문자 팝업창 및 재상 툴바가 제거된 화면이 싱크 장치(20)에 표시되는 것을 나타내는 도면이다.
도 16는 앞에서 언급한 것처럼 소스 장치(10)에 “빨리 빚 갚아”라는 문자 메시지 팝업 창이 뜨는 경우에 미리 설정된 데이버베이스에 근거하여 싱크 장치(20)인 PC 모니터에는 문자 메시지 팝업이 표시되지 않음을 알 수 있다. 이는 동영상 또는 이미지를 재생하는 어플리케이션과 문자메시지를 표시하는 이종의 어플 간에 화면 레이러를 설정한 경우를 나타낸다. 즉, 비디오를 재생하는 하나의 어플리케이션과 문자메시지를 표시하는 다른 하나의 어플리케이션이 있는 경우 문자 메시지를 표시하는 어플리케이션과 관련된 모든 레이어는 타 단말기로 전송하지 않도록 설정한 경우이다.
반면, 도 17에는 소스 장치(10)에는 재생 툴바가 표시되어 있지만 싱크 장치(20)에는 재생 툴바가 표시되어 있지 않는 경우를 나타내고 있다. 즉, 다수의 사람들에게 프리젠테이션 등을 하는 경우에는 소스 장치(10)의 사용자만이 재생 툴바를 보고 제어하면 족하고 다수의 사람들에게는 이를 표시하는 것이 오히려 방해가 될 수 있다. 이러한 경우에 재생 툴바를 미표시 아이템으로 설정하여 싱크 장치(20)에 전송하지 않게 설정한 것이다. 도 16은 비디오를 재생하는 하나의 어플리케이션에서 해당 어플리케이션의 화면을 구성하는 다수의 아이템 중에서 특정 아이템을 미표시 아이템으로 설정하는 것을 의미한다.
본 발명은 이와 같은 방법으로, 소스 장치(10)의 화면을 구성한 복수의 레이어에서 공유 화면을 별도로 설정하여 공유 버퍼에 저장하고, 이를 싱크 장치(20)에 전송하여 화면을 공유함으로써 프라이버시를 보호하고, 데이터 공유시 데이터를 더 효율적으로 제공할 수 있게 한다.
10: 소스 장치 11: 레이어 구성부
12: 레이어 합성부 13: 버퍼 생성부
14: 제어부 15: 캡처부
16: 인코딩부 17: 통신부
18: 표시부 20: 싱크 장치
12: 레이어 합성부 13: 버퍼 생성부
14: 제어부 15: 캡처부
16: 인코딩부 17: 통신부
18: 표시부 20: 싱크 장치
Claims (18)
- 화면을 형성하는 하나 이상의 레이어를 구성하는 레이어 구성부;
상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어를 합성하는 레이어 합성부;
사용자의 명령에 따라 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 제외한 레이어를 합성시켜 원격의 싱크 장치에 전송할 공유 화면을 형성하는 제어부; 및
상기 제어부의 명령에 따라 상기 형성된 공유 화면을 상기 싱크 장치에 무선랜을 통해 전송하는 통신부를 포함하는 소스 장치. - 제1항에 있어서,
상기 공유 화면을 저장하는 공유 버퍼 생성부를 더 포함하는 것을 특징으로 하는 소스 장치. - 제2항에 있어서,
상기 공유 버퍼 생성부에 저장된 상기 공유 화면을 캡처하는 캡처부; 및
상기 캡처부에서 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 인코딩부를 더 포함하는 것을 특징으로 하는 소스 장치. - 제1항에 있어서,
상기 제어부는,
사용자로부터 미표시 아이템을 입력받는 미표시 아이템 등록부; 및
상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어가 상기 미표시 아이템 등록부에 등록된 미표시 아이템을 포함하는지 판단하는 미표시 아이템 판단부를 포함하는 것을 특징으로 하는 소스 장치. - 제4항에 있어서,
상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어인 것을 특징으로 하는 소스 장치. - 제1항에 있어서,
상기 소스 장치에 표시할 화면 저장하는 메인 버퍼 생성부를 더 포함하고,
상기 제어부는 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 포함한 레이어를 합성시켜 메인 화면을 형성하여 상기 메인 버퍼 생성부에 저장하고, 상기 형성된 메인 화면을 표시부를 통하여 사용자에게 제공하는 것을 특징으로 하는 소스 장치. - 소스 장치 및 적어도 하나 이상의 싱크 장치를 포함하는 선택적 화면 공유 시스템에 있어서,
상기 소스 장치는 상기 소스 장치에 표시할 화면을 형성하는 하나 이상의 레이어를 구성하는 레이어 구성부와, 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어를 합성하는 레이어 합성부와, 사용자의 명령에 따라 상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어 중에서 미표시 레이어를 결정하고, 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 제외한 레이어를 합성시켜 상기 싱크 장치에 전송할 공유 화면을 형성하는 제어부와, 상기 제어부의 명령에 따라 상기 형성된 공유 화면을 무선랜을 통해 상기 싱크 장치에 전송하는 통신부를 포함하여 구성되고,
상기 싱크 장치는 상기 소스 장치로부터 수신된 상기 공유 화면을 표시하는 것을 특징으로 하는 선택적 화면 공유 시스템. - 제7항에 있어서,
상기 소스 장치는 상기 공유 화면을 저장하는 공유 버퍼 생성부를 더 포함하는 것을 특징으로 하는 선택적 화면 공유 시스템. - 제8항에 있어서,
상기 소스 장치는,
상기 공유 버퍼 생성부에 저장된 상기 공유 화면을 캡처하는 캡처부; 및
상기 캡처부에서 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 인코딩부를 더 포함하는 것을 특징으로 하는 선택적 화면 공유 시스템. - 제7항에 있어서,
상기 제어부는,
사용자로부터 미표시 아이템을 입력받는 미표시 아이템 등록부; 및
상기 레이어 구성부에서 구성된 상기 하나 이상의 레이어가 상기 미표시 아이템 등록부에 등록된 미표시 아이템을 포함하는지 판단하는 미표시 아이템 판단부를 포함하는 것을 특징으로 하는 선택적 화면 공유 시스템. - 제10항에 있어서,
상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어인 것을 특징으로 하는 선택적 화면 공유 시스템. - 제7항에 있어서,
상기 소스 장치는,
상기 소스 장치에 표시할 화면을 저장하는 메인 버퍼 생성부를 더 포함하고,
상기 제어부는 상기 레이어 합성부를 이용하여 상기 미표시 레이어를 포함하는 레이어를 합성시켜 메인 화면을 형성하여 상기 메인 버퍼 생성부에 저장하고, 상기 형성된 메인 화면을 표시부를 통하여 사용자에게 제공하는 것을 특징으로 하는 선택적 화면 공유 시스템. - 원격의 싱크 장치를 소스 장치에 의해 표시하기 위한 방법에 있어서,
상기 소스 장치의 화면을 형성하는 하나 이상의 레이어를 구성하는 단계;
상기 구성된 하나 이상의 레이어 중에서 미표시 레이어를 제외하는 단계;
상기 미표시 레이어를 제외한 레이어를 합성시켜 공유 화면을 형성하는 단계; 및
상기 형성된 공유 화면을 무선랜을 통해 상기 싱크 장치에 전송하는 단계를 포함하는 원격의 싱크 장치를 표시하는 방법. - 제13항에 있어서,
상기 공유 화면을 상기 소스 장치의 공유 버퍼 생성부에 저장하는 단계를 더 포함하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법. - 제14항에 있어서,
상기 공유 버퍼 생성부에 저장된 상기 공유 화면을 캡처하는 단계; 및
상기 캡처된 상기 공유 화면을 상기 싱크 장치에 전송하기 위한 데이터 형식으로 인코딩하는 단계를 더 포함하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법. - 제13항에 있어서,
상기 소스 장치에서 사용자로부터 미표시 아이템을 입력받는 단계; 및
상기 구성된 하나 이상의 레이어가 상기 입력된 미표시 아이템을 포함하는지 판단하는 단계를 더 포함하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법. - 제16항에 있어서,
상기 미표시 아이템은 어플리케이션 또는 어플리케이션을 구성하는 레이어인 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법. - 제13항에 있어서,
상기 구성된 하나 이상의 레이어를 합성시켜 메인 화면을 형성하는 단계; 및
상기 형성된 메인 화면을 상기 소스 장치의 표시부를 통하여 사용자에게 제공하는 단계를 더 포함하는 것을 특징으로 하는 원격의 싱크 장치를 표시하는 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120023831A KR101314472B1 (ko) | 2012-03-08 | 2012-03-08 | 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 |
US13/674,501 US20130236125A1 (en) | 2012-03-08 | 2012-11-12 | Source device and method for selectively displaying an image |
CN2012105939873A CN103310761A (zh) | 2012-03-08 | 2012-12-31 | 用于选择性地显示图像的源设备和方法 |
JP2013021345A JP5411369B2 (ja) | 2012-03-08 | 2013-02-06 | 遠隔のシンクデバイスにソースデバイスの画像を表示する方法、このためのソースデバイス及びシステム |
EP13157813.0A EP2637415A3 (en) | 2012-03-08 | 2013-03-05 | Source device and method for selectively displaying an image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120023831A KR101314472B1 (ko) | 2012-03-08 | 2012-03-08 | 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130102752A KR20130102752A (ko) | 2013-09-23 |
KR101314472B1 true KR101314472B1 (ko) | 2013-10-07 |
Family
ID=47519829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120023831A KR101314472B1 (ko) | 2012-03-08 | 2012-03-08 | 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20130236125A1 (ko) |
JP (1) | JP5411369B2 (ko) |
KR (1) | KR101314472B1 (ko) |
CN (1) | CN103310761A (ko) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9230139B2 (en) * | 2013-03-14 | 2016-01-05 | Intel Corporation | Selective content sharing on computing devices |
CN103247068B (zh) * | 2013-04-03 | 2016-03-30 | 上海晨思电子科技有限公司 | 一种渲染方法和装置 |
US9225799B1 (en) * | 2013-05-21 | 2015-12-29 | Trend Micro Incorporated | Client-side rendering for virtual mobile infrastructure |
KR102084633B1 (ko) * | 2013-09-17 | 2020-03-04 | 삼성전자주식회사 | 화면 미러링 방법 및 그에 따른 소스 기기 |
CN104765594B (zh) * | 2014-01-08 | 2018-07-31 | 联发科技(新加坡)私人有限公司 | 一种显示图形用户界面的方法及装置 |
CN103826011B (zh) * | 2014-03-10 | 2018-10-12 | 联想(北京)有限公司 | 一种信息处理方法、装置和电子设备 |
CN103841460B (zh) * | 2014-03-17 | 2017-06-27 | 联想(北京)有限公司 | 一种图像数据传输方法及电子设备 |
KR101980414B1 (ko) * | 2015-02-06 | 2019-08-29 | 전자부품연구원 | 확장형 비디오 렌더링 방법 및 시스템 |
CN104751084A (zh) * | 2015-03-16 | 2015-07-01 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104836915A (zh) * | 2015-05-19 | 2015-08-12 | 努比亚技术有限公司 | 屏幕投影显示的处理方法、装置及移动终端 |
KR101664947B1 (ko) * | 2015-09-25 | 2016-10-19 | 주식회사 텔레포트나인 | 레이어 공유 시스템 |
KR20170096364A (ko) * | 2016-02-16 | 2017-08-24 | 삼성전자주식회사 | 디스플레이 화면 구성 방법 및 이를 수행하는 전자 장치 |
CN107368748B (zh) * | 2016-05-12 | 2022-10-28 | 中兴通讯股份有限公司 | 一种视图生成方法、装置和终端 |
CN107886001A (zh) * | 2016-09-29 | 2018-04-06 | 努比亚技术有限公司 | 一种投影数据处理装置、方法及投影数据分享设备 |
JP2018163685A (ja) * | 2018-06-08 | 2018-10-18 | キヤノン株式会社 | 電子機器及び画面データ転送方法 |
KR102130498B1 (ko) | 2018-10-18 | 2020-07-07 | 코스맥스 주식회사 | 쿨링 효과가 향상된 화장료 조성물 및 이의 제조방법 |
CN116055773A (zh) | 2019-12-17 | 2023-05-02 | 华为技术有限公司 | 一种多屏协同方法、系统及电子设备 |
CN114691063A (zh) * | 2020-12-29 | 2022-07-01 | 中兴通讯股份有限公司 | 一种屏幕采集方法、终端及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010500801A (ja) * | 2006-08-11 | 2010-01-07 | アイピーワイヤレス,インコーポレイテッド | サービスセンタ、ユーザ装置、方法及びコンピュータ読取可能な媒体 |
JP2011248761A (ja) * | 2010-05-28 | 2011-12-08 | Optim Corp | 遠隔画面共有を実行する方法、ユーザ端末、プログラム及びシステム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6212232B1 (en) * | 1998-06-18 | 2001-04-03 | Compaq Computer Corporation | Rate control and bit allocation for low bit rate video communication applications |
JP4517827B2 (ja) * | 2004-11-22 | 2010-08-04 | 株式会社日立製作所 | 画面共有システム及び情報処理装置 |
CN100420300C (zh) * | 2004-12-24 | 2008-09-17 | 北京中星微电子有限公司 | 一种多屏幕显示方法与装置 |
JP4645473B2 (ja) * | 2006-02-21 | 2011-03-09 | 富士ゼロックス株式会社 | 電子会議支援プログラム、電子会議支援方法、電子会議制御装置 |
WO2008016083A1 (fr) * | 2006-08-03 | 2008-02-07 | Panasonic Corporation | Dispositif et système de présentation d'informations en superposition |
JP4873369B2 (ja) * | 2007-02-05 | 2012-02-08 | 住友電気工業株式会社 | 画像表示/処理用端末、システム、プログラム、及び、記憶媒体 |
JP2008245005A (ja) * | 2007-03-28 | 2008-10-09 | Canon Inc | 電子描画装置、その制御方法、及びコンピュータプログラム |
US9078024B2 (en) * | 2007-12-18 | 2015-07-07 | Broadcom Corporation | Video processing system with user customized graphics for use with layered video coding and methods for use therewith |
WO2011117824A1 (en) * | 2010-03-22 | 2011-09-29 | Amimon Ltd. | Methods circuits devices and systems for wireless transmission of mobile communication device display information |
JP5545084B2 (ja) * | 2010-07-08 | 2014-07-09 | ソニー株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN101977324A (zh) * | 2010-11-09 | 2011-02-16 | 青岛海信宽带多媒体技术有限公司 | 一种实现屏幕共享的方法 |
-
2012
- 2012-03-08 KR KR1020120023831A patent/KR101314472B1/ko active IP Right Grant
- 2012-11-12 US US13/674,501 patent/US20130236125A1/en not_active Abandoned
- 2012-12-31 CN CN2012105939873A patent/CN103310761A/zh active Pending
-
2013
- 2013-02-06 JP JP2013021345A patent/JP5411369B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010500801A (ja) * | 2006-08-11 | 2010-01-07 | アイピーワイヤレス,インコーポレイテッド | サービスセンタ、ユーザ装置、方法及びコンピュータ読取可能な媒体 |
JP2011248761A (ja) * | 2010-05-28 | 2011-12-08 | Optim Corp | 遠隔画面共有を実行する方法、ユーザ端末、プログラム及びシステム |
Also Published As
Publication number | Publication date |
---|---|
KR20130102752A (ko) | 2013-09-23 |
JP2013186892A (ja) | 2013-09-19 |
US20130236125A1 (en) | 2013-09-12 |
CN103310761A (zh) | 2013-09-18 |
JP5411369B2 (ja) | 2014-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101314472B1 (ko) | 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템 | |
US11973613B2 (en) | Presenting overview of participant conversations within a virtual conferencing system | |
US11909820B2 (en) | Method and apparatus for execution of applications in a cloud system | |
US11968055B2 (en) | Assigning participants to rooms within a virtual conferencing system | |
US11943072B2 (en) | Providing a room preview within a virtual conferencing system | |
US12061833B2 (en) | Multi-window display method, electronic device, and system | |
CA2835099C (en) | Method and apparatus for sharing data between different network devices | |
TWI585678B (zh) | 點對點動態可附加邏輯顯示器 | |
US20140281896A1 (en) | Screencasting for multi-screen applications | |
KR101815158B1 (ko) | Mr 콘텐츠 제작 장치 및 그 방법 | |
JP6861287B2 (ja) | 映像のための効果共有方法およびシステム | |
EP3076588A1 (en) | Communication management system, communication terminal, communication system, communication control method, and carrier means | |
US20140075341A1 (en) | Providing Feedback for Screen Sharing | |
TWI845492B (zh) | 程式、資訊處理方法及資訊處理裝置 | |
WO2021248988A1 (zh) | 跨终端录屏方法、终端设备及存储介质 | |
KR102250135B1 (ko) | 추천 동영상 제공 방법 및 이를 위한 장치 | |
JP2017062645A (ja) | 画像配信システム、画像配信方法及びプログラム | |
CN112004049B (zh) | 双屏异显方法、装置和电子设备 | |
CN110083321B (zh) | 内容展示方法及装置、智能投屏终端和可读存储介质 | |
EP2637415A2 (en) | Source device and method for selectively displaying an image | |
US20240160340A1 (en) | Electronic apparatus and method for obtaining a capture image thereof | |
US20230113024A1 (en) | Configuring broadcast media quality within a virtual conferencing system | |
KR20130030124A (ko) | 그래픽 분할 실행을 이용한 3d 콘텐츠 제공 시스템 및 방법 | |
US12069409B2 (en) | In-person participant interaction for hybrid event | |
WO2024078306A1 (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: 20160901 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170828 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180903 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190826 Year of fee payment: 7 |