KR101560183B1 - 사용자 인터페이스를 제공/수신하는 방법 및 장치 - Google Patents

사용자 인터페이스를 제공/수신하는 방법 및 장치 Download PDF

Info

Publication number
KR101560183B1
KR101560183B1 KR1020080094897A KR20080094897A KR101560183B1 KR 101560183 B1 KR101560183 B1 KR 101560183B1 KR 1020080094897 A KR1020080094897 A KR 1020080094897A KR 20080094897 A KR20080094897 A KR 20080094897A KR 101560183 B1 KR101560183 B1 KR 101560183B1
Authority
KR
South Korea
Prior art keywords
user interface
information
scene
multimedia data
client
Prior art date
Application number
KR1020080094897A
Other languages
English (en)
Other versions
KR20090110205A (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
Priority claimed from KR1020080079033A external-priority patent/KR20090110200A/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020080094897A priority Critical patent/KR101560183B1/ko
Priority to US12/423,992 priority patent/US9084020B2/en
Priority to PCT/KR2009/001951 priority patent/WO2009128650A2/ko
Priority to EP09731966A priority patent/EP2267607A4/en
Priority to CN200980113927.3A priority patent/CN102007484B/zh
Publication of KR20090110205A publication Critical patent/KR20090110205A/ko
Application granted granted Critical
Publication of KR101560183B1 publication Critical patent/KR101560183B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • H04N21/41265The peripheral being portable, e.g. PDAs or mobile phones having a remote control device for bidirectional communication between the remote control device and client device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44012Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 사용자 인터페이스를 제공/수신하는 방법 및 장치에 관한 것으로 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 방법은 사용자 인터페이스 서버가 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화하여 사용자 인터페이스 클라이언트에 전송하면, 사용자 인터페이스 클라이언트는 멀티미디어 데이터를 수신하여 재생함으로써 사용자 인터페이스 클라이언트의 성능 및 사용자 선호도와 같은 사용자 인터페이스 클라이언트의 개별적인 특성을 고려하여 다양한 효과가 적용된 사용자 인터페이스를 디스플레이할 수 있다.
사용자 인터페이스, MPEG, BIFS, LASeR

Description

사용자 인터페이스를 제공/수신하는 방법 및 장치{Method and apparatus for providing/receiving user interface}
본 발명은 사용자 인터페이스를 제공/수신하는 방법 및 장치에 관한 것이다.
다양한 종류의 멀티미디어 디바이스들이 개발되고, 이러한 멀티미디어 디바이스들 사이의 융합(convergence)이 가속화되고 있다. 서로 다른 종류의 멀티미디어 디바이스들이 네트워크를 구성하여 멀티미디어 데이터를 송수신하거나, 서로를 제어하는 일이 빈번해지고 있다.
물리적으로 서로 떨어진 사이의 원격 제어는 원격 사용자 인터페이스(RUI : Remote User Interface)를 통해 수행된다. 사용자 인터페이스 서버가 제어를 위한 사용자 인터페이스를 사용자 인터페이스 클라이언트에 제공하고, 사용자 인터페이스 클라이언트는 제공된 사용자 인터페이스를 이용해 사용자 인터페이스 서버를 제어한다. 예를 들어, 사용자 인터페이스 서버는 원격 제어를 위한 사용자 인터페이스를 웹 페이지의 형태로 사용자 인터페이스 클라이언트에 제공하고, 사용자 인터페이스 클라이언트는 브라우저를 통해 웹 페이지를 사용자에게 디스플레이한다. 사용자는 디스플레이된 사용자 인터페이스를 이용해 제어 동작을 선택하여 사용자 인터페이스 서버를 제어한다.
CE(consumer electronics) 디바이스의 원격 제어를 위한 종래 기술인 CEA-2014에서는 사용자 인터페이스 서버가 CE-HTML을 이용해 웹 페이지를 생성하여 사용자 인터페이스 클라이언트에 제공하고, 사용자 인터페이스 클라이언트는 이를 웹 브라우저를 통해 디스플레이한다.
본 발명의 일 실시예에 따르면, 사용자 인터페이스를 제공/수신하는 방법 및 장치를 제공되고, 상기 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른, 사용자 인터페이스 서버가 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 방법은 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화하는 단계; 및 상기 멀티미디어 데이터를 상기 사용자 인터페이스 클라이언트에 전송하는 단계를 포함한다.
본 발명의 보다 바람직한 실시예에 따르면, 상기 멀티미디어 데이터의 포맷은 MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 한다.
본 발명의 보다 바람직한 실시예에 따르면, 상기 복수의 사용자 인터페이스 장면에 대한 정보는 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이 하기 위한 복수의 사용자 인터페이스 장면에 대한 정보인 것을 특징으로 한다.
본 발명의 보다 바람직한 실시예에 따르면, 상기 사용자 인터페이스 장면에 대한 정보는 상기 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보, 상기 객체들에 의해 발생하는 이벤트들에 대한 정보 및 상기 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트가 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 방법은 복수의 사용자 인터페이스 장면에 대한 정보를 포함하는 멀티미디어 데이터를 수신하고 상기 멀티미디어 데이터를 복호화하는 단계; 및 상기 복호화된 멀티미디어 데이터를 재생하여 상기 복수의 사용자 인터페이스 장면을 표시하는 단계를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 사용자 인터페이스 서버는 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화하는 부호화부; 및 상기 멀티미디어 데이터를 상기 사용자 인터페이스 클라이언트에 전송하는 전송부를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 사용자 인터페이스 클라이언트는 복수의 사용자 인터페이스 장면에 대한 정보를 포함하는 멀티미디어 데이터를 수신하고 상기 멀티미디어 데이터를 복호화하는 복호화부; 및 상기 복호화된 멀티미디어 데이터를 재생하여 상기 복수의 사용자 인터페이스 장면을 재생부를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 서버가 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 방법은 상기 사용자 인터페이스를 멀티미디어 데이터의 포맷으로 부호화하는 단계; 및 상기 멀티미디어 데이터를 상기 사용자 인터페이스 클라이언트에 전송하는 단계 를 포함하고, 상기 멀티미디어 데이터는 상기 사용자 인터페이스 클라이언트가 상기 사용자 인터페이스에 따라 제어 동작을 수행할 때 상기 사용자 인터페이스 서버에 전송하는 제어 메시지의 프로토콜에 대한 정보를 포함하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트가 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 방법은 상기 제1 사용자 인터페이스를 포함하는 멀티미디어 데이터를 수신하고 상기 멀티미디어 데이터를 복호화하는 단계; 사용자 인터페이스를 통해 사용자에게 제공되는 콘텐트에 대한 정보를 수신하는 단계; 및 상기 제1 사용자 인터페이스 및 상기 콘텐트에 대한 정보를 결합하여 제2 사용자 인터페이스를 생성하는 단계를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 사용자 인터페이스 서버는 사용자 인터페이스를 생성하는 UI생성부; 상기 사용자 인터페이스를 멀티미디어 데이터의 포맷으로 부호화하는 UI부호화부; 및 상기 멀티미디어 데이터를 상기 사용자 인터페이스 클라이언트에 전송하는 UI제공부를 포함하고, 상기 멀티미디어 데이터는 상기 사용자 인터페이스 클라이언트가 상기 사용자 인터페이스에 따라 제어 동작을 수행할 때 상기 사용자 인터페이스 서버에 전송하는 제어 메시지의 프로토콜에 대한 정보를 포함하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 사용자 인터페이스 클라이언트는 제1 사용자 인터페이스를 포함하는 멀티미디어 데이터를 수신하고 상기 멀티미디어 데이터를 복호화하는 UI복호화부; 및 상기 제1 사용자 인터페이스 및 사용자 인터페이스를 통해 사용자에게 제공되는 콘텐트에 대한 정보를 결합해 제2 사용자 인터페이스를 생성하는 UI결합부를 포함하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위해 본 발명은 상기된 사용자 인터페이스 제공 방법 및 수신 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 방법의 흐름도이다. 이하, 본 발명에 따른 실시예들에서 사용자 인터페이스는 위젯(widget) 또는 가젯(gadget)과 같이 화면(screen)의 일부에 디스플레이되는 사용자 인터페이스를 포함한다.
도 1을 참조하면, 단계 110에서 본 발명의 일 실시예에 따른 사용자 인터페이스 서버(110)는 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화한다. 도 2를 참조하여 상세히 설명한다.
도 2는 본 발명의 일 실시예에 따른 사용자 인터페이스 패키지를 도시한다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 사용자 인터페이스 패키지(200)는 복수의 사용자 인터페이스 장면 즉, 복수의 사용자 인터페이스 엘리먼 트(210 내지 230)를 포함한다.
도 2에 도시된 예에서 사용자 인터페이스 엘리먼트들(210 내지 230)은 각각 적어도 하나의 사용자 인터페이스 장면에 대한 정보를 포함하고, 사용자 인터페이스 장면은 적어도 하나의 사용자 인터페이스 객체로 구성된다.를 포함하는 장면을 의미한다. 포함되어 있는 사용자 인터페이스 객체를 기준으로 사용자 인터페이스 장면들을 구분할 수 있으며, 사용자 인터페이스 장면을 구성하는 사용자 인터페이스 객체 중 적어도 하나의 변경되는 것은 사용자 인터페이스 장면이 바뀜을 나타낸다. 사용자 인터페이스 장면은 반드시 복수의 사용자 인터페이스 객체들을 포함하는 장면일 필요는 없으며, 단 하나의 사용자 인터페이스 객체만을 포함할 수도 있다. 사용자 인터페이스 객체는 소정의 이벤트가 발생하고, 발생된 이벤트에 기초해 소정의 기능을 호출하는 사용자 인터페이스의 최소 단위를 의미한다.
소정의 제어 동작을 위한 사용자 인터페이스는 복수의 사용자 인터페이스 장면들로 구성될 수 있다. 예를 들어, 복수의 사용자 인터페이스 장면에 대한 정보 즉, 사용자 인터페이스 패키지(200)는 사용자 인터페이스 클라이언트(110)가 사용자가 사용자 인터페이스 장면에서 소정의 객체를 선택함에 따라 연속적으로 디스플레이되는 사용자 인터페이스 장면에 대한 정보를 포함할 수 있다.
예를 들어, 사용자가 선택할 수 있는 영화들에 대한 정보가 썸네일(thumb-nail)의 형태로 디스플레이되는 최초 사용자 인터페이스 장면은 사용자 인터페이스 엘리먼트 #1(210)에 저장될 수 있다. 최초 사용자 인터페이스 장면에서 사용자가 영화들 중 하나를 선택했을 때, 영화의 상세한 정보와 함께 영화의 재생을 제어하 기 위한 장면이 도시되는 다음 장면은 사용자 인터페이스 엘리먼트 #2(220)에 저장될 수 있다.
또한, 복수의 사용자 인터페이스 장면에 대한 정보는 사용자 인터페이스 서버(110)의 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보일 수 있다. 사용자 인터페이스 서버(110)로부터 네트워크를 통해 사용자 인터페이스를 수신하는 사용자 인터페이스 클라이언트가 복수인 경우에, 서로 다른 사용자 인터페이스 클라이언트는 서로 다른 성능을 가지고 있는 경우가 많다. 복수의 사용자 인터페이스 클라이언트는 지원하는 디스플레이 장치의 해상도, 보유하고 있는 메모리, CPU 등에서 서로 상이할 수 있다. 따라서, 서로 다른 사용자 인터페이스 클라이언트에서 각각 디스플레이 될 수 있는 복수의 사용자 인터페이스 장면에 대한 정보가 사용자 인터페이스 패키지(200)에 포함될 수 있다.
예를 들어, 사용자 인터페이스 서버(110)가 IP-셋톱박스이고, IP-셋톱박스에 디지털 TV, 컴퓨터, PMP(portable media player) 등이 네트워크를 통해 연결되어 있는 경우에 디지털 TV, 컴퓨터, PMP의 디스플레이 장치 해상도 및 하드웨어 성능은 상이하다. 따라서, 사용자 인터페이스 엘리먼트 #1(210)에는 디지털 TV가 디스플레이할 수 있는 사용자 인터페이스 장면에 대한 정보를 포함시키고, 사용자 인터페이스 엘리먼트 #2(220)에는 컴퓨터가 디스플레이할 수 있는 사용자 인터페이스 장면에 대한 정보를 포함시키며, 사용자 인터페이스 엘리먼트 #3(230)에는 PMP가 디스플레이할 수 있는 사용자 인터페이스 장면에 대한 정보를 포함시킬 수 있다. 그런 다음, 사용자 인터페이스 패키지(200)를 모든 종류의 사용자 인터페이스 클라이언트에 제공하여 각각의 사용자 인터페이스 클라이언트가 그 중 하나의 사용자 인터페이스 장면을 선택하여 디스플레이 할 수 있게 한다.
사용자 인터페이스 클라이언트(112)의 성능을 예로 들어 설명하였으나, 네트워크 환경 및 사용자 인터페이스 클라이언트의 성향(preference)도 복수의 사용자 인터페이스패키지(200)에서 하나의 사용자 인터페이스 장면을 선택하는 기준이 될 수 있다. 사용자 인터페이스 클라이언트(112)가 접속해 있는 네트워크의 대역폭 및 사용자 인터페이스 클라이언트(112) 사용자의 개인 프로파일 등이 사용자 인터페이스 장면을 선택하는 기준이 될 수 있다. 개인 프로파일에는 사용자의 나이, 국적, 사용 가능한 언어 등이 포함될 수 있다. 이러한 사용자의 성향에 대한 정보는 MPEG-21 UED(Usage Environment Description) 또는 W3C CC/PP(Composite Capabilities/Preference Profile)와 같은 표준에 의해 생성된 정보를 포함할 수 있다.
또한, 복수의 사용자 인터페이스 장면에 대한 정보는 사용자 인터페이스 장면을 순차적으로 디스플레이하기 위한 정보일 수 있다. 예를 들어, 사용자 인터페이스 엘리먼트 #1(210)은 사용자 인터페이스 장면의 일부 객체만을 포함하고 있고, 사용자 인터페이스 엘리먼트 #2(220)는 사용자 인터페이스 장면의 나머지 객체들도 포함할 수 있다. 도 5를 참조하여 상세히 후술한다.
다시 도 1을 참조하면, 단계 120에서 사용자 인터페이스 서버(110)가 복수의 사용자 인터페이스 장면에 대한 정보를 부호화함에 있어 멀티미디어 데이터 포맷으 로 부호화한다. 종래 기술과 같이 사용자 인터페이스를 웹 페이지 형태로 생성하여 사용자 인터페이스 클라이언트(112)에 전송하면, 사용자 인터페이스의 표현에 제약이 있을 수 있다. 다시 말해, 다양한 미디어가 포함된 사용자 인터페이스 장면을 표현할 수 없을 수 있다. 또한, 사용자 인터페이스 클라이언트(112)에 사용자 인터페이스를 표현하기 위한 별도의 소프트웨어 또는 하드웨어 모듈을 포함하고 있어야 한다. 이는 사용자 인터페이스 클라이언트(112)가 모바일 디바이스인 경우와 같이 사용할 수 있는 하드웨어 자원이 제약된 디바이스인 경우 적합하지 않다.
따라서, 단계 120에서 사용자 인터페이스 서버(110)는 복수의 사용자 인터페이스 장면에 대한 정보를 다양한 디바이스들이 재생할 수 있는 멀티미디어 데이터 포맷으로 부호화한다. 멀티미디어 즉, 동영상, 음성비디오, 오디오, 텍스트 등을 포함하는 멀티미디어 데이터 포맷으로 사용자 인터페이스 장면을 부호화한다. 다양한 미디어가 포함된 멀티미디어 데이터 포맷으로 사용자 인터페이스 장면을 부호화하기 때문에 다양하고, 화려한 효과가 적용된 사용자 인터페이스 장면을 구성할 수 있다. 모바일 디바이스를 비롯해 대부분의 디바이스들이 동영상, 음성 등을 포함하는 멀티미디어를 재생할 수 있으므로 멀티미디어 데이터 포맷으로 사용자 인터페이스를 부호화한다.
예를 들어, MPEG(Moving Picture Experts Group) 표준에 기초해 사용자 인터페이스를 부호화할 수 있다. MPEG 표준은 동영상 및 오디오를 압축 부호화하는 방법의 국제적인 표준으로써, MPEG-1, MPEG-2, MPEG-4, MPEG-7과 같은 다양한 버전의 표준이 존재한다. 사용자 인터페이스 서버(110)는 이러한 MPEG 표준을 이용해 사 용자 인터페이스 장면을 생성한다. 예를 들어, 사용자 인터페이스를 동영상의 형태로 부호화하여 이를 사용자 인터페이스 클라이언트(112)가 재생할 수 있게 함으로써 전술한 디바이스들의 성능 차이에 따른 호환성 문제를 해결한다.
특히, MPEG-4 BIFS(Binary Format for Scene) 및 모바일 디바이스를 위한 LASeR(Lightweight Applications Scene Representation)과 같이 객체 기반(object-based) 멀티미디어 부호화 방식을 이용해 사용자 인터페이스 장면을 부호화할 수 있다. 사용자 인터페이스 장면에 포함된 객체들을 BIFS 또는 LASeR에 기초해 부호화되는 객체들로 보고, BIFS 또는 LASeR의 장면 기술을 이용해 사용자 인터페이스 장면에서 객체들의 시공간적 배치를 표현하여 부호화할 수 있다. 본 발명의 이와 같은 객체 기반 멀티미디어 부호화 방식을 이용해 사용자 인터페이스 객체를 포함하는 사용자 인터페이스 장면을 부호화한다. BIFS 또는 LASeR에 따라 부호화된 멀티미디어 데이터를 재생할 수 있는 디바이스들은 모두 다양한 멀티미디어 효과가 적용된 사용자 인터페이스를 재생할 수 있게 된다. 도 3을 참조하여 보다 상세히 설명한다.
도 3은 본 발명의 일 실시예에 따른 사용자 인터페이스 엘리먼트의 구조를 도시한다.
사용자 인터페이스 엘리먼트(310)가 하나의 사용자 인터페이스 장면에 대한 정보를 포함할 때, 사용자 인터페이스 엘리먼트(310)는 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보(300), 객체들에 의해 발생하는 이벤트들에 대한 정보(310) 및 이벤트들을 처리하기 위해 호출되는 기능(320)에 대한 정 보를 포함한다.
표현, 이벤트 및 기능에 대한 정보가 계층화된 정보로써 구별되어 사용자 인터페이스 엘리먼트(210 또는 220 또는 230)에 포함되므로 사용자 인터페이스의 동적인 확장이 가능해진다. 이러한 동적 확장은 도 4와 관련하여 후술한다.
사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보(310)는 사용자 인터페이스 장면에 포함된 객체들이 장면에 어떻게 배치되고, 어떠한 미디어를 이용해 표현되는지를 나타내는 정보이다.
"Scene Description"(312)은 사용자 인터페이스 장면의 구조를 기술하기 위한 정보이다. "Scene Description"(312)은 사용자 인터페이스 장면에 객체들이 배치되는 위치에 대한 정보로서, 장면의 레이아웃(layout), 폼(form), 테마, 템플릿(template) 등을 기술하기 위한 정보를 포함할 수 있다. 사용자 인터페이스 장면의 표현 방법에 대한 정보도 포함할 수 있다. 사용자 인터페이스 장면 전체가 페이드 아웃 또는 페이드 인과 같은 특수 효과를 이용해 표현되는 경우 이러한 특수 효과에 대한 정보를 포함할 수도 있다.
"Object Description"(314)은 장면에 포함된 객체들의 표현 방법에 대한 정보이다. 사용자 인터페이스 객체들 각각이 이미지, 영상, 오디오 중 어떠한 미디어를 이용해 표현되는지를 나타내는 정보를 포함한다. 또한, 객체들의 표현 시간, 표현 방법 등에 대한 정보를 포함할 수 있다. 예를 들어, 사용자 인터페이스 장면에 포함된 객체들이 서로 다른 시간에 장면에 표현되는 경우, 이러한 타이밍 조절을 위한 시간에 대한 정보가 포함될 수 있다. 또한, 장면과 마찬가지로 객체들이 페이드 아웃 또는 페이드 인과 같은 특수 효과를 이용해 장면에 표현되는 경우에 이러한 표현 방법에 대해 정보가 포함될 수 있다. 객체들의 크기나 모양이 고정되어 있지 않고, 계속 움직이는 애니메이션 효과가 적용된 경우에도 이에 대한 정보가 포함될 수 있다.
"Adaptation Utility"(316)는 사용자 인터페이스 장면의 동적 구성을 위한 정보를 포함하고 있다. 예를 들어, 사용자 인터페이스 장면이 사용자 인터페이스 객체 A, B, C, D를 포함하고 있고, 사용자 인터페이스 클라이언트(112)가 자신의 성능을 고려하여 이중 A, B 객체만을 사용자 인터페이스 장면에 표현하는 것과 같은 장면의 동적 구성을 위한 정보가 포함된다.
사용자 인터페이스 클라이언트(112)의 성능과 그에 따라 장면을 동적으로 구성하기 위한 기준에 정보가 포함된다. 예를 들어, SD(standard definition)의 디스플레이 성능을 가진 사용자 인터페이스 클라이언트는 A, B 객체만 사용자 인터페이스 장면에 표현하고, HD(high definition)의 디스플레이 성능을 가진 사용자 인터페이스 클라이언트는 A, B, C, D 객체들을 모두 사용자 인터페이스 장면에 표현하도록 하는 동적 구성의 기준에 대한 정보가 포함될 수 있다. 사용자 인터페이스 클라이언트(112)의 성능뿐만 아니라 네트워크 환경 또는 사용자 인터페이스 클라이언트(112)의 성향(preference)과 같은 사용자 인터페이스 클라이언트(112)의 개별적인 특성이 모두 동적 구성의 기준이 될 수 있다.
또한, "Adaptation Utility"(316)는 사용자 인터페이스 엘리먼트의 선택의 기준에 대한 정보를 포함할 수 있다. 전술한 바와 같이 사용자 인터페이스 패키 지(200)는 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 복수의 사용자 인터페이스 장면에 대한 정보를 포함하고 있다.
따라서, 복수의 서로 다른 사용자 인터페이스 클라이언트가 사용자 인터페이스 패키지(200)에서 하나의 사용자 인터페이스 엘리먼트(210 또는 220 또는 230)를 선택하여 디스플레이하기 위해서는 선택에 참조할 수 있는 정보가 필요하다. "Adaptation Utility"(316)는 이러한 선택의 기준이 되는 정보를 포함할 수 있다.
예를 들어, 각각의 사용자 인터페이스 엘리먼트(210 또는 220 또는 230)가 디스플레이될 수 있는 최소 성능에 대한 정보가 "Adaptation Utility"(316)에 포함되어 있으면, 사용자 인터페이스 클라이언트(112)가 이를 참조하여 자신이 디스플레이할 수 있는 사용자 인터페이스 엘리먼트(210 또는 220 또는 230)를 사용자 인터페이스 패키지(200)에서 선택할 수 있다.
"Resource"(318)은 사용자 인터페이스 화면의 표현을 위한 소스들을 포함한다. 이미지, 동영상, 오디오와 같은 멀티미디어 데이터를 포함한다.
사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보(310)는 또한, 아이콘화된 사용자 인터페이스 포함하는 사용자 인터페이스 장면을 구성하기 위한 정보를 포함할 수 있다. "Scene Description"(312) 또는 "Object Description"(314) 또는 "Adaptation Utility"(316)에 아이콘화된 사용자 인터페이스 포함하는 사용자 인터페이스 장면을 구성하기 위한 정보를 포함할 수 있다. 도 11을 예로 들어 설명한다.
도 11은 본 발명의 일 실시예에 따른 아이콘화된 사용자 인터페이스를 포함하는 사용자 인터페이스 장면을 도시한다.
도 11을 참조하면, 위젯 A(1110) 및 위젯 B(1120)가 사용자 인터페이스 장면(1100)에 디스플레이된다. 이와 동시에 위젯 A(1110) 및 위젯 B(1120)에 각각 대응되는 위젯 A의 아이콘(1210) 및 위젯 B의 아이콘(1220)이 사용자 인터페이스 장면 하부에 위치한 소정의 영역 즉, 도크(dock)(1200)에 디스플레이된다. 사용자는 도크(1220)에 위치한 각각의 아이콘(1210 및 1220)을 선택하여 위젯 A(1110) 및 위젯 B(1120)을 선택할 수 있다. 위젯 A(1110) 및 위젯 B(1120)를 직감할 수 있는 아이콘들을 도크(1200)에 디스플레이하는데, 예를 들어 위젯 A(1110)가 날씨 정보를 표시하는 위젯인 경우 온도계 형상의 아이콘을 도크(1200)에 디스플레이하여 위젯 A(1110)를 직감할 수 있게 한다. 사용자 인터페이스 패키지가 포함하기 위해 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보(310)는 도 11에 도시된 사용자 인터페이스 장면을 표현하기 위해 도크의 크기 및 위치에 대한 정보, 아이콘에 대한 정보 등을 포함할 수 있다.
도크(1200)에 표시된 아이콘들(1210 및 1220)과 위젯들(1110 및 1120)을 서로 연동할 수도 있다. 전술한 바와 같이 위젯 A(1110)가 날씨 정보를 표시하는 위젯인 경우 날씨 변화에 따라서 아이콘의 모양도 바뀌도록 아이콘(1210)과 위젯 A(1110)을 연동시킬 수 있다. 예를 들어, 맑은 날씨의 경우 해 모양의 아이콘(1210)이 도크(1200)에 디스플레이되고, 흐린 날씨의 경우 구름 모양의 아이이콘(1210)이 도크(1200)에 디스플레이되도록 할 수 있다.
객체들에 의해 발생하는 이벤트들에 대한 정보(320)는 사용자 인터페이스 장면에 포함되어 있는 객체들에 의해 발생하는 이벤트들에 대한 정보를 포함한다. 사용자의 객체 선택 등과 같은 사용자 인터페이스 객체와 사용자 사이의 인터액션(interaction) 결과 발생하는 이벤트들에 대한 정보를 포함한다.
"Event description"(322)은 객체에 의해 발생하는 이벤트들에 대한 정보를 포함한다. 클릭, 터치, 회전 등과 같은 사용자 인터페이스 객체를 통해 수행될 수 있는 사용자 인터액션의 종류에 대해 기술한다.
"Even handle"(324)는 발생하는 이벤트들을 처리하는 방법에 대한 정보를 포함한다. 예를 들어, "Even description"(322)에 클릭이라는 이벤트가 정의되어 있으면, 이러한 클릭이라는 이벤트를 어떻게 처리해야 하는지를 나타내는 정보를 포함한다. 클릭된 사용자 인터페이스 객체가 볼륨(volume)을 조절하기 위한 객체라면, 클릭이라는 이벤트를 볼륨 업(volume up) 또는 볼륨 다운(volume down)으로 해석하여 처리하기 위한 정보가 포함되어 있다.
"Binding Interface"(326)는 정의된 이벤트들과 이벤트들을 처리하기 위해 호출되는 디바이스 API(application programming interface) 사이의 매핑에 대한 정보를 포함한다. 사용자 인터페이스 객체들에 의해 발생하는 이벤트들과 이벤트들에 의해 호출되는 기능을 연관시키기 위해 이벤트들과 호출되는 디바이스 API 사이의 매핑에 대한 정보를 포함한다.
이벤트들을 처리하기 위해 호출되는 기능에 대한 정보(330)는 기능 수행을 위해 호출되는 디바이스 API들에 대한 상세한 정보를 포함한다.
"Function description"(332)은 이벤트들에 의해 호출되는 디바이스 API들의 상세한 동작 다시 말해, 디바이스 API를 통해 사용자가 구현할 수 있는 구체적인 기능들에 대한 정보를 포함한다. 예를 들어, 진동 기능에 대한 디바이스 API가 호출되는 경우에 디바이스 API가 구현할 수 있는 진동 세기의 조절, 진동 시간의 조절과 같은 구체적인 기능에 대한 정보를 포함한다.
"Function invocation"(334)은 사용자 인터페이스 객체에 의해 호출되는 기능의 구체적인 파라미터에 대한 정보가 포함된다. 예를 들어, 진동 기능에 대한 디바이스 API가 1~5 다섯 가지 수준으로 진동 세기 및 진동 시간을 조절할 수 있는 것으로 "Function description"(332)에 기술되어 있다면, "Function invocation"(334)은 이러한 다섯 가지 수준의 진동 세기 및 진동 시간 중 어떠한 수준으로 기능을 호출해야 하는지를 나타내는 파라미터들을 구체적으로 포함한다. 다시 말해, 사용자 인터페이스 객체 A가 진동 기능을 호출함에 있어 "Function description"(332)에 기술된 다섯 가지 수준의 진동 세기 및 진동 시간 중 3 수준의 진동 세기 및 1 수준의 진동 시간으로 진동 기능을 호출한다면, 이러한 기능 호출을 위한 구체적인 파라미터들이 "Function invocation"(334)이 포함할 수 있다.
도 3에 도시된 바와 같이, 표현, 이벤트 및 기능과 관련된 정보들이 계층화된 정보로 구별되어 사용자 인터페이스 엘리먼트(210 또는 220 또는 230)에 포함되어 있기 때문에 사용자 인터페이스 장면이 동적으로 구성될 수 있다. 도 4와 관련하여 상세히 후술한다.
도 4는 본 발명의 일 실시예에 따른 사용자 인터페이스 장면의 동적 구성의 예를 도시한다. 사용자 인터페이스 객체들을 동적으로 구성하여 사용자 인터페이스 장면을 구성할 수 있는 경우의 예시들이 도 4에 도시된다.
도 4를 참조하면, 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보, 객체들에 의해 발생하는 이벤트들에 대한 정보 및 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보가 조합되어 서로 다른 사용자 인터페이스 장면에 포함된 객체가 동적으로 구성될 수 있다.
예를 들어, 사용자 인터페이스 클라이언트(112)가 사용자 인터페이스 장면을 동적으로 구성하기 위해 사용자 인터페이스 객체 A를 표현하기 위한 정보(310)는 "Local" 즉, 사용자 인터페이스 클라이언트(112)의 "Scene description"(312), "Object description"(314), "Adaptation Utility"(316) 및 "Resource"(318)을 이용하고, 객체들에 의해 발생하는 이벤트들에 대한 정보 및 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보는 "Remote" 즉, 사용자 인터페이스 서버(110)의 "Event Description"(322), "Event handle"(324), "Binding interface"(326), "Function description"(332) 및 "Function call"(334)을 이용할 수 있다. 사용자 인터페이스 서버(110)가 제공하는 사용자 인터페이스의 이벤트 및 기능을 수행하면서, 표현만 사용자 인터페이스 클라이언트(112)의 임의대로 표현된 사용자 인터페이스 장면의 구성이 가능해진다.
다시 도 1을 참조하면, 단계 120122에서 사용자 인터페이스 서버(110)는 멀티미디어 데이터의 포맷으로 부호화된 복수의 사용자 인터페이스 장면에 대한 정보를 사용자 인터페이스 클라이언트(112)에 전송한다. 멀티미디어 데이터를 스트림 방식으로 사용자 인터페이스 클라이언트(112)에 전송하여 사용자 인터페이스 클라이언트(112)가 사용자 인터페이스 장면을 재생하도록 할 수 있다. 또한, 스트림 방식이 아닌, 멀티미디어 데이터를 사용자 인터페이스 클라이언트(112)에 다운로드해주는 방식으로 사용자 인터페이스를 제공할 수도 있다.
도 5는 본 발명의 일 실시예에 따른 복수의 사용자 인터페이스 장면에 대한 정보를 전송하는 방법을 도시한다.
도 5를 참조하면, 사용자 인터페이스 서버(110)가 사용자 인터페이스 클라이언트(112)에 복수의 사용자 인터페이스 장면에 대한 정보를 포함하는 멀티미디어 데이터 즉, 사용자 인터페이스 패키지(200)를 전송함에 있어 각각의 사용자 인터페이스 엘리먼트를 순차적으로 전송할 수 있다.
다시 말해, 사용자 인터페이스 서버(110)는 사용자 인터페이스 객체의 일부만을 포함하고 있는 사용자 인터페이스 엘리먼트 #1(210)을 우선 사용자 인터페이스 클라이언트(112)에 전송한다. 그런 다음, 사용자 인터페이스가 사용자 인터페이스 엘리먼트 #1(210)에 따라 일부의 사용자 인터페이스 객체만을 포함하는 사용자 인터페이스 장면을 디스플레이하고 있을 때, 나머지 사용자 인터페이스 객체를 포함하는 사용자 인터페이스 엘리먼트 #2(220)를 사용자 인터페이스 클라이언트(112)에 전송한다.
사용자 인터페이스 패키지(200)를 수신하는 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 엘리먼트 #1(210)에 따라 일부 객체만을 포함하는 사용자 인터페이스 장면을 우선 디스플레이하고, 사용자 인터페이스 엘리먼트 #2(220)를 수신함에 따라 나머지 사용자 인터페이스 객체들을 포함하는 완전한 사용자 인터페이스 장면을 디스플레이할 수 있다.
사용자 인터페이스 클라이언트(112)의 성능, 네트워크 환경 및 사용자의 성향에 따라 사용자 인터페이스 클라이언트(112)가 사용자 인터페이스 엘리먼트 #2(220)를 이용해 완전한 사용자 인터페이스 장면을 디스플레이할지 여부를 선택할 수도 있다
다시 도 1을 참조하면, 단계 124에서 사용자 인터페이스 클라이언트(112)는 단계 124에서 수신된 멀티미디어 데이터를 복호화한다. 수신된복호화된 멀티미디어 데이터를 복호화하여 재생함으로써 사용자 인터페이스 장면을 디스플레이한다.
단계 126에서 사용자 인터페이스 클라이언트(112)는 단계 124에서 디스플레이된 사용자 인터페이스 장면을 이용해 소정의 제어 동작을 선택한다. 사용자가 사용자 인터페이스 장면의 사용자 인터페이스 객체에 이벤트를 발생시킴으로써 소정의 제어 동작을 선택할 수 있다.
도 6은 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트의 사용자 인터페이스 장면을 재생하는 방법을 설명하기 위한 흐름도이다. 도 6은 단계 124 및 126의 과정을 보다 상세히 도시한다.
도 6을 참조하면, 단계 602에서 사용자 인터페이스 클라이언트(112)는 복수의 사용자 인터페이스 장면에 대한 정보를 포함하고 있는 멀티미디어 데이터를 복호화한다. 복호화 결과 사용자 인터페이스 패키지(200)에 대한 정보가 생성된다.
단계 604에서 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보(310)를 해석한다.
단계 606에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 엘리먼트(300)에 포함되어 있는 객체들에 의해 발생하는 이벤트들에 대한 정보(320) 및 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보(330)를 해석한다.
단계 608에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 장면을 동적으로 재구성할 필요가 있는지 판단한다. 사용자 인터페이스 클라이언트(112)의 성능, 네트워크 환경 및 사용자의 성향 등을 고려하여 사용자 인터페이스 장면을 재구성할 필요가 있는지 판단한다. "Adaptation Utility"(316)에 포함된 정보들을 참조하여 재구성의 필요를 판단한다.
단계 608에서 재구성할 필요가 있는 것으로 판단되면, 단계 610에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 장면 및 객체를 재구성한다. 사용자 인터페이스 장면에 포함되어 있는 객체들 중 일부만을 디스플레이하거나, 객체들의 배치를 조정함으로써 사용자 인터페이스 장면을 재구성한다.
단계 612에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 장면을 디스플레이한다. 복호화된 멀티미디어 데이터 즉, 사용자 인터페이스 패키지를 재생함으로써 사용자 인터페이스 장면을 디스플레이한다.
단계 614에서 사용자 인터페이스 클라이언트(112)는 사용자로부터 소정의 입력을 수신한다. 사용자 입력이 있는 경우에는 사용자 입력에 따라 소정의 이벤트가 발생된다. 사용자 입력이 없는 경우에는 단계 612로 돌아가 사용자 인터페이스 장면의 재생을 계속한다.
단계 616에서 사용자 인터페이스 클라이언트(112)는 단계 614에서 발생된 이벤트에 따라 소정의 제어 동작을 위한 기능이 호출되었는지를 판단한다. 이벤트가 발생하여도 제어 동작을 위한 기능이 호출되지 않고 사용자 인터페이스 장면만 갱신하면 되는 경우가 있으므로, 이벤트 발생에 의해 기능이 호출되었는지를 판단한다.
단계 618에서 사용자 인터페이스 클라이언트(112)는 발생된 이벤트에 따라 소정의 제어 기능을 호출한다.
단계 620에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 장면을 갱신한다.
단계 622에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 장면의 재생을 종료해야 하는지 판단한다. 판단 결과 재생 종료가 아닌 것으로 판단되면, 단계 612로 돌아가 사용자 인터페이스 장면의 재생을 계속한다.
다시 도 1을 참조하면, 단계 128에서 사용자 인터페이스 클라이언트(112)는 사용자 인터페이스 서버(110)에 소정의 제어 신호를 전송한다. 단계 126에서 선택된 제어 동작에 기초해 제어 신호를 전송한다. 사용자 인터페이스를 이용해 제어하는 디바이스가 사용자 인터페이스 서버(110)가 아닌 경우에는 사용자 인터페이스 서버가 아닌 다른 디바이스에 제어 신호를 전송할 수 있다.
단계 130에서 사용자 인터페이스 서버(110)는 사용자 인터페이스 클라이언트(112)로부터 수신한 제어 신호에 따라 제어 동작을 수행한다. 예를 들어, 영화 또는 드라마, MP3 음원과 같은 콘텐트를 사용자 인터페이스 클라이언트(112)에 전 송하거나, 이러한 콘텐트의 재생, 정지, 빨기 감기, 뒤로 감기 등과 같은 제어 동작을 수행할 수도 있다. 단계 128에서 제어 신호가 사용자 인터페이스 서버(110)가 아닌 다른 디바이스에 전송된 경우에는 다른 디바이스가 이러한 제어 동작을 수행한다.
도 7은 본 발명의 일 실시예에 따른 사용자 인터페이스 서버를 도시한다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 사용자 인터페이스 서버(110)는 부호화부(710), 전송부(720) 및 제어수행부(730)을 포함한다.
부호화부(710)는 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화한다. MPEG 표준 예를 들어, MPEG-4 BIFS(Binary Format for Scene) 및 모바일 디바이스를 위한 LASeR(Lightweight Applications Scene Representation)과 같은 객체 기반(object-based) 멀티미디어 부호화 방식을 이용해 사용자 인터페이스 장면을 부호화할 수 있음은 전술하였다.
전송부(720)는 부호화부(710)에서 부호화 결과 생성된 멀티미디어 데이터를 사용자 인터페이스 클라이언트(112)에 전송한다. 복수의 사용자 인터페이스 장면에 대한 정보를 포함하는 사용자 인터페이스 패키지를 사용자 인터페이스 클라이언트(112)에 전송한다. 도 5와 관련하여 전술한 바와 같이 사용자 인터페이스 패키지에 포함된 각각의 사용자 인터페이스 엘리먼트가 시간 간격을 두고 순차적으로 전송될 수도 있다.
제어수행부(730)는 사용자 인터페이스 클라이언트(112)로부터 제어 신호를 수신하여 소정의 제어 동작을 수행한다. 전송부(720)가 제공한 복수의 사용자 인 터페이스 장면에 기초해 사용자 인터페이스 클라이언트(112)가 전송하는 제어 신호를 수신하여 소정의 제어 동작을 수행한다.
도 8은 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트를 도시한다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트(112)는 복호화부(810), 재생부(820) 및 제어수행부(830)을 포함한다. 복호화부(810)는 복수의 사용자 인터페이스 장면에 대한 정보를 포함하고 있는 멀티미디어 데이터를 사용자 인터페이스 서버(110)로부터 수신하고, 수신된 멀티미디어 데이터를 복호화한다.
재생부(820)는 복호화된 멀티미디어 데이터를 소정의 디스플레이 장치를 통해 디스플레이한다. MPEG 표준에 따르는 멀티미디어 데이터를 재생함으로써 일반적인 동영상을 재생하는 방법으로 사용자 인터페이스 장면을 디스플레이할 수 있다.
제어수행부(830)는 재생부(820)를 통해 디스플레이된 사용자 인터페이스 장면에 따라 입력된 사용자 입력에 기초해 소정의 제어 신호를 생성한다. 그런 다음, 생성된 제어 신호를 사용자 인터페이스 서버(110)에 전송한다. 사용자의 입력은 키보드, 마우스, 터치 스크린 등 다양한 사용자 인터페이스 장치를 통해 제어수행부(830)에 전달될 수 있다.
도 9는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 제공 방법의 흐름도이다.
도 9는 디바이스 A(910)를 제어하기 위한 사용자 인터페이스를 디바이스 A(910)가 보유하고 있지 않은 경우에 사용자 인터페이스 클라이언트(918)가 사용자 인터페이스를 수신하는 방법에 대한 흐름도이다.
도 9를 참조하면, 단계 920 및 922에서 사용자 인터페이스 서버 #1(912) 및 사용자 인터페이스 서버 #2(914)는 디바이스 A(910)를 제어하기 위해 필요한 사용자 인터페이스들을 사용자 인터페이스 클라이언트(918)에 전송한다. 디바이스 A(910)가 사용자 인터페이스를 보유하고 있지 아니하므로, 다른 사용자 인터페이스 서버가 이를 제공한다.
사용자 인터페이스 서버 #1(912) 또는 사용자 인터페이스 서버 #2(914) 중 하나의 사용자 인터페이스 서버가 디바이스 A(910)를 제어하기 위한 완전한 사용자 인터페이스를 가지고 있는 경우에는 이를 사용자 인터페이스 클라이언트(918)에 전송한다. 그러나, 사용자 인터페이스 서버 #1(912) 또는 사용자 인터페이스 서버 #2(914)가 디바이스 A(910)를 제어하기 위한 완전한 사용자 인터페이스를 가지고 있지 않은 경우에 사용자 인터페이스 클라이언트(918)는 사용자 인터페이스 서버 #1(912)로부터 사용자 인터페이스의 일부를 수신하고, 사용자 인터페이스 서버 #2(914)로부터 나머지 사용자 인터페이스를 수신하여 수신된 사용자 인터페이스들을 조합한다.
예를 들어, 사용자 인터페이스 클라이언트(918)가 디바이스 A(910)의 MP3 재생을 제어하기 위한 사용자 인터페이스를 수신함에 있어, MP3의 "Play" 및 "Pause"와 관련된 사용자 인터페이스는 사용자 인터페이스 서버 #1(912)로부터 수신하고, "Fast forward" 및 "Rewind"와 관련된 사용자 인터페이스는 사용자 인터페이스 서버 #2(914)로부터 수신할 수 있다.
단계 920 및 922에서 사용자 인터페이스 서버 #1(912) 및 사용자 인터페이스 서버 #2(914)로부터 수신하는 사용자 인터페이스는 위젯(widget)일 수 있다.
단계 924에서 사용자 인터페이스 클라이언트(918)는 단계 920 및 922에서 각각 수신한 사용자 인터페이스를 조합하여 디바이스 A(910)의 제어를 위한 새로운 사용자 인터페이스를 생성한다. 예를 들어, 사용자 인터페이스가 위젯인 경우에는 사용자 인터페이스 서버 #1(912)로부터 수신한 위젯 A와 사용자 인터페이스 서버 #2(914)로부터 수신한 위젯 B를 조합하여 새로운 위젯 C를 생성할 수도 있다.
새로운 사용자 인터페이스를 생성함에 있어, 사용자 인터페이스 클라이언트(918)의 성능, 네트워크 환경 및 사용자의 성향 등을 고려하여 생성할 수 있다. 예를 들어, 사용자가 사용하는 언어가 영어인 경우에는 사용자 인터페이스 객체들을 영어로 표시하여 디스플레이할 수 있고, 사용자가 선호하는 색상이 파란색인 경우에는 파란색을 테마로 하는 사용자 인터페이스를 생성할 수도 있다.
단계 926에서 사용자 인터페이스 클라이언트(918)는 단계 924에서 생성된 사용자 인터페이스에 기초해 소정의 제어 동작을 선택한다. 단계 924에서 생성된 사용자 인터페이스를 디스플레이하고, 디스플레이된 사용자 인터페이스에 기초한 사용자 입력에 따라 소정의 제어 동작을 선택한다.
단계 928에서 사용자 인터페이스 클라이언트(918)는 단계 926에서의 선택에 따라 소정의 제어 신호를 디바이스 A(910)에 전송한다.
단계 930에서 디바이스 A(910)는 단계 928에서 수신한 제어 신호에 따라 소정의 제어 동작을 수행한다.
도 10은 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 클라이언트를 도시한다.
도 10을 참조하면, 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 클라이언트(1000)는 사용자인터페이스관리부(1010), 특성정보저장부(1020) 및 제어수행부(1030)를 포함한다.
사용자인터페이스관리부(1010)는 적어도 하나의 사용자 인터페이스 서버로부터 디바이스 A의 제어를 위한 사용자 인터페이스를 수신하고, 이를 관리한다. 2 이상의 사용자 인터페이스 서버들로부터 디바이스 A의 제어를 위한 사용자 인터페이스를 수신하는 경우에는 사용자 인터페이스 서버들로부터 수신한 사용자 인터페이스를 조합하여 디바이스 A의 제어를 위한 새로운 사용자 인터페이스를 생성한다.
2 이상의 사용자 인터페이스들을 조합하여 새로운 사용자 인터페이스를 생성하는 경우, 특성정보저장부(1020)에 저장된 사용자 인터페이스 클라이언트(1000)의 성능, 네트워크 환경 및 사용자의 성향 등을 고려하여 동적으로 사용자 인터페이스를 생성할 수 있다.
제어수행부(1030)는 사용자인터페이스관리부(1010)에서 생성된 사용자 인터페이스를 이용해 디바이스 A를 제어한다. 사용자인터페이스관리부(1010)에서 생성된 사용자 인터페이스를 사용자에게 디스플레이하고, 디스플레이된 사용자 인터페이스에 따른 사용자 입력을 수신하여 디바이스 A를 제어하기 위한 제어 신호를 생 성하여 디바이스 A에 전송한다.
도 12는 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 시스템을 도시한다.
도 12을 참조하면, 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 시스템은 사용자 인터페이스 서버(1210) 및 사용자 인터페이스 클라이언트(1220)를 포함한다. 도 12는 사용자 인터페이스가 위젯인 경우를 예로 들어 설명하나, 위젯이 아닌 다른 사용자 인터페이스에도 도 12에 도시된 시스템이 적용될 수 있음은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 쉽게 이해할 수 있다.
사용자 인터페이스 서버(1210)는 위젯생성부(1212), 위젯부호화부(1214) 및 위젯제공부(1216)를 포함한다. 위젯생성부(1212) 및 위젯부호화부(1214)는 도 12에 도시된 바와 달리 각각 독립된 디바이스일 수 있다.
위젯생성부(1212)는 사용자 인터페이스 클라이언트측(1220)에 제공할 위젯을 생성한다. 비디오, 오디오, 텍스트 등의 다양한 미디어를 포함하는 위젯를 저작(authoring)한다.
위젯부호화부(1214)는 위젯생성부(1212)에서 생성된 위젯을 부호화한다. 소정의 멀티미디어 데이터의 포맷으로 위젯을 부호화한다. 도 2 및 3과 관련하여 전술한 사용자 인터페이스 패키지의 포맷으로 위젯을 부호화한다. 이 때 MPEG-4 BIFS(Binary Format for Scene) 및 모바일 디바이스를 위한 LASeR(Lightweight Applications Scene Representation)과 같은 객체 기반(object-based) 멀티미디어 부호화 방식의 장면 기술이 이용될 수 있다.
위젯에 기초해 제어 동작을 수행할 때 송수신되는 제어 메시지와 관련된 프로토콜에 대한 정보도 함께 부호화한다. 사용자 인터페이스 클라이언트(1220)에서 위젯에 기초해 소정의 이벤트를 발생시키면, 사용자 인터페이스 서버(1210)는 이 이벤트와 관련된 소정의 제어 동작을 수행한다. 이를 위해, 사용자 인터페이스 클라이언트(1220)는 사용자 인터페이스 서버(1210) 소정의 제어 메시지를 전송하는데, 위젯부호화부(1214)는 이러한 제어 메시지의 작성에 이용되는 프로토콜에 대한 정보를 함께 부호화하여 사용자 인터페이스 클라이언트 (1220)에 전송한다. 위젯부호화부(1214)는 사용자 인터페이스 엘리먼트(300)의 "Function" 필드(330)에 프로토콜에 대한 정보를 포함시켜 위젯을 부호화할수 있다.
위젯제공부(1216)는 위젯부호화부(1214)로부터 부호화 결과 생성된 멀티미디어 데이터를 사용자 인터페이스 클라이언트(1220)에 전송한다. 부호화 결과 생성된 사용자 인터페이스 패키지를 사용자 인터페이스 클라이언트(1220)에 전송할 수 있다.
그러나, 위젯부호화부(1214)에서 생성된 멀티미디어 데이터에 기초해 사용자 인터페이스 클라이언트(1220)에서 위젯을 다시 생성하지 못하는 경우에는 위젯제공부(1216)가 멀티미디어 데이터에 기초해 위젯을 다시 생성하여 전송할 수 있다.
예를 들어, 사용자 인터페이스 클라이언트(1220)가 사용자 인터페이스 패키지의 포맷으로 부호화된 멀티미디어 데이터를 복호화하지 못하는 디바이스일 수 있다. 이 경우 위젯제공부(1216)는 사용자 인터페이스 클라이언트의 위젯결합 부(1224)의 기능을 수행한다. 멀티미디어 데이터에 기초해 위젯을 생성하여 사용자 인터페이크 클라이언트(1220)에 전송한다. 이때 후술하는 콘텐트정보부(1226)에 액세스하여 콘텐트에 대한 정보가 결합된 위젯을 생성할 수 있다. 콘텐트에 대한 정보를 결합과 관련된 상세한 설명은 후술한다.
사용자 인터페이스 서버(1220)는 위젯복호화부(1222), 위젯결합부(1224) 및 콘텐트정보부(1226)를 포함한다. 위젯복호화부(122)는 도 12에 도시된 바와 달리 각각 독립된 디바이스일 수 있다. 특히, 콘텐트정보부(1226)는 위젯을 통해 사용자에게 제공되는 콘텐트 정보를 사용자 인터페이스 클라이언트에 제공하는 외부 서버일 수 있다. 도 11과 관련하여 전술한 예와 같이 위젯이 날씨 정보를 표시하기 위한 정보인 경우 날씨에 대한 정보를 사용자 인터페이스 클라이언트에 제공하는 날씨 서버일 수 있다.
위젯복호화부(1222)는 위젯제공부(1216)이 제공한 멀티미디어 데이터를 복호화한다. MPEG의 장면 기술 방법을 이용해 부호화하여 생성된 멀티미디어 데이터를 복호화한다. 복호화 결과 제1 위젯이 생성된다. 생성된 제1 위젯은 사용자에 제공할 콘텐트에 대한 정보는 포함하고 있지 않은 위젯일 수 있다. 다시 말해, 레이아웃(layout), 폼(form), 테마, 템플릿(template) 등과 같은 위젯의 골격만이 포함하고, 위젯을 통해 사용자에게 제공되는 콘텐트 정보는 포함하고 있지 않은 위젯일 수 있다.
위젯결합부(1224)는 위젯복호화부(1222)에서 복호화 결과 생성된 제1 위젯 및 콘텐트정보부(1226)로부터 수신된 콘텐트에 대한 정보에 기초해 제2 위젯을 생 성한다. 위젯복호화부(1222)와 관련하여 전술한 바와 같이 제1 위젯이 콘텐트에 대한 정보를 포함하고 있지 않은 경우는 물론 제1 위젯이 이미 소정의 콘텐트에 대한 정보를 포함하고 있는 경우에도 이미 포함되어 있는 정보를 콘텐트정보부(1226)로부터 수신된 콘텐트에 대한 정보로 대체하여 제2 위젯을 생성할 수 있다. 예를 들어, 제1 위젯이 날씨에 대한 정보를 제공하는 위젯으로 서울의 날씨에 대한 정보를 포함하고 있는 경우에 이를 부산 또는 뉴욕과 같은 국내외 다른 도시의 날씨에 대한 정보로 대체할 수 있다. 위젯결합부(1224)의 상세한 설명은 도 13과 관련하여 후술한다.
콘텐트정보부(1226)는 위젯을 통해 사용자에게 제공되는 콘텐트에 대한 정보 즉, 메타 데이터를 제공하는 모듈로서, 사용자 인터페이스 클라이언트(1220) 내부의 DB일 수도 있고, 사용자 인터페이스 클라이언트의 외부에 존재하는 별도의 서버일 수 있다.
전술한 바와 같이 위젯이 날씨에 대한 정보를 사용자에게 제공하는 사용자 인터페이스라면, 날씨에 대한 정보를 위젯결합부(1224)에 제공해 위젯결합부(1224)가 제1 위젯과 날씨에 대한 정보를 결합(containing)하여 위젯을 생성할 수 있게 한다. 또 다른 예로, 위젯이 개봉 영화들에 대한 정보를 제공하는 사용자 인터페이스라면, 콘텐트정보부(1226)는 적어도 하나의 영화 콘텐트에 대한 메타데이터를 위젯결합부(1224)에 제공할 수 있다.
도 13은 본 발명의 일 실시예에 따른 위젯 결합부를 도시한다.
도 13는 사용자 인터페이스가 위젯인 경우를 예로 들어 설명하나, 위젯이 아 닌 다른 사용자 인터페이스에도 도 12에 도시된 시스템이 적용될 수 있음은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 쉽게 이해할 수 있다.
도 13을 참조하면, 본 발명의 일 실시예에 따른 위젯 결합부(1300)는 UI리스트관리부(1310), UI파서(1320), 위젯관리부(1330), 정보관리부(1340), 리소스관리부(1350), 표현엔진부(1360) 및 위젯라이브러리부(1370)를 포함한다.
UI리스트관리부(1310)는 복수의 사용자 인터페이스 패키지를 분석하여 사용자 인터페이스의 리스트를 작성하고, 관리한다. 복수의 사용자 인터페이스 패키지는 서로 다른 사용자 인터페이스 서버들로부터 수신된 사용자 인터페이스 패키지들일 수 있다. 이 리스트에는 도 12에 도시된 사용자 인터페이스 서버 (1210)로부터 수신된 제1 위젯이 포함되어 있다. 어떠한 사용자 인터페이스 서버가 어떠한 사용자 인터페이스를 제공하는지를 나타내는 리스트를 관리한다.
UI파서부(1320)는 사용자 인터페이스 패키지를 복호화하여 위젯들을 생성한다. 사용자 인터페이스 서버(1210)로부터 수신된 제1 위젯도 UI파서부(1320)에서 생성된다. 생성된 제1 위젯은 콘텐트에 대한 정보를 포함하지 않은 위젯일 수 있음은 전술하였다.
위젯관리부(1330)는 UI파서부(1320)에서 생성된 위젯들을 관리한다. UI파서부(1320)에서 생성된 제1 위젯에 소정의 콘텐트에 대한 정보를 결합하여 제2 위젯을 생성할 수 있다. 콘텐트에 대한 정보를 포함하지 않은 제1 위젯에 콘텐트에 대한 정보를 결합할 수 있다. 제1 위젯이 이미 소정의 콘텐트에 대한 정보를 포함하고 있는 경우에는 기존의 콘텐트에 대한 정보를 정보관리부(1340)에서 수신된 새로 운 콘텐트에 대한 정보로 대체할 수 있다.
제2 위젯에 수명(life cycle)이 이미 결정되어 있는 경우 이에 기초해 위젯의 폐기도 관리할 수 있다. 예를 들어, 사용자가 제2 위젯을 한 달만 이용할 수 있는 경우에 한 달 후에 제2 위젯을 더 이상 이용할 수 없도록 할 수 있다.
정보관리부(1340)는 사용자에게 제공될 콘텐트에 대한 정보를 위젯관리부(1330)에 제공하여 위젯관리부(1330)가 제2 위젯을 생성할 수 있게 한다. 콘텐트에 대한 정보는 사용자 인터페이스 클라이언트 외부의 서버로부터 수신될 수 있음은 전술하였다. 콘텐트에 대한 정보를 외부의 서버에 전송할 수도 있다.
리소스관리부(1350)는 사용자 인터페이스 클라이언트의 리소스 관리를 위해 위젯관리부(1330)를 제어한다. 사용자 인터페이스 클라이언트의 보안(security)를 고려하여 위젯관리부(1330)의 위젯 생성을 제어할 수 있다. 보안 또는 하드웨어 자원의 고려하여 특정 위젯의 다운로드를 제한할 수 있다.
표현엔진부(1360)는 위젯의 표현(presentation)을 위한 엔진이다. 본 발명에 따른 위젯은 MPEG 장면 기술 방법을 이용한 멀티미디어 데이터로 부호화된다. 표현엔진부(1360)는 이러한 멀티미디어 데이터를 표현하기 위한 엔진을 포함한다. 예를 들어, MPEG 디코더와 같은 동영상 복호화 엔진이 표현엔진부(1360)에 포함될 수 있다.
위젯라이브러리부(1370)는 위젯의 동적 생성을 위한 라이브러리를 포함한다. 사용자 인터페이스 클라이언트가 이미 보유하고 있는 위젯 또는 과거에 다운로드 받은 위젯들을 저장하고 있는 모듈로서, 저장된 위젯들을 위젯관리부(1330)의 요청 에 따라 위젯관리부(1330)에 제공하여 위젯관리부(1330)가 동적으로 위젯을 생성할 수 있게 한다.
도 14는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스를 제공하는 방법을 설명하기 위한 흐름도이다.
도 14를 참조하면, 단계 1410에서 사용자 인터페이스 서버는 사용자 인터페이스를 멀티미디어 데이터의 포맷으로 부호화한다. 도 2 및 3과 관련하여 전술한 사용자 인터페이스 패키지의 포맷으로 사용자 인터페이스를 부호화한다. 이 때, MPEG 장면 기술 방법이 이용될 수 있다. 사용자 인터페이스에 따라 제어 동작이 수행될 때 송수신되는 제어 메시지와 관련된 프로토콜 정보도 사용자 인터페이스 패키지에 포함시켜 부호화한다. 부호화되는 사용자 인터페이스는 콘텐트에 대한 정보는 포함하지 않은 제1 사용자 인터페이스일 수 있다.
단계 1420에서 사용자 인터페이스 서버는 전술한 제어 메시지와 관련된 프로토콜 정보를 포함하는 멀티미디어 데이터 즉, 사용자 인터페이스 패키지를 사용자 인터페이스 클라이언트에 전송한다.
도 15는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스를 수신하는 방법을 설명하기 위한 흐름도이다.
단계 1510에서 사용자 인터페이스 클라이언트는 제1 사용자 인터페이스를 포함하는 멀티미디어 데이터를 수신한다. 멀티미디어 데이터의 포맷으로 부호화된 제1 사용자 인터페이스를 수신한다. 제1 사용자 인터페이스는 레이아웃(layout), 폼(form), 테마, 템플릿(template) 등과 같은 위젯의 골격만이 존재하고, 위젯을 통해 사용자에게 제공되는 콘텐트 정보는 포함하고 있지 않은 사용자 인터페이스일 수 있다.
단계 1520에서 사용자 인터페이스 클라이언트는 단계 1510에서 수신된 멀티미디어 데이터를 복호화한다. 사용자 인터페이스 패키지를 파싱하고, 분석하여 제1 사용자 인터페이스를 생성한다.
단계 1530에서 사용자 인터페이스 클라이언트는 사용자 인터페이스를 통해 사용자에게 제공되는 콘텐트에 대한 정보를 수신한다. 외부의 서버로부터 콘텐트에 대한 정보를 수신할 수 있다.
단계 1540에서 사용자 인터페이스 클라이언트는 단계 1520에서 복호화 결과 생성된 제1 사용자 인터페이스와 단계 1530에서 수신된 콘텐트에 대한 정보를 결합하여 제2 사용자 인터페이스를 생성한다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스 크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
도 1은 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 방법의 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 인터페이스 패키지를 도시한다.
도 3은 본 발명의 일 실시예에 따른 사용자 인터페이스 엘리먼트의 구조를 도시한다.
도 4는 본 발명의 일 실시예에 따른 사용자 인터페이스 장면의 동적 구성의 예를 도시한다.
도 5는 본 발명의 일 실시예에 따른 복수의 사용자 인터페이스 장면에 대한 정보를 전송하는 방법을 도시한다.
도 6은 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트가 사용자 인터페이스 장면을 재생하는 방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 사용자 인터페이스 서버를 도시한다.
도 8은 본 발명의 일 실시예에 따른 사용자 인터페이스 클라이언트를 도시한다.
도 9는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 제공 방법의 흐름도이다.
도 10은 본 발명의 또 다른 실시예에 따른 사용자 인터페이스 클라이언트를 도시한다.
도 11은 본 발명의 일 실시예에 따른 아이콘화된 사용자 인터페이스를 포함 하는 사용자 인터페이스 장면을 도시한다.
도 12는 본 발명의 일 실시예에 따른 사용자 인터페이스를 제공/수신하는 시스템을 도시한다.
도 13은 본 발명의 일 실시예에 따른 위젯 결합부를 도시한다.
도 14는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스를 제공하는 방법의 흐름도이다.
도 15는 본 발명의 또 다른 실시예에 따른 사용자 인터페이스를 수신하는 방법의 흐름도이다.

Claims (42)

  1. 사용자 인터페이스 서버가 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 방법에 있어서,
    복수의 사용자 인터페이스 엘리먼트를 포함하는 사용자 인터페이스 패키지를 형성하도록 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화하는 단계; 및
    상기 사용자 인터페이스 패키지를 상기 사용자 인터페이스 클라이언트에 전송하는 단계를 포함하며,
    상기 복수의 사용자 인터페이스 엘리먼트는 상기 사용자 인터페이스 서버의 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  2. 제 1 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  3. 제 2 항에 있어서, 상기 복수의 사용자 인터페이스 장면에 대한 정보는
    상기 복수의 사용자 엘리먼트들에 포함되며,
    사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이 하기 위한 복수의 사용자 인터페이스 장면에 대한 상기 정보는,
    상기 복수의 사용자 인터페이스 장면에 대한 정보에 포함되는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  4. 제 2 항에 있어서, 상기 사용자 인터페이스 엘리먼트는
    상기 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보, 상기 객체들에 의해 발생하는 이벤트들에 대한 정보 및 상기 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  5. 제 4 항에 있어서, 상기 객체들을 장면에 표현하기 위한 정보는
    상기 장면의 구조를 기술하는 정보, 상기 객체들의 표현 방법을 기술하는 정보 및 상기 장면을 동적으로 구성하기 위해 필요한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  6. 제 5 항에 있어서, 상기 장면의 구조를 설명하기 위한 정보는
    상기 장면을 구성하기 위한 레이아웃(layout), 폼(form), 템플릿(template), 객체들의 위치 및 객체들 각각의 표현 시간 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  7. 제 5 항에 있어서, 상기 객체들의 표현 방법을 설명하기 위한 정보는
    상기 객체들 각각을 표현하기 위한 미디어의 종류 및 상기 미디어의 표현 방법 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  8. 제 5 항에 있어서, 상기 장면을 동적으로 구성하기 위해 필요한 정보는
    상기 사용자 인터페이스 클라이언트의 하드웨어 자원, 선호도 및 네트워크 환경 중 적어도 하나에 기초해 상기 장면을 동적으로 구성하기 위해 필요한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  9. 제 4 항에 있어서, 상기 객체들에 의해 발생하는 이벤트에 대한 정보는
    상기 객체들에 의해 발생하는 이벤트들을 기술하는 정보, 상기 이벤트들을 처리하는 방법을 기술하는 정보 및 상기 이벤트들과 상기 이벤트들을 처리하는 디바이스 API(Application Programming Interface)들 사이의 맵핑에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  10. 제 4 항에 있어서, 상기 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보는
    상기 이벤트들을 처리하는 디바이스 API들의 동작을 기술하는 정보 및 상기 이벤트들을 처리하는 디바이스 API들을 호출하는 방법에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  11. 제 2 항에 있어서,
    상기 전송된 사용자 인터페이스 패키지에 기초해 상기 사용자 인터페이스 클라이언트가 전송하는 제어 신호를 수신하고, 상기 수신된 제어 신호에 따라 제어 동작을 수행하는 단계를 더 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  12. 사용자 인터페이스 클라이언트가 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 방법에 있어서,
    복수의 사용자 인터페이스 장면에 대한 정보를 포함하며, 멀티미디어 데이터의 포맷으로 부호화된 사용자 인터페이스 패키지를 수신하고 상기 사용자 인터페이스 패키지를 복호화하는 단계; 및
    상기 사용자 인터페이스 패키지의 복수의 사용자 인터페이스 엘리먼트에 포함된 상기 사용자 인터페이스 서버의 사용자 인터페이스를 상기 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보에 기초하여 상기 복호화된 멀티미디어 데이터를 재생함으로써, 상기 복수의 사용자 인터페이스 장면을 표시하는 단계를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  13. 제 12 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  14. 제 13 항에 있어서, 상기 복수의 사용자 인터페이스 장면에 대한 정보는
    상기 복수의 사용자 엘리먼트들에 포함되며,
    사용자 인터페이스를 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이 하기 위한 복수의 사용자 인터페이스 장면에 대한 상기 정보는,
    상기 복수의 사용자 인터페이스 장면에 대한 정보에 포함되는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  15. 제 13 항에 있어서, 상기 사용자 인터페이스 엘리먼트는
    상기 사용자 인터페이스 장면에 포함된 객체들을 장면에 표현하기 위한 정보, 상기 객체들에 의해 발생하는 이벤트들에 대한 정보 및 상기 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  16. 제 15 항에 있어서, 상기 객체들을 장면에 표현하기 위한 정보는
    상기 장면의 구조를 기술하는 정보, 상기 객체들의 표현 방법을 기술하는 정보 및 상기 장면을 동적으로 구성하기 위해 필요한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  17. 제 16 항에 있어서, 상기 장면의 구조를 설명하기 위한 정보는
    상기 장면을 구성하기 위한 레이아웃(layout), 폼(form), 템플릿(template), 객체들의 위치 및 객체들 각각의 표현 시간 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  18. 제 16 항에 있어서, 상기 객체들의 표현 방법을 설명하기 위한 정보는
    상기 객체들 각각을 표현하기 위한 미디어의 종류 및 상기 미디어의 표현 방법 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  19. 제 16 항에 있어서, 상기 장면을 동적으로 구성하기 위해 필요한 정보는
    상기 사용자 인터페이스 클라이언트의 하드웨어 자원, 선호도 및 네트워크 환경 중 적어도 하나에 기초해 상기 장면을 동적으로 구성하기 위해 필요한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  20. 제 15 항에 있어서, 상기 객체들에 의해 발생하는 이벤트에 대한 정보는
    상기 객체들에 의해 발생하는 이벤트들을 기술하는 정보, 상기 이벤트들을 처리하는 방법을 기술하는 정보 및 상기 이벤트들과 상기 이벤트들을 처리하는 디바이스 API(Application Programming Interface)들 사이의 맵핑에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  21. 제 15 항에 있어서, 상기 이벤트들을 처리하기 위해 호출되는 기능에 대한 정보는
    상기 이벤트들을 처리하는 디바이스 API들의 동작을 기술하는 정보 및 상기 이벤트들을 처리하는 디바이스 API들을 호출하는 방법에 대한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  22. 제 16 항에 있어서,
    상기 장면을 동적으로 구성하기 위해 필요한 정보에 기초해 상기 복수의 사용자 인터페이스 장면 중 하나의 사용자 인터페이스 장면을 디스플레이하는 단계; 및
    상기 디스플레이된 사용자 인터페이스에 기초한 사용자의 선택에 따라 소정의 제어 신호를 상기 사용자 인터페이스 서버에 전송하는 단계를 더 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  23. 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 사용자 인터페이스 서버에 있어서,
    복수의 사용자 인터페이스 엘리먼트를 포함하는 사용자 인터페이스 패키지를 형성하도록 복수의 사용자 인터페이스 장면에 대한 정보를 멀티미디어 데이터의 포맷으로 부호화하는 부호화부; 및
    상기 사용자 인터페이스 패키지를 상기 사용자 인터페이스 클라이언트에 전송하는 전송부를 포함하며,
    상기 복수의 사용자 인터페이스 엘리먼트는 상기 사용자 인터페이스 서버의 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 서버.
  24. 제 23 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 서버.
  25. 제 24 항에 있어서, 상기 복수의 사용자 인터페이스 장면에 대한 정보는
    상기 복수의 사용자 엘리먼트들에 포함되며,
    사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이 하기 위한 복수의 사용자 인터페이스 장면에 대한 상기 정보는,
    상기 복수의 사용자 인터페이스 장면에 대한 정보에 포함되는 것을 특징으로 하는 사용자 인터페이스 서버.
  26. 제 23 항에 있어서,
    상기 전송된 사용자 인터페이스 패키지에 기초해 상기 사용자 인터페이스 클라이언트가 전송하는 제어 신호를 수신하고, 상기 수신된 제어 신호에 따라 제어 동작을 수행하는 제어수행부를 더 포함하는 것을 특징으로 하는 사용자 인터페이스 서버.
  27. 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 사용자 인터페이스 클라이언트에 있어서,
    복수의 사용자 인터페이스 장면에 대한 정보를 포함하며, 멀티미디어 데이터의 포맷으로 부호화된 사용자 인터페이스 패키지를 수신하고 상기 사용자 인터페이스 패키지를 복호화하는 복호화부; 및
    상기 사용자 인터페이스 패키지의 복수의 사용자 인터페이스 엘리먼트에 포함된 상기 사용자 인터페이스 서버의 사용자 인터페이스를 상기 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보에 기초하여 상기 복호화된 멀티미디어 데이터를 재생함으로써, 상기 복수의 사용자 인터페이스 장면을 표시하는 재생부를 포함하는 것을 특징으로 하는 사용자 인터페이스 클라이언트.
  28. 제 27 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 클라이언트.
  29. 제 28 항에 있어서, 상기 복수의 사용자 인터페이스 장면에 대한 정보는
    사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이 하기 위한 복수의 사용자 인터페이스 장면에 대한 정보인 것을 특징으로 하는 사용자 인터페이스 클라이언트.
  30. 제 29 항에 있어서,
    사용자 인터페이스 장면을 동적으로 구성하기 위해 필요한 정보에 기초해 상기 복수의 사용자 인터페이스 장면 중 하나의 사용자 인터페이스 장면을 디스플레이하고, 상기 디스플레이된 사용자 인터페이스에 기초한 사용자의 선택에 따라 소정의 제어 신호를 상기 사용자 인터페이스 서버에 전송하는 제어수행부를 더 포함하는 특징으로 하는 사용자 인터페이스 클라이언트.
  31. 제 1 항 내지 제 22 항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  32. 사용자 인터페이스 서버가 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 방법에 있어서,
    복수의 사용자 인터페이스 엘리먼트를 포함하는 사용자 인터페이스 패키지를 형성하도록 상기 사용자 인터페이스를 멀티미디어 데이터의 포맷으로 부호화하는 단계; 및
    상기 사용자 인터페이스 패키지를 상기 사용자 인터페이스 클라이언트에 전송하는 단계를 포함하고,
    상기 복수의 사용자 인터페이스 엘리먼트는 상기 사용자 인터페이스 서버의 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보 및 상기 사용자 인터페이스 클라이언트가 상기 사용자 인터페이스에 따라 제어 동작을 수행할 때 상기 사용자 인터페이스 서버에 전송하는 제어 메시지의 프로토콜에 대한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  33. 제 32 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  34. 제 33 항에 있어서, 상기 사용자 인터페이스는
    위젯(widget)인 것을 특징으로 하는 사용자 인터페이스 제공 방법.
  35. 사용자 인터페이스 클라이언트가 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 방법에 있어서,
    상기 제1 사용자 인터페이스를 포함하며, 멀티미디어 데이터의 포맷으로 부호화된 사용자 인터페이스 패키지를 수신하고 상기 멀티미디어 데이터를 복호화하는 단계;
    사용자 인터페이스를 통해 사용자에게 제공되는 콘텐트에 대한 정보를 수신하는 단계; 및
    상기 사용자 인터페이스 패키지의 복수의 사용자 인터페이스 엘리먼트에 포함된 상기 사용자 인터페이스 서버의 사용자 인터페이스를 상기 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보에 기초하여 상기 제1 사용자 인터페이스 및 상기 콘텐트에 대한 정보를 결합함으로써, 제2 사용자 인터페이스를 생성하는 단계를 포함하는 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  36. 제 32 항에 있어서, 상기 멀티미디어 데이터의 포맷은
    MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷인 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  37. 제 36 항에 있어서, 상기 사용자 인터페이스는
    위젯(widget)인 것을 특징으로 하는 사용자 인터페이스 수신 방법.
  38. 사용자 인터페이스 클라이언트에 사용자 인터페이스를 제공하는 사용자 인터페이스 서버에 있어서,
    사용자 인터페이스를 생성하는 UI생성부;
    복수의 사용자 인터페이스 엘리먼트를 포함하는 사용자 인터페이스 패키지를 형성하도록 상기 사용자 인터페이스를 멀티미디어 데이터의 포맷으로 부호화하는 UI부호화부; 및
    상기 사용자 인터페이스 패키지를 상기 사용자 인터페이스 클라이언트에 전송하는 UI제공부를 포함하고,
    상기 복수의 사용자 인터페이스 엘리먼트는 상기 사용자 인터페이스 서버의 사용자 인터페이스를 복수의 서로 다른 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보 및 상기 사용자 인터페이스 클라이언트가 상기 사용자 인터페이스에 따라 제어 동작을 수행할 때 상기 사용자 인터페이스 서버에 전송하는 제어 메시지의 프로토콜에 대한 정보를 포함하는 것을 특징으로 하는 사용자 인터페이스 서버.
  39. 제 38 항에 있어서,
    상기 멀티미디어 데이터의 포맷은 MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷이고,
    상기 사용자 인터페이스는 위젯(widget)인 것을 특징으로 하는 사용자 인터 페이스 서버.
  40. 사용자 인터페이스 서버로부터 사용자 인터페이스를 수신하는 사용자 인터페이스 클라이언트에 있어서,
    제1 사용자 인터페이스를 포함하며, 멀티미디어 데이터의 포맷으로 부호화된 사용자 인터페이스 패키지를 수신하고 상기 사용자 인터페이스 패키지를 복호화하는 UI복호화부; 및
    상기 사용자 인터페이스 패키지의 복수의 사용자 인터페이스 엘리먼트에 포함된 상기 사용자 인터페이스 서버의 사용자 인터페이스를 상기 사용자 인터페이스 클라이언트에서 디스플레이하기 위한 정보에 기초하여 상기 제1 사용자 인터페이스 및 사용자 인터페이스를 통해 사용자에게 제공되는 콘텐트에 대한 정보를 결합함으로써, 제2 사용자 인터페이스를 생성하는 UI결합부를 포함하는 것을 특징으로 하는 사용자 인터페이스 클라이언트.
  41. 제 40 항에 있어서,
    상기 멀티미디어 데이터의 포맷은 MPEG의 장면 기술 방법을 이용한 멀티미디어 데이터 포맷이고,
    상기 사용자 인터페이스는 위젯(widget)인 것을 특징으로 하는 사용자 인터페이스 클라이언트.
  42. 제 32 항 내지 제 37 항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020080094897A 2008-04-17 2008-09-26 사용자 인터페이스를 제공/수신하는 방법 및 장치 KR101560183B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020080094897A KR101560183B1 (ko) 2008-04-17 2008-09-26 사용자 인터페이스를 제공/수신하는 방법 및 장치
US12/423,992 US9084020B2 (en) 2008-04-17 2009-04-15 Method and apparatus for providing and receiving user interface
PCT/KR2009/001951 WO2009128650A2 (ko) 2008-04-17 2009-04-16 사용자 인터페이스를 제공/수신하는 방법 및 장치
EP09731966A EP2267607A4 (en) 2008-04-17 2009-04-16 METHOD AND DEVICE FOR PROVIDING / RECEIVING A USER INTERFACE
CN200980113927.3A CN102007484B (zh) 2008-04-17 2009-04-16 提供/接收用户接口的方法及装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US4578708P 2008-04-17 2008-04-17
US61/045,787 2008-04-17
KR1020080079033 2008-08-12
KR1020080079033A KR20090110200A (ko) 2008-04-17 2008-08-12 사용자 인터페이스를 제공/수신하는 방법 및 장치
KR1020080094897A KR101560183B1 (ko) 2008-04-17 2008-09-26 사용자 인터페이스를 제공/수신하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20090110205A KR20090110205A (ko) 2009-10-21
KR101560183B1 true KR101560183B1 (ko) 2015-10-15

Family

ID=41199571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080094897A KR101560183B1 (ko) 2008-04-17 2008-09-26 사용자 인터페이스를 제공/수신하는 방법 및 장치

Country Status (5)

Country Link
US (1) US9084020B2 (ko)
EP (1) EP2267607A4 (ko)
KR (1) KR101560183B1 (ko)
CN (1) CN102007484B (ko)
WO (1) WO2009128650A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024063301A1 (ko) * 2022-09-22 2024-03-28 삼성전자주식회사 Ui 오브젝트를 포함하는 템플릿을 획득하기 위한 전자 장치 및 그 제어 방법

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090110202A (ko) 2008-04-17 2009-10-21 삼성전자주식회사 개인화된 사용자 인터페이스를 디스플레이하는 방법 및 장치
KR101545137B1 (ko) * 2008-04-17 2015-08-19 삼성전자주식회사 사용자 인터페이스를 생성하는 방법 및 장치
KR20100040545A (ko) * 2008-10-10 2010-04-20 삼성전자주식회사 구조화된 리치 미디어 데이터 기반의 사용자 인터페이스를 제공하기 위한 장치 및 방법
KR101624137B1 (ko) * 2009-11-18 2016-06-07 삼성전자주식회사 표시 화면 업데이트 방법 및 이를 이용한 휴대 단말기
US8700697B2 (en) * 2009-11-30 2014-04-15 Samsung Electronics Co., Ltd Method and apparatus for acquiring RUI-based specialized control user interface
KR101640506B1 (ko) * 2010-02-12 2016-07-18 삼성전자주식회사 에스엔에스 위젯 제공 방법 및 그 장치
CN101877716B (zh) * 2010-03-10 2013-04-24 艾默生网络能源有限公司 组态模板的定制方法、组态模板的显示方法及服务器
JP5589537B2 (ja) * 2010-04-30 2014-09-17 ソニー株式会社 情報処理装置、情報処理方法、プログラム、情報提供装置および情報処理システム
WO2011142922A2 (en) * 2010-05-13 2011-11-17 United Video Properties, Inc. Systems and methods for performing an action on a program or accessing the program from a third-party media content source
CN103348312A (zh) * 2010-12-02 2013-10-09 戴斯帕克有限公司 用于流化数字容器中多个不同媒体内容的***、装置和方法
CN102740002B (zh) * 2011-08-31 2017-09-19 新奥特(北京)视频技术有限公司 一种播出指令的编辑生成的方法及***
CN102694991B (zh) * 2011-09-01 2015-09-23 新奥特(北京)视频技术有限公司 一种自定义播控命令的生成与调用方法及***
CN102739926B (zh) * 2011-09-02 2017-09-12 新奥特(北京)视频技术有限公司 一种播出单实现播出的方法及***
KR101967682B1 (ko) 2012-08-06 2019-08-19 삼성전자주식회사 사용자 단말 장치 및 이를 이용한 통신 방법
CA2881417C (en) 2012-08-09 2020-12-29 Charter Communications Operating, Llc System and method bridging cloud based user interfaces
US10133470B2 (en) 2012-10-09 2018-11-20 Samsung Electronics Co., Ltd. Interfacing device and method for providing user interface exploiting multi-modality
KR101480398B1 (ko) * 2012-11-29 2015-01-12 주식회사 애드라 스마트 디바이스 화면에서 가시적으로 변화하는 위젯에 대응하여 상이한 콘텐트를 제공하는 시스템
US9299240B2 (en) * 2013-02-27 2016-03-29 Welch Allyn, Inc. Anti-loss for medical devices
RU2536391C1 (ru) * 2013-04-26 2014-12-20 Общество с ограниченной ответственностью "1С" Способ автоматизированного изменения интерфейса (варианты)
US10115174B2 (en) * 2013-09-24 2018-10-30 2236008 Ontario Inc. System and method for forwarding an application user interface
US10976986B2 (en) 2013-09-24 2021-04-13 Blackberry Limited System and method for forwarding an application user interface
US9223565B2 (en) * 2013-10-16 2015-12-29 Google Inc. Rendering interface objects defined by a separate application
US9807146B2 (en) 2014-11-19 2017-10-31 Alticast Corporation System and method for providing cloud based user interfaces
KR102284295B1 (ko) * 2014-11-19 2021-08-04 주식회사 알티캐스트 클라우드 기반 유저 인터페이스 제공 시스템 및 그 방법
US10198231B2 (en) 2015-08-30 2019-02-05 EVA Automation, Inc. User interface based on system-state information
US10387095B2 (en) * 2015-08-30 2019-08-20 EVA Automation, Inc. User interface based on system-state information
US10387094B2 (en) 2015-08-30 2019-08-20 EVA Automation, Inc. User interface based on device-state information
US10452332B2 (en) 2015-08-30 2019-10-22 EVA Automation, Inc. User interface based on device-state information
US10296275B2 (en) 2015-08-30 2019-05-21 EVA Automation, Inc. User interface based on device-state information
US10296276B2 (en) 2015-08-30 2019-05-21 EVA Automation, Inc. User interface based on device-state information
US10521177B2 (en) 2015-08-30 2019-12-31 EVA Automation, Inc. User interface based on system-state information
US10390080B2 (en) 2015-08-30 2019-08-20 EVA Automation, Inc. User interface based on device-state information
US10198232B2 (en) * 2015-08-30 2019-02-05 EVA Automation, Inc. User interface based on system-state information
US10200737B2 (en) * 2015-08-30 2019-02-05 EVA Automation, Inc. User interface based on device-state information
CN109474843B (zh) * 2017-09-08 2021-09-03 腾讯科技(深圳)有限公司 语音操控终端的方法、客户端、服务器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283798A1 (en) * 2004-06-03 2005-12-22 Hillcrest Laboratories, Inc. Client-server architectures and methods for zoomable user interfaces

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895430B1 (en) * 1999-10-01 2005-05-17 Eric Schneider Method and apparatus for integrating resolution services, registration services, and search services
US6751623B1 (en) * 1998-01-26 2004-06-15 At&T Corp. Flexible interchange of coded multimedia facilitating access and streaming
US7346689B1 (en) 1998-04-20 2008-03-18 Sun Microsystems, Inc. Computer architecture having a stateless human interface device and methods of use
US6476828B1 (en) * 1999-05-28 2002-11-05 International Business Machines Corporation Systems, methods and computer program products for building and displaying dynamic graphical user interfaces
JP2001243043A (ja) * 2000-02-29 2001-09-07 Sony Corp ユーザインタフェースシステム、シーン記述生成装置及び方法、シーン記述変換装置及び方法、記録媒体並びに伝送媒体
JP4389323B2 (ja) 2000-02-29 2009-12-24 ソニー株式会社 シーン記述変換装置及び方法
US6971086B2 (en) * 2000-03-16 2005-11-29 Silicon Graphics, Inc. Common user interface development toolkit for a system administration program
GB0007886D0 (en) * 2000-03-31 2000-05-17 British Telecomm User interface for data accquisition
US6327628B1 (en) * 2000-05-19 2001-12-04 Epicentric, Inc. Portal server that provides a customizable user Interface for access to computer networks
US20010051998A1 (en) * 2000-06-09 2001-12-13 Henderson Hendrick P. Network interface having client-specific information and associated method
US6738077B1 (en) * 2000-07-18 2004-05-18 Apple Computer, Inc. Dynamic generation and automated distribution of user interface from database model
US7603319B2 (en) * 2000-08-28 2009-10-13 Contentguard Holdings, Inc. Method and apparatus for preserving customer identity in on-line transactions
AU2001294143A1 (en) * 2000-09-18 2002-03-26 Mprest Technologies Ltd. Improved apparatus and methods for displaying information on mobile communication devices
US7171475B2 (en) * 2000-12-01 2007-01-30 Microsoft Corporation Peer networking host framework and hosting API
US7194743B2 (en) * 2000-12-12 2007-03-20 Citrix Systems, Inc. Methods and apparatus for communicating changes between a user interface and an executing application using property paths
KR100394834B1 (ko) 2000-12-16 2003-08-19 박찬준 영상 수신 및 인터넷 접속이 가능한 이동단말기를 이용한원격 감시 시스템 및 이를 이용한 원격 감시 방법
US20020111995A1 (en) * 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface system architecture
US7155681B2 (en) * 2001-02-14 2006-12-26 Sproqit Technologies, Inc. Platform-independent distributed user interface server architecture
GB0108354D0 (en) * 2001-04-03 2001-05-23 Thirdspace Living Ltd System and method for providing a user with access to a plurality of sevices and content from a broadband television service
WO2002087158A2 (en) 2001-04-20 2002-10-31 General Instrument Corporation Transport multiplexer management and control
EP1253750A1 (en) 2001-04-24 2002-10-30 Deutsche Thomson-Brandt Gmbh Method for the control of network devices connected via a bus system
US8014283B2 (en) * 2001-06-01 2011-09-06 Fujitsu Limited System and method for topology constrained QoS provisioning
US7234111B2 (en) * 2001-09-28 2007-06-19 Ntt Docomo, Inc. Dynamic adaptation of GUI presentations to heterogeneous device platforms
US6791529B2 (en) * 2001-12-13 2004-09-14 Koninklijke Philips Electronics N.V. UI with graphics-assisted voice control system
US7752256B2 (en) * 2002-01-16 2010-07-06 Laszlo Systems, Inc. Presentation server
WO2003077221A2 (en) * 2002-02-22 2003-09-18 Koninklijke Philips Electronics N.V. Method, device and system for providing a single user interface to a pluralty of devices
KR100434292B1 (ko) 2002-02-28 2004-06-05 엘지전자 주식회사 홈 네트워크 시스템
US7197715B1 (en) 2002-03-29 2007-03-27 Digeo, Inc. System and method to provide customized graphical user interfaces via an interactive video casting network
US7437720B2 (en) * 2002-06-27 2008-10-14 Siebel Systems, Inc. Efficient high-interactivity user interface for client-server applications
US7412658B2 (en) * 2002-11-14 2008-08-12 Sap Ag Modeling system for graphic user interface
US7644367B2 (en) * 2003-05-16 2010-01-05 Microsoft Corporation User interface automation framework classes and interfaces
US20060156315A1 (en) * 2003-05-27 2006-07-13 Wood Larry J Method, computer-readable medium and apparatus for providing a graphical user interface in a client-server environment
US20050010877A1 (en) 2003-07-11 2005-01-13 Arthur Udler System and method for dynamic generation of a graphical user interface
DE10351351B4 (de) * 2003-11-04 2007-03-22 Siemens Ag Verfahren und System zur dynamischen Generierung von User Interfaces
US7434158B2 (en) * 2003-12-10 2008-10-07 International Business Machines Corporation Presenting multimodal web page content on sequential multimode devices
US8196044B2 (en) 2004-01-05 2012-06-05 Microsoft Corporation Configuration of user interfaces
KR20060001550A (ko) 2004-06-30 2006-01-06 엘지전자 주식회사 인터넷을 이용한 UPnP 디바이스 제어 방법
US8046440B2 (en) * 2004-08-19 2011-10-25 International Business Machines Corporation Managing resources through user-facing web services aggregated in portals
KR100643282B1 (ko) 2004-11-02 2006-11-10 삼성전자주식회사 UPnP 네트워크 상에서 특정 기기를 식별하는 방법,식별된 특정 기기를 통하여 컨텐츠를 재생하는 방법, 및장치
EP1839177A4 (en) 2005-01-05 2010-07-07 Divx Inc SYSTEM AND METHOD RELATING TO OFF-SITE USER INTERFACE
KR20060105813A (ko) 2005-04-04 2006-10-11 엘지전자 주식회사 이종 네트워크 기반의 원격 ui 서비스 시스템 및 방법
US20060232573A1 (en) * 2005-04-19 2006-10-19 Sharp Kabushiki Kaisha Display description format providing device, method of controlling same, communications network system, display control device, method of controlling same, display system, program for controlling display description format providing device, program for controlling display control device and storage mediun storing program
KR100709790B1 (ko) 2005-07-05 2007-04-19 주식회사 알티캐스트 셋톱박스 유저인터페이스 갱신 시스템 및 방법
US20070033522A1 (en) * 2005-08-02 2007-02-08 Lin Frank L System and method for dynamic resizing of web-based GUIs
KR101133855B1 (ko) 2006-01-06 2012-04-06 에스케이플래닛 주식회사 Ui 정보 제공 시스템 및 방법과 이를 위한 이동통신 단말
US7496815B2 (en) * 2006-03-06 2009-02-24 Sapphire Infotech, Inc. Method and apparatus for automatic generation of system test libraries
US7529977B2 (en) * 2006-05-31 2009-05-05 Microsoft Corporation Automated extensible user interface testing
US8677257B2 (en) * 2006-08-04 2014-03-18 Apple Inc. Granular graphical user interface element
KR20080018061A (ko) 2006-08-23 2008-02-27 주식회사 로직플랜트 원격지 컴퓨터 제어를 위한 사용자 인터페이스 방법
US8201143B2 (en) * 2006-09-29 2012-06-12 Microsoft Corporation Dynamic mating of a modified user interface with pre-modified user interface code library
KR101446939B1 (ko) 2007-03-30 2014-10-06 삼성전자주식회사 원격 제어 장치 및 그 제어 방법
KR20080089119A (ko) 2007-03-30 2008-10-06 삼성전자주식회사 Mpeg 기반의 ui 장치 및 이를 이용한 기능 제어 방법
US8756512B2 (en) * 2007-05-09 2014-06-17 International Business Machines Corporation Dynamic GUI rendering by aggregation of device capabilities
US8132147B2 (en) * 2007-05-29 2012-03-06 Sap Ag Semantic interpretation of software models for generating user interfaces
US8595634B2 (en) * 2007-11-30 2013-11-26 Red Hat, Inc. Distributed hosting of web application styles
US20090204885A1 (en) * 2008-02-13 2009-08-13 Ellsworth Thomas N Automated management and publication of electronic content from mobile nodes
KR101531164B1 (ko) 2008-08-12 2015-06-25 삼성전자주식회사 사용자 인터페이스 디렉터리를 이용한 사용자 인터페이스 제공/수신하는 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283798A1 (en) * 2004-06-03 2005-12-22 Hillcrest Laboratories, Inc. Client-server architectures and methods for zoomable user interfaces

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024063301A1 (ko) * 2022-09-22 2024-03-28 삼성전자주식회사 Ui 오브젝트를 포함하는 템플릿을 획득하기 위한 전자 장치 및 그 제어 방법

Also Published As

Publication number Publication date
KR20090110205A (ko) 2009-10-21
EP2267607A2 (en) 2010-12-29
US9084020B2 (en) 2015-07-14
CN102007484A (zh) 2011-04-06
WO2009128650A3 (ko) 2010-02-18
CN102007484B (zh) 2016-11-02
WO2009128650A2 (ko) 2009-10-22
EP2267607A4 (en) 2013-01-09
US20090265422A1 (en) 2009-10-22

Similar Documents

Publication Publication Date Title
KR101560183B1 (ko) 사용자 인터페이스를 제공/수신하는 방법 및 장치
US9424053B2 (en) Method and apparatus for displaying personalized user interface
AU2009271877B2 (en) Apparatus and method for providing user interface service in a multimedia system
JP4959504B2 (ja) 適応制御を行うことができるmpegコード化オーディオ・ビジュアルオブジェクトをインターフェイスで連結するためのシステムおよび方法
KR101545137B1 (ko) 사용자 인터페이스를 생성하는 방법 및 장치
US7634793B2 (en) Client-server architectures and methods for zoomable user interfaces
US9100716B2 (en) Augmenting client-server architectures and methods with personal computers to support media applications
JP5850833B2 (ja) 通信システムにおけるユーザインターフェースを送受信する装置及び方法
US20070006065A1 (en) Conditional event timing for interactive multimedia presentations
EP1899968A2 (en) Synchronization aspects of interactive multimedia presentation management
EP1908072A2 (en) State-based timing for interactive multimedia presentations
CN114450966A (zh) 用于异构沉浸式媒体的表示和流式传输的数据模型
CN112188256B (zh) 信息处理方法、信息提供方法、装置、电子设备及存储介质
KR20090110200A (ko) 사용자 인터페이스를 제공/수신하는 방법 및 장치
US8687945B2 (en) Export of playback logic to multiple playback formats
CN117119234A (zh) 显示设备及媒资起播方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee