KR20240043034A - Apparatus for expanding screen in an electronic device and operating method therefor - Google Patents

Apparatus for expanding screen in an electronic device and operating method therefor Download PDF

Info

Publication number
KR20240043034A
KR20240043034A KR1020220140931A KR20220140931A KR20240043034A KR 20240043034 A KR20240043034 A KR 20240043034A KR 1020220140931 A KR1020220140931 A KR 1020220140931A KR 20220140931 A KR20220140931 A KR 20220140931A KR 20240043034 A KR20240043034 A KR 20240043034A
Authority
KR
South Korea
Prior art keywords
mirroring
display
extended
display area
image
Prior art date
Application number
KR1020220140931A
Other languages
Korean (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 PCT/KR2023/009692 priority Critical patent/WO2024071606A1/en
Publication of KR20240043034A publication Critical patent/KR20240043034A/en

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
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Abstract

본 개시의 실시예들은 외부 전자 장치와의 연동에 의하여 미러링 화면을 표시하는 전자 장치 및 그 운영 방법에 관한 것이다. 이를 위한, 외부 디바이스는 미러링 데이터를 획득하고, 상기 획득한 미러링 데이터를 사용하여 디스플레이에서 할당된 제 1 표시영역에 미러링 이미지를 표시할 수 있다. 상기 외부 디바이스는 상기 미러링 이미지를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터로부터 확장 미러링 데이터를 획득하고, 사용자의 제스처에 따라 상기 디스플레이에서 상기 제 1 표시영역 외에 추가로 할당된 적어도 하나의 확장 표시 영역에 상기 확장 미러링 데이터를 사용하여 확장 미러링 이미지를 표시할 수 있다.Embodiments of the present disclosure relate to an electronic device that displays a mirroring screen by linking with an external electronic device and a method of operating the same. For this purpose, the external device can acquire mirroring data and display a mirrored image on the first display area allocated on the display using the acquired mirroring data. The external device obtains extended mirroring data from previous mirroring data that has been used to display the mirrored image, and displays at least one extended display additionally allocated in addition to the first display area on the display according to a user's gesture. An extended mirroring image can be displayed in the area using the extended mirroring data.

Figure P1020220140931
Figure P1020220140931

Description

전자 장치에서 화면 확장 장치 및 그 운영 방법{APPARATUS FOR EXPANDING SCREEN IN AN ELECTRONIC DEVICE AND OPERATING METHOD THEREFOR}Screen expansion device and operating method thereof in electronic device {APPARATUS FOR EXPANDING SCREEN IN AN ELECTRONIC DEVICE AND OPERATING METHOD THEREFOR}

본 개시(disclosure)의 실시예들은 전자 장치에서 화면 확장 장치 및 그 운영 방법에 관한 것이다.Embodiments of the present disclosure relate to a screen expansion device and a method of operating the same in an electronic device.

디지털 디바이스는 특정 기능 또는 서비스를 제공하는 다양한 응용프로그램(application, 이하 “앱(app)”이라 칭함)을 설치할 수 있다. 상기 디지털 디바이스는 사용자의 요청에 응답하여 설치된 앱을 실행할 수 있다. 상기 디지털 디바이스는 앱의 실행에 따른 정보를 디스플레이를 통해 표시할 수 있다. 상기 디지털 디바이스는 사용자가 휴대하기 용이한 스마트폰(smart phone), 모바일 폰(mobile phone) 또는 태블릿 디바이스(tablet device)와 같이 전자 장치가 존재할 수 있다. Digital devices can install various applications (hereinafter referred to as “apps”) that provide specific functions or services. The digital device may execute an installed app in response to a user's request. The digital device can display information according to the execution of the app through a display. The digital device may be an electronic device that is easy for a user to carry, such as a smart phone, mobile phone, or tablet device.

상기 휴대하기 용이한 디지털 디바이스는 디자인 또는 사용자가 파지하기 용이하도록, 크기를 줄이기 위한 노력이 이루어지고 있다. 이로 인해, 디지털 디바이스는 텔레비전 또는 모니터와 같은 디스플레이 장치에 비해 상대적으로 작은 화면 크기를 가질 수 있다. 상기 디스플레이 장치에 비해 상대적으로 작은 화면 크기를 갖는 디지털 디바이스는 영화, 드라마 또는 게임과 같이 동영상을 제공하는 멀티미디어 컨텐츠를 이용하는 경우, 사용자의 만족감을 반감시킬 수 있다.Efforts are being made to reduce the size of the portable digital device so that it can be designed or easily held by the user. Because of this, digital devices may have a relatively small screen size compared to display devices such as televisions or monitors. A digital device with a relatively small screen size compared to the display device may halve the user's satisfaction when using multimedia content that provides moving images, such as movies, dramas, or games.

본 개시의 일 실시예는, 디지털 디바이스의 화면을 미러링하는 미러링 시스템에서 사용자와의 인터랙션을 통해 미러링 화면을 확장하는 전자 장치 및 그 운영 방법을 제공할 수 있다.An embodiment of the present disclosure can provide an electronic device that expands the mirroring screen through interaction with a user in a mirroring system that mirrors the screen of a digital device, and a method of operating the same.

일 실시예에 따른, 디바이스는, 표시창에 미러링 이미지를 표시하도록 구성된 디스플레이 모듈과, 외부 디바이스와 통신을 수행하도록 구성된 통신 모듈과, 사용자의 제스처를 감지하고, 상기 감지된 사용자의 제스처에 대응한 센싱 신호를 생성하도록 구성된 센서 모듈과, 하나 또는 복수의 버퍼 영역이 할당되도록 구성된 메모리 및 상기 디스플레이 모듈, 상기 통신 모듈 또는 상기 메모리와 전기적으로 연결되고, 상기 디스플레이 모듈, 상기 통신 모듈 또는 상기 메모리의 동작을 제어하도록 구성된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서가, 상기 통신 모듈을 통해 상기 외부 디바이스로부터 미러링 데이터를 수신하고, 상기 미러링 데이터를 사용하여 상기 표시창에서 할당된 제 1 표시영역에 미러링 이미지가 표시되도록 상기 디스플레이 모듈을 제어하고, 상기 센서 모듈에 의해 감지된 사용자 제스처에 따라 상기 표시창에서 상기 제 1 표시영역 외에 추가로 할당된 적어도 하나의 확장 표시 영역에 확장 미러링 데이터를 사용하여 확장 미러링 이미지가 표시되도록 상기 디스플레이 모듈을 제어하도록 구성되며, 여기서, 상기 확장 미러링 데이터는 상기 미러링 이미지를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터로부터 획득할 수 있다.According to one embodiment, a device includes a display module configured to display a mirrored image on a display window, a communication module configured to communicate with an external device, detecting a user's gesture, and performing sensing corresponding to the detected user's gesture. A sensor module configured to generate a signal, a memory configured to be allocated one or a plurality of buffer areas, and electrically connected to the display module, the communication module, or the memory, and perform the operation of the display module, the communication module, or the memory. At least one processor configured to control, wherein the at least one processor receives mirroring data from the external device through the communication module, and uses the mirroring data to perform mirroring on a first display area allocated in the display window. Controlling the display module to display an image, and performing extended mirroring using extended mirroring data in at least one extended display area additionally allocated in addition to the first display area in the display window according to a user gesture detected by the sensor module. and configured to control the display module to display an image, wherein the extended mirroring data can be obtained from previous mirroring data that has been used to display the mirrored image.

일 실시예에 따른, 전자 장치에서의 디스플레이 방법은, 미러링 데이터를 획득하는 동작을 포함할 수 있다. 상기 디스플레이 방법은, 상기 획득한 미러링 데이터를 사용하여 디스플레이에서 할당된 제 1 표시영역에 미러링 이미지를 표시하는 동작을 포함할 수 있다. 상기 디스플레이 방법은, 상기 미러링 이미지를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터로부터 확장 미러링 데이터를 획득하는 동작을 포함할 수 있다. 상기 디스플레이 방법은, 사용자의 제스처에 따라 상기 디스플레이에서 상기 제 1 표시영역 외에 추가로 할당된 적어도 하나의 확장 표시 영역에 상기 확장 미러링 데이터를 사용하여 확장 미러링 이미지를 표시하는 동작을 포함할 수 있다.According to one embodiment, a display method in an electronic device may include an operation of acquiring mirroring data. The display method may include displaying a mirrored image on a first display area allocated on a display using the obtained mirroring data. The display method may include obtaining extended mirroring data from previous mirroring data that has been used to display the mirrored image. The display method may include displaying an extended mirroring image using the extended mirroring data in at least one additionally allocated extended display area in addition to the first display area on the display according to a user's gesture.

본 개시의 일 실시예에 의하면, 미러링 화면을 제공하는 외부 디바이스에서 사용자와의 인터랙션을 통해 미러링 화면으로 제공되었던 미러링 이미지를 재활용하여 확장 미러링 화면을 제공함으로써, 무선 채널의 트래픽 또는 전력 소비를 줄일 수 있다. According to an embodiment of the present disclosure, an external device that provides a mirroring screen recycles the mirroring image that was provided as a mirroring screen through interaction with the user to provide an extended mirroring screen, thereby reducing traffic or power consumption of the wireless channel. there is.

본 개시에서 이루고자 하는 기술적 과제는 앞에서 언급한 기술적 과제로 제한되지 않으며, 당해 기술분야의 통상의 지식을 가진 자에 의해 본 개시의 예시적 실시예들로부터 앞에서 언급되지 않은 다른 기술적 과제들이 도출될 수 있다.The technical problems to be achieved in the present disclosure are not limited to the above-mentioned technical problems, and other technical problems not mentioned above may be derived from the exemplary embodiments of the present disclosure by those skilled in the art. there is.

본 개시의 예시적 실시예들에서 얻을 수 있는 효과는 이하의 기재로부터 본 개시의 예시적 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 개시의 예시적 실시예들을 실시함에 따른 의도하지 아니한 효과들 역시 본 개시의 예시적 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.Effects that can be obtained from the exemplary embodiments of the present disclosure can be clearly derived and understood by those skilled in the art from the following description. That is, unintended effects resulting from implementing the exemplary embodiments of the present disclosure may also be derived by those skilled in the art from the exemplary embodiments of the present disclosure.

도 1은 일 실시예에 따른, 미러링 시스템에서 수행하는 미러링 기능을 개념적으로 설명하기 위한 도면이다.
도 2는 일 실시예에 따른, 미러링 시스템에서 미러링 기능을 위한 절차를 도시한 도면이다.
도 3은 일 실시예에 따른, 화면 미러링을 지원하기 위한 미러링 시스템의 구성도이다.
도 4는 일 실시예에 따라, 화면 미러링을 지원하는 소스 디바이스의 기능 구성을 도시한 도면이다.
도 5는 일 실시예에 따라, 화면 미러링을 지원하는 외부 디바이스의 기능 구성을 도시한 도면이다.
도 6은 일 실시예에 따른, 외부 디바이스에서 가상 공간의 화면 표시 예시도이다.
도 7은 일 실시예에 따른, 미러링 시스템의 외부 디바이스에서 미러링 화면을 확장하는 예시도이다.
도 8은 일 실시예에 따른, 미러링 시스템에서 미러링 기능을 제공하기 위한 처리 절차를 도시한 도면이다.
도 9는 일 실시예에 따른, 미러링 시스템에서 미러링 및 이벤트 처리 동작을 위한 처리 절차를 도시한 도면이다.
도 10a 및 도 10b는 일 실시예에 따른, 미러링 시스템에서 외부 디바이스가 미러링 이미지를 표시하기 위한 제어 흐름도이다.
도 11a는 일 실시예에 따른, 미러링 기능을 지원하는 외부 디바이스에서의 미러링 화면을 확장하는 예시도이다.
도 11b는 일 실시예에 따른, 미러링 기능을 지원하는 외부 디바이스에서의 미러링 화면을 확장하는 예시도이다.
도 12는 일 실시예에 따른, 미러링 시스템에서 3차원 미러링 이미지를 이용하여 미러링 화면을 확장하는 예시도이다.
도 13은 일 실시예에 따른, 미러링 시스템을 구성하는 외부 디바이스에서 확장 표시 영역에서의 인터랙션을 제공하는 예시도이다.
도 14는 일 실시예에 따른, 미러링 시스템에서 확장 표시 영역을 관리하기 위한 히스토리 계층도이다.
도 15는 일 실시예에 따른, 미러링 시스템에서 확장 표시 영역을 자체적으로 운영하는 예시도이다.
도 16은 일 실시예에 따른, 외부 디바이스에서 미러링 이미지를 시간 공간에서 확장한 예를 도시한 도면이다.
도 17은 일 실시예에 따른, 외부 디바이스에서 미러링 이미지를 시간 공간에서 확장하기 위한 제어 흐름도이다.
도 18은 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
FIG. 1 is a diagram conceptually illustrating a mirroring function performed in a mirroring system according to an embodiment.
FIG. 2 is a diagram illustrating a procedure for a mirroring function in a mirroring system, according to an embodiment.
Figure 3 is a configuration diagram of a mirroring system for supporting screen mirroring, according to an embodiment.
FIG. 4 is a diagram illustrating the functional configuration of a source device supporting screen mirroring, according to an embodiment.
FIG. 5 is a diagram illustrating the functional configuration of an external device supporting screen mirroring, according to an embodiment.
Figure 6 is an example of a screen display of a virtual space on an external device, according to an embodiment.
Figure 7 is an example of expanding a mirroring screen on an external device of a mirroring system, according to an embodiment.
FIG. 8 is a diagram illustrating a processing procedure for providing a mirroring function in a mirroring system, according to an embodiment.
FIG. 9 is a diagram illustrating processing procedures for mirroring and event processing operations in a mirroring system, according to an embodiment.
10A and 10B are control flowcharts for an external device to display a mirrored image in a mirroring system, according to an embodiment.
FIG. 11A is an example diagram of expanding a mirroring screen in an external device that supports a mirroring function, according to an embodiment.
FIG. 11B is an example diagram of expanding a mirroring screen in an external device that supports a mirroring function, according to an embodiment.
Figure 12 is an example diagram of expanding a mirroring screen using a 3D mirroring image in a mirroring system, according to an embodiment.
FIG. 13 is an example diagram showing interaction in an extended display area from an external device constituting a mirroring system, according to an embodiment.
Figure 14 is a history hierarchy diagram for managing an extended display area in a mirroring system, according to an embodiment.
FIG. 15 is an example diagram of independently operating an extended display area in a mirroring system, according to an embodiment.
FIG. 16 is a diagram illustrating an example of expanding a mirroring image in time and space in an external device, according to an embodiment.
FIG. 17 is a control flowchart for expanding a mirroring image in time and space in an external device, according to an embodiment.
18 is a block diagram of an electronic device in a network environment, according to various embodiments.
In relation to the description of the drawings, identical or similar reference numerals may be used for identical or similar components.

이하에서는 도면을 참조하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 도면의 설명과 관련하여, 동일하거나 유사한 구성요소에 대해서는 동일하거나 유사한 참조 부호가 사용될 수 있다. 또한, 도면 및 관련된 설명에서는, 잘 알려진 기능 및 구성에 대한 설명이 명확성과 간결성을 위해 생략될 수 있다.Hereinafter, with reference to the drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art can easily practice them. However, the present disclosure may be implemented in many different forms and is not limited to the embodiments described herein. In relation to the description of the drawings, identical or similar reference numerals may be used for identical or similar components. Additionally, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and brevity.

도 1은 일 실시예에 따른, 미러링 시스템(1)에서 수행하는 미러링 기능을 개념적으로 설명하기 위한 도면이다.FIG. 1 is a diagram conceptually illustrating a mirroring function performed by the mirroring system 1 according to an embodiment.

도 1을 참조하면, 미러링 시스템(1)은 적어도 두 개의 전자 장치를 포함할 수 있다. 상기 적어도 두 개의 전자 장치는 제1 전자 장치인 소스 디바이스(10)와 적어도 하나의 제2 전자 장치인 외부 디바이스(20)를 포함할 수 있다. Referring to FIG. 1, the mirroring system 1 may include at least two electronic devices. The at least two electronic devices may include a source device 10, which is a first electronic device, and an external device 20, which is at least one second electronic device.

상기 소스 디바이스(10)는 미러링 기능에 따른 미러링 이미지를 생성하고, 상기 미러링 이미지를 상기 외부 디바이스(20)로 제공할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 상기 외부 디바이스(20)로부터의 앱 실행 요청에 응답하여 가상 디스플레이를 생성하고, 상기 가상 디스플레이에서 대상 앱을 실행하여 상기 외부 디바이스(20)로 미러링할 이미지(이하 '미러링 이미지'라 칭함)를 획득할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 미러링 이미지를 미러링 데이터에 포함시켜 상기 외부 디바이스(20)로 전송할 수 있다. 상기 미러링 데이터는 상기 미러링 이미지를 미러링하기 위해 사용될 데이터 (이하 '미러링 메타 데이터'라 칭함)를 포함할 수 있다. 상기 미러링 메타 데이터는, 예를 들어, 상기 미러링 이미지의 크기, 해상도, DPI 또는 표시 위치와 같은 정보를 포함할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 앱과 같은 프로그램이 설치되거나, 실행될 수 있는 스마트폰 또는 태블릿 PC와 같은 디지털 디바이스일 수 있다. The source device 10 may generate a mirrored image according to the mirroring function and provide the mirrored image to the external device 20. For example, the source device 10 creates a virtual display in response to an app execution request from the external device 20, executes the target app on the virtual display, and mirrors it to the external device 20. An image (hereinafter referred to as a 'mirroring image') can be acquired. For example, the external device 20 may include a mirroring image in mirroring data and transmit it to the external device 20. The mirroring data may include data to be used to mirror the mirroring image (hereinafter referred to as 'mirroring metadata'). The mirroring metadata may include, for example, information such as size, resolution, DPI, or display position of the mirrored image. The source device 10 may be, for example, a digital device such as a smartphone or tablet PC on which a program such as an app can be installed or executed.

상기 외부 디바이스(20)는 미러링 기능을 위하여 상기 소스 디바이스(10)에서 제공하는 미러링 이미지를 표시할 영역 (이하 '미러링 표시 영역'이라 칭함)을 확장하는 화면 확장 장치일 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 자체 디스플레이를 구비한 웨어러블 디바이스(wearable device), 스마트폰(smart phone), 태블릿 PC 또는 개인용 컴퓨터와 같은 디지털 디바이스일 수 있다. 상기 웨어러블 디바이스는 사용자의 신체 또는 의류에 착/탈이 가능한 디지털 전자 장치일 수 있다. 상기 웨어러블 디바이스는, 예를 들어, 티셔츠, 안경, 팔찌, 시계, 신발과 같이 다양한 형태를 가질 수 있다. 예시적으로, 웨어러블 디바이스는 사용자가 손목에 착용할 수 있는 스마트 워치(smart watch), 사용자가 귀에 작용할 수 있는 블루투스 이어폰(Bluetooth earphone) 또는 사용자가 안경과 같이 착용할 수 있는 스마트 글래스(smart glasses)와 같은 머리 착용 디바이스 (HMD: head mounted display)를 포함할 수 있다. 상기 외부 디바이스(20) 중 하나인 스마트 글래스는 확장 현실 (eXtended Reality) 기술을 기반으로 가공된 공간에 원하는 이미지를 표시할 수 있다. 상기 확장 현실 기술을 기반으로 가공된 공간(예: 미러링 표시 영역)은, 예를 들어, 현실 이미지를 표시할 수 있는 외부 디바이스(20)의 디스플레이 영역 (또는 표시창)에서 가상 이미지 (예: 미러링 이미지)를 표시할 일부 또는 전체 디스플레이 영역일 수 있다. 상기 확장 현실 기술은 가상 현실 (VR: virtual reality), 증강 현실 (AR: augmented reality) 또는 혼합 현실 (MR: mixed reality) 중 적어도 하나를 지원하는 기술일 수 있다. 상기 미러링 화면은 소스 디바이스(10)가 가상 디스플레이에서 실행한 앱의 화면을 확장할 수 있다. 일 예로, 미러링 기능에서의 화면 확장은, 적용 기술에 따라, VR 확장 화면, AR 확장 화면 또는 MR 확장 화면을 포함할 수 있다.The external device 20 may be a screen expansion device that expands the area to display the mirrored image provided by the source device 10 (hereinafter referred to as 'mirroring display area') for the mirroring function. The external device 20 may be, for example, a digital device such as a wearable device with its own display, a smart phone, a tablet PC, or a personal computer. The wearable device may be a digital electronic device that can be attached to or removed from the user's body or clothing. The wearable device may have various forms, such as, for example, T-shirts, glasses, bracelets, watches, and shoes. By way of example, a wearable device may be a smart watch that the user can wear on the wrist, a Bluetooth earphone that the user can wear on the ear, or smart glasses that the user can wear like glasses. It may include a head mounted display (HMD) such as. Smart glasses, one of the external devices 20, can display a desired image in a processed space based on extended reality (eXtended Reality) technology. The space (e.g., mirroring display area) processed based on the extended reality technology is, for example, a virtual image (e.g., mirroring image) in the display area (or display window) of the external device 20 that can display a real image. ) may be part or the entire display area to display. The extended reality technology may be a technology that supports at least one of virtual reality (VR), augmented reality (AR), or mixed reality (MR). The mirroring screen may expand the screen of the app executed by the source device 10 on the virtual display. As an example, the screen expansion in the mirroring function may include a VR expansion screen, an AR expansion screen, or an MR expansion screen, depending on the applied technology.

상기 소스 디바이스(10)와 상기 외부 디바이스(20)는 소정 통신 방식을 지원하는 프로토콜 (이하 '통신 프로토콜'이라 칭함)을 기반으로 미러링 기능을 위한 연결이 이루어질 수 있다. 상기 미러링 기능을 위한 연결은, 예를 들어, 미러링 기능에 따른 데이터(예: 도 2의 미러링 데이터(31) 또는 이벤트 정보(33))를 송신하거나, 수신할 무선 채널을 할당할 수 있다. 상기 통신 프로토콜은, 예들 들어, 근거리 통신 네트워크(예: 도 18의 제 1 네트워크(1898)) 또는 원거리 통신 네트워크(예: 도 18의 제2 네트워크(1899)와 같은 네트워크 환경에서 통신을 수행하기 위해 마련된 프로토콜일 수 있다. 상기 근거리 통신 네트워크(1898)를 위해 마련된 프로토콜은, 예를 들어, 블루투스, WiFi direct 또는 IrDA 등을 포함할 수 있다. 상기 원거리 통신 네트워크(1899)는, 예를 들어, 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)가 포함될 수 있다. The source device 10 and the external device 20 may be connected for a mirroring function based on a protocol (hereinafter referred to as 'communication protocol') that supports a certain communication method. The connection for the mirroring function may, for example, allocate a wireless channel to transmit or receive data according to the mirroring function (e.g., mirroring data 31 or event information 33 in FIG. 2). The communication protocol is used to perform communication in a network environment, for example, a short-range communication network (e.g., the first network 1898 in FIG. 18) or a long-distance communication network (e.g., the second network 1899 in FIG. 18). It may be a prepared protocol. The protocol prepared for the short-range communication network 1898 may include, for example, Bluetooth, WiFi direct, or IrDA. The long-distance communication network 1899 may include, for example, legacy telecommunication networks such as cellular networks, 5G networks, next-generation communications networks, the Internet, or computer networks (e.g., LANs or WANs).

상기 소스 디바이스(10)와 상기 외부 디바이스(20)는 연결 절차를 수행함으로써, 상대방 디바이스로 데이터(예: 도 2의 미러링 데이터(31) 또는 이벤트 정보(33))를 전송하거나, 또는 상대방 디바이스로부터 데이터(예: 미러링 데이터(31) 또는 이벤트 정보(33))를 수신할 수 있는 무선 채널이 형성된 상태에 진입할 수 있다. 상기 연결 절차는, 예를 들어, 상기 외부 디바이스(20)가 상기 소스 디바이스(10)로 미러링 기능을 요청함에 의해 트리거(trigger)될 수 있다. 하지만, 상기 외부 디바이스(20)에 의한 미러링 기능 요청은, 예를 들어, 연결 절차에 의해 상기 소스 디바이스(10)와 무선 채널이 형성된 후에 이루어질 수도 있다.By performing a connection procedure, the source device 10 and the external device 20 transmit data (e.g., mirroring data 31 or event information 33 in FIG. 2) to the other device, or transmit data from the other device. A state may be entered in which a wireless channel capable of receiving data (e.g., mirroring data 31 or event information 33) is formed. The connection procedure may be triggered, for example, by the external device 20 requesting a mirroring function from the source device 10. However, the mirroring function request by the external device 20 may be made, for example, after a wireless channel is established with the source device 10 through a connection procedure.

상기 소스 디바이스(10)는 연결 절차에 의해 할당된 무선 채널을 통해 상기 외부 디바이스(20)로 미러링 기능(30)를 위한 미러링 관련 데이터를 전송하거나, 수신할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 미러링 기능을 위한 미러링 데이터 (예: 도 2의 미러링 데이터(31))를 상기 외부 디바이스(20)로 전송할 수 있다. 상기 미러링 데이터(31)는, 예를 들어, 개별 레이아웃이나 코드, 기능 단위로 전달되는 것이 아니라, 상기 소스 디바이스(10)의 가상 디스플레이에 표시되는 화면 자체에 대한 이미지 데이터를 그대로 전달할 수 있다.The source device 10 may transmit or receive mirroring-related data for the mirroring function 30 to the external device 20 through a wireless channel allocated by a connection procedure. For example, the source device 10 may transmit mirroring data for a mirroring function (e.g., mirroring data 31 in FIG. 2) to the external device 20. For example, the mirroring data 31 may not be transmitted as an individual layout, code, or function unit, but rather as image data for the screen itself displayed on the virtual display of the source device 10.

상기 외부 디바이스(20)는, 예를 들어, 사용자와의 인터랙션(interaction)(예: 도 2의 인터랙션(25))을 통해 획득한 이벤트 정보(예: 도 2의 이벤트 정보(33))를 상기 소스 디바이스(10)로 전송할 수 있다. 사용자는 인터랙션(25)을 통해 확장된 공간(예: 도 2의 미러링 표시 영역(23))에 표시될 화면을 제어할 수 있다. 상기 인터랙션(25)은, 예를 들어, 사용자에 의한 손의 움직임을 추적 (hand tracking)하거나, 또는 사용자의 시선을 추적 (eye tracking)하는 것에 의해 수행될 수 있다.For example, the external device 20 may store event information (e.g., event information 33 in FIG. 2) obtained through interaction with a user (e.g., interaction 25 in FIG. 2). It can be transmitted to the source device 10. The user can control the screen to be displayed in the expanded space (eg, the mirroring display area 23 in FIG. 2) through the interaction 25. The interaction 25 may be performed, for example, by tracking hand movements by the user (hand tracking) or tracking the user's gaze (eye tracking).

상기 외부 디바이스(20)는 상기 소스 디바이스(10)로부터 제공된 미러링 데이터를 사용하여 디스플레이(예: 도 3의 디스플레이 모듈(210))에 미러링 기능을 위해 마련한 표시 영역(예: 도 2의 미러링 표시 영역(23)) 전체 또는 일부에 미러링 이미지를 표시할 수 있다. 상기 외부 디바이스(20)에서의 미러링 화면은 상기 미러링 표시 영역(23)의 전체 또는 일부에 미러링 이미지가 표시된 화면일 수 있다.The external device 20 uses the mirroring data provided from the source device 10 to display a display area (e.g., the mirroring display area in FIG. 2) prepared for the mirroring function on the display (e.g., the display module 210 in FIG. 3). (23)) A mirrored image can be displayed in whole or in part. The mirroring screen on the external device 20 may be a screen in which a mirroring image is displayed on all or part of the mirroring display area 23 .

일 예에 따르면, 상기 외부 디바이스(20)는 제 1 표시 영역(예: 도 6의 제 1 표시영역(620)) 및/또는 적어도 하나의 확장 표시 영역(예: 도 6의 확장 표시 영역(640))을 포함하도록 미러링 표시 영역(23)을 할당할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(예: 도 6의 제 1 표시영역(620))을 포함하도록 미러링 표시 영역(23)을 할당할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 적어도 하나의 확장 표시 영역(예: 도 6의 확장 표시 영역(640))을 포함하도록 미러링 표시 영역(23)을 할당할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(예: 도 6의 제 1 표시영역(620))과 적어도 하나의 확장 표시 영역(예: 도 6의 확장 표시 영역(640))을 포함하도록 미러링 표시 영역(23)을 할당할 수 있다.According to one example, the external device 20 displays a first display area (e.g., first display area 620 of FIG. 6) and/or at least one extended display area (e.g., extended display area 640 of FIG. 6). )) The mirroring display area 23 can be allocated to include. For example, the external device 20 may allocate the mirroring display area 23 to include a first display area (eg, the first display area 620 in FIG. 6). For example, the external device 20 may allocate the mirroring display area 23 to include at least one extended display area (eg, the extended display area 640 in FIG. 6). For example, the external device 20 includes a first display area (e.g., first display area 620 in FIG. 6) and at least one extended display area (e.g., extended display area 640 in FIG. 6). The mirroring display area 23 can be allocated to include.

일 예에 따르면, 상기 외부 디바이스(20)는 미러링 이미지를 임시 저장하거나, 렌더링하기 위한 버퍼 (또는 버퍼 영역)을 마련할 수 있다. 상기 외부 디바이스(20)는 버퍼 또는 버퍼 영역을 개선하여 미러링 이미지를 제공할 제 1 표시영역(예: 도 6의 제 1 표시영역(620)) 외에 확장 표시 영역(예: 도 6의 확장 표시 영역(640))을 구현할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(예: 도 6의 제 1 표시영역(620))에 표시할 미러링 데이터(예: 도 7의 제1 내지 제3 미러링 데이터(720a, 720b, 720c))를 임시 저장하거나, 또는 렌더링하기 위한 제1 버퍼 (또는 제1 버퍼 영역)(예: 도 3의 제1 버퍼(241))을 구비할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 적어도 하나의 확장 표시 영역(예: 도 6의 확장 표시 영역(640))에 표시할 확장 미러링 데이터(예: 도 7의 제1 내지 제3 확장 미러링 데이터(731, 733, 735))를 임시 저장하거나, 또는 렌더링하기 위한 제2 버퍼 (또는 제2 버퍼 영역)(예: 도 3의 제2 버퍼(243))을 구비할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 사용자와의 인터랙션(예: 도 2의 인터랙션(25))을 통해 획득한 정보 (예: 사용자의 제스처에 따른 모션 정보)을 분석하고, 상기 분석 결과에 의해 제2 버퍼 (또는 제2 버퍼 영역)(예: 도 3의 제2 버퍼(243))에 임시 저장된 확장 미러링 데이터(예: 도 7의 제1 내지 제3 확장 미러링 데이터(731, 733, 735))를 사용하여 적어도 하나의 확장 표시 영역(예: 도 6의 확장 표시 영역(640))에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may provide a buffer (or buffer area) for temporarily storing or rendering a mirrored image. The external device 20 improves the buffer or buffer area to provide a mirroring image in addition to the first display area (e.g., the first display area 620 in FIG. 6) and an extended display area (e.g., the extended display area in FIG. 6). (640)) can be implemented. For example, the external device 20 may display mirroring data (e.g., first to third mirroring data 720a of FIG. 7) in the first display area (e.g., first display area 620 of FIG. 6). , 720b, 720c)) may be provided with a first buffer (or first buffer area) (eg, first buffer 241 in FIG. 3) for temporary storage or rendering. For example, the external device 20 may display extended mirroring data (e.g., the first to third extended mirrors of FIG. 7) on at least one extended display area (e.g., the extended display area 640 of FIG. 6). A second buffer (or second buffer area) (for example, the second buffer 243 in FIG. 3) may be provided to temporarily store or render data (731, 733, 735). For example, the external device 20 analyzes information (e.g., motion information according to the user's gesture) obtained through interaction with the user (e.g., interaction 25 in FIG. 2), and analyzes the analysis result. Extended mirroring data temporarily stored in the second buffer (or second buffer area) (e.g., the second buffer 243 in FIG. 3) (e.g., the first to third extended mirroring data 731, 733 in FIG. 7, 735)) can be used to display an extended mirroring image in at least one extended display area (e.g., the extended display area 640 of FIG. 6).

상기 소스 디바이스(10) 및/또는 상기 외부 디바이스(20)는, 미러링 기능의 종료 요청이 발생하면, 상기 미러링 기능을 위하여 할당된 모든 자원을 해제한 후, 상기 미러링 기능을 종료할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 미러링 기능을 위해 생성하였던 적어도 하나의 가상 디스플레이를 폐기할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 미러링 기능을 위해 할당하였던 표시 영역(예: 도 2의 미러링 표시 영역(23))을 해제할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 미러링 기능을 위해 사용된 버퍼 (예: 제1 버퍼(21) 또는 제2 버퍼(23)) 또는 버퍼 영역 (예: 제1 버퍼 영역 또는 제2 버퍼 영역)의 할당을 해제할 수 있다.When a request for termination of the mirroring function occurs, the source device 10 and/or the external device 20 may release all resources allocated for the mirroring function and then terminate the mirroring function. For example, the source device 10 may discard at least one virtual display that was created for a mirroring function. For example, the external device 20 may release the display area (e.g., the mirroring display area 23 in FIG. 2) that was allocated for the mirroring function. For example, the external device 20 may be a buffer (e.g., first buffer 21 or second buffer 23) or buffer area (e.g., first buffer area or second buffer) used for the mirroring function. area) can be deallocated.

도 2는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 미러링 기능을 위한 절차를 도시한 도면이다.FIG. 2 is a diagram illustrating a procedure for a mirroring function in a mirroring system (eg, mirroring system 1 of FIG. 1) according to an embodiment.

도 2를 참조하면, 미러링 시스템(1)은 소스 디바이스(10))와, 적어도 하나의 외부 디바이스(20)를 포함할 수 있다. 상기 소스 디바이스(10)는 미러링 기능을 위해 상기 외부 디바이스(20)로 미러링 이미지를 제공하기 위하여 하나 또는 복수의 가상 디스플레이를 마련할 수 있다. 상기 가상 디스플레이는, 예를 들어, 메모리에 미러링 화면을 표시하기 위한 이미지 데이터를 생성하기 위해 할당된 영역에 해당할 수 있다.Referring to FIG. 2 , the mirroring system 1 may include a source device 10 and at least one external device 20. The source device 10 may provide one or more virtual displays to provide a mirrored image to the external device 20 for a mirroring function. For example, the virtual display may correspond to an area allocated to generate image data for displaying a mirroring screen in memory.

상기 소스 디바이스(10)는 자신의 앱 리스트를 상기 외부 디바이스(20)와 공유할 수 있다. 상기 앱 리스트는, 예를 들어, 상기 소스 디바이스(10)에 설치된 앱들의 목록일 수 있다. 상기 소스 디바이스(10)는 가상 디스플레이(예: 제1 가상 디스플레이(11), 제2 가상 디스플레이(13)) 상에 미러링 기능을 제공할 앱들의 아이콘이 포함된 초기 미러링 이미지를 생성하고, 상기 초기 미러링 이미지에 대응한 초기 미러링 데이터(31)를 상기 외부 디바이스(20)로 제공할 수 있다. 상기 앱 리스트는, 예를 들어, 2차원 앱 (2D 앱), 3차원 위젯 앱 (3D widget 앱) 또는 3차원 실감형 앱 (3D immersive 앱)을 포함할 수 있다. 상기 2차원 앱은, 예를 들어, 평면 (flat) 형태의 이미지를 제공하는 앱일 수 있다. 상기 3차원 위젯 앱은, 예를 들어, 가공된 공간 (AR 공간, VR 공간, 확장 현실 공간)에 다수로 배치될 수 있는 3차원 앱일 수 있다. 상기 3차원 실감형 앱은, 예를 들어, 3차원 앱 하나가 가공된 공간 (AR 공간, VR 공간, 확장 현실 공간) 전체를 제어할 수 있는 3차원 앱일 수 있다. The source device 10 may share its app list with the external device 20. For example, the app list may be a list of apps installed on the source device 10. The source device 10 generates an initial mirroring image including icons of apps to provide a mirroring function on a virtual display (e.g., the first virtual display 11 and the second virtual display 13), and Initial mirroring data 31 corresponding to the mirroring image may be provided to the external device 20. The app list may include, for example, a two-dimensional app (2D app), a three-dimensional widget app (3D widget app), or a three-dimensional immersive app (3D immersive app). The two-dimensional app may be, for example, an app that provides flat images. The 3D widget app may be, for example, a 3D app that can be deployed in large numbers in a processed space (AR space, VR space, extended reality space). The 3D realistic app may be, for example, a 3D app that allows one 3D app to control the entire processed space (AR space, VR space, extended reality space).

상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 공유된 앱 리스트로부터 미러링 기능을 이용할 앱에 관한 정보를 획득할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)로부터 초기 미러링 데이터(31)를 수신할 수 있다. 상기 외부 디바이스(20)는 상기 앱에 관한 정보 및/또는 상기 초기 미러링 데이터(31)를 사용하여 디스플레이 모듈(110)에 마련된 미러링 표시 영역(23) 전체 또는 일부에 미러링 기능을 이용할 초기 미러링 화면을 표시할 수 있다. The external device 20 may obtain information about apps that will use the mirroring function from the app list shared by the source device 10. The external device 20 may receive initial mirroring data 31 from the source device 10. The external device 20 uses the information about the app and/or the initial mirroring data 31 to create an initial mirroring screen to use the mirroring function on all or part of the mirroring display area 23 provided in the display module 110. It can be displayed.

상기 소스 디바이스(10)는, 상기 외부 디바이스(20)로부터의 앱 실행 요청에 응답하여 미러링 기능을 개시할 수 있다. 상기 소스 디바이스(10)는, 미러링 기능이 개시되면, 상기 외부 디바이스(20)에 의해 실행이 요청된 하나 또는 복수의 앱 별로 인코더 및/또는 가상 디스플레이(예: 제1 가상 디스플레이(11) 및/또는 제2 가상 디스플레이(13))를 생성할 수 있다. 상기 소스 디바이스(10)는 동시에 여러 앱을 실행하기 위하여 복수의 가상 디스플레이를 생성할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 한 개 내지 여섯 개 정도의 가상 디스플레이를 생성 및 운영할 수 있다.The source device 10 may initiate a mirroring function in response to an app execution request from the external device 20. When the mirroring function is initiated, the source device 10 displays an encoder and/or a virtual display (e.g., the first virtual display 11 and/or Alternatively, a second virtual display 13) can be created. The source device 10 can create multiple virtual displays to run multiple apps at the same time. For example, the source device 10 may create and operate one to six virtual displays.

상기 소스 디바이스(10)는 가상 디스플레이에 대응 앱을 실행(launch)할 수 있다. 상기 소스 디바이스(10)는 앱의 실행으로 가상 디스플레이에 표시될 수 있는 미러링 이미지를 포함한 미러링 데이터(31)를 상기 외부 디바이스(20)로 전송할 수 있다. 상기 미러링 데이터(31)는, 예를 들어, 상기 소스 디바이스(10)에서 생성된 가상 디스플레이에 표시된 가상 화면을 그대로 상기 외부 디바이스(20)의 디스플레이의 표시창(29)에 할당된 미러링 표시 영역(23)에 미러링하기 위한 데이터를 포함할 수 있다. The source device 10 can launch a corresponding app on the virtual display. The source device 10 may transmit mirroring data 31 including a mirroring image that can be displayed on a virtual display by executing an app to the external device 20. For example, the mirroring data 31 may be a virtual screen displayed on the virtual display generated by the source device 10 as is in the mirroring display area 23 allocated to the display window 29 of the display of the external device 20. ) can include data for mirroring.

상기 외부 디바이스(20)는 디스플레이의 표시창(29)의 전체 영역을 통해 현실 공간 이미지를 표시하거나, 투시하고, 상기 표시창(29)의 일부 영역에 미러링 표시 영역(23)을 할당하여 상기 소스 디바이스(10)로부터 제공된 미러링 데이터(31)에 의한 미러링 이미지(27)를 표시할 수 있다. 상기 미러링 표시 영역(23)은, 예를 들어, 복수의 표시 영역(예: 도 6의 제 1 표시영역(620) 또는 적어도 하나의 확장 표시 영역(640))을 포함할 수 있다. The external device 20 displays or projects a real space image through the entire area of the display window 29 of the display, and allocates a mirroring display area 23 to a partial area of the display window 29 to determine the source device ( The mirroring image 27 can be displayed using the mirroring data 31 provided from 10). For example, the mirroring display area 23 may include a plurality of display areas (eg, the first display area 620 or at least one extended display area 640 in FIG. 6).

상기 외부 디바이스(20)는, 사용자와의 인터랙션(25)을 통해 이벤트가 생성되면, 상기 생성된 이벤트에 상응한 이벤트 정보(33)를 상기 소스 디바이스(10)로 전달할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 상기 생성된 이벤트를 자체적으로 처리할 수 있다고 판단하면, 자신이 직접 처리할 수 있다. 상기 이벤트는, 예를 들어, 사용자가 미러링 표시 영역(27)에 표시된 미러링 이미지의 특정 위치를 터치하거나, 스크롤하는 것과 같은 인터랙션(25)에 의해 생성될 수 있다. When an event is generated through interaction 25 with a user, the external device 20 may transmit event information 33 corresponding to the generated event to the source device 10. For example, if the external device 20 determines that it can process the generated event on its own, it can process it directly. The event may be generated, for example, by an interaction 25 such as the user touching a specific position of the mirroring image displayed in the mirroring display area 27 or scrolling.

상기 소스 디바이스(10)는 상기 외부 디바이스(20)로부터 이벤트 정보를 접수하면, 가상 디스플레이(11, 13)에서 실행 중인 해당 앱 상에서 상기 이벤트 정보에 대응한 동작을 처리할 수 있다. 상기 소스 디바이스(10)는 상기 이벤트 정보에 대응한 동작 처리에 따라, 가상 디스플레이(11, 13)에 표시될 이미지에 상응한 미러링 데이터(31)를 상기 외부 디바이스(20)로 제공할 수 있다.When the source device 10 receives event information from the external device 20, it can process an operation corresponding to the event information on the corresponding app running on the virtual display 11 and 13. The source device 10 may provide mirroring data 31 corresponding to images to be displayed on the virtual displays 11 and 13 to the external device 20 according to operation processing corresponding to the event information.

도 3은 일 실시예에 따른, 화면 미러링을 지원하기 위한 미러링 시스템(예: 도 1의 미러링 시스템)의 구성도이다.FIG. 3 is a configuration diagram of a mirroring system (eg, the mirroring system of FIG. 1) for supporting screen mirroring, according to an embodiment.

도 3을 참조하면, 소스 디바이스(예: 도 1의 소스 디바이스(10))와 외부 디바이스(예: 도 1의 외부 디바이스(20))는 소정 통신 프로토콜을 기반으로 하는 네트워크(40)를 통해 연결될 수 있다. 상기 소스 디바이스(10)와 상기 외부 디바이스(20)는 상기 네트워크(40)를 통해 연결되면, 소정 통신 프로토콜에 따른 통신 채널(70)이 할당될 수 있다. 상기 통신 채널(70)은, 예를 들어, 무선 채널이거나, 유선 채널일 수 있다. Referring to FIG. 3, a source device (e.g., source device 10 in FIG. 1) and an external device (e.g., external device 20 in FIG. 1) are connected through a network 40 based on a predetermined communication protocol. You can. When the source device 10 and the external device 20 are connected through the network 40, a communication channel 70 according to a predetermined communication protocol may be allocated. The communication channel 70 may be, for example, a wireless channel or a wired channel.

일 예로써, 소스 디바이스(10)는 디스플레이 모듈(110), 프로세서(120), 입/출력부(130), 메모리(140) 또는 통신 모듈(150)를 포함할 수 있다. As an example, the source device 10 may include a display module 110, a processor 120, an input/output unit 130, a memory 140, or a communication module 150.

상기 디스플레이 모듈(110)은 디스플레이 패널 또는 터치 패널을 포함할 수 있다. 상기 디스플레이 패널은 소스 디바이스(10)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 상기 디스플레이 모듈(110)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 상기 터치 패널은 사용자에 의한 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 생성되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. 상기 디스플레이 모듈(110)은 상기 프로세서(120)와의 전기적인 연결에 의해 그 동작을 제어 받을 수 있다. 상기 디스플레이 모듈(110)에 포함된 디스플레이 패널 또는 터치 패널은 상기 프로세서(120)와의 전기적인 연결에 의해 그 동작을 독립적으로 제어 받을 수 있다. 일 실시예로, 상기 디스플레이 패널은 상기 프로세서(120)의 제어를 받아 표시할 디스플레이 정보를 시각적으로 외부(예: 사용자)로 제공할 수 있다.The display module 110 may include a display panel or a touch panel. The display panel can visually provide information to the outside of the source device 10 (eg, a user). The display module 110 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device. The touch panel may include a touch sensor configured to detect a touch by a user, or a pressure sensor configured to measure the intensity of force generated by the touch. The operation of the display module 110 can be controlled by electrical connection with the processor 120. The display panel or touch panel included in the display module 110 can have its operation independently controlled by electrical connection with the processor 120. In one embodiment, the display panel may visually provide display information to be displayed to the outside (eg, a user) under the control of the processor 120.

상기 프로세서(120)는 소프트웨어(예: 도 18의 프로그램(1840))를 실행하여 전기적으로 연결된 디스플레이 모듈(110), 입/출력부(130), 메모리(140) 또는 통신 모듈(150)와 같은 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 상기 프로세서(120)는 데이터 처리 또는 연산의 적어도 일부로서, 다른 구성요소(예: 디스플레이 모듈(110), 통신 모듈(150) 또는 입/출력부(127))로부터 수신된 명령 또는 데이터를 메모리(140)(예: 휘발성 메모리)에 저장하거나, 또는 상기 메모리(140)에 저장된 명령 또는 데이터를 처리하고, 그 처리된 결과 데이터를 상기 메모리(140)에 저장할 수 있다. The processor 120 executes software (e.g., program 1840 in FIG. 18) to operate an electrically connected display module 110, input/output unit 130, memory 140, or communication module 150. It can control at least one other component (e.g., hardware or software component) and perform various data processing or operations. The processor 120, as at least part of data processing or computation, stores commands or data received from other components (e.g., display module 110, communication module 150, or input/output unit 127) in memory ( 140) (e.g., volatile memory), or the commands or data stored in the memory 140 may be processed, and the processed result data may be stored in the memory 140.

상기 입/출력부(130)은 소스 디바이스(10)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 상기 소스 디바이스(10)의 외부(예: 사용자)로부터 수신할 수 있다. 상기 입/출력부(130)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input/output unit 130 may receive commands or data to be used in a component of the source device 10 (eg, the processor 120) from outside the source device 10 (eg, a user). The input/output unit 130 may include, for example, a microphone, mouse, keyboard, keys (eg, buttons), or digital pen (eg, stylus pen).

상기 통신 모듈(150)는 외부 디바이스(20)와의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 상기 통신 모듈(150)는 상기 프로세서(120)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 상기 통신 모듈(150)는, 예를 들어, 무선 통신 모듈(예: 도 18의 무선 통신 모듈(1892))(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: 도 18의 유선 통신 모듈(1894))(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 네트워크(40)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크 또는 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치인 외부 디바이스(20)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다.The communication module 150 may support establishment of a direct (eg, wired) communication channel or wireless communication channel with the external device 20, and communication through the established communication channel. The communication module 150 operates independently of the processor 120 and may include one or more communication processors that support direct (eg, wired) communication or wireless communication. The communication module 150 is, for example, a wireless communication module (e.g., the wireless communication module 1892 of FIG. 18) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module. ) or a wired communication module (e.g., the wired communication module 1894 of FIG. 18) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module is a network 40 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct or infrared data association (IrDA), or a legacy cellular network, 5G network, next-generation communication network, Internet, Alternatively, it may communicate with the external device 20, which is an external electronic device, through a computer network (e.g., a long-distance communication network such as LAN or WAN). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be implemented as a plurality of separate components (e.g., multiple chips).

상기 메모리(140)는 상기 소스 디바이스(10)의 적어도 하나의 구성요소(예: 디스플레이 모듈(110), 프로세서(120), 통신 모듈(150) 또는 입/출력부(127))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 상기 데이터는, 예를 들어, 소프트웨어(예: 도 18의 프로그램(1840)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 상기 메모리(140)는, 예를 들어, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. The memory 140 is used by at least one component (e.g., display module 110, processor 120, communication module 150, or input/output unit 127) of the source device 10. A variety of data can be stored. The data may include, for example, software (e.g., program 1840 of FIG. 18) and input data or output data for commands related thereto. The memory 140 may include, for example, volatile memory or non-volatile memory.

일 예에 따르면, 프로세서(120)는 통신 모듈(150)를 통해 자신의 앱 리스트를 외부 디바이스(20)로 전달함으로써, 상기 외부 디바이스(20)와 앱 리스트를 공유할 수 있다. 상기 앱 리스트는 상기 소스 디바이스(10)에 설치된 앱들의 목록일 수 있다. 상기 프로세서(120)는, 예를 들어, 상기 통신 모듈(150)를 제어하여 상기 외부 디바이스(20)를 연결한 후 상기 외부 디바이스(20)로부터 미러링 요청을 수신하면, 상기 앱 리스트를 상기 통신 모듈(150)를 통해 상기 외부 디바이스(20)로 전송할 수 있다. 예컨대, 상기 프로세서(120)는 가상 디스플레이(예: 도 2의 제1 가상 디스플레이(11), 제2 가상 디스플레이(13)) 상에 미러링 기능을 제공할 앱들의 아이콘이 포함된 초기 미러링 이미지를 생성하고, 상기 초기 미러링 이미지에 대응한 초기 미러링 데이터(31)를 상기 외부 디바이스(20)로 제공할 수 있다. According to one example, the processor 120 may transmit its app list to the external device 20 through the communication module 150, thereby sharing the app list with the external device 20. The app list may be a list of apps installed on the source device 10. For example, when the processor 120 controls the communication module 150 to connect the external device 20 and then receives a mirroring request from the external device 20, the app list is sent to the communication module. It can be transmitted to the external device 20 through (150). For example, the processor 120 generates an initial mirroring image including icons of apps that will provide a mirroring function on the virtual display (e.g., the first virtual display 11 and the second virtual display 13 in FIG. 2). And, initial mirroring data 31 corresponding to the initial mirroring image can be provided to the external device 20.

일 예에 따르면, 프로세서(120)는 통신 모듈(150)를 통해 외부 디바이스(20)로부터 전달된 앱 실행 요청에 응답하여 미러링 기능을 개시할 수 있다. 상기 프로세서(120)는, 미러링 기능이 개시되면, 상기 외부 디바이스(20)에 의해 실행이 요청된 하나 또는 복수의 앱 별로 인코더 및/또는 가상 디스플레이(예: 도 2의 제1 가상 디스플레이(11) 및/또는 제2 가상 디스플레이(13))를 생성할 수 있다. 상기 프로세서(120)는 동시에 여러 앱을 실행하기 위하여 복수의 가상 디스플레이를 생성할 수 있다. 상기 프로세서(120)는, 예를 들어, 한 개 내지 여섯 개 정도의 가상 디스플레이를 생성 및 운영할 수 있다. 상기 프로세서(120)는 가상 디스플레이에 대응 앱을 실행(launch)할 수 있다. 상기 프로세서(120)는 앱의 실행으로 가상 디스플레이에 표시될 수 있는 미러링 이미지를 포함한 미러링 데이터(31)를 상기 외부 디바이스(20)로 전송할 수 있다. 상기 미러링 데이터(31)는, 예를 들어, 상기 프로세서(120)에 의해 생성된 가상 디스플레이에 표시된 가상 화면을 그대로 상기 외부 디바이스(20)의 디스플레이의 표시창(29)에 할당된 미러링 표시 영역(23)에 미러링하기 위한 데이터를 포함할 수 있다. According to one example, the processor 120 may initiate a mirroring function in response to an app execution request transmitted from the external device 20 through the communication module 150. When the mirroring function is initiated, the processor 120 generates an encoder and/or a virtual display (e.g., the first virtual display 11 of FIG. 2) for each one or multiple apps requested to be executed by the external device 20. and/or the second virtual display 13) may be generated. The processor 120 can create multiple virtual displays to execute multiple apps at the same time. The processor 120 may create and operate, for example, one to six virtual displays. The processor 120 can launch a corresponding app on the virtual display. The processor 120 may transmit mirroring data 31 including a mirroring image that can be displayed on a virtual display by executing an app to the external device 20. For example, the mirroring data 31 may be a mirroring display area 23 allocated to the display window 29 of the display of the external device 20 as is the virtual screen displayed on the virtual display generated by the processor 120. ) can include data for mirroring.

일 예에 따르면, 프로세서(120)는 상기 통신 모듈(150)를 통해 외부 디바이스(20)로부터 이벤트 정보를 수신하면, 가상 디스플레이(11, 13)에서 실행 중인 해당 앱 상에서 상기 이벤트 정보에 대응한 동작을 처리할 수 있다. 상기 소스 디바이스(10)는 상기 이벤트 정보에 대응한 동작 처리에 따라, 가상 디스플레이(11, 13)에 표시될 이미지에 상응한 미러링 데이터(31)를 상기 외부 디바이스(20)로 제공할 수 있다.According to one example, when the processor 120 receives event information from the external device 20 through the communication module 150, the processor 120 performs an operation corresponding to the event information on the corresponding app running on the virtual displays 11 and 13. can be processed. The source device 10 may provide mirroring data 31 corresponding to images to be displayed on the virtual displays 11 and 13 to the external device 20 according to operation processing corresponding to the event information.

일 예로써, 외부 디바이스(20)는 디스플레이 모듈(210), 프로세서(220), 센서 모듈(230), 메모리(240) 또는 통신 모듈(250)를 포함할 수 있다. 상기 메모리(240)는 제1 버퍼(241) 또는 제2 버퍼(243)를 포함할 수 있다. 도시되지는 않았으나, 제1 버퍼 영역 또는 제2 버퍼 영역 중 적어도 하나는 프로세서(220) 내부의 레지스터에 할당될 수도 있다. 상기 제1 버퍼(241) 또는 상기 제1 버퍼 영역은 소스 디바이스(10)로부터 제공된 미러링 데이터를 임시로 저장할 수 있다. 상기 제1 버퍼(241) 또는 상기 제1 버퍼 영역에 임시로 저장된 미러링 데이터는 제 1 표시영역에 다른 미러링 이미지가 표시된 이후에 폐기될 수 있다.As an example, the external device 20 may include a display module 210, a processor 220, a sensor module 230, a memory 240, or a communication module 250. The memory 240 may include a first buffer 241 or a second buffer 243. Although not shown, at least one of the first buffer area or the second buffer area may be allocated to a register within the processor 220. The first buffer 241 or the first buffer area may temporarily store mirroring data provided from the source device 10. Mirroring data temporarily stored in the first buffer 241 or the first buffer area may be discarded after another mirroring image is displayed in the first display area.

상기 디스플레이 모듈(210)은 외부 디바이스(20)의 외부(예: 사용자)로 정보(예: 현실 이미지 정보 또는 미러링 이미지 정보)를 시각적으로 제공할 수 있다. 상기 디스플레이 모듈(210)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 상기 디스플레이 모듈(210)은 상기 프로세서(220)와의 전기적인 연결에 의해 그 동작을 제어 받을 수 있다. The display module 210 may visually provide information (e.g., real image information or mirroring image information) to the outside of the external device 20 (e.g., a user). The display module 210 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device. The operation of the display module 210 can be controlled by electrical connection with the processor 220.

상기 프로세서(220)는 소프트웨어(예: 도 18의 프로그램(1840))를 실행하여 전기적으로 연결된 디스플레이 모듈(210), 센서 모듈(230), 메모리(240) 또는 통신 모듈(250)과 같은 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 상기 프로세서(220)는 데이터 처리 또는 연산의 적어도 일부로서, 다른 구성요소(예: 디스플레이 모듈(210), 센서 모듈(230) 또는 통신 모듈(250))로부터 수신된 명령 또는 데이터를 메모리(240)(예: 휘발성 메모리)에 저장하거나, 또는 상기 메모리(240)에 저장된 명령 또는 데이터를 처리하고, 그 처리된 결과 데이터를 상기 메모리(240)에 저장할 수 있다. The processor 220 executes software (e.g., program 1840 in FIG. 18) to run at least one electrically connected display module 210, sensor module 230, memory 240, or communication module 250. It can control other components (e.g. hardware or software components) and perform various data processing or operations. The processor 220, as at least part of data processing or computation, processes commands or data received from other components (e.g., display module 210, sensor module 230, or communication module 250) into memory 240. (eg, volatile memory), or the commands or data stored in the memory 240 can be processed, and the processed result data can be stored in the memory 240.

상기 센서 모듈(230)은 외부 디바이스(20)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태) 또는 사용자와의 인터랙션을 위한 손 또는 시선의 움직임을 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 상기 센서 모듈(230)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module 230 detects the operating state (e.g., power or temperature) of the external device 20, the external environmental state (e.g., user state), or the movement of the hand or gaze for interaction with the user, An electrical signal or data value corresponding to the sensed state can be generated. The sensor module 230 includes, for example, a gesture sensor, gyro sensor, barometric pressure sensor, magnetic sensor, acceleration sensor, grip sensor, proximity sensor, color sensor, IR (infrared) sensor, biometric sensor, temperature sensor, and humidity sensor. , or may include an illumination sensor.

상기 통신 모듈(250)는 소스 디바이스(10)와의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 상기 통신 모듈(250)는 상기 프로세서(220)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 상기 통신 모듈(250)는, 예를 들어, 무선 통신 모듈(예: 도 18의 무선 통신 모듈(1892))(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: 도 18의 유선 통신 모듈(1894))(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 네트워크(40)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크 또는 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치인 소스 디바이스(10)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다.The communication module 250 may support establishment of a direct (eg, wired) communication channel or wireless communication channel with the source device 10, and communication through the established communication channel. The communication module 250 operates independently of the processor 220 and may include one or more communication processors that support direct (eg, wired) communication or wireless communication. The communication module 250 is, for example, a wireless communication module (e.g., the wireless communication module 1892 of FIG. 18) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module. ) or a wired communication module (e.g., the wired communication module 1894 of FIG. 18) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module is a network 40 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct or infrared data association (IrDA), or a legacy cellular network, 5G network, next-generation communication network, Internet, Alternatively, it may communicate with the source device 10, which is an external electronic device, through a computer network (e.g., a long-distance communication network such as LAN or WAN). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be implemented as a plurality of separate components (e.g., multiple chips).

상기 메모리(240)는 상기 외부 디바이스(20)의 적어도 하나의 구성요소(예: 디스플레이 모듈(210), 프로세서(220), 통신 모듈(250) 또는 입/출력부(127))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 상기 데이터는, 예를 들어, 소프트웨어(예: 도 18의 프로그램(1840)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 상기 메모리(240)는, 예를 들어, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. The memory 240 is used by at least one component (e.g., display module 210, processor 220, communication module 250, or input/output unit 127) of the external device 20. A variety of data can be stored. The data may include, for example, software (e.g., program 1840 of FIG. 18) and input data or output data for commands related thereto. The memory 240 may include, for example, volatile memory or non-volatile memory.

상기 외부 디바이스(20)는 카메라 모듈을 더 포함할 수 있다. 상기 카메라 모듈은 정지 영상 및 동영상을 촬영할 수 있다. 상기 카메라 모듈은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다. 일 예로, 상기 카메라 모듈은 사용자와의 인터랙션을 위하여 사용될 수 있다. The external device 20 may further include a camera module. The camera module can capture still images and moving images. The camera module may include one or more lenses, image sensors, image signal processors, or flashes. As an example, the camera module can be used for interaction with the user.

일 예에 따르면, 상기 프로세서(220)는 얼굴 추적, 손 추적 또는 모션 추적 기능을 포함할 수 있다. 상기 프로세서(220)는 얼굴 추적, 손 추적 또는 모션 추적 기능 중 적어도 하나를 사용하여 사용자와의 인터랙션을 수행할 수 있다. 상기 얼굴 추적 기능은 카메라 모듈에 의해 촬영된 사용자 이미지로부터 얼굴에 해당하는 부분의 데이터를 추출하고, 상기 추출한 데이터를 기반으로 얼굴 표정의 변화를 추적할 수 있다. 상기 손 추적 기능은 상기 카메라 모듈에 의해 촬영된 사용자 이미지로부터 손에 해당하는 부분의 데이터를 추출하고, 상기 추출한 데이터를 기반으로 손의 움직임을 추적할 수 있다. 상기 손 추적 기능은 상기 센서 모듈(230)로부터 제공된 센싱 정보 또는 소스 디바이스(10)로부터 제공된 센싱 정보를 기반으로 손의 움직임을 추적할 수 있다. 상기 모션 추적 기능은 카메라 모듈에 의해 촬영된 사용자 이미지로부터 사용자의 움직임을 추적할 수 있다. 상기 모션 추적 기능은 상기 센서 모듈(230)로부터 제공된 센싱 정보 또는 소스 디바이스(10)로부터 제공된 센싱 정보를 기반으로 사용자의 움직임을 추적할 수 있다.According to one example, the processor 220 may include face tracking, hand tracking, or motion tracking functions. The processor 220 may perform interaction with the user using at least one of face tracking, hand tracking, or motion tracking functions. The face tracking function extracts data of the part corresponding to the face from the user image captured by the camera module and can track changes in facial expressions based on the extracted data. The hand tracking function extracts data of the part corresponding to the hand from the user image captured by the camera module and tracks hand movement based on the extracted data. The hand tracking function may track hand movement based on sensing information provided from the sensor module 230 or sensing information provided from the source device 10. The motion tracking function can track the user's movement from the user image captured by the camera module. The motion tracking function may track the user's movement based on sensing information provided from the sensor module 230 or sensing information provided from the source device 10.

일 예에 따르면, 프로세서(220)는 통신 모듈(250)를 제어하여 소스 디바이스(10)를 연결한 후 미러링 기능을 요청할 수 있다. 상기 프로세서(220)는 상기 미러링 요청에 대응하여 상기 통신 모듈(250)를 통해 상기 소스 디바이스(10)로부터 앱 리스트를 전달받을 수 있다. 상기 프로세서(220)는 상기 앱 리스트로부터 미러링 기능을 이용할 앱에 관한 정보를 획득할 수 있다. 상기 프로세서(220)는 상기 소스 디바이스(10)로부터 초기 미러링 데이터(31)를 수신할 수 있다. 상기 프로세서(220)는 상기 앱에 관한 정보 및/또는 상기 초기 미러링 데이터(31)를 사용하여 디스플레이 모듈(210)에 마련된 미러링 표시 영역의 전체 또는 일부에 미러링 기능을 이용할 초기 미러링 화면을 표시할 수 있다. According to one example, the processor 220 may control the communication module 250 to connect the source device 10 and then request a mirroring function. The processor 220 may receive an app list from the source device 10 through the communication module 250 in response to the mirroring request. The processor 220 may obtain information about apps that will use the mirroring function from the app list. The processor 220 may receive initial mirroring data 31 from the source device 10. The processor 220 may use the information about the app and/or the initial mirroring data 31 to display an initial mirroring screen using the mirroring function on all or part of the mirroring display area provided in the display module 210. there is.

일 예에 따르면, 프로세서(220)는 디스플레이 모듈(210)의 표시창의 전체 영역을 통해 현실 공간 이미지를 표시하거나, 투시하고, 상기 표시창의 일부 영역에 할당된 미러링 표시 영역에 상기 소스 디바이스(10)로부터 제공된 미러링 데이터(31)를 이용한 미러링 이미지(27)를 표시할 수 있다. 상기 미러링 표시 영역은, 예를 들어, 복수의 표시 영역(예: 도 6의 제 1 표시영역(620) 또는 적어도 하나의 확장 표시 영역(640))을 포함할 수 있다. 상기 프로세서(220)는 제 1 표시영역(620)에 상기 소스 디바이스(10)로부터 실시간으로 전달되는 미러링 데이터를 이용하여 미러링 이미지를 표시할 수 있다. 상기 실시간으로 전달되는 미러링 데이터는 제1 버퍼(241) 또는 메모리(240)에 할당된 제1 버퍼 영역에 임시로 저장될 수 있다. 상기 제1 버퍼(241) 또는 상기 제1 버퍼 영역에 임시로 저장된 미러링 데이터는, 제 1 표시영역(620)에서 노출하는 미러링 이미지가 변경되면, 다음으로 수신된 미러링 데이터로 갱신될 수 있다. 상기 프로세서(220)는 확장 표시 영역(640)에 상기 제 1 표시영역(620)에 표시되고 있거나, 표시된 이력이 있는 미러링 데이터를 사용하여 확장 미러링 이미지를 표시할 수 있다. 상기 제 1 표시영역(620)에 표시되고 있거나, 표시된 이력이 있는 미러링 데이터는 제2 버퍼(243) 또는 메모리(240)에 할당된 제2 버퍼 영역에 임시로 저장될 수 있다. 상기 제2 버퍼(243) 또는 상기 제2 버퍼 영역에 저장된 미러링 데이터는, 저장 영역의 여유 공간을 고려하여 오래된 순서 또는 사용자의 선택에 의해 폐기될 수 있다. According to one example, the processor 220 displays or projects a real space image through the entire area of the display window of the display module 210, and displays the source device 10 in a mirroring display area allocated to a partial area of the display window. A mirroring image 27 using mirroring data 31 provided from can be displayed. For example, the mirroring display area may include a plurality of display areas (eg, the first display area 620 or at least one extended display area 640 in FIG. 6). The processor 220 may display a mirroring image on the first display area 620 using mirroring data transmitted in real time from the source device 10. The mirroring data transmitted in real time may be temporarily stored in the first buffer 241 or the first buffer area allocated to the memory 240. Mirroring data temporarily stored in the first buffer 241 or the first buffer area may be updated with the next received mirroring data when the mirroring image exposed in the first display area 620 is changed. The processor 220 may display an extended mirroring image in the extended display area 640 using mirroring data that is displayed in the first display area 620 or has a history of being displayed. Mirroring data that is displayed in the first display area 620 or has a history of being displayed may be temporarily stored in the second buffer 243 or a second buffer area allocated to the memory 240. The mirroring data stored in the second buffer 243 or the second buffer area may be discarded in oldest order or by user selection, taking into account free space in the storage area.

일 예에 따르면, 프로세서(220)는, 사용자와의 인터랙션(25)을 통해 이벤트가 생성되면, 상기 생성된 이벤트에 상응한 이벤트 정보(33)를 상기 소스 디바이스(10)로 전달할 수 있다. 상기 프로세서(220)는, 예를 들어, 상기 생성된 이벤트를 자체적으로 처리할 수 있다고 판단하면, 프로세서(220)가 직접 처리할 수 있다. 상기 이벤트는, 예를 들어, 사용자가 미러링 표시 영역(27)에 표시된 미러링 이미지의 특정 위치를 터치하거나, 스크롤하는 것과 같은 인터랙션(25)에 의해 생성될 수 있다. According to one example, when an event is generated through interaction 25 with a user, the processor 220 may transmit event information 33 corresponding to the generated event to the source device 10. For example, if the processor 220 determines that the generated event can be processed on its own, the processor 220 may process it directly. The event may be generated, for example, by an interaction 25 such as the user touching a specific position of the mirroring image displayed in the mirroring display area 27 or scrolling.

도 4는 일 실시예에 따라, 화면 미러링을 지원하는 소스 디바이스(예: 도 1의 소스 디바이스(10))의 기능 구성을 도시한 도면이다.FIG. 4 is a diagram illustrating the functional configuration of a source device (eg, source device 10 of FIG. 1) that supports screen mirroring, according to an embodiment.

도 4를 참조하면, 소스 디바이스(10)는 전송 관리 모듈 (Transfer Manager)(410), 컨테이너 관리 모듈 (App Execution Container Manager)(420) 또는 시스템 서비스 모듈 (System Services)(430)을 포함할 수 있다.Referring to FIG. 4, the source device 10 may include a transfer management module (Transfer Manager) 410, a container management module (App Execution Container Manager) 420, or a system service module (System Services) 430. there is.

상기 전송 관리 모듈(410)은 이벤트 요청, 미러링 요청 또는 응답 (ACK) 메시지를 외부 디바이스(예: 도 1의 외부 디바이스(20))로부터 수신하는 역할을 수행할 수 있다. 상기 전송 관리 모듈(410)는 미러링 기능을 위한 미러링 데이터(예: 도 2의 미러링 데이터(310))를 상기 외부 디바이스(20)로 전송하는 역할을 수행할 수 있다.The transmission management module 410 may be responsible for receiving an event request, mirroring request, or response (ACK) message from an external device (eg, the external device 20 of FIG. 1). The transmission management module 410 may transmit mirroring data for the mirroring function (e.g., mirroring data 310 in FIG. 2) to the external device 20.

상기 컨테이너 관리 모듈(420)은 미러링 로직을 제어하는 역할을 수행할 수 있다. 상기 컨테이너 관리 모듈(420)은, 예를 들어, 외부 디바이스(20)로부터 앱 실행 요청이 상기 전송 관리 모듈(410)을 통해 제공되면, 상기 요청 앱의 실행을 위한 컨테이너부 (App Execution Container)(420-1, 420-2, 420-N)를 생성할 수 있다. 상기 컨테이너 관리 모듈(420)은 미러링 기능을 위하여 하나 또는 복수의 컨테이너부(420-1, 420-2, 420-N)을 소유 또는 관리할 수 있다. 상기 컨테이너 관리 모듈(420)는 상기 외부 디바이스(20)로부터 앱과 관련된 요청 (예: 도 2의 이벤트 요청(33))이 상기 전송 관리 모듈(410)을 통해 제공되면, 상기 요청이 접수된 앱에 대응하여 생성된 컨테이너의 식별자 (container id)를 이용하여 해당 컨테이너에 요청 및/또는 데이터를 분배할 수 있다. 상기 컨테이너 관리 모듈(420)는, 예를 들어, 시스템 서비스 모듈(430)에서 이벤트가 생성될 시, 디스플레이 식별자 (display Id) 또는 태스크 식별자 (task Id)를 이용하여 대상 컨테이너를 특정할 수 있다. 상기 컨테이너 관리 모듈(420)은 특정된 대상 컨테이너로 이벤트를 보내거나, 또는 이벤트를 상기 전송 관리 모듈(410)을 통해 외부 디바이스(20)로 전달하는 역할을 수행할 수 있다.The container management module 420 may play a role in controlling mirroring logic. For example, when an app execution request is provided from the external device 20 through the transmission management module 410, the container management module 420 creates an App Execution Container (App Execution Container) for executing the requested app. 420-1, 420-2, 420-N) can be produced. The container management module 420 may own or manage one or more container units 420-1, 420-2, and 420-N for the mirroring function. When an app-related request (e.g., event request 33 in FIG. 2) is provided from the external device 20 through the transmission management module 410, the container management module 420 stores the app for which the request was received. Requests and/or data can be distributed to the container using the identifier (container id) of the container created in response. For example, when an event is generated in the system service module 430, the container management module 420 may specify a target container using a display identifier (display Id) or a task identifier (task Id). The container management module 420 may send an event to a specified target container or transmit the event to the external device 20 through the transmission management module 410.

상기 컨테이너부(420-1, 420-2, 420-N)는 미러링 기능을 위한 미러링 세션 각각을 제어하는 역할을 수행할 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)는 고유한 식별자 (container id)를 가질 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)는 고유한 식별자를 사용하여 외부 디바이스(20)에 마련된 원격 앱 컨테이너부(Remote App Container Manager)와 매핑 관계를 형성할 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)는 실행되는 앱의 패키지 이름 (package name), 태스크 식별자 (task id), 사용자 식별 정보(User ID) 등을 가질 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N) 각각은 내부에 가상 디스플레이 (Virtual Display)(421-1, 421-2, 421-N), 입력 서페이스 (Input Surface)(423-1, 423-2, 423-N) 또는 비디오 인코더(Video Encoder)(425-1, 425-2, 425-N)를 포함할 수 있다. The container units 420-1, 420-2, and 420-N may control each mirroring session for the mirroring function. The container units 420-1, 420-2, and 420-N may have a unique identifier (container ID). The container units 420-1, 420-2, and 420-N may form a mapping relationship with a remote app container manager provided in the external device 20 using a unique identifier. The container units 420-1, 420-2, and 420-N may have a package name, task identifier (task id), user identification information (User ID), etc. of the app being executed. Each of the container units (420-1, 420-2, 420-N) has a virtual display (421-1, 421-2, 421-N) and an input surface (423-1) inside. , 423-2, 423-N) or a video encoder (425-1, 425-2, 425-N).

일 예로, 상기 컨테이너부(420-1, 420-2, 420-N)는 비디오 인코더(425-1, 425-2, 425-N)를 생성하고, 상기 비디오 인코더(425-1, 425-2, 425-N)의 입력 서페이스(423-1, 423-2, 423-N)를 가상 디스플레이(421-1, 421-2, 421-N)의 서페이스로 지정함으로써, 가상 디스플레이를 생성할 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)는 상기 가상 디스플레이(421-1, 421-2, 421-N)에 대응하는 앱을 실행시킬 수 있다.As an example, the container units 420-1, 420-2, and 420-N generate video encoders 425-1, 425-2, and 425-N, and the video encoders 425-1 and 425-2 , A virtual display can be created by designating the input surfaces 423-1, 423-2, and 423-N of 425-N as the surfaces of virtual displays 421-1, 421-2, and 421-N. . The container units 420-1, 420-2, and 420-N can execute apps corresponding to the virtual displays 421-1, 421-2, and 421-N.

일 예에 따르면, 상기 가상 디스플레이(421-1, 421-2, 421-N)에 앱을 실행시키면, 상기 시스템 서비스 모듈(430)에 포함된 서페이스 핑거부(431)가 앱 화면을 해당 가상 디스플레이의 입력 서페이스에 표시할 수 있다. 상기 서페이스 핑거부(431)에 의해 가상 디스플레이(421-1, 421-2, 421-N)에 표시된 이미지 또는 화면에 관한 미러링 데이터는 비디오 인코더(425-1, 425-2, 425-N)로 전달되어 압축될 수 있다. 상기 압축된 미러링 데이터는 상기 전송 관리 모듈(410)을 통해 상기 외부 디바이스(20)로 전달될 수 있다. 상기 외부 디바이스(20)는 전달되는 미러링 데이터를 사용하여 미러링 화면을 출력할 수 있다. According to one example, when an app is executed on the virtual displays 421-1, 421-2, and 421-N, the surface finger unit 431 included in the system service module 430 moves the app screen to the corresponding virtual display. It can be displayed on the input surface of . The image or screen mirroring data displayed on the virtual displays 421-1, 421-2, and 421-N by the surface finger unit 431 is sent to the video encoders 425-1, 425-2, and 425-N. It can be delivered and compressed. The compressed mirroring data may be transmitted to the external device 20 through the transmission management module 410. The external device 20 can output a mirroring screen using the transmitted mirroring data.

상기 시스템 서비스 모듈(430)은 원격 앱 모드 서비스부 (Remote App Mode Service)(435), 서페이스 핑거 (Surface Flinger)(431) 또는 디스플레이 관리부 (Display Manager)(433)를 포함할 수 있다. 상기 원격 앱 모드 서비스부(435)는 가상 디스플레이(421-1, 421-2, 421-N)에 앱을 실행하거나, 앱을 종료하는 등의 시스템 권한이 필요한 기능을 수행할 수 있다. The system service module 430 may include a Remote App Mode Service (435), a Surface Flinger (431), or a Display Manager (433). The remote app mode service unit 435 can perform functions that require system permission, such as executing apps on the virtual displays 421-1, 421-2, and 421-N or terminating apps.

상술한 바에 따르면, 소스 디바이스(10)는 다수의 앱들 각각을 독립적으로 생성된 가상 디스플레이에서 실행하고, 상기 가상 디스플레이 각각에서 앱 실행에 따른 화면을 외부 디바이스(20)로 전송하여 동시에 여러 개의 앱이 가상 공간에 떠 있을 수 있도록 할 수 있다. 상기 가상 디스플레이에서 실행된 앱들 각각의 실행 상태는, 컨테이너 관리 모듈(420)에 의해 관리될 수 있다. 예컨대, 컨테이너 관리 모듈(420)은 입력 처리를 담당하는 클래스와 비디오 인코더를 포함하는 컨테이너 단위로 앱들 각각에 대한 관리를 수행할 수 있다.According to the above, the source device 10 executes each of a plurality of apps on an independently created virtual display, and transmits a screen corresponding to the execution of the app on each of the virtual displays to the external device 20, allowing multiple apps to be displayed at the same time. It can be made to float in virtual space. The execution state of each app executed on the virtual display may be managed by the container management module 420. For example, the container management module 420 can manage each app in units of containers including a class responsible for input processing and a video encoder.

도 5는 일 실시예에 따라, 화면 미러링을 지원하는 외부 디바이스(예: 도 1의 외부 디바이스(20))의 기능 구성을 도시한 도면이다.FIG. 5 is a diagram illustrating the functional configuration of an external device (eg, the external device 20 of FIG. 1) that supports screen mirroring, according to an embodiment.

도 5를 참조하면, 외부 디바이스(20)는 전송 관리 모듈 (Transfer Manager)(510), 원격 앱 컨테이너 관리 모듈 (Remote App Container Manager)(520) 또는 컨테이너 윈도우 관리 모듈 (Container Window Manager)(530)을 포함할 수 있다.Referring to FIG. 5, the external device 20 is a transfer management module (Transfer Manager) 510, a remote app container management module (Remote App Container Manager) 520, or a container window management module (Container Window Manager) 530. may include.

상기 원격 앱 컨테이너 관리 모듈(520)은 하나 또는 복수의 원격 앱 컨테이너부(520-1, 520-2, 520-N)을 생성하거나, 해체/파괴 또는 관리하는 역할을 수행할 수 있다. 상기 원격 앱 컨테이너 관리 모듈(520)은 상기 전송 관리 모듈(510)를 통해 소스 디바이스(10)로부터 전달된 미러링 데이터를 해당 원격 앱 컨테이너부(Remote App Container)(520-1, 520-2, 520-N)로 분배하는 역할을 수행할 수 있다. 상기 원격 앱 컨테이너 관리 모듈(520)은 상기 소스 디바이스(10)의 컨테이너 관리 모듈(420)에 대응하여 마련될 수 있다. The remote app container management module 520 may create, dismantle/destroy, or manage one or more remote app container units 520-1, 520-2, and 520-N. The remote app container management module 520 transmits the mirroring data transmitted from the source device 10 through the transmission management module 510 to the corresponding remote app container unit (Remote App Container 520-1, 520-2, 520). -N) can perform the role of distribution. The remote app container management module 520 may be provided to correspond to the container management module 420 of the source device 10.

상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 하나의 화면 미러링 세션을 담당할 수 있다. 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 고유한 식별자 (Container id)를 가질 수 있다. 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 식별자 (Container id)를 사용하여 상기 소스 디바이스(10)의 컨테이너부(420-1, 420-2, 420-N) 중 하나인 특정 컨테이너부에 대응될 수 있다. The remote app container units 520-1, 520-2, and 520-N may be responsible for one screen mirroring session. The remote app container units 520-1, 520-2, and 520-N may have a unique identifier (Container id). The remote app container units (520-1, 520-2, 520-N) are among the container units (420-1, 420-2, 420-N) of the source device 10 using an identifier (Container id). It may correspond to one specific container unit.

상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 상기 컨테이너 윈도우 관리 모듈(530)에 의해 결정된 해상도 및/또는 DPI를 사용하여 미러링 이미지를 제 1 표시영역 또는 확장 영역에 표시할 수 있다.The remote app container units 520-1, 520-2, and 520-N display a mirrored image in the first display area or extended area using the resolution and/or DPI determined by the container window management module 530. can do.

상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 비디오 디코더 (Video Decoder)(521-1, 521-2, 521-N), 출력 서페이스 (Out Surface)(523-1, 523-2, 523-N) 또는 서페이스 뷰 (Surface View)(525-2, 525-2, 525-N)를 포함할 수 있다. 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 상기 소스 디바이스(10)에서 미러링 기능을 위한 앱의 실행에 응답하여 비디오 디코더(521-1, 521-2, 521-N) 또는 서페이스 뷰(525-2, 525-2, 525-N)를 생성할 수 있다. 상기 비디오 디코더(521-1, 521-2, 521-N)는 상기 전송 관리 모듈(510)를 통해 상기 소스 디바이스(10)로부터 전달된 압축 미러링 데이터에 대한 디코딩을 수행할 수 있다. 상기 출력 서페이스(523-1, 523-2, 523-N)는 상기 비디오 디코더(521-1, 521-2, 521-N)에 의해 압축이 해제된 미러링 데이터를 서페이스 뷰(525-2, 525-2, 525-N)로 전달할 수 있다. 상기 서페이스 뷰(525-2, 525-2, 525-N)는 상기 출력 서페이스(523-1, 523-2, 523-N)를 통해 전달된 미러링 데이터를 사용하여 제 1 표시영역에 미러링 이미지를 표시하거나, 또는 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다. The remote app container unit (520-1, 520-2, 520-N) includes a video decoder (521-1, 521-2, 521-N), an output surface (Out Surface) (523-1, 523-2, 523-N) or Surface View (525-2, 525-2, 525-N). The remote app container unit (520-1, 520-2, 520-N) responds to the execution of the app for the mirroring function in the source device 10 by sending a video decoder (521-1, 521-2, 521-N) ) or surface views (525-2, 525-2, 525-N) can be created. The video decoders 521-1, 521-2, and 521-N may perform decoding on compressed mirroring data transmitted from the source device 10 through the transmission management module 510. The output surfaces 523-1, 523-2, and 523-N display the mirroring data decompressed by the video decoders 521-1, 521-2, and 521-N into surface views 525-2 and 525. -2, 525-N). The surface views 525-2, 525-2, and 525-N display a mirrored image in the first display area using mirroring data transmitted through the output surfaces 523-1, 523-2, and 523-N. Alternatively, you can display an extended mirroring image in the extended display area.

상기 컨테이너 윈도우 관리 모듈(530)은 미러링 기능이 제공될 앱에 대응한 미러링 화면에 대한 해상도 및/또는 DPI를 결정하고, 이를 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)로 제공하는 역할을 수행할 수 있다. The container window management module 530 determines the resolution and/or DPI for the mirroring screen corresponding to the app for which the mirroring function is to be provided, and sends this to the remote app container units 520-1, 520-2, and 520-N. It can perform the role provided by .

상기 전송 관리 모듈(510)은 미러링 요청이나 응답 (ACK) 메시지를 상기 소스 전자장치(10)로 전달하거나, 또는 상기 소스 전자장치(10)로부터 미러링 관련 데이터를 전달받아 상기 원격 앱 컨테이너 관리 모듈(520)로 전달하는 역할을 수행할 수 있다. The transmission management module 510 transmits a mirroring request or response (ACK) message to the source electronic device 10, or receives mirroring-related data from the source electronic device 10 and receives the remote app container management module ( 520).

도 6은 일 실시예에 따른, 외부 디바이스(예: 도 1의 외부 디바이스(20))에서 가상 공간의 화면 표시 예시도이다.FIG. 6 is an example of a screen display of a virtual space on an external device (eg, the external device 20 of FIG. 1) according to an embodiment.

도 6을 참조하면, 외부 디바이스(20)는 가상 공간을 표시하는 디스플레이(600)를 포함할 수 있다. 상기 디스플레이(600)는, 예를 들어, 투명 디스플레이일 수 있다. 상기 투명 디스플레이는 투명창을 가질 수 있다. 일 예로, 상기 외부 디바이스(20)가 웨어러블 디바이스 중 하나인 스마트 글라스인 경우, 사용자는 투명창을 통해 현실 공간의 실제 이미지(610)를 볼 수 있다. 상기 실제 이미지(610)는, 예를 들어, 투시 이미지이거나, 또는 카메라에 의해 촬영된 이미지일 수 있다. 상기 카메라에 의해 촬영되어 상기 디스플레이(600)에 표시되는 이미지는 필요에 따라 가공 또는 변형될 수 있다. Referring to FIG. 6, the external device 20 may include a display 600 that displays a virtual space. The display 600 may be, for example, a transparent display. The transparent display may have a transparent window. For example, if the external device 20 is smart glasses, which are one of the wearable devices, the user can view the actual image 610 of the real space through the transparent window. The actual image 610 may be, for example, a perspective image or an image captured by a camera. The image captured by the camera and displayed on the display 600 may be processed or modified as needed.

일 예에 따르면, 상기 디스플레이(600)는 미러링 기능에 따른 미러링 화면을 제공하기 위한 표시 영역(예: 도 2의 미러링 표시 영역(23))을 포함할 수 있다. 상기 미러링 표시 영역(23)은 제 1 표시영역(620) 또는 확장 표시 영역(640)을 포함할 수 있다. 상기 확장 표시 영역(640)은 사용자의 제스처와 같은 사용자와의 인터랙션에 의해 생성된 이벤트(630)에 응답하여 하나 또는 복수의 확장 표시 영역(641, 642)을 포함할 수 있다. According to one example, the display 600 may include a display area (eg, the mirroring display area 23 in FIG. 2) for providing a mirroring screen according to a mirroring function. The mirroring display area 23 may include a first display area 620 or an extended display area 640. The extended display area 640 may include one or a plurality of extended display areas 641 and 642 in response to an event 630 generated by user interaction, such as a user's gesture.

상기 제 1 표시영역(620)에는 소스 디바이스(예: 도 1의 소스 디바이스(10))로부터 마지막으로 제공된 미러링 데이터(예: 도 2의 미러링 데이터(310))에 의해 미러링 이미지(650)가 표시될 수 있다. 상기 마지막으로 제공된 미러링 데이터(31)는 제1 버퍼 (예: 도 3의 제1 버퍼(241)) 또는 제1 버퍼 영역에 임시로 저장될 수 있다. 상기 제 1 표시영역(620)에 미러링 이미지(650)가 표시되면, 상기 제1 버퍼(241) 또는 제1 버퍼 영역에 임시로 저장된 미러링 데이터(31)는 제2 버퍼(243) 또는 제2 버퍼 영역에도 저장될 수 있다. 상기 제2 버퍼(243) 또는 제2 버퍼 영역에 저장된 이전 미러링 데이터는 사용자의 제스처와 같은 사용자와의 인터랙션에 의해 생성된 이벤트(630)에 응답하여 상기 확장 표시 영역(640)에 확장 미러링 이미지(660)를 표시하기 위해 사용될 수 있다. 상기 확장 미러링 이미지(660)는, 예를 들어, 제1 확장 표시 영역(641)에 표시된 제1 확장 미러링 이미지(661) 또는 제2 확장 표시 영역(642)에 표시된 제2 확장 미러링 이미지(662)를 포함할 수 있다.In the first display area 620, a mirroring image 650 is displayed based on mirroring data (e.g., mirroring data 310 in FIG. 2) last provided from a source device (e.g., source device 10 in FIG. 1). It can be. The last provided mirroring data 31 may be temporarily stored in a first buffer (eg, first buffer 241 in FIG. 3) or a first buffer area. When the mirroring image 650 is displayed in the first display area 620, the first buffer 241 or the mirroring data 31 temporarily stored in the first buffer area is stored in the second buffer 243 or the second buffer. It can also be stored in the area. The previous mirroring data stored in the second buffer 243 or the second buffer area is an extended mirroring image (extended mirroring image) displayed in the extended display area 640 in response to an event 630 generated by interaction with the user, such as a user's gesture. 660). The extended mirroring image 660 may be, for example, a first extended mirroring image 661 displayed on the first extended display area 641 or a second extended mirrored image 662 displayed on the second extended display area 642. may include.

상술한 바와 같이, 사용자의 요청에 응답하여 디스플레이(600)의 확장 표시 영역(640)에는 상기 소스 디바이스(10)로부터 사전에 전달되어 임시로 저장된 미러링 데이터를 사용하여 확장 미러링 이미지(660)을 표시할 수 있다. 이는, 미러링 화면을 확장하기 위하여 리소스를 추가로 소비하지 않을 뿐만 아니라, 효율적인 랜더링 절차를 제공함으로써, 전력 소비를 줄일 수 있다.As described above, in response to the user's request, an extended mirroring image 660 is displayed in the extended display area 640 of the display 600 using mirroring data previously delivered from the source device 10 and stored temporarily. can do. This not only does not consume additional resources to expand the mirroring screen, but also reduces power consumption by providing an efficient rendering procedure.

도면에서는 확장 표시 영역(640)이 제 1 표시영역(620)의 상측 방향으로 이루어짐을 도시하고 있으나, 이에 한정되지는 않을 수 있다. 예컨대, 확장 표시 영역(640)이 마련되는 방향은 사용자와의 인터랙션을 통해 획득한 이벤트 정보를 고려하여 결정할 수 있다. 상기 확장 표시 영역(640)이 마련되는 방향은, 예를 들어, 제 1 표시영역(620)을 기준으로 좌측, 우측 또는 하측 방향 중 하나일 수 있다. 상기 확장 표시 영역(640)은, 예를 들어, 제 1 표시영역(620)을 기준으로 배면 방향으로도 확장이 이루어질 수 있다. 상기 확장 표시 영역(640)은, 예를 들어, 확장이 용이한 방향 (예: 디스플레이(600)에서 확장이 용이한 방향)으로 확장이 이루어질 수도 있다. 상기 확장 표시 영역(640)이 확장되는 방향은 일측 방향으로만 진행되지 않고, 복수의 방향으로 방사 형태로 확장될 수도 있다. 상기 디스플레이(600)에서 이벤트 생성에 응답하여 확장할 수 있는 확장 표시 영역(640)의 개수는 확장 미러링 이미지를 획득하기 위해 사용될 미러링 데이터의 개수에 의해 제한될 수 있다. 상기 미러링 데이터의 개수를 제한할 수 있는 제2 버퍼(243) 또는 제2 버퍼 영역은 필요에 의해 증가 또는 감소될 수 있다. 상기 확장 표시 영역(640)는 미러링 기능이 제공되는 앱의 기능과 범위가 추가로 확장되어 뻗어 나갈 수 있도록 한다. 상기 확장 표시 영역(640)은 외부 디바이스(20)를 착용한 사용자의 시야에서 FOV(field of view) 내의 전체 영역을 활용할 수 있으므로, 미러링 화면을 확대 또는 확장하여 표시할 수 있다. Although the drawing shows that the extended display area 640 is formed in the upper direction of the first display area 620, it may not be limited thereto. For example, the direction in which the expanded display area 640 is provided can be determined by considering event information obtained through interaction with the user. The direction in which the extended display area 640 is provided may be, for example, one of the left, right, or downward directions with respect to the first display area 620 . For example, the expanded display area 640 may be expanded in the rear direction based on the first display area 620. For example, the expanded display area 640 may be expanded in a direction that is easy to expand (eg, a direction that is easy to expand in the display 600). The direction in which the expanded display area 640 expands is not limited to one direction, but may also expand radially in multiple directions. The number of expanded display areas 640 that can be expanded in response to event generation in the display 600 may be limited by the number of mirroring data to be used to obtain an expanded mirroring image. The second buffer 243 or the second buffer area that can limit the number of mirroring data can be increased or decreased as needed. The expanded display area 640 allows the function and scope of the app for which the mirroring function is provided to be further expanded. Since the expanded display area 640 can utilize the entire area within the field of view (FOV) in the field of view of the user wearing the external device 20, the mirroring screen can be displayed by enlarging or expanding it.

상술한 바와 같이, 사용자와의 인터랙션을 통한 이벤트 생성 시마다 미러링 이미지를 표시할 미러링 화면 크기를 확장함으로써, 사용자에게 보다 실감형의 경험을 제공할 수 있다.As described above, a more realistic experience can be provided to the user by expanding the size of the mirroring screen on which the mirroring image is displayed each time an event is generated through interaction with the user.

도 6에서는 하나의 제 1 표시영역(620)을 가정하고 있으나, 복수의 제 1 표시영역이 노출됨에 따라, 확장 표시 영역을 마련하기 위한 디스플레이 영역이 부족한 상황이 발생할 수 있다. 일 예로, 외부 디스플레이(20)는 사용자와의 인터랙션을 통해 입력된 사용자의 요청에 응답하여 디스플레이 영역에 표시된 제 1 표시영역 및/또는 확장 표시 영역을 배치하는 레이아웃을 변경하거나, 또는 일부 표시 영역을 제거 또는 감출 수 있도록 동작할 수 있다.In FIG. 6 , one first display area 620 is assumed. However, as a plurality of first display areas are exposed, a situation may occur where the display area for providing an expanded display area is insufficient. As an example, the external display 20 changes the layout of arranging the first display area and/or extended display area displayed in the display area in response to the user's request input through interaction with the user, or changes some of the display areas. It can be operated to remove or hide.

일 예에 따르면, 도 6에서는 현실 이미지(610)가 디스플레이(600)의 투명창을 통해 사용자가 실제로 볼 수 있도록 함을 가정하고 있으나, 외부 디바이스(20)는 카메라를 사용하여 사용자의 시선을 고려한 전방의 이미지를 촬영하고, 상기 촬영된 이미지를 표시 영역을 통해 노출할 수도 있다. According to one example, in FIG. 6, it is assumed that the real image 610 is actually visible to the user through the transparent window of the display 600, but the external device 20 uses a camera to consider the user's gaze. An image of the front may be captured and the captured image may be exposed through the display area.

일 예에 따르면, 도 6에서는 현실 이미지(610)가 디스플레이(600)의 투명창을 통해 사용자가 실제로 볼 수 있도록 함을 가정하고 있으나, 외부 디바이스(20)는 임의로 마련한 이미지를 표시 영역을 통해 노출할 수도 있다. According to one example, in FIG. 6, it is assumed that the real image 610 is actually visible to the user through the transparent window of the display 600, but the external device 20 exposes an arbitrarily prepared image through the display area. You may.

일 예에 따르면, 외부 디바이스(20)는 디스플레이 영역(600)을 관심 영역과 비 관심 영역으로 구분할 수 있다. 상기 관심 영역은, 예를 들어, 사용자의 시선이 미치는 영역 또는 시선을 추적 (eye tracking)하여 사용자가 바라보는 주변을 고려하여 디스플레이 영역(600)에서 지정할 수 있다. 이 경우, 상기 외부 디바이스(20)는 확장 표시 영역(640)을 디스플레이 영역에서 관심 영역으로 구분된 공간에서 확장 표시 영역(640)을 확장할 수 있다. 상기 확장 표시 영역(640)이 아니더라도, 관심 영역 내에서 고정 (static) 이미지를 제2 버퍼를 통해 운영함으로써, 성능을 향상시킬 수 있다.According to one example, the external device 20 may divide the display area 600 into an interest area and a non-interest area. For example, the area of interest can be designated in the display area 600 by considering the area of the user's gaze or the surroundings the user looks at through eye tracking. In this case, the external device 20 may expand the extended display area 640 in a space divided from the display area to the area of interest. Even if it is not the extended display area 640, performance can be improved by operating a static image within the area of interest through a second buffer.

도 7은 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))의 외부 디바이스(예: 도 1의 외부 디바이스(20))에서 미러링 화면을 확장하는 예시도이다.FIG. 7 is an example diagram of expanding a mirroring screen in an external device (e.g., external device 20 of FIG. 1) of a mirroring system (e.g., mirroring system 1 of FIG. 1) according to an embodiment.

도 7을 참조하면, 외부 디바이스(20)는, 소스 디바이스(예: 도 1의 소스 디바이스(10))로부터 제1 미러링 데이터(720a)를 수신하면, 상기 수신한 제1 미러링 데이터(720a)를 제1 버퍼(예: 도 3의 제1 버퍼(241)) 또는 제1 버퍼 영역에 임시 저장할 수 있다. 상기 외부 디바이스(20)는 디스플레이에 제 1 표시영역을 할당하고, 상기 제1 미러링 데이터(720a)를 사용하여 상기 할당된 제 1 표시영역에 제1 미러링 이미지(710a)를 표시할 수 있다. 상기 외부 디바이스(20)는, 제 1 표시영역에 제1 미러링 이미지(710a)를 표시하면, 상기 제1 버퍼(241) 또는 제1 버퍼 영역에 임시 저장된 제1 미러링 데이터(720a)를 제2 버퍼(예: 도 3의 제2 버퍼(243)) 또는 제2 버퍼 영역에 제1 확장 미러링 데이터(731)로 저장할 수 있다. Referring to FIG. 7, when the external device 20 receives first mirroring data 720a from a source device (e.g., source device 10 of FIG. 1), the external device 20 transmits the received first mirroring data 720a. It may be temporarily stored in the first buffer (e.g., first buffer 241 in FIG. 3) or the first buffer area. The external device 20 may allocate a first display area to the display and display a first mirroring image 710a in the allocated first display area using the first mirroring data 720a. When the external device 20 displays the first mirroring image 710a in the first display area, the first buffer 241 or the first mirroring data 720a temporarily stored in the first buffer area is stored in the second buffer. (For example, the second buffer 243 in FIG. 3) or may be stored as first extended mirroring data 731 in the second buffer area.

상기 외부 디바이스(20)는, 소스 디바이스(10)로부터 제2 미러링 데이터(720b)를 수신하면, 제1 미러링 데이터(720a)를 대신하여 상기 수신한 제2 미러링 데이터(720b)를 제1 버퍼(예: 도 3의 제1 버퍼(241)) 또는 제1 버퍼 영역에 임시 저장할 수 있다. 상기 외부 디바이스(20)는 디스플레이에 할당된 제 1 표시영역에 상기 제2 미러링 데이터(720b)를 사용하여 제2 미러링 이미지(710b)를 표시할 수 있다. 상기 외부 디바이스(20)는, 사용자와의 인터랙션을 통해 확장 미러링 이미지의 표시가 요청(750b)되면, 디스플레이에 확장 표시 영역을 할당하고, 상기 확장 표시 영역에 제2 버퍼(예: 도 3의 제2 버퍼(243)) 또는 제2 버퍼 영역에 저장된 제1 확장 미러링 데이터(731)를 사용하여 제1 확장 미러링 이미지(740b)를 표시할 수 있다. 상기 외부 디바이스(20)는, 제 1 표시영역에 제2 미러링 이미지(710b)를 표시하면, 상기 제1 버퍼(241) 또는 제1 버퍼 영역에 임시 저장된 제2 미러링 데이터(720b)를 제2 버퍼(예: 도 3의 제2 버퍼(243)) 또는 제2 버퍼 영역에 제2 확장 미러링 데이터(733)로 저장할 수 있다. When the external device 20 receives the second mirroring data 720b from the source device 10, the received second mirroring data 720b is stored in the first buffer (720b) instead of the first mirroring data 720a. Example: It can be temporarily stored in the first buffer 241 of FIG. 3) or in the first buffer area. The external device 20 may display a second mirroring image 710b using the second mirroring data 720b in the first display area allocated to the display. When displaying an extended mirroring image is requested 750b through interaction with a user, the external device 20 allocates an extended display area to the display and stores a second buffer (e.g., the second buffer in FIG. 3) in the extended display area. The first extended mirroring image 740b can be displayed using the first extended mirroring data 731 stored in the 2 buffer 243) or the second buffer area. When the external device 20 displays the second mirroring image 710b on the first display area, the second mirroring data 720b temporarily stored in the first buffer 241 or the first buffer area is stored in the second buffer. (For example, the second buffer 243 in FIG. 3) or may be stored as second extended mirroring data 733 in the second buffer area.

상기 외부 디바이스(20)는, 소스 디바이스(10)로부터 제3 미러링 데이터(720c)를 수신하면, 제2 미러링 데이터(720b)를 대신하여 상기 수신한 제3 미러링 데이터(720c)를 제1 버퍼(예: 도 3의 제1 버퍼(241)) 또는 제1 버퍼 영역에 임시 저장할 수 있다. 상기 외부 디바이스(20)는 디스플레이에 할당된 제 1 표시영역에 상기 제3 미러링 데이터(720c)를 사용하여 제3 미러링 이미지(710c)를 표시할 수 있다. 상기 외부 디바이스(20)는, 사용자와의 인터랙션을 통해 확장 미러링 이미지의 표시가 요청(750c, 760c)되면, 디스플레이에 확장 표시 영역을 추가로 할당하고, 기존 및 추가 할당된 확장 표시 영역에 제2 버퍼(예: 도 3의 제2 버퍼(243)) 또는 제2 버퍼 영역에 저장된 제1 확장 미러링 데이터(731) 및 제2 확장 미러링 데이터(733)를 사용하여 제1 확장 미러링 이미지 및 제2 확장 미러링 이미지(740c)를 표시할 수 있다. 상기 외부 디바이스(20)는, 제 1 표시영역에 제3 미러링 이미지(710c)를 표시하면, 상기 제1 버퍼(241) 또는 제1 버퍼 영역에 임시 저장된 제3 미러링 데이터(720c)를 제2 버퍼(예: 도 3의 제2 버퍼(243)) 또는 제2 버퍼 영역에 제3 확장 미러링 데이터(735)로 저장할 수 있다.When the external device 20 receives the third mirroring data 720c from the source device 10, the received third mirroring data 720c is stored in the first buffer (720c) instead of the second mirroring data 720b. Example: It can be temporarily stored in the first buffer 241 of FIG. 3) or in the first buffer area. The external device 20 may display a third mirroring image 710c using the third mirroring data 720c in the first display area allocated to the display. When the display of an extended mirroring image is requested through interaction with the user (750c, 760c), the external device 20 allocates an additional extended display area to the display and displays a second display area in the existing and additionally allocated extended display areas. A first extended mirroring image and a second extended mirroring image using the first extended mirroring data 731 and the second extended mirroring data 733 stored in a buffer (e.g., the second buffer 243 in FIG. 3) or the second buffer area. A mirroring image 740c can be displayed. When the external device 20 displays the third mirroring image 710c on the first display area, the third mirroring data 720c temporarily stored in the first buffer 241 or the first buffer area is stored in the second buffer. (For example, the second buffer 243 in FIG. 3) or it can be stored as third extended mirroring data 735 in the second buffer area.

도 8은 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 미러링 기능을 제공하기 위한 처리 절차를 도시한 도면이다.FIG. 8 is a diagram illustrating a processing procedure for providing a mirroring function in a mirroring system (eg, mirroring system 1 of FIG. 1) according to an embodiment.

도 8을 참조하면, 미러링 시스템(1)은 적어도 두 개의 전자 장치를 포함할 수 있다. 상기 미러링 시스템(1)에 포함된 적어도 두 개의 전자 장치는, 예를 들어, 미러링 데이터(예: 도 2의 미러링 데이터(31))를 제공하는 제1 전자 장치(예: 도 1의 소스 디바이스(10))과, 상기 미러링 데이터(31)를 표시하는 적어도 하나의 제2 전자 장치(예: 도 1의 외부 디바이스(20))를 포함할 수 있다. 상기 제1 전자 장치(10)는 상기 제2 전자 장치(20)에게 외부 전자 장치일 수 있다. 상기 제2 전자 장치(20)는 상기 제1 전자 장치(10)에게 외부 전자 장치일 수 있다. 상기 제1 전자 장치(10)는, 예를 들어, 스마트폰 또는 태블릿 PC와 같이 앱과 같은 프로그램이 설치되거나, 실행될 수 있는 디지털 디바이스일 수 있다. 상기 제2 전자 장치(20)는, 예를 들어, 스마트 글라스와 같은 외부 디바이스(20) 뿐만 아니라, 자체 디스플레이를 구비한 스마트폰, 태블릿 PC 또는 개인용 컴퓨터와 같은 디지털 디바이스일 수 있다. 이하 설명의 편의를 위하여, 제1 전자 장치(10)는 소스 디바이스(10)로 지칭하고, 제2 전자 장치(20)는 외부 디바이스(20)로 지칭한다. 하지만 후술될 실시예에 따른 동작은, 소스 디바이스(10) 또는 외부 디바이스(20)와 같이 디스플레이를 구비한 전자 장치에 동일하게 적용될 수 있다.Referring to FIG. 8, the mirroring system 1 may include at least two electronic devices. At least two electronic devices included in the mirroring system 1 include, for example, a first electronic device (e.g., a source device (e.g., the source device (e.g., FIG. 10)) and at least one second electronic device (eg, the external device 20 of FIG. 1) that displays the mirroring data 31. The first electronic device 10 may be an external electronic device to the second electronic device 20. The second electronic device 20 may be an external electronic device to the first electronic device 10. The first electronic device 10 may be a digital device, such as a smartphone or tablet PC, in which programs such as apps can be installed or executed. The second electronic device 20 may be, for example, an external device 20 such as smart glasses, as well as a digital device such as a smartphone with its own display, a tablet PC, or a personal computer. For convenience of description below, the first electronic device 10 is referred to as a source device 10, and the second electronic device 20 is referred to as an external device 20. However, operations according to embodiments to be described later can be equally applied to electronic devices including a display, such as the source device 10 or the external device 20.

상기 소스 디바이스(10)와 상기 외부 디바이스(20)는, 동작 811에서 연결 절차를 수행할 수 있다. 상기 연결 절차는 소스 디바이스(10) 또는 외부 디바이스(20) 중 적어도 하나가 상대 디바이스를 확인한 후 연결을 요청하는 동작을 포함할 수 있다. 상기 연결 절차는 소스 디바이스(10) 또는 외부 디바이스(20) 중 적어도 하나가 상대 디바이스의 연결 요청에 응답하여 연결을 승낙하는 동작을 포함할 수 있다. 상기 연결 절차에 따른 상세 동작은, 소스 디바이스(10) 또는 외부 디바이스(20)에서 지원하는 통신 방식 별로 마련된 프로토콜 (이하 '통신 프로토콜'이라 칭함)에 의해 정의될 수 있다. 상기 통신 프로토콜은, 예들 들어, 근거리 통신 네트워크(예: 도 18의 제 1 네트워크(1898)) 또는 원거리 통신 네트워크(예: 도 18의 제2 네트워크(1899)와 같은 네트워크 환경에서 통신을 수행하기 위해 마련된 프로토콜일 수 있다. 상기 근거리 통신 네트워크(1898)를 위해 마련된 프로토콜은, 예를 들어, 블루투스, WiFi direct 또는 IrDA 등을 포함할 수 있다. 상기 원거리 통신 네트워크(1899)는, 예를 들어, 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)가 포함될 수 있다. 상기 소스 디바이스(10)와 상기 외부 디바이스(20)는 연결 절차를 수행함으로써, 상대방 디바이스로 데이터(예: 도 2의 미러링 데이터(31) 또는 이벤트 정보(33))를 전송하거나, 또는 상대방 디바이스로부터 데이터(예: 미러링 데이터(31) 또는 이벤트 정보(33))를 수신할 수 있는 무선 채널이 형성된 상태에 진입할 수 있다. 상기 연결 절차는, 예를 들어, 상기 외부 디바이스(20)가 상기 소스 디바이스(10)로 미러링 기능을 요청함에 의해 트리거(trigger)될 수 있다. 하지만, 상기 외부 디바이스(20)에 의한 미러링 기능 요청은, 예를 들어, 연결 절차에 의해 상기 소스 디바이스(10)와 무선 채널이 형성된 후에 이루어질 수도 있다.The source device 10 and the external device 20 may perform a connection procedure in operation 811. The connection procedure may include an operation in which at least one of the source device 10 or the external device 20 confirms the other device and then requests a connection. The connection procedure may include an operation in which at least one of the source device 10 or the external device 20 accepts the connection in response to a connection request from the other device. Detailed operations according to the connection procedure may be defined by protocols (hereinafter referred to as 'communication protocols') provided for each communication method supported by the source device 10 or the external device 20. The communication protocol is used to perform communication in a network environment, for example, a short-range communication network (e.g., the first network 1898 in FIG. 18) or a long-distance communication network (e.g., the second network 1899 in FIG. 18). It may be a prepared protocol. The protocol prepared for the short-range communication network 1898 may include, for example, Bluetooth, WiFi direct, or IrDA. The long-distance communication network 1899 may include, for example, legacy telecommunication networks such as cellular networks, 5G networks, next-generation communications networks, the Internet, or computer networks (e.g., LANs or WANs). By performing a connection procedure, the source device 10 and the external device 20 transmit data (e.g., mirroring data 31 or event information 33 in FIG. 2) to the other device, or transmit data from the other device. A state may be entered in which a wireless channel capable of receiving data (e.g., mirroring data 31 or event information 33) is formed. The connection procedure may be triggered, for example, by the external device 20 requesting a mirroring function from the source device 10. However, the mirroring function request by the external device 20 may be made, for example, after a wireless channel is established with the source device 10 through a connection procedure.

상기 연결 절차 수행에 따른 무선 채널이 형성되면, 상기 소스 디바이스(10)는, 동작 813에서, 앱 실행 이벤트가 생성되는지를 감시할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 상기 외부 디바이스(20)로부터 특정 앱의 실행이 요청될 시에 이를 앱 실행 이벤트가 생성된 것으로 판단할 수 있다. 이를 위해, 상기 소스 디바이스(10)는 상기 외부 디바이스(20)의 미러링 기능 요청에 응답하여 자신이 실행할 수 있는 앱 정보(예: 앱 리스트)를 상기 외부 디바이스(20)로 제공할 수 있다. 상기 앱 정보는, 예를 들어, 상기 소스 디바이스(10)에서 앱이 설치될 시에 만들어진 아이콘들이 표시된 화면(예: 가상 화면 (virtual screen))을 사용하여 생성한 미러링 데이터에 포함될 수 있다.When a wireless channel is established by performing the connection procedure, the source device 10 may monitor whether an app execution event is generated in operation 813. For example, when execution of a specific app is requested from the external device 20, the source device 10 may determine that an app execution event has been generated. To this end, the source device 10 may provide app information (e.g., app list) that it can execute to the external device 20 in response to a mirroring function request from the external device 20. For example, the app information may be included in mirroring data generated using a screen (e.g., a virtual screen) on which icons created when an app is installed in the source device 10 are displayed.

상기 외부 디바이스(20)는, 상기 앱 정보를 수신하면, 상기 앱 정보를 사용하여 미러링 화면(예: 도 6의 미러링 표시 영역(23))을 구성하여 표시할 수 있다. 상기 외부 디바이스(20)는 사용자와의 인터랙션을 통해 상기 미러링 표시 영역(23)에 표시된 미러링 화면에서 특정 앱의 실행을 요청하는 사용자의 입력이 생성함을 인지할 수 있다.When the external device 20 receives the app information, it can configure and display a mirroring screen (e.g., the mirroring display area 23 in FIG. 6) using the app information. The external device 20 may recognize that a user input requesting execution of a specific app is generated on the mirroring screen displayed in the mirroring display area 23 through interaction with the user.

상기 외부 디바이스(20)는 특정 앱에 대한 미러링 기능의 제공이 요청되면, 이를 상기 소스 디바이스(10)와 공유할 수 있다. 이로써, 상기 소스 디바이스(10)과 상기 외부 디바이스(20)는, 동작 817에서, 미러링 및 이벤트 처리 동작을 수행할 수 있다. 상기 미러링 및 이벤트 처리 동작은, 예를 들어, 상기 외부 디바이스(20)가 상기 소스 디바이스(10)에 의해 제공되는 미러링 데이터를 사용하여 제 1 표시영역(620)에 미러링 이미지를 노출하기 위하여 수행하는 동작을 포함할 수 있다. 상기 미러링 및 이벤트 처리 동작은, 예를 들어, 상기 외부 디바이스(20)가 상기 제 1 표시영역(620)에 표시되고 있거나, 이전에 미러링 이미지로 표시되었던 적이 있는 미러링 데이터를 재활용하여 적어도 하나의 확장 표시 영역(640)에서 확장 미러링 이미지를 노출하기 위하여 수행하는 동작을 포함할 수 있다.When the external device 20 requests provision of a mirroring function for a specific app, it can share it with the source device 10. Accordingly, the source device 10 and the external device 20 can perform mirroring and event processing operations in operation 817. The mirroring and event processing operations are, for example, performed by the external device 20 to expose a mirrored image on the first display area 620 using mirroring data provided by the source device 10. Can include actions. For example, the mirroring and event processing operations may be performed by recycling mirroring data that the external device 20 is displaying in the first display area 620 or has previously been displayed as a mirroring image, thereby creating at least one extension. It may include an operation performed to expose an extended mirroring image in the display area 640.

상기 외부 디바이스(20)는, 동작 819에서, 앱 종료 이벤트가 생성하는지를 판단할 수 있다. 상기 앱 종료 이벤트는, 예를 들어, 상기 외부 디바이스(20)가 사용자와의 인터랙션을 통한 사용자의 입력이 미러링 기능의 종료 요청을 지시하는 경우에 생성될 수 있다. In operation 819, the external device 20 may determine whether an app termination event is generated. The app termination event may be generated, for example, when a user's input through interaction with the external device 20 indicates a request to terminate the mirroring function.

상기 앱 종료 이벤트가 생성되면, 상기 외부 디바이스(20)는, 동작 821에서, 소스 디바이스(10)로 앱 종료 요청을 전달할 수 있다. 상기 앱 종료 요청 시, 상기 외부 디바이스(20)는 종료를 요청할 앱을 지시하는 식별정보를 함께 전달할 수 있다. When the app termination event is generated, the external device 20 may transmit an app termination request to the source device 10 in operation 821. When requesting termination of the app, the external device 20 may also transmit identification information indicating the app to be terminated.

상기 소스 디바이스(10)는, 상기 외부 디바이스(20)로부터 앱 종료 요청을 접수하면, 동작 823에서, 해당 앱 및/또는 관련 태스크를 종료할 수 있다. 상기 소스 디바이스(10)는, 동작 825에서, 종료 요청된 해당 앱의 미러링 기능을 위한 관련 자원을 해제할 수 있다. 일 예로, 상기 소스 디바이스(10)는 해제 요청된 앱에 대응하여 마련되었던 컨테이너부(예: 도 4의 컨테이너부(420-1, 420-2, 420-N))을 해제할 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)가 해제되면, 상기 컨테이너부(420-1, 420-2, 420-N)를 구성하는 가상 디스플레이(예: 도 4의 가상 디스플레이(421-1, 421-2, 421-N)), 입력 서페이스(예: 도 4의 입력 서페이스(423-1, 423-2, 423-N)) 및/또는 비디오 인코더(예: 도 4의 비디오 인코더(425-1, 425-2, 425-N))도 함께 폐기될 수 있다. When the source device 10 receives an app termination request from the external device 20, the source device 10 may terminate the corresponding app and/or related task in operation 823. In operation 825, the source device 10 may release related resources for the mirroring function of the app whose termination has been requested. As an example, the source device 10 may release a container unit (e.g., container units 420-1, 420-2, and 420-N in FIG. 4) prepared in response to an app for which release has been requested. When the container units 420-1, 420-2, and 420-N are released, a virtual display constituting the container units 420-1, 420-2, and 420-N (e.g., the virtual display in FIG. 4 ( 421-1, 421-2, 421-N), an input surface (e.g., input surface (423-1, 423-2, 423-N) in FIG. 4), and/or a video encoder (e.g., video in FIG. 4) Encoders (425-1, 425-2, 425-N) may also be discarded together.

상기 외부 디바이스(20)는, 상기 소스 디바이스(10)로 앱 종료 요청을 전달하면, 동작 827에서, 종료 요청된 해당 앱의 미러링 기능을 위한 관련 자원을 해제할 수 있다. 일 예로, 상기 외부 디바이스(20)는 해제 요청된 앱에 대응하여 마련되었던 원격 앱 컨테이너부(예: 도 5의 원격 앱 컨테이너부(520-1, 520-2, 520-N))을 해제할 수 있다. 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)가 해제되면, 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)를 구성하는 비디오 디코더(예: 도 5의 비디오 디코더(521-1, 521-2, 521-N)), 출력 서페이스(예: 도 5의 출력 서페이스(523-1, 523-2, 523-N) 또는 서페이스 뷰(예: 도 5의 서페이스 뷰(525-1, 525-2, 525-N))도 함께 폐기될 수 있다. When the external device 20 transmits an app termination request to the source device 10, in operation 827, the external device 20 may release related resources for the mirroring function of the app for which termination has been requested. As an example, the external device 20 may release a remote app container unit (e.g., remote app container units 520-1, 520-2, 520-N in FIG. 5) prepared in response to an app requested to be released. You can. When the remote app container unit (520-1, 520-2, 520-N) is released, the video decoder (e.g., FIG. 5) constituting the remote app container unit (520-1, 520-2, 520-N) video decoders 521-1, 521-2, 521-N), output surfaces (e.g., output surfaces 523-1, 523-2, 523-N) of FIG. 5, or surface views (e.g., Surface views 525-1, 525-2, 525-N) may also be discarded.

도 9는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 미러링 및 이벤트 처리 동작을 위한 처리 절차를 도시한 도면이다.FIG. 9 is a diagram illustrating processing procedures for mirroring and event processing operations in a mirroring system (eg, mirroring system 1 of FIG. 1) according to an embodiment.

도 9를 참조하면, 소스 디바이스(10)는, 미러링 및 이벤트 처리 동작이 인에이블되면, 동작 911에서, 미러링 기능이 요청된 하나 또는 복수의 앱 각각에 대한 미러링 기능을 제공할 관련 자원을 할당할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 앱 별로 컨테이너부(예: 도 4의 컨테이너부(420-1, 420-2, 420-N))을 생성할 수 있다. 상기 컨테이너부(420-1, 420-2, 420-N)는 가상 디스플레이(예: 도 4의 가상 디스플레이(421-1, 421-2, 421-N)), 입력 서페이스(예: 도 4의 입력 서페이스(423-1, 423-2, 423-N)) 및/또는 비디오 인코더(예: 도 4의 비디오 인코더(425-1, 425-2, 425-N))를 포함할 수 있다. 결과적으로, 상기 소스 디바이스(10)는, 동작 911에서, 미러링 기능할 앱 별로 비디오 인코더(425-1, 425-2, 425-N) 및 가상 디스플레이(421-1, 421-2, 421-N)를 생성할 수 있다.Referring to FIG. 9, when the mirroring and event processing operations are enabled, the source device 10 allocates related resources to provide a mirroring function for each of one or a plurality of apps for which the mirroring function has been requested in operation 911. You can. For example, the source device 10 may create a container unit (eg, container units 420-1, 420-2, and 420-N in FIG. 4) for each app. The container units 420-1, 420-2, and 420-N include a virtual display (e.g., the virtual displays 421-1, 421-2, and 421-N of FIG. 4) and an input surface (e.g., the virtual display of FIG. 4). It may include an input surface (423-1, 423-2, 423-N) and/or a video encoder (e.g., the video encoder (425-1, 425-2, 425-N) of FIG. 4). As a result, in operation 911, the source device 10 configures video encoders 425-1, 425-2, and 425-N and virtual displays 421-1, 421-2, and 421-N for each app to perform the mirroring function. ) can be created.

상기 소스 디바이스(10)는, 동작 913에서, 앱 별로 생성된 가상 디스플레이(421-1, 421-2, 421-N)에서 해당 앱을 실행할 수 있다. 상기 앱을 실행하는 것은, 할당된 메모리 영역에서 해당 앱을 실행하는 것에 해당할 수 있다. 상기 소스 디바이스(10)는 상기 앱을 가상 디스플레이(421-1, 421-2, 421-N)에서 실행함으로써, 상기 가상 디스플레이(421-1, 421-2, 421-N)에 표시될 수 있는 이미지를 미러링 이미지로 획득할 수 있다. 상기 소스 디바이스(10)는 앱 별로 생성된 비디오 인코더(425-1, 425-2, 425-N)를 사용하여 미러링 이미지를 인코딩할 수 있다.In operation 913, the source device 10 may execute the corresponding app on the virtual displays 421-1, 421-2, and 421-N created for each app. Executing the app may correspond to executing the app in an allocated memory area. The source device 10 executes the app on the virtual displays 421-1, 421-2, and 421-N, thereby displaying the app on the virtual displays 421-1, 421-2, and 421-N. The image can be acquired as a mirrored image. The source device 10 can encode a mirroring image using video encoders 425-1, 425-2, and 425-N created for each app.

상기 소스 디바이스(10)는, 동작 915에서, 인코딩에 의해 압축된 미러링 이미지를 포함하는 미러링 데이터를 상기 외부 디바이스(20)로 전송할 수 있다. 상기 미러링 데이터는 미러링 이미지를 미러링하기 위해 사용될 미러링 메타 데이터를 포함할 수 있다. 상기 미러링 메타 데이터는, 예를 들어, 상기 미러링 이미지의 크기, 해상도, DPI 또는 표시 위치와 같은 정보를 포함할 수 있다. 상기 소스 디바이스(10)는, 예를 들어, 앱과 같은 프로그램이 설치되거나, 실행될 수 있는 스마트폰 또는 태블릿 PC와 같은 디지털 디바이스일 수 있다. The source device 10 may transmit mirroring data including a mirroring image compressed by encoding to the external device 20 in operation 915. The mirroring data may include mirroring metadata to be used to mirror the mirrored image. The mirroring metadata may include, for example, information such as size, resolution, DPI, or display position of the mirrored image. The source device 10 may be, for example, a digital device such as a smartphone or tablet PC on which a program such as an app can be installed or executed.

상기 외부 디바이스(20)는 미러링 기능을 제공받을 앱 별로 미러링 기능을 제공할 관련 자원을 할당할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 앱 별로 원격 앱 컨테이너부(예: 도 5의 원격 앱 컨테이너부(520-1, 520-2, 520-N))을 생성할 수 있다. 상기 원격 앱 컨테이너부(520-1, 520-2, 520-N)는 비디오 디코더(521-1, 521-2, 521-N), 출력 서페이스(523-1, 523-2, 523-N) 또는 서페이스 뷰(525-1, 525-2, 525-N)를 생성할 수 있다.The external device 20 may allocate related resources to provide the mirroring function for each app to be provided with the mirroring function. For example, the external device 20 may create a remote app container unit (eg, remote app container units 520-1, 520-2, and 520-N in FIG. 5) for each app. The remote app container unit (520-1, 520-2, 520-N) includes a video decoder (521-1, 521-2, 521-N) and an output surface (523-1, 523-2, 523-N). Alternatively, surface views 525-1, 525-2, and 525-N can be created.

상기 외부 디바이스(20)는, 동작 917에서, 상기 소스 디바이스(10)로부터 전달된 압축된 미러링 데이터에 대한 디코딩을 해당 비디오 디코더(521-1, 521-2, 521-N)에서 수행할 수 있다. 상기 외부 디바이스(20)는, 동작 917에서, 압축이 해제된 미러링 데이터를 사용하여 미러링 이미지를 표시하는 제 1 표시영역(예: 도 6의 제 1 표시영역(620))을 구성할 수 있다. 상기 외부 디바이스(20)는, 동작 917에서, 상기 압축이 해제된 미러링 데이터를 제1 버퍼(예: 도 3의 제1 버퍼(241))에 임시로 저장할 수 있다. 상기 외부 디바이스(20)는 상기 제1 버퍼(241)에 새로운 미러링 데이터가 임시 저장됨에 따라, 기존에 임시로 저장되고 있던 미러링 데이터를 폐기할 수 있다. 상기 외부 디바이스(20)는, 동작 917에서, 상기 제 1 표시영역(620)에 미러링 이미지를 표시하기 위해 사용된 미러링 데이터를 제2 버퍼(예: 도 3의 제2 버퍼(243))에 캐싱할 수 있다.In operation 917, the external device 20 may perform decoding on the compressed mirroring data transmitted from the source device 10 in the corresponding video decoders 521-1, 521-2, and 521-N. . In operation 917, the external device 20 may configure a first display area (eg, first display area 620 in FIG. 6) that displays a mirroring image using decompressed mirroring data. The external device 20 may temporarily store the decompressed mirroring data in a first buffer (eg, the first buffer 241 in FIG. 3) in operation 917. As new mirroring data is temporarily stored in the first buffer 241, the external device 20 may discard the mirroring data that was previously temporarily stored. In operation 917, the external device 20 caches the mirroring data used to display the mirrored image in the first display area 620 in a second buffer (e.g., the second buffer 243 in FIG. 3). can do.

상기 외부 디바이스(20)는, 동작 919에서, 사용자와의 인터랙션을 통해 생성된 이벤트를 감지할 수 있다. 상기 인터랙션은, 예를 들어, 제 1 표시영역(620)에서 사용자의 터치 또는 드래그 동작이 이루어지는 것에 해당할 수 있다. The external device 20 may detect an event generated through interaction with a user in operation 919. For example, the interaction may correspond to a user's touch or drag action in the first display area 620.

상기 사용자와의 인터랙션을 통한 이벤트 생성이 감지되면, 상기 외부 디바이스(20)는, 동작 921에서, 해당 이벤트가 미러링 화면의 확장을 요청하는 것 인지를 판단할 수 있다. 상기 생성된 이벤트가 확장 요청에 해당하지 않으면, 상기 외부 디바이스(20)는, 동작 923에서, 입력 이벤트에 관한 정보를 상기 소스 디바이스(10)로 전달할 수 있다. 상기 생성된 이벤트가 확장 요청에 해당하면, 상기 외부 디바이스(20)는, 동작 927에서, 상기 제2 버퍼(243)에 캐싱되어 있는 미러링 데이터를 사용하여 확장 미러링 이미지를 획득하고, 상기 획득한 확장 미러링 이미지를 표시하도록 확장 표시 영역(예: 도 6의 확장 표시 영역(640))을 구성할 수 있다.When the creation of an event through interaction with the user is detected, the external device 20 may determine whether the event is a request for expansion of the mirroring screen in operation 921. If the generated event does not correspond to an expansion request, the external device 20 may transmit information about the input event to the source device 10 in operation 923. If the generated event corresponds to an extension request, the external device 20 acquires an extension mirroring image using mirroring data cached in the second buffer 243 in operation 927, and An extended display area (e.g., extended display area 640 in FIG. 6) can be configured to display a mirroring image.

상기 외부 디바이스(20)로부터 입력 이벤트에 관한 정보를 접수하면, 상기 소스 디바이스(10)는, 동작 925에서, 상기 입력 이벤트에 관한 정보를 사용하여 해당 이벤트에 따른 동작을 처리할 수 있다. 상기 소스 디바이스(10)는 해당 이벤트에 대한 동작을 처리한 결과가 반영된 미러링 데이터를 구성하여 상기 외부 디바이스(20)로 전송할 수 있다.Upon receiving information about an input event from the external device 20, the source device 10 may process an operation according to the event using the information about the input event in operation 925. The source device 10 may configure mirroring data reflecting the results of processing operations for the event and transmit it to the external device 20.

도 10a 및 도 10b는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 외부 디바이스(예: 도 1의 외부 디바이스(20))가 미러링 이미지를 표시하기 위한 제어 흐름도이다.FIGS. 10A and 10B are control flowcharts for an external device (e.g., external device 20 of FIG. 1) to display a mirrored image in a mirroring system (e.g., mirroring system 1 of FIG. 1) according to an embodiment. am.

도 10a 및 도 10b을 참조하면, 외부 디바이스(20)는, 동작 1011에서, 앱 정보를 사용하여 사용자에 의해 선택된 앱의 실행을 소스 디바이스(예: 도 1의 소스 디바이스(10))로 요청하여 해당 앱이 실행되도록 할 수 있다. 상기 앱 정보는, 예를 들어, 소스 디바이스(예: 도 1의 소스 디바이스(10))에 설치되거나, 또는 실행될 수 있는 앱에 관한 정보일 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 앱 정보를 소스 디바이스(10)로부터 수신할 수 있다. 상기 소스 디바이스(10)가 가상 디스플레이를 생성한 후, 상기 생성한 가상 디스플레이에서 앱이 실행되면, 상기 외부 디바이스(20)는 상기 가상 디스플레이에서 실행된 앱 화면의 미러링 데이터를 상기 소스 디바이스(10)로부터 제공받을 수 있다. Referring to FIGS. 10A and 10B, in operation 1011, the external device 20 requests the source device (e.g., the source device 10 in FIG. 1) to execute the app selected by the user using app information. You can enable the app to run. For example, the app information may be information about apps that can be installed or executed on a source device (eg, source device 10 in FIG. 1). For example, the external device 20 may receive app information from the source device 10. After the source device 10 creates a virtual display and an app is executed on the created virtual display, the external device 20 sends mirroring data of the app screen executed on the virtual display to the source device 10. It can be provided from .

상기 외부 디바이스(20)는, 동작 1013에서, 사용자와의 인터랙션을 통해 미러링 이벤트가 생성하는지를 판단할 수 있다. 상기 미러링 이벤트가 생성하면, 상기 외부 디바이스(20)는, 동작 1015에서, 상기 소스 디바이스(10)로부터 제공받은 미러링 데이터를 사용하여 제 1 표시영역(예: 도 6의 제 1 표시영역(620))에 미러링 이미지를 표시할 수 있다. In operation 1013, the external device 20 may determine whether a mirroring event is generated through interaction with the user. When the mirroring event is generated, the external device 20 displays a first display area (e.g., the first display area 620 of FIG. 6) using the mirroring data provided from the source device 10 in operation 1015. ) can display a mirrored image.

상기 제 1 표시영역(620)에 미러링 이미지를 표시하면, 상기 외부 디바이스(20)는, 동작 1017에서, 디스플레이에 할당된 확장 표시 영역(예: 도 6의 확장 표시 영역(640))에 확장 미러링 이미지가 표시되고 있는지를 판단할 수 있다.When a mirrored image is displayed on the first display area 620, the external device 20 performs extended mirroring on the extended display area allocated to the display (e.g., the extended display area 640 in FIG. 6) in operation 1017. It is possible to determine whether an image is being displayed.

상기 확장 표시 영역(640)에 확장 미러링 이미지가 표시되고 있으면, 상기 외부 디바이스(20)는, 동작 1019에서, 확장 표시 영역(640)을 재 구성할 수 있다. 상기 확장 표시 영역(640)의 재 구성은, 예를 들어, 상기 확장 표시 영역(640)에 표시할 확장 미러링 이미지를 새롭게 구성하여 표시하는 것을 포함할 수 있다. If an extended mirroring image is displayed in the extended display area 640, the external device 20 may reconfigure the extended display area 640 in operation 1019. Reconfiguring the extended display area 640 may include, for example, newly configuring and displaying an extended mirroring image to be displayed on the extended display area 640.

상기 확장 표시 영역(640)에 확장 미러링 이미지가 표시되고 있지 않거나 확장 표시 영역의 재구성이 완료되면, 상기 외부 디바이스(20)는, 동작 1021에서, 제 1 표시영역(620)에 표시된 미러링 이미지를 제2 버퍼(예: 도 3의 제2 버퍼(243))에 캐싱할 수 있다. If the extended mirroring image is not displayed in the extended display area 640 or the reconfiguration of the extended display area is completed, the external device 20 displays the mirrored image displayed in the first display area 620 in operation 1021. Caching can be done in two buffers (e.g., the second buffer 243 in FIG. 3).

상기 외부 디바이스(20)는, 동작 1023에서, 사용자와의 인터랙션을 통해 사용자의 입력이 감지되는지를 판단할 수 있다. 상기 사용자의 입력은, 예를 들어, 제 1 표시영역(620) 또는 확장 표시 영역(640)의 특정 위치를 터치하거나, 드래그 하는 것에 해당할 수 있다.In operation 1023, the external device 20 may determine whether a user's input is detected through interaction with the user. The user's input may correspond to, for example, touching or dragging a specific location of the first display area 620 or the extended display area 640.

상기 사용자의 입력이 감지되면, 상기 외부 디바이스(20)는, 동작 1025에서, 상기 사용자 입력을 분석할 수 있다. 상기 사용자 입력의 분석은, 예를 들어, 상기 사용자 입력의 종류를 획득하기 위한 동작일 수 있다. When the user's input is detected, the external device 20 may analyze the user input in operation 1025. For example, the analysis of the user input may be an operation to obtain the type of the user input.

상기 사용자 입력에 대한 분석이 완료되면, 상기 외부 디바이스(20)는, 동작 1027에서, 해당 사용자의 입력이 확장 표시 영역(640)에 확장 미러링 이미지를 표시할 것을 요청하는 것인지를 판단할 수 있다. 상기 사용자의 입력이 확장 미러링 이미지의 표시를 요청하는 것이 아니라면, 상기 외부 디바이스(20)는, 동작 1031에서, 앱 동작 관련 이벤트가 제 1 표시영역(620)에서 생성된 것인지를 판단할 수 있다.When the analysis of the user input is completed, the external device 20 may determine whether the user's input is a request to display an extended mirroring image in the extended display area 640 in operation 1027. If the user's input does not request display of an extended mirroring image, the external device 20 may determine whether an app operation-related event has been generated in the first display area 620 in operation 1031.

상기 사용자의 입력이 확장 미러링 이미지의 표시를 요청하는 것이라면, 상기 외부 디바이스(20)는, 동작 1029에서, 제2 버퍼(243)에 캐싱된 미러링 데이터를 이용하여 확장 미러링 이미지를 생성하고, 상기 생성한 확장 미러링 이미지를 확장 표시 영역(640)에 표시할 수 있다.If the user's input requests display of an extended mirroring image, the external device 20 generates an extended mirroring image using mirroring data cached in the second buffer 243 in operation 1029, and generates the extended mirroring image. One extended mirroring image can be displayed in the extended display area 640.

상기 사용자의 입력이 앱 관련 이벤트로 제 1 표시영역(620)에서 생성되었다면, 상기 외부 디바이스(20)는, 동작 1033에서, 상기 사용자의 입력에 따른 입력 정보를 상기 소스 디바이스(10)로 전송할 수 있다. 상기 입력 정보는, 예를 들어, 상기 소스 디바이스(10)가 해당 앱을 구동하기 위하여 사용될 수 있다.If the user's input is generated in the first display area 620 as an app-related event, the external device 20 may transmit input information according to the user's input to the source device 10 in operation 1033. there is. The input information may be used, for example, by the source device 10 to run the corresponding app.

상기 사용자의 입력이 앱 관련 이벤트로 확장 표시 영역(640)에서 생성되었다면, 상기 외부 디바이스(20)는, 동작 1035에서, 상기 확장 표시 영역(640)에 매핑된 입력 정보를 상기 소스 디바이스(10)로 전송할 수 있다. 상기 입력 정보는, 예를 들어, 상기 소스 디바이스(10)가 해당 앱을 구동하기 위하여 사용될 수 있다.If the user's input is generated in the extended display area 640 as an app-related event, the external device 20 sends the input information mapped to the extended display area 640 to the source device 10 in operation 1035. It can be sent to . The input information may be used, for example, by the source device 10 to run the corresponding app.

상기 외부 디바이스(20)는, 동작 1037에서, 상기 입력 정보를 사용하여 상기 소스 디바이스(10)가 해당 앱을 구동함으로 인하여 만들어진 미러링 데이터를 수신하고, 상기 수신한 미러링 데이터를 사용하여 제 1 표시영역(620)에 표시될 미러링 이미지를 업데이트할 수 있다. 상기 미러링 데이터는, 예를 들어, 수신 시점에서 제1 버퍼(241)에 임시로 저장될 수 있다. 상기 미러링 데이터는, 예를 들어, 상기 제 1 표시영역(620)에 표시될 미러링 이미지가 업데이트된 후, 제2 버퍼(243)에도 임시 저장될 수 있다.In operation 1037, the external device 20 receives mirroring data created when the source device 10 runs the corresponding app using the input information, and displays the first display area using the received mirroring data. The mirroring image to be displayed at 620 can be updated. For example, the mirroring data may be temporarily stored in the first buffer 241 at the time of reception. The mirroring data may also be temporarily stored in the second buffer 243, for example, after the mirroring image to be displayed on the first display area 620 is updated.

상기 외부 디바이스(20)는, 동작 1039에서, 사용자와의 인터랙션을 통해 미러링 기능의 종료를 요청하는 종료 이벤트가 생성되는지를 판단할 수 있다. 상기 종료 이벤트가 생성되면, 상기 외부 디바이스(20)는, 동작 1041에서, 상기 소스 디바이스(10)로 앱 종료 요청을 전송할 수 있다. 상기 앱 종료 요청은, 예를 들어, 상기 소스 디바이스(10)가 해당 앱을 실행하기 위해 생성한 가상 디스플레이를 폐지하도록 할 수 있다.In operation 1039, the external device 20 may determine whether a termination event requesting termination of the mirroring function is generated through interaction with the user. When the termination event is generated, the external device 20 may transmit an app termination request to the source device 10 in operation 1041. For example, the app termination request may cause the source device 10 to abolish the virtual display created to run the app.

도 11a는 일 실시예에 따른, 미러링 기능을 지원하는 외부 디바이스(예: 도 1의 외부 디바이스(20))에서의 미러링 화면을 확장하는 예시도이다.FIG. 11A is an example diagram of expanding a mirroring screen on an external device (eg, the external device 20 of FIG. 1) that supports a mirroring function, according to an embodiment.

도 11a를 참조하면, 외부 디바이스(20)가 미러링 이미지를 포함하는 미러링 화면을 제 1 표시영역(1110)에 표시하는 경우, 상기 외부 디바이스(20)는 디스플레이(예: 도 6의 디스플레이(600))에서 상기 제 1 표시영역(1110)을 중심으로 확장 미러링 이미지에 의한 확장 미러링 화면을 표시할 표시 영역(예: 도 6의 확장 표시 영역(640))을 확장할 수 있다. Referring to FIG. 11A, when the external device 20 displays a mirroring screen including a mirroring image on the first display area 1110, the external device 20 displays a display (e.g., display 600 of FIG. 6). ), the display area (e.g., the extended display area 640 in FIG. 6) for displaying the extended mirroring screen by the extended mirroring image can be expanded around the first display area 1110.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(1110)에서 -x축 방향(1131)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1110)에 표시되었거나, 또는 현재 제 1 표시영역(1110)에 표시되고 있는 미러링 이미지를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다. According to one example, the external device 20 may additionally allocate one or more extended display areas in the -x-axis direction 1131 in the first display area 1110, for example. The external device 20 displays an extended mirroring image in the one or more extended display areas using a mirroring image that was previously displayed in the first display area 1110 or is currently displayed in the first display area 1110. can be displayed.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(1110)에서 +x축 방향(1133)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1110)에 표시되었거나, 또는 현재 제 1 표시영역(1110)에 표시되고 있는 미러링 이미지를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the +x-axis direction 1133 in the first display area 1110 . The external device 20 displays an extended mirroring image in the one or more extended display areas using a mirroring image that was previously displayed in the first display area 1110 or is currently displayed in the first display area 1110. can be displayed.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(1110)에서 +y축 방향(1121)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1110)에 표시되었거나, 또는 현재 제 1 표시영역(1110)에 표시되고 있는 미러링 이미지를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the +y-axis direction 1121 in the first display area 1110, for example. The external device 20 displays an extended mirroring image in the one or more extended display areas using a mirroring image that was previously displayed in the first display area 1110 or is currently displayed in the first display area 1110. can be displayed.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(1110)에서 -y축 방향(1123)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1110)에 표시되었거나, 또는 현재 제 1 표시영역(1110)에 표시되고 있는 미러링 이미지를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the -y-axis direction 1123 in the first display area 1110, for example. The external device 20 displays an extended mirroring image in the one or more extended display areas using a mirroring image that was previously displayed in the first display area 1110 or is currently displayed in the first display area 1110. can be displayed.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 제 1 표시영역(1110)에서 +z축 방향(1141)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1110)에 표시되었거나, 또는 현재 제 1 표시영역(1110)에 표시되고 있는 미러링 이미지를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the +z-axis direction 1141 in the first display area 1110, for example. The external device 20 displays an extended mirroring image in the one or more extended display areas using a mirroring image that was previously displayed in the first display area 1110 or is currently displayed in the first display area 1110. can be displayed.

도 11b는 일 실시예에 따른, 미러링 기능을 지원하는 외부 디바이스(예: 도 1의 외부 디바이스(20))에서의 미러링 화면을 확장하는 예시도이다.FIG. 11B is an example diagram of expanding a mirroring screen on an external device (eg, external device 20 of FIG. 1) that supports a mirroring function, according to an embodiment.

도 11b를 참조하면, 외부 디바이스(20)가 디스플레이(예: 도 6의 디스플레이(600))에서 미러링 화면을 제공하지 않고, 사용자가 투명창을 통해 소스 디바이스(예: 도 1의 소스 디바이스(10))의 디스플레이(예: 도 3의 디스플레이 모듈(110))를 확인하는 경우, 상기 투명창을 통해 보이는 소스 디바이스(10)의 화면(1150)(이하 '소스 디바이스 화면(1150)'이라 칭함)을 제 1 표시영역(예: 도 11a의 제1 표시영역(1110))으로 사용할 수 있다. 상기 외부 디바이스(20)는, 예를 들어, 투명창을 통해 보이는 소스 디바이스 화면(1150)을 중심으로 미러링 이미지에 의한 확장 미러링 화면을 표시할 표시 영역(예: 도 6의 확장 표시 영역(640))을 확장할 수 있다.Referring to FIG. 11B, the external device 20 does not provide a mirroring screen on the display (e.g., the display 600 of FIG. 6), and the user accesses the source device (e.g., the source device 10 of FIG. 1) through a transparent window. )), the screen 1150 of the source device 10 (hereinafter referred to as the 'source device screen 1150') is visible through the transparent window when checking the display (e.g., the display module 110 in FIG. 3). can be used as the first display area (e.g., the first display area 1110 in FIG. 11A). For example, the external device 20 has a display area (e.g., the extended display area 640 of FIG. 6) to display an extended mirroring screen by a mirroring image centered on the source device screen 1150 visible through a transparent window. ) can be expanded.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 소스 디바이스 화면(1150)에서 -x축 방향(1171)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 제공된 미러링 데이터를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다. According to one example, the external device 20 may additionally allocate one or a plurality of extended display areas in the -x-axis direction 1171 on the source device screen 1150, for example. The external device 20 may display an extended mirroring image on the one or more extended display areas using mirroring data provided by the source device 10.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 소스 디바이스 화면(1150)에서 +x축 방향(1173)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 제공된 미러링 데이터를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the +x-axis direction 1173 on the source device screen 1150, for example. The external device 20 may display an extended mirroring image on the one or more extended display areas using mirroring data provided by the source device 10.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 소스 디바이스 화면(1150)에서 +y축 방향(1161)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 제공된 미러링 데이터를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or a plurality of extended display areas in the +y-axis direction 1161 on the source device screen 1150, for example. The external device 20 may display an extended mirroring image on the one or more extended display areas using mirroring data provided by the source device 10.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 소스 디바이스 화면(1150)에서 -y축 방향(1163)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 제공된 미러링 데이터를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the -y-axis direction 1163 on the source device screen 1150, for example. The external device 20 may display an extended mirroring image on the one or more extended display areas using mirroring data provided by the source device 10.

일 예에 따르면, 상기 외부 디바이스(20)는, 예를 들어, 소스 디바이스 화면(1150)에서 +z축 방향(1181)으로 하나 또는 복수의 확장 표시 영역을 추가로 할당할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)에 의해 제공된 미러링 데이터를 사용하여 상기 하나 또는 복수의 확장 표시 영역에 확장 미러링 이미지를 표시할 수 있다.According to one example, the external device 20 may additionally allocate one or more extended display areas in the +z-axis direction 1181 on the source device screen 1150, for example. The external device 20 may display an extended mirroring image on the one or more extended display areas using mirroring data provided by the source device 10.

상술한 도 11a와 도 11b에서는 사용자와의 인터랙션을 통해 획득한 입력 정보를 기반으로 확장 표시 영역을 할당할 위치 또는 진행 방향 (예: +x축 방향, -x축 방향, +y축 방향, -y축 방향, +z축 방향 또는 -z축 방향)을 결정하도록 하고 있으나, 결정된 위치 또는 진행 방향으로 확장 표시 영역을 마련할 공간이 부족할 경우에는, 제 1 표시영역의 위치를 이동시키거나, 확장 표시 영역을 마련할 위치를 변경하거나, 또는 확장 표시 영역이 마련될 방향을 변경할 수도 있다. 이를 위해, 상기 외부 디바이스(20)는 사용자와의 추가로 인터랙션을 수행할 수도 있다.In FIGS. 11A and 11B described above, the location or direction in which the expanded display area will be allocated based on input information obtained through interaction with the user (e.g., +x-axis direction, -x-axis direction, +y-axis direction, - y-axis direction, +z-axis direction, or -z-axis direction), but if there is not enough space to prepare an expanded display area in the determined position or direction, the position of the first display area is moved or expanded. The location where the display area will be provided can be changed, or the direction where the extended display area will be provided can be changed. To this end, the external device 20 may additionally perform interaction with the user.

도 12는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 3차원 미러링 이미지를 이용하여 미러링 화면을 확장하는 예시도이다.FIG. 12 is an example diagram of expanding a mirroring screen using a 3D mirroring image in a mirroring system (e.g., mirroring system 1 of FIG. 1) according to an embodiment.

도 12를 참조하면, 미러링 시스템(1)에 포함된 외부 디바이스(예: 도 1의 외부 디바이스(20))는 소스 디바이스(10)로부터 제공되는 3차원 미러링 데이터를 사용하여 제 1 표시영역(1210)에 3차원 미러링 이미지를 표시할 수 있다. Referring to FIG. 12, an external device included in the mirroring system 1 (e.g., the external device 20 in FIG. 1) uses three-dimensional mirroring data provided from the source device 10 to display the first display area 1210. ) can display a 3D mirroring image.

일 예에 따르면, 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1210)에 표시되었던 3차원 미러링 데이터를 재활용하거나, 상기 소스 디바이스(10)로부터 3차원 미러링 데이터가 새롭게 제공됨에 따라 제1 표시 영역(1210)에 표시되고 있는 3차원 미러링 데이터를 재활용하여 상측 방향(+y축 방향)으로 확장된 확장 표시 영역(1220)에 3차원 확장 미러링 이미지를 표시할 수 있다. According to one example, the external device 20 recycles 3D mirroring data previously displayed in the first display area 1210, or as 3D mirroring data is newly provided from the source device 10, the external device 20 displays the first display area 1210. The 3D mirroring data displayed in the display area 1210 can be recycled to display a 3D expanded mirroring image in the extended display area 1220 expanded in the upward direction (+y-axis direction).

일 예에 따르면, 상기 외부 디바이스(20)는 이전에 제 1 표시영역(1210)에 표시되었던 3차원 미러링 데이터를 재활용하거나, 상기 소스 디바이스(10)로부터 3차원 미러링 데이터가 새롭게 제공됨에 따라 제1 표시 영역(1210)에 표시되고 있는 3차원 미러링 데이터를 재활용하여 우측 방향(+x축 방향)으로 확장된 확장 표시 영역(1230)에 해당하는 제1 확장 표시 영역(1231)에 3차원 확장 미러링 이미지를 표시할 수 있다. 이 경우, 상기 외부 디바이스(20)는 이전에 제1 확장 표시 영역(1231)에 표시되고 있던 3차원 확장 미러링 이미지를 제2 확장 표시 영역(1233)에 표시할 수 있다.According to one example, the external device 20 recycles 3D mirroring data previously displayed in the first display area 1210, or as 3D mirroring data is newly provided from the source device 10, the external device 20 displays the first display area 1210. A 3D expanded mirroring image is displayed in the first expanded display area 1231 corresponding to the expanded display area 1230 expanded to the right (+x-axis direction) by recycling the 3D mirroring data displayed in the display area 1210. can be displayed. In this case, the external device 20 may display a 3D expanded mirroring image that was previously displayed on the first expanded display area 1231 on the second expanded display area 1233.

도 13은 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))을 구성하는 외부 디바이스(예: 도 1의 외부 디바이스(20))에서 확장 표시 영역(예: 도 6의 확장 표시 영역(640))에서의 인터랙션을 제공하는 예시도이다.FIG. 13 shows an extended display area (e.g., of FIG. 6 ) in an external device (e.g., external device 20 of FIG. 1 ) constituting a mirroring system (e.g., mirroring system 1 of FIG. 1 ), according to an embodiment. This is an example diagram providing interaction in the extended display area 640.

도 13을 참조하면, 외부 디바이스(예: 도 1의 외부 디바이스(20))는 미러링 이미지가 표시된 제 1 표시화면(1310)을 뒤쪽에 감춰지도록 바로 이전의 미러링 이미지가 표시된 확장 표시 화면(1330)을 배치할 수 있다. 상기 외부 디바이스(20)는 미러링이 수행된 회수(예: TAB 회수)에 대응하여 각 회수에 대응한 미러링 이미지를 확장하여 독립된 확장 표시 화면(1340)으로 노출시킬 수 있다. 상기 미러링 회수에 대응하여 확장 표시 화면(1330, 1341, 1343)을 확장하는 것은, 예를 들어, 상기 외부 디바이스(20)가 사용자와의 인터랙션을 통해 사용자의 탭 회수에 응답하여 수행될 수 있다.Referring to FIG. 13, an external device (e.g., the external device 20 in FIG. 1) displays an extended display screen 1330 on which the previous mirrored image is displayed so that the first display screen 1310 on which the mirrored image is displayed is hidden behind. can be placed. The external device 20 may expand the mirroring image corresponding to each number of times in response to the number of times mirroring has been performed (e.g., TAB number of times) and display it as an independent expanded display screen 1340. For example, expanding the extended display screens 1330, 1341, and 1343 in response to the number of mirroring may be performed by the external device 20 in response to the number of taps of the user through interaction with the user.

상기 외부 디바이스(20)는, 사용자와의 인터랙션(예: 스크롤)을 통해 위쪽 방향(+y 축 방향)으로 확장 표시 화면(1320)을 표시할 것을 요청하는 입력을 인지하면, 제 1 표시화면(1310)의 위쪽 방향 (+y 축 방향)으로 연접하여 확장 표시 화면(1320)을 노출시킬 수 있다. When the external device 20 recognizes an input requesting to display the expanded display screen 1320 in the upward direction (+y axis direction) through user interaction (e.g., scrolling), it displays the first display screen ( The expanded display screen 1320 can be exposed by connecting the screens 1310 in the upward direction (+y axis direction).

상술한 바와 같이 외부 디바이스(20)는 사용자와의 인터랙션을 통해 사용자의 제스처 형태에 따라 확장 표시 화면의 표시 방향(예: +x축 방향, -x축 방향, +y축 방향, -y축 방향, +z축 방향 또는 -z축 방향)이 결정될 수 있다.As described above, the external device 20 controls the display direction of the expanded display screen (e.g., +x-axis direction, -x-axis direction, +y-axis direction, -y-axis direction) according to the user's gesture type through interaction with the user. , +z-axis direction or -z-axis direction) may be determined.

일 예에 따르면, 외부 디바이스(20)는 제 1 표시화면 또는 확장 표시 화면에 대하여 영역 또는 범위 별로 인터랙션이 생성할 시에 수행할 명령을 테이블로 미리 마련할 수 있다. 상기 외부 디바이스(20)는, 사용자와의 인터랙션을 수행하는 중에 제 1 표시화면 또는 확장 표시 화면의 특정 영역 또는 범위에서 이벤트가 생성하면, 상기 이벤트가 생성한 특정 영역 또는 범위에 대하여 테이블에서 정의하고 있는 명령에 따른 동작을 실행할 수 있다. 상기 테이블은 상기 외부 디바이스(20) 외에도 외부 서버에 마련될 수도 있다. 상기 테이블은 소프트웨어적으로 마련될 수도 있다. 상기 테이블에는 특정 액티비티 (activity)나 화면이 실행되는 시점에서의 구현에 따라, 새로운 명령이 추가될 수도 있다.According to one example, the external device 20 may prepare a table in advance of commands to be performed when an interaction is created for each area or range with respect to the first display screen or the extended display screen. When an event is generated in a specific area or range of the first display screen or extended display screen while interacting with the user, the external device 20 defines the specific area or range generated by the event in a table. You can execute actions according to the commands provided. The table may be provided on an external server in addition to the external device 20. The table may also be prepared in software. New commands may be added to the table, depending on the implementation at the time a specific activity or screen is executed.

일 예에 따르면, 사용자와의 인터랙션을 통한 모션 (예: Activity터치, Scroll 등)에 따른 명령은 앱 별로 마련하지 않고, 공통으로 적용될 수 있는 기본적인 명령은 모든 앱에서 동일하게 적용될 수도 있다. According to one example, commands according to motion through interaction with the user (e.g., Activity touch, Scroll, etc.) are not provided for each app, and basic commands that can be commonly applied may be applied equally to all apps.

일 예에 따르면, 소프트웨어에서 콜백 구조로 상황 별로 수행할 방법을 달리 구현하는 것도 가능할 수 있다. According to one example, it may be possible to implement different methods for each situation using a callback structure in software.

하기 <표 1>은 인터랙션 별로 수행하는 명령을 정의한 테이블의 일 예를 보이고 있다.<Table 1> below shows an example of a table defining commands performed for each interaction.

1영역 터치1 area touch - 1번 액티비티의 정보 (Intent)로 해당 화면을 실행하여 해당 액티비티를 탑(TOP)에 띄움
- 액티비티 이동 후, 터치한 곳이 터치이벤트가 생성되는 곳이면 해당 명령 실행
- Run the screen using the information (Intent) of activity number 1 and float the activity on the TOP.
- After moving the activity, if the touched area is where a touch event is generated, the corresponding command is executed
2영역 터치2 area touch - 1번 액티비티의 정보 (Intent)로 해당 화면을 실행하여 해당 액티비티를 탑(TOP)에 띄움- 액티비티 이동 후, 터치한 곳이 터치 이벤트가 생성되는 곳이면 해당 명령 실행- Run the screen with the information (Intent) of activity 1 and float the activity on the TOP - After moving the activity, if the touched area is where a touch event is generated, execute the corresponding command 3영역 터치3 area touch - 3번 영역의 X, Y좌표 범위만큼 해당 페이지 스크롤 이동- 스크롤 이동 후 터치한 곳이 터치 이벤트가 생성되는 곳이면 해당 명령 실행- Scroll the page as much as the

일 예에 따르면, 외부 디바이스(20)는 스크롤 이동 후 터치한 곳이 터치 이벤트가 생성되는 곳이면, 해당 명령 실행할 때에 해당 페이지가 동적인 경우, 다시 페이지를 띄워서 터치 입력이 제공된 시점에 다른 상태로 변경되어 있을 수 있다. 이 경우, 외부 디바이스(20)에 마련된 버퍼가 보유한 이미지와 새로 뜬 이미지의 픽셀 값 차이를 통해 해당 영역이 상호 작용(Interactable)할 수 있는지를 판단할 수 있다.According to one example, if the area touched after scrolling is where a touch event is generated, and the page is dynamic when the command is executed, the external device 20 opens the page again and returns it to a different state at the time the touch input is provided. It may have changed. In this case, it can be determined whether the corresponding area is interactable through the difference in pixel values between the image held by the buffer provided in the external device 20 and the newly displayed image.

일 예에 따르면, 외부 디바이스(20)는 새로운 미러링 이미지가 제 1 표시영역에 미러링됨에 따라, 이전에 표시되었던 미러링 이미지가 확장 표시 영역으로 이동하여 표시될 수 있다. 이 경우, 사용자가 확장 표시 영역에 노출된 확장 미러링 이미지의 특정 위치를 터치할 시, 상기 외부 디바이스(20)는 확장 표시 영역에 표시된 확장 미러링 이미지를 제 1 표시영역으로 이동시켜 표시할 수 있다. 상기 외부 디바이스(20)는 제 1 표시영역에 이동하여 표시된 미러링 이미지에서 확장 표시 영역에 표시되었을 시에 사용자에 의해 터치된 특정 위치에 대응한 위치가 터치된 것을 간주하여 이벤트를 생성시킬 수도 있다.According to one example, the external device 20 may display a previously displayed mirrored image by moving it to the extended display area as a new mirrored image is mirrored in the first display area. In this case, when the user touches a specific position of the extended mirroring image exposed in the extended display area, the external device 20 can move the extended mirroring image displayed in the extended display area to the first display area and display it. The external device 20 may generate an event by considering that a position corresponding to a specific position touched by the user has been touched when the mirrored image moved to the first display area is displayed in the expanded display area.

도 14는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 확장 표시 영역을 관리하기 위한 히스토리 계층도 (history hierarchy tree)이다.FIG. 14 is a history hierarchy tree for managing an extended display area in a mirroring system (eg, mirroring system 1 of FIG. 1) according to an embodiment.

도 14를 참조하면, 미러링 시스템(1)에서 미러링 기능을 위한 확장 영역을 제공하는 외부 디바이스(예: 도 1의 외부 디바이스(20))는 사용자와의 인터랙션(예: 도 2의 인터랙션(25))을 통해 디스플레이(예: 도 6의 디스플레이(600))에 확장 표시 영역(예: 도 6의 확장 표시 영역(640))이 할당될 수 있다. 상기 디스플레이(600)에 할당되는 확장 표시 영역(640)은 시간의 흐름에 따라 계층 구조를 가질 수 있다. 상기 계층 구조는 최상위 계층인 제1 계층 (어세스먼트(assessment)(1410)을 기준으로 제2 계층 (Group1, Group2, Group3)(1420), 제3 계층 (Sub_Group11, Sub_Group12, Sub_Group21, Sub_Group22, Sub_Group31, Sub_Group32)(1430) 또는 제4 계층 (Question)(1440)을 포함할 수 있다. 일 예로, 외부 디바이스(20)는 디스플레이(600)에서 확장 미러링 이미지를 표시하는 확장 표시 영역(640)을 히스토리 계층도를 구성하는 계층들 중 하나에 매핑 하여 관리할 수 있다. 예컨대, 사용자와 특정 인터랙션이 실행될 시, 다른 가지의 영역을 제거하는 등의 인터랙션에 의한 계층 관리를 수행할 수 있다.Referring to FIG. 14, an external device (e.g., external device 20 in FIG. 1) that provides an extension area for the mirroring function in the mirroring system 1 interacts with the user (e.g., interaction 25 in FIG. 2). ) An extended display area (e.g., the extended display area 640 of FIG. 6) may be allocated to the display (e.g., the display 600 of FIG. 6). The extended display area 640 allocated to the display 600 may have a hierarchical structure over time. The hierarchical structure is based on the first layer (assessment) 1410, which is the highest layer, the second layer (Group1, Group2, Group3) (1420), and the third layer (Sub_Group11, Sub_Group12, Sub_Group21, Sub_Group22, Sub_Group31 , Sub_Group32) 1430, or a fourth layer (Question) 1440. As an example, the external device 20 may display an extended display area 640 that displays an extended mirroring image on the display 600 as history. It can be managed by mapping to one of the layers constituting the hierarchy. For example, when a specific interaction with a user is performed, hierarchy management can be performed by interaction, such as removing other areas.

도 15는 일 실시예에 따른, 미러링 시스템(예: 도 1의 미러링 시스템(1))에서 확장 표시 영역을 자체적으로 운영하는 예시도이다.FIG. 15 is an example diagram of a mirroring system (eg, the mirroring system 1 of FIG. 1 ) operating an extended display area on its own, according to an embodiment.

도 15를 참조하면, 외부 디바이스(20)에서 직접 앱과 같은 소프트웨어를 실행하여 운영할 수 있는 경우, 상기 외부 디바이스(20)는 소스 디바이스(10)의 가상 디스플레이에서 실행한 앱에 관한 미러링 데이터(1510)를 상기 소스 디바이스(10)로부터 제공받을 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)로부터 제공된 미러링 데이터(1510)를 사용하여 제 1 표시영역(1520)에 미러링 이미지를 표시할 수 있다. 상기 외부 디바이스(20)는 상기 소스 디바이스(10)의 가상 디스플레이에서 실행된 앱과 동일 앱을 자체적으로 실행시킬 수 있다. 상기 외부 디바이스(20)는 자체적으로 실행된 앱에 따른 화면(1530)을 확장 표시 영역(1540)에 표시할 수 있다. Referring to FIG. 15, when software such as an app can be run and operated directly on the external device 20, the external device 20 displays mirroring data (mirroring data) about the app executed on the virtual display of the source device 10. 1510) can be provided from the source device 10. The external device 20 may display a mirroring image on the first display area 1520 using mirroring data 1510 provided from the source device 10. The external device 20 may itself execute the same app as the app executed on the virtual display of the source device 10. The external device 20 may display a screen 1530 according to an app executed by itself on the extended display area 1540.

도 16은 일 실시예에 따른, 외부 디바이스(예: 도 1의 외부 디바이스(20))에서 미러링 이미지를 시간 공간에서 확장한 예를 도시한 도면이다.FIG. 16 is a diagram illustrating an example of expanding a mirroring image in time and space in an external device (eg, the external device 20 of FIG. 1) according to an embodiment.

도 16을 참조하면, 외부 디바이스(20)는 제 1 표시영역(1610)에 미러링 이미지(1620)(이하 '기본 미러링 이미지(1620)'이라 칭함)를 표시할 수 있다. 상기 외부 디바이스(20)는, 미래 예측 이미지 요청 이벤트가 생성되면, 제 1 표시영역(620)에 표시된 미러링 이미지를 복사하여 복제 미러링 이미지(1640)를 획득할 수 있다. 상기 외부 디바이스(20)는 복제 미러링 이미지(1640)를 렌더링하여 상기 제 1 표시영역(1610)에 표시된 기본 미러링 이미지(1620)가 가려지도록 할당된 확장 표시 영역(1630)에 표시할 수 있다.Referring to FIG. 16 , the external device 20 may display a mirroring image 1620 (hereinafter referred to as 'basic mirroring image 1620') in the first display area 1610. When a future prediction image request event is generated, the external device 20 may copy the mirroring image displayed on the first display area 620 to obtain a duplicate mirroring image 1640. The external device 20 may render a duplicate mirroring image 1640 and display it on the allocated extended display area 1630 so as to obscure the basic mirroring image 1620 displayed on the first display area 1610.

상기 외부 디바이스(20)는 복제 미러링 이미지(1640)를 표시한 확장 표시 영역(1630)에서 제공되는 입력에 대응한 동작을 수행하여 미래 예측 이미지를 획득할 수 있다. 상기 미래 예측 이미지는 상기 외부 디바이스(20)에 렌더링될 수 있다. 상기 랜더링 이후 사용자와의 인터랙션을 통해, 미래 예측 이미지(1660)는 확장 표시 영역(1650)에 표시될 수 있다.The external device 20 may obtain a future prediction image by performing an operation corresponding to an input provided from the extended display area 1630 displaying the duplicate mirroring image 1640. The future prediction image may be rendered on the external device 20. After the rendering, through interaction with the user, the future prediction image 1660 may be displayed on the extended display area 1650.

도 17은 일 실시예에 따른, 외부 디바이스(예: 도 1의 외부 디바이스(20))에서 미러링 이미지를 시간 공간에서 확장하기 위한 제어 흐름도이다.FIG. 17 is a control flowchart for expanding a mirroring image in time and space in an external device (eg, the external device 20 of FIG. 1), according to an embodiment.

도 17을 참조하면, 외부 디바이스(20)는, 동작 1711에서, 미래 예측 이미지 요청 이벤트의 발생을 확인할 수 있다. 상기 미래 예측 이미지 요청 이벤트는, 예를 들어, 외부 디바이스(20)가 사용자와의 인터랙션을 통해 발생될 수 있다. 상기 미래 예측 이미지 요청 이벤트는 현재 제 1 표시영역(예: 도 16의 제 1 표시영역(1610))에 표시된 기본 미러링 이미지(예; 도 16의 기본 미러링 이미지(1620)) 다음으로 발생할 것이 예상되는 미러링 이미지의 예측을 요청하는 것일 수 있다. Referring to FIG. 17, the external device 20 may confirm the occurrence of a future prediction image request event in operation 1711. For example, the future prediction image request event may be generated through the external device 20's interaction with the user. The future predictive image request event is expected to occur next to the basic mirroring image (e.g., basic mirroring image 1620 of FIG. 16) currently displayed in the first display area (e.g., first display area 1610 of FIG. 16). This may be requesting prediction of a mirroring image.

일 예로, 외부 디바이스(20)는 특정 상황에서 현재 미러링 이미지(예: 도 16의 기본 미러링 이미지(1620))를 홀드 (hold)한 상태에서 미래에 발생될 것으로 예상되는 적어도 하나의 인터랙션의 입력에 응답하여 해당 이벤트에 따른 동작을 실행하며, 상기 실행된 동작의 결과물로 확보한 미러링 이미지(예: 도 16의 미래 예측 이미지(1660))를 미러링 표시 영역(예: 도 16의 확장 표시 영역(1650))을 통해 시각화할 수 있다.For example, in a specific situation, the external device 20 inputs at least one interaction expected to occur in the future while holding the current mirroring image (e.g., the basic mirroring image 1620 of FIG. 16). In response, an operation according to the event is executed, and the mirroring image obtained as a result of the executed operation (e.g., the future prediction image 1660 of FIG. 16) is displayed in the mirroring display area (e.g., the extended display area 1650 of FIG. 16). )) can be used to visualize it.

보다 구체적으로, 외부 디바이스(20)는, 동작 1713에서, 미래 예측 이미지가 요청된 앱이 선형 이동이 가능한 앱인지를 판단할 수 있다. 상기 선형 이동이 가능하다는 것은, 선형 이동이 자유롭다는 의미일 수 있다. 일 예로, 선형 이동이 가능한 앱은 미러링 이미지의 변경이 빈번하게 발생하지 않는 앱을 포함할 있다. 상기 선형 이동이 가능한 앱은, 예를 들어, 일기 예보 기능을 제공하는 앱일 수 있다.More specifically, in operation 1713, the external device 20 may determine whether the app for which a future prediction image is requested is an app capable of linear movement. The fact that the linear movement is possible may mean that the linear movement is free. As an example, apps capable of linear movement may include apps in which mirroring image changes do not occur frequently. The app capable of linear movement may be, for example, an app that provides a weather forecast function.

상기 외부 디바이스(20)는, 동작 1715에서, 일정 시간 동안 사용자와의 인터랙션이 발생하지 않았는지를 판단할 수 있다. 상기 일정 시간 동안 사용자와의 인터랙션이 발생하지 않는다는 것은, 미러링 이미지가 변경될 가능성이 희박한 것으로 예측할 수 있기 때문이다. 상기 일정 시간 동안 인터랙션이 발생하지 않는다는 것은, 제 1 표시영역(1610)에 표시된 기본 미러링 이미지(1620)에 제공하기 위하여 실행 중인 앱이 사용자와의 빈번한 인터랙션을 요구하지 않은 앱인 경우에 해당할 수 있다.In operation 1715, the external device 20 may determine whether interaction with the user has not occurred for a certain period of time. The fact that no interaction with the user occurs during the given period of time means that it can be predicted that the possibility of the mirroring image being changed is slim. The fact that no interaction occurs for the certain period of time may correspond to the case where the app running to provide the basic mirroring image 1620 displayed in the first display area 1610 is an app that does not require frequent interaction with the user. .

해당 앱이 선형 이동이 가능하고, 일정 시간 동안 인터랙션이 발생하지 않았다면, 상기 외부 디바이스(20)는, 동작 1717에서, 제 1 표시영역(1610)에 표시된 기본 미러링 이미지(1620)를 복사하여 상기 제 1 표시영역(1610)의 가림막 역할을 하도록 렌더링을 수행할 수 있다. 일 예로, 상기 외부 디바이스(20)는 복사한 미러링 이미지(예: 도 16의 복제 미러링 이미지(1640))를 렌더링하여 상기 제 1 표시영역(1610)에 표시된 기본 미러링 이미지(1620)가 가려지도록 확장 표시 영역(1650)에 미래 예측 이미지(1660)를 표시할 수 있다.If the app is capable of linear movement and no interaction has occurred for a certain period of time, the external device 20 copies the basic mirroring image 1620 displayed in the first display area 1610 in operation 1717 and displays the first mirroring image 1620 in the first display area 1610. 1 Rendering can be performed to serve as a screen for the display area 1610. As an example, the external device 20 renders a copied mirroring image (e.g., the duplicate mirroring image 1640 of FIG. 16) and expands it to cover the basic mirroring image 1620 displayed in the first display area 1610. A future prediction image 1660 may be displayed in the display area 1650.

상기 외부 디바이스(20)는, 동작 1719에서, 복제한 미러링 이미지(1640)를 표시한 영역 (예: 도 16의 확장 표시 영역(1630))에 입력을 제공하여 지정된 동작이 수행되도록 하고, 상기 지정된 동작을 수행하여 미래 예측 이미지(1660)를 획득할 수 있다. 상기 미래 예측 이미지(1660)를 획득하기 위한 동작의 수행 단계 (depth)는 한번 이상이 수행될 수 있다.In operation 1719, the external device 20 provides an input to the area displaying the duplicate mirrored image 1640 (e.g., the expanded display area 1630 of FIG. 16) to perform a specified operation, and performs the specified operation. A future prediction image 1660 can be obtained by performing an operation. The step (depth) of performing the operation to obtain the future prediction image 1660 may be performed more than once.

상기 미래 예측 이미지(1660)를 획득하면, 상기 외부 디바이스(20)는, 동작 1721에서, 상기 획득한 미래 예측 이미지(1660)를 제2 버퍼(예: 도 3의 제2 버퍼(243))를 이용하여 렌더링할 수 있다. 상기 랜더링 이후 미래 예측 이미지(1660)는 사용자와의 인터랙션을 통해 확장 표시 영역(1650)을 통해 사용자에게 시각적으로 노출될 수 있다.When the future prediction image 1660 is acquired, the external device 20 stores the acquired future prediction image 1660 in a second buffer (e.g., the second buffer 243 in FIG. 3) in operation 1721. You can render using . After the rendering, the future prediction image 1660 may be visually exposed to the user through the extended display area 1650 through interaction with the user.

상기 외부 디바이스(20)는, 동작 1723에서, 상기 가림막을 제거함으로써, 기존에 제 1 표시영역(1610)에 표시되었던 기본 미러링 이미지(1620)가 다시 사용자에게 노출될 수 있도록 한다.In operation 1723, the external device 20 removes the shield so that the basic mirroring image 1620 previously displayed in the first display area 1610 can be exposed to the user again.

상술한 바로 인하여, 외부 디바이스(20)에서는 사용자가 다음 화면 미리 보기 등의 기능을 별도 마련하지 않더라도, 넓은 디스플레이 영역을 활용하여 미래의 예측 미러링 이미지를 경험할 수 있게 한다.Due to the above-mentioned reasons, the external device 20 allows the user to experience a future predicted mirroring image by utilizing a wide display area even if the user does not provide a separate function such as previewing the next screen.

도 18은 다양한 실시예들에 따른, 네트워크 환경(1800) 내의 전자 장치(1801)의 블록도이다. FIG. 18 is a block diagram of an electronic device 1801 in a network environment 1800, according to various embodiments.

도 18을 참조하면, 네트워크 환경(1800)에서 전자 장치(1801)는 제 1 네트워크(1898)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(1802)와 통신하거나, 또는 제 2 네트워크(1899)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(1804) 또는 서버(1808) 중 적어도 하나와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(1801)는 서버(1808)를 통하여 전자 장치(1804)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(1801)는 프로세서(1820), 메모리(1830), 입력 모듈(1850), 음향 출력 모듈(1855), 디스플레이 모듈(1860), 오디오 모듈(1870), 센서 모듈(1876), 인터페이스(1877), 연결 단자(1878), 햅틱 모듈(1879), 카메라 모듈(1880), 전력 관리 모듈(1888), 배터리(1889), 통신 모듈(1890), 가입자 식별 모듈(1896), 또는 안테나 모듈(1897)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(1801)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(1878))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(1876), 카메라 모듈(1880), 또는 안테나 모듈(1897))은 하나의 구성요소(예: 디스플레이 모듈(1860))로 통합될 수 있다.Referring to FIG. 18, in the network environment 1800, the electronic device 1801 communicates with the electronic device 1802 through a first network 1898 (e.g., a short-range wireless communication network) or a second network 1899. It is possible to communicate with at least one of the electronic device 1804 or the server 1808 through (e.g., a long-distance wireless communication network). According to one embodiment, the electronic device 1801 may communicate with the electronic device 1804 through the server 1808. According to one embodiment, the electronic device 1801 includes a processor 1820, a memory 1830, an input module 1850, an audio output module 1855, a display module 1860, an audio module 1870, and a sensor module ( 1876), interface (1877), connection terminal (1878), haptic module (1879), camera module (1880), power management module (1888), battery (1889), communication module (1890), subscriber identification module (1896) , or may include an antenna module 1897. In some embodiments, at least one of these components (eg, the connection terminal 1878) may be omitted, or one or more other components may be added to the electronic device 1801. In some embodiments, some of these components (e.g., sensor module 1876, camera module 1880, or antenna module 1897) are integrated into one component (e.g., display module 1860). It can be.

프로세서(1820)는, 예를 들면, 소프트웨어(예: 프로그램(1840))를 실행하여 프로세서(1820)에 연결된 전자 장치(1801)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(1820)는 다른 구성요소(예: 센서 모듈(1876) 또는 통신 모듈(1890))로부터 수신된 명령 또는 데이터를 휘발성 메모리(1832)에 저장하고, 휘발성 메모리(1832)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(1834)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(1820)는 메인 프로세서(1821)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(1823)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(1801)가 메인 프로세서(1821) 및 보조 프로세서(1823)를 포함하는 경우, 보조 프로세서(1823)는 메인 프로세서(1821)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(1823)는 메인 프로세서(1821)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor 1820, for example, executes software (e.g., program 1840) to operate at least one other component (e.g., hardware or software component) of the electronic device 1801 connected to the processor 1820. It can be controlled and various data processing or calculations can be performed. According to one embodiment, as at least part of the data processing or computation, the processor 1820 stores instructions or data received from another component (e.g., the sensor module 1876 or the communication module 1890) in the volatile memory 1832. The commands or data stored in the volatile memory 1832 can be processed, and the resulting data can be stored in the non-volatile memory 1834. According to one embodiment, the processor 1820 includes a main processor 1821 (e.g., a central processing unit or an application processor) or an auxiliary processor 1823 that can operate independently or together (e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor). For example, if the electronic device 1801 includes a main processor 1821 and a auxiliary processor 1823, the auxiliary processor 1823 may be set to use lower power than the main processor 1821 or be specialized for a designated function. You can. The auxiliary processor 1823 may be implemented separately from the main processor 1821 or as part of it.

보조 프로세서(1823)는, 예를 들면, 메인 프로세서(1821)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(1821)를 대신하여, 또는 메인 프로세서(1821)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(1821)와 함께, 전자 장치(1801)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(1860), 센서 모듈(1876), 또는 통신 모듈(1890))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(1823)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(1880) 또는 통신 모듈(1890))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(1823)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(1801) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(1808))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다. The auxiliary processor 1823 may, for example, act on behalf of the main processor 1821 while the main processor 1821 is in an inactive (e.g., sleep) state, or while the main processor 1821 is in an active (e.g., application execution) state. ), together with the main processor 1821, at least one of the components of the electronic device 1801 (e.g., the display module 1860, the sensor module 1876, or the communication module 1890) At least some of the functions or states related to can be controlled. According to one embodiment, coprocessor 1823 (e.g., image signal processor or communication processor) may be implemented as part of another functionally related component (e.g., camera module 1880 or communication module 1890). there is. According to one embodiment, the auxiliary processor 1823 (eg, neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. Artificial intelligence models can be created through machine learning. For example, such learning may be performed in the electronic device 1801 itself on which the artificial intelligence model is performed, or may be performed through a separate server (e.g., server 1808). Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited. An artificial intelligence model may include multiple artificial neural network layers. Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the examples described above. In addition to hardware structures, artificial intelligence models may additionally or alternatively include software structures.

메모리(1830)는, 전자 장치(1801)의 적어도 하나의 구성요소(예: 프로세서(1820) 또는 센서 모듈(1876))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(1840)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(1830)는, 휘발성 메모리(1832) 또는 비휘발성 메모리(1834)를 포함할 수 있다. The memory 1830 may store various data used by at least one component (eg, the processor 1820 or the sensor module 1876) of the electronic device 1801. Data may include, for example, input data or output data for software (e.g., program 1840) and instructions related thereto. Memory 1830 may include volatile memory 1832 or non-volatile memory 1834.

프로그램(1840)은 메모리(1830)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(1842), 미들 웨어(1844) 또는 어플리케이션(1846)을 포함할 수 있다. The program 1840 may be stored as software in the memory 1830 and may include, for example, an operating system 1842, middleware 1844, or applications 1846.

입력 모듈(1850)은, 전자 장치(1801)의 구성요소(예: 프로세서(1820))에 사용될 명령 또는 데이터를 전자 장치(1801)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(1850)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input module 1850 may receive commands or data to be used in a component of the electronic device 1801 (e.g., the processor 1820) from outside the electronic device 1801 (e.g., a user). The input module 1850 may include, for example, a microphone, mouse, keyboard, keys (eg, buttons), or digital pen (eg, stylus pen).

음향 출력 모듈(1855)은 음향 신호를 전자 장치(1801)의 외부로 출력할 수 있다. 음향 출력 모듈(1855)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The sound output module 1855 can output sound signals to the outside of the electronic device 1801. The sound output module 1855 may include, for example, a speaker or receiver. Speakers can be used for general purposes such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.

디스플레이 모듈(1860)은 전자 장치(1801)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(1860)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(1860)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 생성되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. The display module 1860 can visually provide information to the outside of the electronic device 1801 (eg, a user). The display module 1860 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device. According to one embodiment, the display module 1860 may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of force generated by the touch.

오디오 모듈(1870)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(1870)은, 입력 모듈(1850)을 통해 소리를 획득하거나, 음향 출력 모듈(1855), 또는 전자 장치(1801)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(1802))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module 1870 can convert sound into an electrical signal or, conversely, convert an electrical signal into sound. According to one embodiment, the audio module 1870 acquires sound through the input module 1850, the sound output module 1855, or an external electronic device (e.g., directly or wirelessly connected to the electronic device 1801). Sound may be output through an electronic device 1802 (e.g., speaker or headphone).

센서 모듈(1876)은 전자 장치(1801)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(1876)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module 1876 detects the operating state (e.g., power or temperature) of the electronic device 1801 or the external environmental state (e.g., user state) and generates an electrical signal or data value corresponding to the detected state. can do. According to one embodiment, the sensor module 1876 includes, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, humidity sensor, or light sensor.

인터페이스(1877)는 전자 장치(1801)가 외부 전자 장치(예: 전자 장치(1802))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(1877)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface 1877 may support one or more designated protocols that can be used to connect the electronic device 1801 directly or wirelessly with an external electronic device (e.g., the electronic device 1802). According to one embodiment, the interface 1877 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

연결 단자(1878)는, 그를 통해서 전자 장치(1801)가 외부 전자 장치(예: 전자 장치(1802))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(1878)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal 1878 may include a connector through which the electronic device 1801 can be physically connected to an external electronic device (eg, the electronic device 1802). According to one embodiment, the connection terminal 1878 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).

햅틱 모듈(1879)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(1879)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module 1879 can convert electrical signals into mechanical stimulation (e.g., vibration or movement) or electrical stimulation that the user can perceive through tactile or kinesthetic senses. According to one embodiment, the haptic module 1879 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

카메라 모듈(1880)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(1880)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module 1880 can capture still images and moving images. According to one embodiment, the camera module 1880 may include one or more lenses, image sensors, image signal processors, or flashes.

전력 관리 모듈(1888)은 전자 장치(1801)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(1888)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module 1888 can manage power supplied to the electronic device 1801. According to one embodiment, the power management module 1888 may be implemented as at least a part of, for example, a power management integrated circuit (PMIC).

배터리(1889)는 전자 장치(1801)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(1889)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.Battery 1889 may supply power to at least one component of electronic device 1801. According to one embodiment, the battery 1889 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.

통신 모듈(1890)은 전자 장치(1801)와 외부 전자 장치(예: 전자 장치(1802), 전자 장치(1804), 또는 서버(1808)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(1890)은 프로세서(1820)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(1890)은 무선 통신 모듈(1892)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(1894)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(1898)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(1899)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(1804)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(1892)은 가입자 식별 모듈(1896)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(1898) 또는 제 2 네트워크(1899)와 같은 통신 네트워크 내에서 전자 장치(1801)를 확인 또는 인증할 수 있다. Communication module 1890 provides a direct (e.g., wired) communication channel or wireless communication channel between the electronic device 1801 and an external electronic device (e.g., electronic device 1802, electronic device 1804, or server 1808). It can support establishment and communication through established communication channels. Communication module 1890 operates independently of processor 1820 (e.g., an application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module 1890 may be a wireless communication module 1892 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 1894 (e.g., : LAN (local area network) communication module, or power line communication module) may be included. Among these communication modules, the corresponding communication module is a first network 1898 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 1899 (e.g., legacy It may communicate with an external electronic device 1804 through a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be implemented as a plurality of separate components (e.g., multiple chips). The wireless communication module 1892 uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 1896 to communicate within a communication network, such as the first network 1898 or the second network 1899. The electronic device 1801 can be confirmed or authenticated.

무선 통신 모듈(1892)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(1892)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(1892)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(1892)은 전자 장치(1801), 외부 전자 장치(예: 전자 장치(1804)) 또는 네트워크 시스템(예: 제 2 네트워크(1899))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈(1892)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module 1892 may support 5G networks after 4G networks and next-generation communication technologies, for example, NR access technology (new radio access technology). NR access technology provides high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low latency). -latency communications)) can be supported. The wireless communication module 1892 may support high frequency bands (e.g., mmWave bands), for example, to achieve high data rates. The wireless communication module 1892 uses various technologies to secure performance in high frequency bands, such as beamforming, massive MIMO (multiple-input and multiple-output), and full-dimensional multiplexing. It can support technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module 1892 may support various requirements specified in the electronic device 1801, an external electronic device (e.g., electronic device 1804), or a network system (e.g., second network 1899). According to one embodiment, the wireless communication module 1892 supports Peak data rate (e.g., 20 Gbps or more) for realizing eMBB, loss coverage (e.g., 164 dB or less) for realizing mmTC, or U-plane latency (e.g., 164 dB or less) for realizing URLLC. Example: Downlink (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less) can be supported.

안테나 모듈(1897)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(1897)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(1897)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(1898) 또는 제 2 네트워크(1899)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(1890)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(1890)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(1897)의 일부로 형성될 수 있다. The antenna module 1897 may transmit or receive signals or power to or from the outside (e.g., an external electronic device). According to one embodiment, the antenna module 1897 may include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (eg, PCB). According to one embodiment, the antenna module 1897 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for the communication method used in the communication network, such as the first network 1898 or the second network 1899, is connected to the plurality of antennas by, for example, the communication module 1890. can be selected Signals or power may be transmitted or received between the communication module 1890 and an external electronic device through the selected at least one antenna. According to some embodiments, in addition to the radiator, other components (eg, radio frequency integrated circuit (RFIC)) may be additionally formed as part of the antenna module 1897.

다양한 실시예에 따르면, 안테나 모듈(1897)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, antenna module 1897 may form a mmWave antenna module. According to one embodiment, a mmWave antenna module includes: a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., mmWave band); And a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band. can do.

상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the components are connected to each other through a communication method between peripheral devices (e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)) and signal ( (e.g. commands or data) can be exchanged with each other.

일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(1899)에 연결된 서버(1808)를 통해서 전자 장치(1801)와 외부의 전자 장치(1804)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(1802, 또는 1804) 각각은 전자 장치(1801)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(1801)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(1802, 1804, 또는 1808) 중 하나 이상의 외부의 전자 장치에서 실행될 수 있다. 예를 들면, 전자 장치(1801)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(1801)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(1801)로 전달할 수 있다. 전자 장치(1801)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(1801)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(1804)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(1808)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시예에 따르면, 외부의 전자 장치(1804) 또는 서버(1808)는 제 2 네트워크(1899) 내에 포함될 수 있다. 전자 장치(1801)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다. According to one embodiment, commands or data may be transmitted or received between the electronic device 1801 and the external electronic device 1804 through the server 1808 connected to the second network 1899. Each of the external electronic devices 1802 or 1804 may be of the same or different type as the electronic device 1801. According to one embodiment, all or part of the operations performed in the electronic device 1801 may be executed in one or more of the external electronic devices 1802, 1804, or 1808. For example, when the electronic device 1801 must perform a function or service automatically or in response to a request from a user or another device, the electronic device 1801 may perform the function or service instead of executing the function or service on its own. Alternatively, or additionally, one or more external electronic devices may be requested to perform at least part of the function or service. One or more external electronic devices that have received the request may execute at least part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device 1801. The electronic device 1801 may process the result as is or additionally and provide it as at least part of a response to the request. For this purpose, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology can be used. The electronic device 1801 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing. In another embodiment, the external electronic device 1804 may include an Internet of Things (IoT) device. Server 1808 may be an intelligent server using machine learning and/or neural networks. According to one embodiment, an external electronic device 1804 or a server 1808 may be included in the second network 1899. The electronic device 1801 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

일 실시예에 따른, 디바이스(예: 도 1의 외부 디바이스(20))는, 표시창(600)에 미러링 이미지를 표시하도록 구성된 디스플레이 모듈(210); 외부 디바이스(10)와 통신을 수행하도록 구성된 통신 모듈(250); 사용자의 제스처를 감지하고, 상기 감지된 사용자의 제스처에 대응한 센싱 신호를 생성하도록 구성된 센서 모듈(230); 하나 또는 복수의 버퍼 영역(241, 243)이 할당되도록 구성된 메모리(240); 및 상기 디스플레이 모듈(210), 상기 통신 모듈(250) 또는 상기 메모리(240)와 전기적으로 연결되고, 상기 디스플레이 모듈(210), 상기 통신 모듈(250) 또는 상기 메모리(240)의 동작을 제어하도록 구성된 적어도 하나의 프로세서(220)를 포함할 수 있다. According to one embodiment, a device (e.g., external device 20 of FIG. 1) includes a display module 210 configured to display a mirrored image on a display window 600; a communication module 250 configured to communicate with an external device 10; A sensor module 230 configured to detect a user's gesture and generate a sensing signal corresponding to the detected user's gesture; A memory 240 configured to be allocated one or a plurality of buffer areas 241 and 243; and electrically connected to the display module 210, the communication module 250, or the memory 240, and to control the operation of the display module 210, the communication module 250, or the memory 240. It may include at least one processor 220.

일 실시예에 따른, 상기 적어도 하나의 프로세서(220)가, 상기 통신 모듈(250)를 통해 상기 외부 디바이스(10)로부터 미러링 데이터(31)를 수신하고, 상기 미러링 데이터(31)를 사용하여 상기 표시창(600)에서 할당된 제 1 표시영역(620)에 미러링 이미지(650)가 표시되도록 상기 디스플레이 모듈(210)를 제어하도록 구성될 수 있다. According to one embodiment, the at least one processor 220 receives mirroring data 31 from the external device 10 through the communication module 250 and uses the mirroring data 31 to The display module 210 may be configured to control the mirrored image 650 to be displayed in the first display area 620 allocated in the display window 600.

일 실시예에 따른, 상기 적어도 하나의 프로세서(220)가, 상기 센서 모듈(230)에 의해 감지된 사용자 제스처(630)에 따라 상기 표시창(600)에서 상기 제 1 표시영역(620) 외에 추가로 할당된 적어도 하나의 확장 표시 영역(640)에 확장 미러링 데이터(731, 733, 735)를 사용하여 확장 미러링 이미지(660)가 표시되도록 상기 디스플레이 모듈(210)를 제어하도록 구성될 수 있다. According to one embodiment, the at least one processor 220 displays additional information in addition to the first display area 620 in the display window 600 according to the user gesture 630 detected by the sensor module 230. The display module 210 may be configured to display the extended mirroring image 660 in at least one allocated extended display area 640 using extended mirroring data 731, 733, and 735.

일 실시예에 따른, 상기 확장 미러링 데이터(731, 733, 735)는 상기 미러링 이미지(650)를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터(731, 733, 735)로부터 획득될 수 있다.According to one embodiment, the extended mirroring data 731, 733, and 735 may be obtained from previous mirroring data 731, 733, and 735 that have been used to display the mirrored image 650.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 외부 디바이스(10)로부터 수신한 상기 미러링 데이터를 제1 버퍼 영역(241)에 임시 저장하도록 구성될 수 있다. According to one embodiment, at least one processor 220 may be configured to temporarily store the mirroring data received from the external device 10 in the first buffer area 241.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 제1 버퍼 영역에 임시 저장된 상기 미러링 데이터를 상기 메모리에 할당된 제2 버퍼 영역에 상기 확장 미러링 데이터로 임시 저장하도록 구성될 수 있다.According to one embodiment, when the mirroring image is displayed in the first display area, at least one processor 220 stores the mirroring data temporarily stored in the first buffer area to a second buffer area allocated to the memory. It may be configured to temporarily store the extended mirroring data.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 제1 버퍼 영역에 임시 저장된 미러링 데이터로부터 새로운 확장 미러링 데이터를 획득하고, 상기 새로운 확장 미러링 데이터를 상기 메모리에 할당된 제2 버퍼 영역에 임시 저장하도록 구성될 수 있다.According to one embodiment, when the mirroring image is displayed in the first display area, at least one processor 220 obtains new extended mirroring data from mirroring data temporarily stored in the first buffer area, and stores the new extended mirroring data. It may be configured to temporarily store mirroring data in a second buffer area allocated to the memory.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 제1 버퍼 영역에 임시 저장된 미러링 데이터에 포함된 원본 이미지 정보 또는 상기 원본 이미지 정보를 렌더링한 렌더링 이미지 정보를 상기 새로운 확장 미러링 데이터로 획득하도록 구성될 수 있다. According to one embodiment, at least one processor 220 acquires original image information included in mirroring data temporarily stored in the first buffer area or rendered image information obtained by rendering the original image information as the new extended mirroring data. It can be configured to do so.

일 실시예에 따른, 상기 미러링 데이터는, 링크 또는 좌표를 지시하는 메타 정보와 미러링할 이미지 정보를 포함할 수 있다.According to one embodiment, the mirroring data may include meta information indicating a link or coordinates and image information to be mirrored.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 확장 미러링 이미지가 표시된 상태에서 상기 통신 모듈을 통해 상기 외부 전자 장치로부터 새로운 미러링 데이터를 수신하면, 상기 제 1 표시영역에 표시되고 있는 상기 미러링 이미지를 표시하기 위해 사용된 미러링 화면 정보에 의해 상기 확장 표시 영역에 표시될 확장 미러링 이미지를 재 구성하도록 상기 디스플레이 모듈을 제어하도록 구성될 수 있다.According to one embodiment, when the at least one processor 220 receives new mirroring data from the external electronic device through the communication module while the extended mirroring image is displayed, the It may be configured to control the display module to reconfigure an extended mirroring image to be displayed in the extended display area based on mirroring screen information used to display the mirrored image.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 사용자 제스처에 따라 상기 제 1 표시영역에서 상하 방향 ((예: +y축 방향 또는 -y축 방향) 또는 좌우 방향(예: +x축 방향 또는 -x축 방향)으로 인접하여 상기 적어도 하나의 확장 표시 영역을 할당하도록 구성될 수 있다.According to one embodiment, at least one processor 220 moves in the up-down direction (e.g., +y-axis direction or -y-axis direction) or the left-right direction (e.g., +x) in the first display area according to the user gesture. It may be configured to allocate the at least one expanded display area adjacent to each other in an axial direction or -x-axis direction.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 사용자 제스처가 상기 적어도 하나의 확장 표시 영역에서 감지되면, 상기 적어도 하나의 확장 표시 영역에서 상기 사용자 제스처가 감지된 위치에 매핑된 입력 정보를 식별하고, 상기 통신 모듈을 제어하여 상기 식별한 입력 정보를 상기 외부 전자 장치로 전송하도록 구성될 수 있다.According to one embodiment, when the user gesture is detected in the at least one expanded display area, the at least one processor 220 generates input information mapped to the position where the user gesture is detected in the at least one expanded display area. may be configured to identify and control the communication module to transmit the identified input information to the external electronic device.

일 실시예에 따른, 적어도 하나의 프로세서(220)가, 상기 센서 모듈에 의한 시선 추적을 통해 상기 표시창에 관심 영역을 설정하고, 상기 설정한 관심 영역에 상기 적어도 하나의 확장 표시 영역을 할당하도록 구성될 수 있다.According to one embodiment, at least one processor 220 is configured to set an area of interest in the display window through eye tracking by the sensor module and allocate the at least one extended display area to the set area of interest. It can be.

일 실시예에 따른, 전자 장치(예: 도 1의 외부 디바이스(20))에서의 디스플레이 방법은, 미러링 데이터를 획득하는 동작; 상기 획득한 미러링 데이터를 사용하여 디스플레이에서 할당된 제 1 표시영역에 미러링 이미지를 표시하는 동작을 포함할 수 있다.According to one embodiment, a display method in an electronic device (e.g., the external device 20 of FIG. 1) includes acquiring mirroring data; The method may include displaying a mirrored image on a first display area allocated on a display using the obtained mirroring data.

일 실시예에 따른, 디스플레이 방법은, 상기 미러링 이미지를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터로부터 확장 미러링 데이터를 획득하는 동작 및 사용자의 제스처에 따라 상기 디스플레이에서 상기 제 1 표시영역 외에 추가로 할당된 적어도 하나의 확장 표시 영역에 상기 확장 미러링 데이터를 사용하여 확장 미러링 이미지를 표시하는 동작을 포함할 수 있다.According to one embodiment, the display method includes an operation of acquiring extended mirroring data from previous mirroring data that has been used to display the mirrored image, and an additional display area in addition to the first display area on the display according to a user's gesture. The method may include displaying an extended mirroring image using the extended mirroring data in at least one allocated extended display area.

일 실시예에 따른, 상기 획득하는 동작은, 상기 외부 전자 장치로부터 상기 미러링 데이터를 수신하는 동작; 및 상기 수신한 미러링 데이터를 임시 저장하는 동작을 포함할 수 있다.According to one embodiment, the acquiring operation includes receiving the mirroring data from the external electronic device; and temporarily storing the received mirroring data.

일 실시예에 따른, 디스플레이 방법은, 상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 임시 저장된 미러링 데이터를 상기 확장 미러링 데이터로 임시 저장하는 동작을 포함할 수 있다.The display method according to one embodiment may include temporarily storing the temporarily stored mirroring data as the extended mirroring data when the mirroring image is displayed in the first display area.

일 실시예에 따른, 디스플레이 방법은, 상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 임시 저장된 미러링 데이터로부터 새로운 확장 미러링 데이터를 획득하는 동작; 및 상기 새로운 확장 미러링 데이터를 임시 저장하는 동작을 포함할 수 있다.According to one embodiment, a display method includes: acquiring new extended mirroring data from the temporarily stored mirroring data when the mirroring image is displayed in the first display area; and temporarily storing the new extended mirroring data.

일 실시예에 따른, 상기 새로운 확장 미러링 데이터를 획득하는 동작은, 상기 임시 저장된 미러링 데이터에 포함된 원본 이미지 정보 또는 상기 원본 이미지 정보를 렌더링한 렌더링 이미지 정보를 상기 새로운 확장 미러링 데이터로 획득하는 동작을 포함할 수 있다.According to one embodiment, the operation of acquiring the new extended mirroring data includes acquiring original image information included in the temporarily stored mirroring data or rendered image information obtained by rendering the original image information as the new extended mirroring data. It can be included.

일 실시예에 따른, 상기 미러링 데이터는, 링크 또는 좌표를 지시하는 메타 정보와 미러링할 이미지 정보를 포함할 수 있다.According to one embodiment, the mirroring data may include meta information indicating a link or coordinates and image information to be mirrored.

일 실시예에 따른, 디스플레이 방법은, 상기 확장 미러링 이미지가 표시된 상태에서 새로운 미러링 데이터를 획득하는 동작; 및 상기 제 1 표시영역에 표시되고 있는 상기 미러링 이미지를 표시하기 위해 사용된 미러링 화면 정보에 의해 상기 확장 표시 영역에 표시될 확장 미러링 이미지를 재 구성하는 동작을 포함할 수 있다.According to one embodiment, a display method includes: acquiring new mirroring data while the extended mirroring image is displayed; and an operation of reconstructing an extended mirroring image to be displayed in the extended display area based on mirroring screen information used to display the mirrored image displayed in the first display area.

일 실시예에 따른, 상기 확장 미러링 이미지를 표시하는 동작은, 상기 사용자 제스처에 따라 상기 제 1 표시영역에서 상하 방향 (예: +y축 방향 또는 -y축 방향) 또는 좌우 방향 (예: +x축 방향 또는 -x축 방향) 중에서 상기 적어도 하나의 확장 표시 영역을 할당할 방향을 결정하는 동작을 포함할 수 있다.According to one embodiment, the operation of displaying the extended mirroring image is performed in the vertical direction (e.g., +y-axis direction or -y-axis direction) or the left-right direction (e.g., +x) in the first display area according to the user gesture. It may include an operation of determining a direction in which to allocate the at least one extended display area (axis direction or -x-axis direction).

일 실시예에 따른, 디스플레이 방법은, 상기 사용자 제스처가 상기 적어도 하나의 확장 표시 영역에서 감지되면, 상기 적어도 하나의 확장 표시 영역에서 상기 사용자 제스처가 감지된 위치에 매핑된 입력 정보를 식별하는 동작; 및 상기 식별한 입력 정보를 외부 전자 장치로 전송하는 동작을 포함할 수 있다.According to one embodiment, a display method includes: when the user gesture is detected in the at least one extended display area, identifying input information mapped to a position in the at least one extended display area where the user gesture is detected; and transmitting the identified input information to an external electronic device.

일 실시예에 따른, 상기 확장 미러링 이미지를 표시하는 동작은, 사용자에 대한 시선 추적을 통해 상기 디스플레이에 관심 영역을 설정하는 동작; 및 상기 설정한 관심 영역에 상기 적어도 하나의 확장 표시 영역을 할당하는 동작을 포함할 수 있다.According to one embodiment, the operation of displaying the extended mirroring image includes: setting a region of interest on the display through eye tracking for a user; and allocating the at least one extended display area to the set region of interest.

본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to various embodiments disclosed in this document may be of various types. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to embodiments of this document are not limited to the above-described devices.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.The various embodiments of this document and the terms used herein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various changes, equivalents, or replacements of the embodiments. In connection with the description of the drawings, similar reference numbers may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the above items, unless the relevant context clearly indicates otherwise. As used herein, “A or B”, “at least one of A and B”, “at least one of A or B”, “A, B or C”, “at least one of A, B and C”, and “A Each of phrases such as “at least one of , B, or C” may include any one of the items listed together in the corresponding phrase, or any possible combination thereof. Terms such as "first", "second", or "first" or "second" may be used simply to distinguish one component from another, and to refer to that component in other respects (e.g., importance or order) is not limited. One (e.g., first) component is said to be “coupled” or “connected” to another (e.g., second) component, with or without the terms “functionally” or “communicatively.” When mentioned, it means that any of the components can be connected to the other components directly (e.g. wired), wirelessly, or through a third component.

본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term “module” used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as logic, logic block, component, or circuit, for example. It can be used as A module may be an integrated part or a minimum unit of the parts or a part thereof that performs one or more functions. For example, according to one embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 디지털 디바이스(120)에 의해 읽을 수 있는 저장 매체(storage medium)(예: 메모리(140))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(1840))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(120))의 프로세서(예: 제어부(123))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운용되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document are software (e.g., computer) including one or more instructions stored in a storage medium (e.g., memory 140) readable by a machine (e.g., digital device 120). It may be implemented as a program 1840. For example, a processor (e.g., control unit 123) of a device (e.g., electronic device 120) may execute at least one command among one or more commands stored from a storage medium. and execute it. This enables the device to be operated to perform at least one function according to the called at least one instruction. The one or more instructions are code generated by a compiler or by an interpreter. It may contain executable code. A storage medium that can be read by a device may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' means that the storage medium is tangible. It simply means that it is a device that does not contain signals (e.g. electromagnetic waves), and this term does not distinguish between cases where data is semi-permanently stored in a storage medium and cases where data is stored temporarily.

일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, methods according to various embodiments disclosed in this document may be provided and included in a computer program product. Computer program products are commodities and can be traded between sellers and buyers. The computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or through an application store (e.g. Play StoreTM) or on two user devices (e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online. In the case of online distribution, at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (e.g., module or program) of the above-described components may include a single or plural entity, and some of the plurality of entities may be separately placed in other components. there is. According to various embodiments, one or more of the components or operations described above may be omitted, or one or more other components or operations may be added. Alternatively or additionally, multiple components (eg, modules or programs) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component of the plurality of components prior to the integration. . According to various embodiments, operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, or omitted. Alternatively, one or more other operations may be added.

Claims (20)

디바이스(20)에 있어서,
표시창(600)에 미러링 이미지를 표시하도록 구성된 디스플레이 모듈(210);
외부 디바이스(10)와 통신을 수행하도록 구성된 통신 모듈(250);
사용자의 제스처를 감지하고, 상기 감지된 사용자의 제스처에 대응한 센싱 신호를 생성하도록 구성된 센서 모듈(230);
하나 또는 복수의 버퍼 영역(241, 243)이 할당되도록 구성된 메모리(240); 및
상기 디스플레이 모듈(210), 상기 통신 모듈(250) 또는 상기 메모리(240)와 전기적으로 연결되고, 상기 디스플레이 모듈(210), 상기 통신 모듈(250) 또는 상기 메모리(240)의 동작을 제어하도록 구성된 적어도 하나의 프로세서(220)를 포함하며,
상기 적어도 하나의 프로세서(220)가,
상기 통신 모듈(250)를 통해 상기 외부 디바이스(10)로부터 미러링 데이터(31)를 수신하고,
상기 미러링 데이터(31)를 사용하여 상기 표시창(600)에서 할당된 제 1 표시영역(620)에 미러링 이미지(650)가 표시되도록 상기 디스플레이 모듈(210)를 제어하고,
상기 센서 모듈(230)에 의해 감지된 사용자 제스처(630)에 따라 상기 표시창(600)에서 상기 제 1 표시영역(620) 외에 추가로 할당된 적어도 하나의 확장 표시 영역(640)에 확장 미러링 데이터(731, 733, 735)를 사용하여 확장 미러링 이미지(660)가 표시되도록 상기 디스플레이 모듈(210)를 제어하도록 구성되며,
여기서, 상기 확장 미러링 데이터(731, 733, 735)는 상기 미러링 이미지(650)를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터(731, 733, 735)로부터 획득된, 전자 장치.
In the device 20,
a display module 210 configured to display a mirrored image on the display window 600;
a communication module 250 configured to communicate with an external device 10;
A sensor module 230 configured to detect a user's gesture and generate a sensing signal corresponding to the detected user's gesture;
A memory 240 configured to be allocated one or a plurality of buffer areas 241 and 243; and
Electrically connected to the display module 210, the communication module 250, or the memory 240, and configured to control the operation of the display module 210, the communication module 250, or the memory 240. Includes at least one processor 220,
The at least one processor 220,
Receiving mirroring data 31 from the external device 10 through the communication module 250,
Controlling the display module 210 to display a mirrored image 650 in the first display area 620 allocated in the display window 600 using the mirroring data 31,
According to the user gesture 630 detected by the sensor module 230, extended mirroring data ( Configured to control the display module 210 to display an extended mirroring image 660 using 731, 733, and 735,
Here, the extended mirroring data (731, 733, 735) is obtained from previous mirroring data (731, 733, 735) that has been used to display the mirrored image (650).
제1항에 있어서,
적어도 하나의 프로세서(220)가,
상기 외부 디바이스(10)로부터 수신한 상기 미러링 데이터를 제1 버퍼 영역(241)에 임시 저장하도록 구성된, 전자 장치.
According to paragraph 1,
At least one processor 220,
An electronic device configured to temporarily store the mirroring data received from the external device (10) in a first buffer area (241).
제2항에 있어서,
적어도 하나의 프로세서(220)가,
상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 제1 버퍼 영역에 임시 저장된 상기 미러링 데이터를 상기 메모리에 할당된 제2 버퍼 영역에 상기 확장 미러링 데이터로 임시 저장하도록 구성된, 전자 장치.
According to paragraph 2,
At least one processor 220,
When the mirroring image is displayed in the first display area, the electronic device is configured to temporarily store the mirroring data temporarily stored in the first buffer area as the extended mirroring data in a second buffer area allocated to the memory.
제2항에 있어서,
적어도 하나의 프로세서가,
상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 제1 버퍼 영역에 임시 저장된 미러링 데이터로부터 새로운 확장 미러링 데이터를 획득하고, 상기 새로운 확장 미러링 데이터를 상기 메모리에 할당된 제2 버퍼 영역에 임시 저장하도록 구성된, 전자 장치.
According to paragraph 2,
At least one processor,
When the mirroring image is displayed in the first display area, new extended mirroring data is obtained from the mirroring data temporarily stored in the first buffer area, and the new extended mirroring data is temporarily stored in a second buffer area allocated to the memory. An electronic device configured to:
제4항에 있어서,
상기 적어도 하나의 프로세서가,
상기 제1 버퍼 영역에 임시 저장된 미러링 데이터에 포함된 원본 이미지 정보 또는 상기 원본 이미지 정보를 렌더링한 렌더링 이미지 정보를 상기 새로운 확장 미러링 데이터로 획득하도록 구성된, 전자 장치.
According to paragraph 4,
The at least one processor,
An electronic device configured to obtain original image information included in mirroring data temporarily stored in the first buffer area or rendered image information obtained by rendering the original image information as the new extended mirroring data.
제1항에 있어서,
상기 미러링 데이터는, 링크 또는 좌표를 지시하는 메타 정보와 미러링할 이미지 정보를 포함하는, 전자 장치.
According to paragraph 1,
The mirroring data includes meta information indicating a link or coordinates and image information to be mirrored.
제1항에 있어서,
상기 적어도 하나의 프로세서가,
상기 확장 미러링 이미지가 표시된 상태에서 상기 통신 모듈을 통해 상기 외부 전자 장치로부터 새로운 미러링 데이터를 수신하면, 상기 제 1 표시영역에 표시되고 있는 상기 미러링 이미지를 표시하기 위해 사용된 미러링 화면 정보에 의해 상기 확장 표시 영역에 표시될 확장 미러링 이미지를 재 구성하도록 상기 디스플레이 모듈을 제어하는, 전자 장치.
According to paragraph 1,
The at least one processor,
When new mirroring data is received from the external electronic device through the communication module while the expanded mirroring image is displayed, the expansion is performed by the mirroring screen information used to display the mirrored image displayed in the first display area. An electronic device that controls the display module to reconfigure an extended mirroring image to be displayed in a display area.
제1항 내지 제7항 중 어느 한 항에 있어서,
상기 적어도 하나의 프로세서가,
상기 사용자 제스처에 따라 상기 제 1 표시영역에서 상하 또는 좌우 방향으로 인접하여 상기 적어도 하나의 확장 표시 영역을 할당하도록 구성된, 전자 장치.
According to any one of claims 1 to 7,
The at least one processor,
An electronic device configured to allocate the at least one extended display area adjacent to the first display area in a vertical or left-right direction according to the user gesture.
제1항 내지 제7항 중 어느 한 항에 있어서,
상기 적어도 하나의 프로세서가,
상기 사용자 제스처가 상기 적어도 하나의 확장 표시 영역에서 감지되면, 상기 적어도 하나의 확장 표시 영역에서 상기 사용자 제스처가 감지된 위치에 매핑된 입력 정보를 식별하고, 상기 통신 모듈을 제어하여 상기 식별한 입력 정보를 상기 외부 전자 장치로 전송하도록 구성된, 전자 장치.
According to any one of claims 1 to 7,
The at least one processor,
When the user gesture is detected in the at least one expanded display area, input information mapped to the position where the user gesture was detected in the at least one expanded display area is identified, and the communication module is controlled to display the identified input information. An electronic device configured to transmit to the external electronic device.
제9항에 있어서,
상기 적어도 하나의 프로세서가,
상기 센서 모듈에 의한 시선 추적을 통해 상기 표시창에 관심 영역을 설정하고, 상기 설정한 관심 영역에 상기 적어도 하나의 확장 표시 영역을 할당하도록 구성된, 전자 장치.
According to clause 9,
The at least one processor,
An electronic device configured to set an area of interest in the display window through eye tracking by the sensor module, and allocate the at least one extended display area to the set area of interest.
전자 장치에서의 디스플레이 방법에 있어서,
미러링 데이터를 획득하는 동작 (1013);
상기 획득한 미러링 데이터를 사용하여 디스플레이에서 할당된 제 1 표시영역에 미러링 이미지를 표시하는 동작 (1015);
상기 미러링 이미지를 표시하기 위하여 사용된 경험이 있는 이전 미러링 데이터로부터 확장 미러링 데이터를 획득하는 동작 (1017, 1019); 및
사용자의 제스처에 따라 상기 디스플레이에서 상기 제 1 표시영역 외에 추가로 할당된 적어도 하나의 확장 표시 영역에 상기 확장 미러링 데이터를 사용하여 확장 미러링 이미지를 표시하는 동작 (1019)을 포함하는, 방법.
In a display method in an electronic device,
An operation to acquire mirroring data (1013);
An operation of displaying a mirrored image on a first display area allocated on a display using the acquired mirroring data (1015);
Obtaining extended mirroring data from previous mirroring data that has been used to display the mirrored image (1017, 1019); and
A method including an operation (1019) of displaying an extended mirroring image using the extended mirroring data in at least one extended display area additionally allocated in addition to the first display area on the display according to a user's gesture.
제11항에 있어서,
상기 획득하는 동작은,
상기 외부 전자 장치로부터 상기 미러링 데이터를 수신하는 동작; 및
상기 수신한 미러링 데이터를 임시 저장하는 동작을 포함하는, 방법.
According to clause 11,
The acquisition operation is,
Receiving the mirroring data from the external electronic device; and
A method comprising temporarily storing the received mirroring data.
제12항에 있어서,
상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 임시 저장된 미러링 데이터를 상기 확장 미러링 데이터로 임시 저장하는 동작을 포함하는, 방법.
According to clause 12,
When the mirroring image is displayed in the first display area, the method includes temporarily storing the temporarily stored mirroring data as the extended mirroring data.
제12항에 있어서,
상기 제 1 표시영역에 상기 미러링 이미지가 표시되면, 상기 임시 저장된 미러링 데이터로부터 새로운 확장 미러링 데이터를 획득하는 동작; 및
상기 새로운 확장 미러링 데이터를 임시 저장하는 동작을 포함하는, 방법.
According to clause 12,
When the mirroring image is displayed in the first display area, acquiring new extended mirroring data from the temporarily stored mirroring data; and
A method comprising temporarily storing the new extended mirroring data.
제14항에 있어서,
상기 새로운 확장 미러링 데이터를 획득하는 동작은,
상기 임시 저장된 미러링 데이터에 포함된 원본 이미지 정보 또는 상기 원본 이미지 정보를 렌더링한 렌더링 이미지 정보를 상기 새로운 확장 미러링 데이터로 획득하는 동작을 포함하는, 방법.
According to clause 14,
The operation of acquiring new extended mirroring data is:
A method comprising acquiring original image information included in the temporarily stored mirroring data or rendered image information obtained by rendering the original image information as the new extended mirroring data.
제11항에 있어서,
상기 미러링 데이터는, 링크 또는 좌표를 지시하는 메타 정보와 미러링할 이미지 정보를 포함하는, 방법.
According to clause 11,
The mirroring data includes meta information indicating a link or coordinates and image information to be mirrored.
제11항에 있어서,
상기 확장 미러링 이미지가 표시된 상태에서 새로운 미러링 데이터를 획득하는 동작; 및
상기 제 1 표시영역에 표시되고 있는 상기 미러링 이미지를 표시하기 위해 사용된 미러링 화면 정보에 의해 상기 확장 표시 영역에 표시될 확장 미러링 이미지를 재 구성하는 동작을 포함하는, 방법.
According to clause 11,
Obtaining new mirroring data while the extended mirroring image is displayed; and
A method comprising reconstructing an extended mirroring image to be displayed in the extended display area using mirroring screen information used to display the mirrored image displayed in the first display area.
제11항 내지 제17항 중 어느 한 항에 있어서,
상기 확장 미러링 이미지를 표시하는 동작은,
상기 사용자 제스처에 따라 상기 제 1 표시영역에서 상하 또는 좌우 방향 중에서 상기 적어도 하나의 확장 표시 영역을 할당할 방향을 결정하는 동작을 포함하는, 방법.
According to any one of claims 11 to 17,
The operation of displaying the extended mirroring image is,
A method comprising determining a direction in which to allocate the at least one extended display area in the first display area according to the user gesture: up and down or left and right.
제11항 내지 제17항 중 어느 한 항에 있어서,
상기 사용자 제스처가 상기 적어도 하나의 확장 표시 영역에서 감지되면, 상기 적어도 하나의 확장 표시 영역에서 상기 사용자 제스처가 감지된 위치에 매핑된 입력 정보를 식별하는 동작; 및
상기 식별한 입력 정보를 외부 전자 장치로 전송하는 동작을 포함하는, 방법.
According to any one of claims 11 to 17,
When the user gesture is detected in the at least one expanded display area, identifying input information mapped to a position in the at least one expanded display area where the user gesture is detected; and
A method comprising transmitting the identified input information to an external electronic device.
제19항에 있어서,
상기 확장 미러링 이미지를 표시하는 동작은,
사용자에 대한 시선 추적을 통해 상기 디스플레이에 관심 영역을 설정하는 동작; 및
상기 설정한 관심 영역에 상기 적어도 하나의 확장 표시 영역을 할당하는 동작을 포함하는, 방법.
According to clause 19,
The operation of displaying the extended mirroring image is,
An operation of setting a region of interest on the display through eye tracking of a user; and
A method comprising allocating the at least one extended display area to the set region of interest.
KR1020220140931A 2022-09-26 2022-10-28 Apparatus for expanding screen in an electronic device and operating method therefor KR20240043034A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2023/009692 WO2024071606A1 (en) 2022-09-26 2023-07-07 Screen extension device in electronic device and operation method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220122018 2022-09-26
KR20220122018 2022-09-26

Publications (1)

Publication Number Publication Date
KR20240043034A true KR20240043034A (en) 2024-04-02

Family

ID=90714928

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220140931A KR20240043034A (en) 2022-09-26 2022-10-28 Apparatus for expanding screen in an electronic device and operating method therefor

Country Status (1)

Country Link
KR (1) KR20240043034A (en)

Similar Documents

Publication Publication Date Title
JP2015158748A (en) Control apparatus, information processing apparatus, control method, information processing method, information processing system and wearable device
KR102256292B1 (en) An electronic device for providing multiple windows using an expandable display
US11481965B2 (en) Electronic device for communicating in augmented reality and method thereof
KR20220067336A (en) Electronic device and method for controlling multi-window in the electronic device
CN110968248A (en) Generating 3D models of fingertips for visual touch detection
KR20240043034A (en) Apparatus for expanding screen in an electronic device and operating method therefor
KR20210155499A (en) Electronic device and method for generating image in electronic device
KR20220053394A (en) Electronic device and method for controlling display of a plurality of objects on wearable display device
KR20220016727A (en) Method for capturing images for multi windows and electronic device therefor
KR101819517B1 (en) Input device and method for controlling the same
EP4354880A1 (en) Source device for sharing extended screen, sink device, and operating method thereof
US20230324955A1 (en) Flexible electronic device and method for controlling display of application execution screen
WO2024071606A1 (en) Screen extension device in electronic device and operation method thereof
US20240071021A1 (en) Head-mounted electronic device for converting a screen of an electronic device into extended reality and electronic device connected thereto
EP4239624A1 (en) Electronic device and electronic device operation method
US20220129139A1 (en) Electronic device and method for controlling display of a plurality of objects on wearable display device
KR20240017720A (en) Methods and devices for outputting drawing data using input device
KR20240055586A (en) Electronic device and method for synchronizing display
KR20240039549A (en) Electronic device and method for excluding broken area of display
KR20240041187A (en) Electronic device and method for controlling touch input
KR20240021659A (en) Apparatus and method for sharing display
KR20240029482A (en) A head mounted electronic device that converts a screen of electronic device into extended reality and an electronic device connected thereto
KR20230046829A (en) Electronic device and method for controlling screen according to drag signal of graphic affordance object
KR20230055331A (en) Source device, and sink device sharing extended screen, and operation method thereof
KR20220121574A (en) Electronic device providing ar/vr environment and operating method thereof