WO2003090068A2 - Remote key manager - Google Patents

Remote key manager Download PDF

Info

Publication number
WO2003090068A2
WO2003090068A2 PCT/US2003/011770 US0311770W WO03090068A2 WO 2003090068 A2 WO2003090068 A2 WO 2003090068A2 US 0311770 W US0311770 W US 0311770W WO 03090068 A2 WO03090068 A2 WO 03090068A2
Authority
WO
WIPO (PCT)
Prior art keywords
application
keys
user
operating system
key
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/US2003/011770
Other languages
English (en)
French (fr)
Other versions
WO2003090068A3 (en
Inventor
Chad Andrew Lefevre
Jr. Steven Lee Cooper
James Duane Tenbarge
David Johnston Lynch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to AU2003241298A priority Critical patent/AU2003241298A1/en
Priority to US10/512,313 priority patent/US7490329B2/en
Priority to EP03731028A priority patent/EP1504345B1/en
Priority to KR1020047016894A priority patent/KR100975684B1/ko
Priority to JP2003586744A priority patent/JP4459630B2/ja
Priority to MXPA04010508A priority patent/MXPA04010508A/es
Publication of WO2003090068A2 publication Critical patent/WO2003090068A2/en
Anticipated expiration legal-status Critical
Publication of WO2003090068A3 publication Critical patent/WO2003090068A3/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/543Local
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Definitions

  • This invention relates to the field computer operating systems, and particularly to managing user commands in devices running a plurality of applications.
  • Devices have become available which run a plurality of applications and receive a plurality of user control signals.
  • devices that include television, Internet, satellite television, personal video recorder (PVR), and digital versatile disk (DVD) applications, among others, controlled by a single operating system such as Windows CE, are known.
  • PVR personal video recorder
  • DVD digital versatile disk
  • the operating systems in such devices receive user signals from a plurality of sources, for example infrared (IR) signals from a remote control device, electronic signals from a front panel assembly (FPA), and other parts of the system. Data is received and processed from the respective IR drivers, FPA drivers, and other parts of the system.
  • IR infrared
  • FPA front panel assembly
  • Presently available systems assume the keys are intended for the foreground window. However, sometimes the user intends to control a background application, which is not possible with present systems.
  • An object of the present invention is to organize the receipt of various user keys and direction thereof to various applications. This object, and others which will become apparent from the following disclosure and drawings, is addressed by the present invention which comprises in one aspect an apparatus having a memory and an operating system running a plurality of applications which are controlled by user signals, means to register the user signals required by each application, means to receive user signals, and means to send each received user signal to the application registered to require that signal.
  • Another aspect of the invention is a method of passing user signals to a plurality of applications running with an operating system, the method comprising receiving from each application information on user signals required by that application; saving in a memory the required user signals associated with each application; receiving a user signal from a user interface device; retrieving from the memory applications that require the received user signal; and sending the received user signal to each of the retrieved applications.
  • the received user signal can be sent directly to the application or it can be translated to a second signal recognizable by the operating system, which is in turn sent to the operating system.
  • an example of an operating system which is currently typical, is Windows CE, but other operating systems can, of course, be used in the invention.
  • the applications comprise a user interface and a browser.
  • the user signals may be received, for example, by IR from a remote control device, from front panel buttons, and/or from the system. Certain applications can "fake" a key press, for example.
  • Error checking and conversion of user signals can be conducted by known methods and software.
  • a key manager can be provided, and the key manager can be registered with an infrared driver and a front panel assembly driver.
  • Active application programs can be registered with the key manager and be unregistered when they become inactive. When the application becomes registered, a set of keys corresponding to each active program can be registered so that when keys are received, the key manager passes the received keys to an active application program for which the keys are registered.
  • a message queue corresponding to each application program can be registered, including the name and size of the queue, upon which the key manager can create one end of the message queue for passing keys to the application program.
  • all the keys are translated to match an operating system equivalent, sent to the operating system upon receipt, and thereafter passed to the top level application, and if the top level application does not want the key, the key is then passed sequentially to the next application which wants the key.
  • the system provides an option to block applications below an assigned priority level to receive keys.
  • the keys are translated to match an operating system equivalent, sent to the operating system upon receipt, and thereafter passed to each application that responds to the key.
  • the type of keys required by the application can be registered by the key manager.
  • the apparatus to which this invention is applicable comprise a memory and an operating system adapted to run a plurality of applications which are controlled by user signals, means to register the user signals required by each application, means to receive user signals, and means to send each received user signal to the application registered to require that signal.
  • Examples of such apparatus are televisions with Internet browser capability.
  • the apparatus will usually have a means to display a user interface, means to receive remote control signals, means to receive front panel assembly signals, and means to receive keyboard signals.
  • FIG. 1 is a high level flow chart of a method according to the invention.
  • Fig. 1 a process is illustrated wherein raw keys from an IR driver, keyboard, and FPA are passed to different applications and systems.
  • the Key Manager takes the raw keys from the IR driver in the form of IR data 11 and Front Panel Assembly (FPA) keys in the form of wired data 12 and decodes 14 the raw key data.
  • the Key Manager 15 also receives internal data 13 from other parts of the system, for example other applications that may "fake" keys.
  • the Key Manager 15 manages passing the decoded key data to different applications and systems, so that each part receives what it expects, as illustrated in this example.
  • the Key Manager 15 After receiving a key press from, for example the remote control via IR 11 , the Key Manager 15 determines 16 if there is a registered application and if so, then whether 17 the registered application wants the type of key received by the Key Manager. If the first registered application does not 17 want the type of key sent by the Key Manager, the Key Manager checks 16 whether there are any more registered applications until it finds one which wants the type of key being sent 17, and then checks 18 whether there is a registered queue for that application. If there are no more registered applications, the Key Manager checks 21 whether the key translates to an operating system specific key and if so, sends 22 the key to the operating system, otherwise the Key Manager waits for another key.
  • the Key Manager determines 18 if there is a registered named queue for the application which wants the type of key being sent and if so, the Key Manager checks 19 whether keys are blocked for that application. Each application is assigned a priority level. If the keys are not blocked 19 above that application's priority level, the Key Manager sends 20 the key to the registered application via the registered named queue, otherwise, if the keys are blocked above that application's priority level, the Key Manager checks 16 for the next registered application. If the Key Manager checks 18 for whether there is a registered named queue for the first registered application that wants the type of key which was received by the Key Manager and if there is no registered named queue for the first registered application which wants that type of key, the key is sent 22 to the operating system which then sends 23 the key to operating system applications.
  • the user interface (Ul) and the browser both need to be aware of a "Channel Up" key when the browser is showing, i.e., the browser is in the foreground. Both applications would ask for the Channel Up key in this instance. Since the key manager sends keys to any known application that asks for them, and also to any known or unknown application that is using the default method to receive keys, both the Ul and the browser would receive the Channel Up key press signal.
  • This invention takes key data from the low-level system and manages its passing to higher parts of the system. Some of the data is based upon infrared (IR) protocols, some of it is retrieved from buttons of the FPA, and some of it is sent back through the system. After basic error checking and conversion on the data is done, the data is passed to the Key Manager to be handled.
  • IR infrared
  • the Key Manager registers itself with the IR ⁇ FPA drivers in order to receive keys from them. Applications running at higher levels are registering and unregistering with the Key Manager. The Key Manager uses the registration data to govern which applications should get which keys. When the Key Manager receives data from the IR driver, the FPA driver, and other parts of the system, it preprocesses it and then passes the data to other parts of the system based on how they registered with the Key Manager.
  • the Key Manager passes keys.
  • the first method is via message queues. When an application registers with the Key Manager, it supplies the name and size for its message queue. The Key Manager then creates one end of that queue, which it will use to pass keys to that application.
  • the second method is via Microsoft Windows key-passing mechanism. All keys are translated to match the Windows Virtual Key equivalent, and then doled out to the Operating System, which then passes the keys to the top-level application (if that application does not want the key, then Windows passes it down to the next application, and so on).
  • the Key Manager has the ability to pass keys to both "known" applications (that may or may not use the Microsoft Windows CE method of passing keys) and "unknown” applications (which use the Microsoft Windows CE method of passing keys). Since Microsoft Windows CE will only pass keys to the foreground application, the present improved system allows multiple applications to see what key had been pressed. In certain circumstances, more than one application may need to respond to a key, i.e., the browser and the Ul. With the conventional Microsoft Windows CE method of passing keys, that ability is not present. The Key Manager has ability to register and unregister known applications, which is an improvement.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Selective Calling Equipment (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Stored Programmes (AREA)
  • Details Of Television Systems (AREA)
PCT/US2003/011770 2002-04-22 2003-04-17 Remote key manager Ceased WO2003090068A2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
AU2003241298A AU2003241298A1 (en) 2002-04-22 2003-04-17 Remote key manager
US10/512,313 US7490329B2 (en) 2002-04-22 2003-04-17 Remote key manager
EP03731028A EP1504345B1 (en) 2002-04-22 2003-04-17 Remote key manager
KR1020047016894A KR100975684B1 (ko) 2002-04-22 2003-04-17 원격 키 관리자
JP2003586744A JP4459630B2 (ja) 2002-04-22 2003-04-17 リモートキーマネジャ
MXPA04010508A MXPA04010508A (es) 2002-04-22 2003-04-17 Administrador remoto de claves.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US37440002P 2002-04-22 2002-04-22
US60/374,400 2002-04-22

Publications (2)

Publication Number Publication Date
WO2003090068A2 true WO2003090068A2 (en) 2003-10-30
WO2003090068A3 WO2003090068A3 (en) 2004-12-02

Family

ID=29251186

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/011770 Ceased WO2003090068A2 (en) 2002-04-22 2003-04-17 Remote key manager

Country Status (9)

Country Link
US (1) US7490329B2 (enExample)
EP (1) EP1504345B1 (enExample)
JP (2) JP4459630B2 (enExample)
KR (1) KR100975684B1 (enExample)
CN (1) CN100530112C (enExample)
AU (1) AU2003241298A1 (enExample)
MX (1) MXPA04010508A (enExample)
MY (1) MY139976A (enExample)
WO (1) WO2003090068A2 (enExample)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090241042A1 (en) * 2008-03-18 2009-09-24 Nordstrom Consulting, Inc. Method and apparatus for controlling and operating computers used in vision screening and correction as well as other applications utilizing remote control or dual visual outputs
KR101012872B1 (ko) * 2009-09-16 2011-02-08 주식회사 팬택 플랫폼 보안 장치 및 방법
CN102339221B (zh) * 2010-07-22 2013-12-04 厦门雅迅网络股份有限公司 一种基于Windows CE平台的应用程序界面处理方法
US10751612B1 (en) * 2019-04-05 2020-08-25 Sony Interactive Entertainment LLC Media multi-tasking using remote device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157384A (en) 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
US6400996B1 (en) * 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US5566337A (en) * 1994-05-13 1996-10-15 Apple Computer, Inc. Method and apparatus for distributing events in an operating system
US5961651A (en) * 1996-04-15 1999-10-05 Sun Microsystems, Inc. Event notification in a computing system having a plurality of storage devices
US6334117B1 (en) * 1996-11-27 2001-12-25 Diebold, Incorporated Automated banking machine and system
US6711620B1 (en) * 1999-04-14 2004-03-23 Matsushita Electric Industrial Co. Event control device and digital broadcasting system
WO2001001690A1 (en) * 1999-06-28 2001-01-04 United Video Properties, Inc. Interactive television system with newsgroups
DE10052570A1 (de) * 2000-10-23 2002-04-25 Bosch Gmbh Robert System zur Steuerung von Betriebsabläufen
US7158185B2 (en) * 2001-05-01 2007-01-02 Scientific-Atlanta, Inc. Method and apparatus for tagging media presentations with subscriber identification information
US7551832B2 (en) * 2001-12-05 2009-06-23 Scientific-Atlanta, Inc. Application management and interface for cluster control of time shift buffer
US20060156342A1 (en) * 2005-01-11 2006-07-13 Pioneer Research Center Usa, Inc. Generating consistent time for an electronic program guide

Also Published As

Publication number Publication date
CN100530112C (zh) 2009-08-19
WO2003090068A3 (en) 2004-12-02
AU2003241298A1 (en) 2003-11-03
EP1504345B1 (en) 2012-06-13
AU2003241298A8 (en) 2003-11-03
KR20040111540A (ko) 2004-12-31
CN1653426A (zh) 2005-08-10
MY139976A (en) 2009-11-30
JP2010044798A (ja) 2010-02-25
US20060041874A1 (en) 2006-02-23
EP1504345A2 (en) 2005-02-09
US7490329B2 (en) 2009-02-10
JP4459630B2 (ja) 2010-04-28
JP2005523512A (ja) 2005-08-04
JP5078973B2 (ja) 2012-11-21
MXPA04010508A (es) 2004-12-13
KR100975684B1 (ko) 2010-08-12

Similar Documents

Publication Publication Date Title
US5949351A (en) System and method for bi-directional transmission of information between a remote controller and target systems
JP4569790B2 (ja) 制御装置および方法、並びに記録媒体
US20110131344A1 (en) Terminal apparatus and method for controlling usb apparatus thereof
US20120069218A1 (en) Virtual video capture device
JP5078973B2 (ja) リモートキーマネジャ
JPH11146426A (ja) 電子機器および電子機器の制御方法および電子機器システム
US20120166585A1 (en) Apparatus and method for accelerating virtual desktop
US20080126965A1 (en) Electronic Device System
US7034713B2 (en) Autonomous and universal remote control scheme
CN112188294B (zh) 一种信号源显示方法及装置
US7382491B2 (en) Scanner relay apparatus and image reading controlling method
US20030139931A1 (en) Client device of thin client network system and method of controlling the same
US20040103235A1 (en) USB based terminal device
CN102272719B (zh) 包括提供有经由图像共享协议进行通信的图形接口的终端和服务器的系统
US7089337B2 (en) Controlling device connected to IEEE1394 serial bus
JP2008186448A (ja) 再生システム及び方法
EP1414236B1 (en) Digital TV and driving method thereof
US7308699B1 (en) Maintaining access to a video stack after an application crash
US20060020661A1 (en) Apparatus and method for displaying content
US7292157B2 (en) Remote control system for controlling installed program
CN114900386A (zh) 一种终端设备及数据接力方法
US6374284B1 (en) Information processing method and apparatus and a storage medium
CN113992963A (zh) 一种显示设备及投屏方法
JP2536723B2 (ja) デ―タ受信制御装置
JP2002152210A (ja) コントロール機器、ネットワークシステム、機器認識方法及び記録媒体

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2003731028

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2003586744

Country of ref document: JP

Ref document number: 1020047016894

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2006041874

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: PA/a/2004/010508

Country of ref document: MX

Ref document number: 10512313

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 20038111128

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 1020047016894

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2003731028

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10512313

Country of ref document: US