JP2000200181A - Television pip applet using pip framework and pip implementation - Google Patents

Television pip applet using pip framework and pip implementation

Info

Publication number
JP2000200181A
JP2000200181A JP34041799A JP34041799A JP2000200181A JP 2000200181 A JP2000200181 A JP 2000200181A JP 34041799 A JP34041799 A JP 34041799A JP 34041799 A JP34041799 A JP 34041799A JP 2000200181 A JP2000200181 A JP 2000200181A
Authority
JP
Japan
Prior art keywords
applet
web page
video
display
user
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.)
Pending
Application number
JP34041799A
Other languages
Japanese (ja)
Inventor
Rajesh Kanungo
ラジェシュ・カヌンゴ
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JP2000200181A publication Critical patent/JP2000200181A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • 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

Abstract

PROBLEM TO BE SOLVED: To enable a user to control and display video data through a web page interface by receiving user input by an applet by interposing a virtual control panel displayed on a web page. SOLUTION: The process of receiving the user input by the applet by interposing the virtual control panel displayed on the web page by the applet and the process of controlling the display of the video data on the web page by the applet based on the user input, etc., are provided. For instance, for a data processing system, data and data structure 114 is provided with the web page capable of display by a browser 106. Also, for instance, the data and data structure 114 can be provided with an applet software capable of execution by a java virtual machine JVM 108.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本出願は、ユーザー・インタ
ーフェース・コントロールのための方法及び装置に関す
る。より詳細には、本出願は、ユーザーがビデオ・デー
タをウェブ・ページ・インターフェースを介して制御及
び表示することを可能にする方法及び装置に関する。
TECHNICAL FIELD This application relates to a method and apparatus for user interface control. More particularly, the present application relates to a method and apparatus that allows a user to control and display video data via a web page interface.

【0002】[0002]

【発明の背景】従来、テレビジョン・セット及びVCR
プレーヤは、ハンドヘルド・リモート・ユニットなどの
物理デバイスによって制御されるか、またはこれらのセ
ット若しくはプレーヤに取り付けた物理コントロールに
よって直接制御される。多くの場合、物理リモート・ユ
ニットの設計者が、自分のユニットの最適なユーザー・
インターフェースを正しく予想し、かつ、設計すること
は困難である。更に、リモートの「最適」なユーザー・
インターフェースは、ユーザー間で異なり得るととも
に、ユーザーが実施を望むアクティビティの種類によっ
ても異なり得る。都合の悪いことに、物理コントロール
・ユニットには、ユーザー・インターフェース・デザイ
ンの柔軟性がない。
BACKGROUND OF THE INVENTION Conventional television sets and VCRs
The player is controlled by a physical device, such as a handheld remote unit, or directly by a set of these or physical controls attached to the player. In many cases, the designer of the physical remote unit will determine the best user
It is difficult to correctly anticipate and design interfaces. In addition, the remote “optimal” user
The interface may vary from user to user, and may also depend on the type of activity the user wants to perform. Unfortunately, the physical control unit lacks the flexibility of the user interface design.

【0003】そのうえ、物理リモート・ユニットについ
ては、その置き場所を間違えたり、紛失したりする傾向
がある。例えば、1993年6月30日にオーウェンに
付与された米国特許第5,294,915号はこのこと
を開示しており、この米国特許第5,294,915号
は紛失した物理リモート・コントロール・ユニットを突
き止めることに関する。紛失した物理リモートについて
悩む必要のないことが望ましい。
In addition, physical remote units tend to be misplaced or lost. For example, U.S. Pat. No. 5,294,915, issued to Owen on June 30, 1993, discloses this, and U.S. Pat. No. 5,294,915 discloses a lost physical remote control. Related to locating units. It is desirable not to have to worry about a lost physical remote.

【0004】ビデオ・ユニットを再プログラミングする
手段を有さない特定の種類のコンシューマー・エレクト
ロニクス・デバイスにおいて、前記の問題は更に大き
く、ビデオ・ユニットのプログラミングを簡単に変更で
きなくなっている。設計者がリモート・コントロールの
機能性及びルック・アンド・フィールを変更することを
可能にする柔軟なユーザー・インターフェースが必要で
ある。
[0004] In certain types of consumer electronics devices that do not have a means of reprogramming the video unit, the above problems are exacerbated and the programming of the video unit cannot be easily changed. There is a need for a flexible user interface that allows designers to change the functionality and look and feel of the remote control.

【0005】[0005]

【発明の概要】本発明の実施態様は、ユーザーが見てい
るワールド・ワイド・ウェブ・ページ上に表示された
“バーチャル・リモート・コントロール”を介すること
によって、ユーザーがビデオ・データ(テレビジョン・
セットまたは他のビデオ・ソースから送信されたビデオ
・データ)の表示を制御することを可能にする。本発明
の実施形態はセット・トップ・ボックス環境内で実現さ
れる。しかし、ジャバ・アプレットの実行と、任意の適
切なコンピュータまたはデータ処理システム上での実行
とが可能なブラウザ内でも、本発明を実現できる。
SUMMARY OF THE INVENTION Embodiments of the present invention allow a user to access video data (television data) via a "virtual remote control" displayed on a world wide web page the user is viewing.
Video data transmitted from a set or other video source). Embodiments of the present invention are implemented in a set top box environment. However, the invention can be implemented in a browser capable of running a Java applet and running on any suitable computer or data processing system.

【0006】本実施形態では、ユーザーはジャバ・アプ
レットを含むウェブ・ページをダウンロードし、かつ、
そのウェブ・ページを見る。ジャバ・アプレットを実行
した際、そのジャバ・アプレットは“バーチャル・リモ
ート・コントロール”パネルを表示する。バーチャル・
リモート・コントロール・パネルのルック・アンド・フ
ィールは、ダウンロードしたアプレット内で全て定義さ
れているので、バーチャル・リモート・コントロール・
パネルの構成及び外観の変更は容易である。リモートの
ユーザー・インターフェース内の変更を実行するため
に、セット・トップ・ボックス(またはビデオ・ソー
ス)内におけるプログラミングの変更は必要ない。
In this embodiment, a user downloads a web page containing a Java applet, and
View the web page. When the Java applet runs, it displays a "virtual remote control" panel. virtual·
The look and feel of the remote control panel is completely defined within the downloaded applet, so the virtual remote control
It is easy to change the configuration and appearance of the panel. No programming changes are required in the set top box (or video source) to perform the changes in the remote user interface.

【0007】本発明の実施形態はPIP(ピクチャ・イ
ン・ピクチャ)API(アプリケーション・プログラミ
ング・インターフェース)を含む。このAPIは、ビデ
オ・データの表示を制御するために、ダウンロードした
アプレットからの呼び出しが可能な多数の所定のジャバ
・メソッドを含む。この結果、PIP・APIを呼び出
すアプレットによって、バーチャル・リモートをインプ
リメントしているので、バーチャル・リモートの機能性
を容易に変更できる。従って、PIP・APIが許す機
能性に一致する任意の機能性を有するバーチャル・リモ
ート・コントロールを、アプレットは表示し、かつ、動
作させ得る。PIPという用語は、ビデオ・データが
“ピクチャ内のピクチャ”としてウェブ・ページ上に表
示されるという事実を指す。1つのビデオ・ピクチャを
別のビデオ・ピクチャの内側に表示するという概念を、
これは必ずしも指す必要はない。しかし、このような従
来のビデオ・ピクチャ内のビデオ・ピクチャも本発明に
基づいて実現できる。
[0007] Embodiments of the present invention include a PIP (Picture in Picture) API (Application Programming Interface). This API includes a number of predefined Java methods that can be called from downloaded applets to control the display of video data. As a result, since the virtual remote is implemented by the applet that calls the PIP API, the functionality of the virtual remote can be easily changed. Thus, the applet can display and operate a virtual remote control with any functionality that matches the functionality allowed by the PIP API. The term PIP refers to the fact that video data is displayed on a web page as a "picture within a picture". The concept of displaying one video picture inside another video picture is
This does not necessarily have to point. However, video pictures within such conventional video pictures can also be realized according to the present invention.

【0008】本明細書中に具体的に開示し、かつ、広範
に説明する本発明の目的に基づき、本発明は、ビデオ・
データの表示を制御する方法であって、ダウンロードし
たウェブ・ページ内の指定されたアプレットを実行する
工程と、アプレットによってウェブ・ページ上に表示さ
れたバーチャル・コントロール・パネルを介して、ユー
ザー入力を、アプレットによって受信する工程と、ユー
ザー入力に従って、ウェブ・ページ上のビデオ・データ
の表示をアプレットによって制御する工程とを含む方法
に関する。
[0008] Based on the objects of the invention specifically disclosed and broadly described herein, the present invention provides a video and audio system.
A method of controlling the display of data, comprising the steps of: executing a specified applet in a downloaded web page; and receiving user input via a virtual control panel displayed on the web page by the applet. Receiving by an applet, and controlling display of video data on a web page by an applet according to user input.

【0009】添付図面に基づく以下の説明及び請求の範
囲を読むことによって、本発明を更に完全に理解でき
る。
The invention can be more completely understood by reading the following description and claims, which are based on the accompanying drawings.

【0010】[0010]

【発明の実施の形態】I.一般的な説明:多くの従来の
ワールド・ワイド・ウェブ・ブラウザは、ジャバ・バー
チャル・マシンを含み、かつ、ジャバ・アプレットの実
行が可能である。ジャバ・アプレットはジャバ・プログ
ラミング言語で書かれたコンピュータ・プログラムであ
り、ジャバ・プログラミング言語はワールド・ワイド・
ウェブ・ブラウザ“内”で実行するために設計されたプ
ログラミング言語である。多くの場合、ユーザーが表示
されたウェブ・ページ内のボタン、即ち、リンクをクリ
ックした際、ジャバ・アプレットが開始される。アプレ
ットが開始された後、そおアプレットはブラウザ内で実
行され、プログラムされたタスクを実施する。“ジャバ
(Java)”は米国及び他の国々におけるサン・マイクロ
システムズ・インコーポレイテッドの商標名である。
DETAILED DESCRIPTION OF THE INVENTION I. General Description: Many conventional world wide web browsers include a Java Virtual Machine and are capable of running Java applets. A Java applet is a computer program written in the Java programming language, which is a worldwide programming language.
A programming language designed to run "in" a web browser. Often, when a user clicks a button or link in a displayed web page, a Java applet is started. After the applet is started, it runs in a browser and performs programmed tasks. "Java" is a trademark of Sun Microsystems, Inc. in the United States and other countries.

【0011】図1は、本発明の1つの実施形態に基づく
データ処理システム100のブロック図である。例え
ば、データ処理システム100は、テレビジョン・セッ
トまたは他の適切なディスプレイ装置などのディスプレ
イ装置130へ接続されたセット・トップ・ボックス1
01であり得る。また、データ処理システム100は、
例えば、ユーザーがそのオペレーティング・システムに
対するアクセスまたはコントロールを有することを許可
しない任意のデータ処理システムであってもよく、ま
た、ユーザーが特定の時にシステムをウォーム・ブート
することを許可しない任意のデータ処理システムであっ
てもよい。
FIG. 1 is a block diagram of a data processing system 100 according to one embodiment of the present invention. For example, data processing system 100 may include set top box 1 connected to a display device 130, such as a television set or other suitable display device.
01. Further, the data processing system 100
For example, any data processing system that does not allow the user to have access or control over the operating system, and any data processing that does not allow the user to warm boot the system at a particular time. It may be a system.

【0012】システム100はプロセッサ102及びデ
ータストレージ領域(例:メモリ)104を有する。デ
ータストレージ領域104は特定の周知の情報を含む。
この情報の例としては、オペレーティング・システム1
12と、データ及びデータ・ストラクチャ114とが挙
げられる。例えば、本実施形態では、データ及びデータ
・ストラクチャ114はブラウザ106による表示が可
能なウェブ・ページを含む。更に例えば、データ及びデ
ータ・ストラクチャ114は、ジャバ・バーチャル・マ
シン(JVM)108による実行が可能なアプレット・
ソフトウェアを含み得る。更に、ストレージ領域104
はLAN、WAN、イントラネットまたはインターネッ
トなどのネットワーク・コネクション103と通信する
ためのソフトウェア(図示略)を含むことが好ましい。
The system 100 has a processor 102 and a data storage area (eg, memory) 104. Data storage area 104 contains certain known information.
Examples of this information include operating system 1
12 and data and data structures 114. For example, in this embodiment, the data and data structure 114 includes a web page that can be displayed by the browser 106. Further, for example, the data and data structure 114 may include an applet executable that can be executed by a Java Virtual Machine (JVM) 108.
Software may be included. Further, the storage area 104
Preferably includes software (not shown) for communicating with a network connection 103 such as a LAN, WAN, intranet or the Internet.

【0013】当業者は、システム100が、入出力ライ
ンなどの別のエレメントと、キーボード、マウス及び音
声入力装置などの別の入力装置、即ち、第2入力装置
と、ディスプレイ・ターミナルなどのディスプレイ装置
とを含み得ることを理解するであろう。システム100
は、更に、フロッピー・ディスク、CD−ROM、メモ
リ・チップまたはDVDディスクなどのコンピュータ読
取り可能な媒体に格納されたコンピュータ命令をそれぞ
れ読み取るフロッピー・ディスク・ドライブ、CD−R
OMリーダー、チップ・コネクタまたはDVDリーダー
などのコンピュータ読取り可能入力装置(図示略)を含
み得る。システム100は、更に、理解を容易にするた
めに図示を省略したアプリケーション・プログラム、オ
ペレーティング・システム及びデータなどを含み得る。
One skilled in the art will appreciate that the system 100 can be configured to include other elements, such as input / output lines, and other input devices, such as a keyboard, mouse, and voice input device, ie, a second input device and a display device, such as a display terminal. Will be understood. System 100
Further comprises a floppy disk drive for reading computer instructions stored on a computer readable medium such as a floppy disk, a CD-ROM, a memory chip or a DVD disk;
It may include a computer readable input device (not shown) such as an OM reader, chip connector or DVD reader. System 100 may further include application programs, operating systems, data, and the like, not shown for ease of understanding.

【0014】以下の説明において、本明細書に開示する
方法及びフローチャートの各ステップをプロセッサ10
2(または別の適切なプロセッサ)によって実施できる
ことが理解できるであろう。プロセッサ102は、スト
レージ領域104(または他の適切なメモリまたはスト
レージ領域)に格納された命令を実行する。本発明は特
定のインプリメンテーション技術またはプログラミング
技術に限定されないうえ、本明細書に開示する機能性を
実現する任意の適切な技術を使用して、本発明を実施で
きることが理解できるであろう。本発明は特定のプログ
ラミング言語またはオペレーティング・システムに限定
されない。
In the following description, each step of the method and flowchart disclosed herein is referred to as a processor 10.
It will be appreciated that this can be implemented by two (or another suitable processor). Processor 102 executes instructions stored in storage area 104 (or other suitable memory or storage area). It will be understood that the invention is not limited to any particular implementation or programming technique, and that the invention may be practiced using any suitable technique that implements the functionality disclosed herein. The invention is not limited to a particular programming language or operating system.

【0015】ストレージ領域104内の命令は、コンピ
ュータ読取り可能な媒体(図示略)からストレージ領域
104内へ読み込み可能である。メイン・メモリに含ま
れる命令のシーケンスを実行することによって、プロセ
ッサ102(または類似するプロセッサ)は本明細書に
開示する複数のプロセスを実施する。別の実施形態で
は、本発明を実施するために、ハードワイヤード回路を
ソフトウェア命令に代えて、またはソフトウェア命令と
一緒に使用し得る。従って、本発明の実施形態はハード
ウェア回路及びソフトウェアの特定の組み合わせに限定
されない。
The instructions in storage area 104 can be read into storage area 104 from a computer readable medium (not shown). By executing the sequences of instructions contained in main memory, processor 102 (or a similar processor) performs the processes disclosed herein. In another embodiment, hardwired circuits may be used in place of or in conjunction with software instructions to implement the present invention. Thus, embodiments of the present invention are not limited to any particular combination of hardware circuits and software.

【0016】図1は、システム100上で実行するバー
チャル・マシン(ジャバ・バーチャル・マシンなど)1
08を示す。図2は、図1のシステム100によってサ
ポートされ、かつ、本発明の実施に適するバーチャル・
マシンのブロック図である。ジャバ・プログラミング言
語で書かれたコンピュータ・プログラムなどのコンピュ
ータ・プログラムを実行した際、コンパイルタイム環境
155内において、ソース・コード160がコンパイラ
170へ提供される。コンパイラ170はソース・コー
ド160をバイトコード180へ翻訳する。一般的に、
ソフトウェア開発者がソース・コード160を形成した
時点において、ソース・コード160はバイトコード1
80へ翻訳される
FIG. 1 shows a virtual machine (such as a Java virtual machine) 1 running on the system 100.
08 is shown. FIG. 2 illustrates a virtual system supported by the system 100 of FIG. 1 and suitable for practicing the present invention.
It is a block diagram of a machine. When a computer program, such as a computer program written in the Java programming language, is executed, source code 160 is provided to compiler 170 in compile time environment 155. Compiler 170 translates source code 160 into bytecode 180. Typically,
At the time the software developer forms the source code 160, the source code 160
Translated to 80

【0017】一般的に、バイトコード180はネットワ
ーク(例:図1のネットワーク103)を通じて複製、
ダウンロード若しくは配布するか、または図1の一次ス
トレージ104などのストレージ・デバイス上へ格納し
得る。本実施形態では、バイトコード180はプラット
フォームから独立している。即ち、適切なバーチャル・
マシン上で実行されている実質的に全てのコンピュータ
・システム上で、バイトコード180を実行し得る。
Generally, the bytecode 180 is copied through a network (eg, the network 103 in FIG. 1),
It may be downloaded or distributed, or stored on a storage device, such as the primary storage 104 of FIG. In this embodiment, the bytecode 180 is platform independent. That is, the appropriate virtual
Bytecode 180 may be executed on substantially any computer system running on a machine.

【0018】バイトコード180はバーチャル・マシン
190を含むランタイム環境108へ提供される。一般
的に、ランタイム環境108は図1のプロセッサ102
などのプロセッサを使用して実行できる。バーチャル・
マシン109はコンパイラ192、インタプリタ194
及びランタイム・システム196を含む。バイトコード
180はコンパイラ192またはインタプリタ194へ
提供可能である。
The bytecode 180 is provided to a runtime environment 108 that includes a virtual machine 190. Generally, the runtime environment 108 is the processor 102 of FIG.
It can be performed using a processor such as. virtual·
The machine 109 is a compiler 192, an interpreter 194
And a runtime system 196. The bytecode 180 can be provided to the compiler 192 or the interpreter 194.

【0019】バイトコード180をコンパイラ192へ
提供した際、バイトコード180に含まれるメソッドは
マシン命令へコンパイルされる。1つの実施形態では、
コンパイラ192はジャスト・イン・タイム・コンパイ
ラである。ジャスト・イン・タイム・コンパイラは、バ
イトコード180に含まれるメソッドのコンパイレーシ
ョンをそのメソッドの実行直前まで遅らせる。バイトコ
ード180をインタプリタ194へ提供した際、バイト
コード180は1バイトコードずつインタプリタ194
内へ読み込まれる。そして、各バイトコードがインタプ
リタ194内へ読み込まれることにより、インタプリタ
194は各バイトコードによって定められたオペレーシ
ョンを実施する。即ち、当業者が理解するように、イン
タプリタ194はバイトコード180を“インタプリッ
トする”。
When the bytecode 180 is provided to the compiler 192, the methods contained in the bytecode 180 are compiled into machine instructions. In one embodiment,
Compiler 192 is a just-in-time compiler. The just-in-time compiler delays the compilation of the method contained in the bytecode 180 until just before the execution of the method. When the bytecode 180 is provided to the interpreter 194, the bytecode 180 is interpreted one bytecode at a time.
Read into. Then, as each bytecode is read into the interpreter 194, the interpreter 194 performs an operation defined by each bytecode. That is, as will be appreciated by those skilled in the art, interpreter 194 "interprets" bytecode 180.

【0020】メソッドが別のメソッドによって呼び出さ
れた際、即ち、メソッドがランタイム環境108から呼
び出された際、この呼び出されたメソッドをインタプリ
ットする場合、ランタイム・システム196はそのメソ
ッドをバイトコード180のシーケンスの形態でランタ
イム環境108から獲得し得る。このバイトコード18
0のシーケンスはインタプリタ194によって直接実行
できる。その一方、呼び出されたメソッドが過去にコン
パイルされていないコンパイルド・メソッドである場
合、ランタイム・システム108はそのメソッドをバイ
トコード108のシーケンスの形態でランタイム環境1
08から獲得する。そして、このバイトコード180の
シーケンスはコンパイラ192を起動し得る。次いで、
コンパイラ194はマシン命令をバイトコード180か
ら形成し、プロセッサ102(または他の適切なプロセ
ッサ)は形成されたマシン言語命令を直接実行し得る。
一般的に、バーチャル・マシン109を終了する際、マ
シン言語命令は廃棄される。バーチャル・マシン、より
詳細には、ジャバ・バーチャル・マシンのオペレーショ
ンはティム・リンドホルム及びフランク・イェリンによ
る“ジャバ・バーチャル・マシン・スペシフィケーショ
ン(The Java Virtual Machine Specification)”(IS
BN0-201-63452-X)と称される文献に更に詳細に開示さ
れており、この文献の内容はこの開示をもって本明細書
中に開示したものとする。
When a method is invoked by another method, ie, when the method is invoked from the runtime environment 108, the interpreted method is interpreted by the runtime system 196 by the runtime system 196. It can be obtained from the runtime environment 108 in the form of a sequence. This byte code 18
The sequence of zeros can be executed directly by the interpreter 194. If, on the other hand, the invoked method is a compiled method that has not been compiled in the past, the runtime system 108 converts the method into a runtime environment 1 in the form of a sequence of bytecodes 108.
Get from 08. The sequence of the bytecode 180 can activate the compiler 192. Then
Compiler 194 forms machine instructions from bytecode 180, and processor 102 (or other suitable processor) may directly execute the formed machine language instructions.
Generally, when terminating virtual machine 109, machine language instructions are discarded. The operation of virtual machines, more specifically Java Virtual Machine, is described in the Java Virtual Machine Specification by Tim Lindholm and Frank Jerin (IS Java Virtual Machine Specification).
BN0-201-63452-X), which is disclosed in further detail, the contents of which are hereby incorporated by reference.

【0021】II.詳細な説明:図3は、テレビジョン
130及びリモート・ユニット120へ接続されたセッ
ト・トップ・ボックス101を含むセット・トップ・ボ
ックス・システムの例を示す。入力装置として使用され
るリモート・ユニット120は正確な縮尺率で描かれて
いない。一般的に、実際のリモート・ユニットはユーザ
ーの手に収まることに適したサイズである。同様に、セ
ット・トップ・ボックス101及びテレビジョン120
は必ずしも正確な縮尺率で描かれていない。
II. Detailed Description: FIG. 3 shows an example of a set top box system including a set top box 101 connected to a television 130 and a remote unit 120. The remote unit 120 used as an input device is not drawn to scale. In general, the actual remote unit is sized to fit in the user's hand. Similarly, set top box 101 and television 120
Is not necessarily drawn to scale.

【0022】リモート・ユニット120上に示すボタン
配置は例示を目的とするだけであり、限定的な意味で解
釈してはならない。リモート・ユニット120は“ウェ
ブ(Web)”ボタン、“メール(Mail)”ボタン、“ホ
ーム(Home)”ボタン、“移動(Goto)”ボタン、“お
気に入り(Fave)”ボタン、“戻る(Back)”ボタン、
“コントロール(ctl)”ボタン、矢印ボタン及び“選
択(Select)”ボタンを含む。戻りボタンの通常の用途
は、直前に表示されたウェブ・ページを表示することで
ある。同様に、移動ボタンの通常の用途は、ユーザーが
新しいウェブ・ページを指定し、かつ、見ることを可能
にすることである。矢印ボタンは、ユーザーがカーソル
をウェブ・ページ304に表示された複数のエレメント
間で移動させることを可能にする。
The button arrangement shown on remote unit 120 is for illustrative purposes only and should not be interpreted in a limiting sense. The remote unit 120 includes a "Web" button, a "Mail" button, a "Home" button, a "Goto" button, a "Fave" button, and a "Back" button. "button,
Includes a "control" button, an arrow button and a "select" button. A common use of the return button is to display a previously viewed web page. Similarly, a common use of the move button is to allow a user to specify and view a new web page. The arrow buttons allow a user to move the cursor between the elements displayed on the web page 304.

【0023】図3において、ビデオ領域304及びバー
チャル・リモート・コントロール・パネル310はディ
スプレイ装置130に映し出されたウェブ・ページ上に
表示されている。図1のアプレット110などのアプレ
ット(図示略)のコントロールの下に、これらのエレメ
ント304,310がウェブ・ページ上で形成されるこ
とは言うまでもない。
In FIG. 3, the video area 304 and the virtual remote control panel 310 are displayed on a web page displayed on the display device 130. It goes without saying that under the control of an applet (not shown), such as applet 110 of FIG. 1, these elements 304, 310 are formed on the web page.

【0024】ネットワーク・コネクション103は、セ
ット・トップ・ボックスがインターネット、イントラネ
ット、LANまたはWANなどのネットワークと通信す
ることを可能にする。更に、ネットワーク・コネクショ
ン103はワイヤレス・リンクであってもよい。本発明
の特定の実施形態はキーボード、赤外線キーボードまた
は他のワイヤレス・キーボード(図示略)と併用でき
る。
[0024] Network connection 103 allows the set top box to communicate with a network such as the Internet, an intranet, a LAN or a WAN. Further, network connection 103 may be a wireless link. Certain embodiments of the present invention can be used with a keyboard, infrared keyboard, or other wireless keyboard (not shown).

【0025】ビデオ・ライン207はビデオ入力のソー
スをセット・トップ・ボックス101へ提供する。ビデ
オ出力信号及びオーディオ出力信号をディスプレイ装置
130へ供給するために、ライン206はセット・トッ
プ・ボックス101をディスプレイ装置130へ接続す
る。例えば、ライン206上の信号はSビデオ信号、コ
ンポジット信号、コンポーネント信号、オーディオ信号
及びHDTV信号のうちの1つ以上であり得る。
Video line 207 provides a source of video input to set top box 101. Line 206 connects set top box 101 to display device 130 to provide video and audio output signals to display device 130. For example, the signal on line 206 can be one or more of an S-video signal, a composite signal, a component signal, an audio signal, and an HDTV signal.

【0026】図4は、ウェブ・ページ302を表示する
ディスプレイ装置130の例を示す。ウェブ・ページ3
02はHTMLまたはこれに類する記述言語若しくは規
約(図38の例を参照)に基づいて表示される。ウェブ
・ページ302はビデオ領域304及びバーチャル・リ
モート・コントロール・パネル310を含む。本実施形
態では、領域304及びバーチャル・コントロール・パ
ネル310などのウェブ・ページの特定のエレメント
は、アプレットによって形成された部品として実現され
ている。しかし、これらはHTMLによって記述したペ
ージの一部として実現することも可能である。この例で
は、ビデオ・データはビデオ領域304内に表示され、
ユーザー・インターフェース・エレメントはバーチャル
・コントロール・パネル310内に表示される。
FIG. 4 shows an example of a display device 130 for displaying a web page 302. Web page 3
02 is displayed based on HTML or a similar description language or convention (see the example in FIG. 38). Web page 302 includes a video area 304 and a virtual remote control panel 310. In the present embodiment, certain elements of the web page, such as region 304 and virtual control panel 310, are implemented as parts formed by applets. However, these can also be realized as a part of a page described in HTML. In this example, the video data is displayed in video area 304,
The user interface elements are displayed in virtual control panel 310.

【0027】このバーチャル・コントロール・パネルの
例におけるユーザー・インターフェース・エレメント
は、オン/オフ・セレクタ・ボタン312(ここでは、
オンが選択されている)と、TV/ビデオ・セレクタ・
ボタン314(ここでは、TVが選択されている)と、
ブロードキャスト/ケーブル・セレクタ・ボタン316
(ここでは、ブロードキャストが選択されている)と、
サイズ・ボタン(ここでは、100%が選択されてい
る)と、チャンネル・インジケータ320(ここでは、
セットはチャンネル002に合わされている)と、を含
む。ここに示す複数のユーザー・インターフェース・エ
レメントは例示を目的とするだけであり、限定的な意味
で解釈してはならないことは言うまでもない。任意の適
切なコントロール・エレメント(本明細書中に開示する
ものを含むが、これらに限定されない)を本発明と一緒
に使用できる。
The user interface element in this example virtual control panel is an on / off selector button 312 (here,
ON is selected) and the TV / video selector
A button 314 (here, TV is selected),
Broadcast / Cable Selector Button 316
(Here, broadcast is selected)
A size button (here, 100% is selected) and a channel indicator 320 (here,
The set is tuned to channel 002). It should be understood that the user interface elements shown herein are for illustrative purposes only and should not be construed in a limiting sense. Any suitable control element, including but not limited to those disclosed herein, can be used with the present invention.

【0028】図5は、小型ビデオ領域304’と、追加
コンテント(例:広告320及び他のテキスト322)
と、バーチャル・リモート・コントロール・パネル31
0とを含むディスプレイ装置の例を示す。図示するよう
に、ユーザーはビデオ表示を50%のサイズにセットし
ている。図5の実施形態では、アプレットは他のコンテ
ントをページの残りのスペースに表示する。更に別の実
施形態では、アプレットはビデオを特定のサイズの領域
304内に表示することを常に選択可能であり、かつ、
広告または他の適切なコンテントを常に表示し得る。
FIG. 5 shows a small video area 304 'and additional content (eg, advertisement 320 and other text 322).
And the virtual remote control panel 31
5 shows an example of a display device including 0. As shown, the user has set the video display to 50% size. In the embodiment of FIG. 5, the applet displays other content in the remaining space on the page. In yet another embodiment, the applet can always choose to display the video within a particular size area 304, and
Advertising or other suitable content may always be displayed.

【0029】図6は、2つのビデオ領域304''と、バ
ーチャル・リモート・コントロール310’とを有する
ディスプレイ装置の例を示す。この例では、バーチャル
・コントロール・パネルは2つのビデオ領域304''に
それぞれ対応する2つのチャンネル・インジケータを有
する。
FIG. 6 shows an example of a display device having two video areas 304 '' and a virtual remote control 310 '. In this example, the virtual control panel has two channel indicators, each corresponding to two video areas 304 ''.

【0030】図7は、2つのビデオ領域(このうちのビ
デオ領域305はビデオ領域304'''内に位置する)
と、バーチャル・リモート・コントロール・パネルとを
有するディスプレイ装置の例を示す。この例では、バー
チャル・コントロール・パネルは2つのビデオ領域30
4''',305にそれぞれ対応する2つのチャンネル・
インジケータを有する。
FIG. 7 shows two video areas, of which video area 305 is located within video area 304 '''.
And an example of a display device having a virtual remote control panel. In this example, the virtual control panel has two video areas 30
4 ″ ′, two channels corresponding to 305
Has an indicator.

【0031】図8〜図11は、図4〜図7のバーチャル
・リモート・コントロール上のセレクト・ボタンのため
のプルダウン・メニューの例を示す。図示するように、
ユーザーは、可能なチョイスのリストを見るためにボタ
ンを選択し、次いで、複数のチョイスのうちの1つを選
択する。図15〜図19はアプレットがユーザー入力に
応じて実施するアクションを示す。ここに開示する複数
のビデオ・ファンクション(またはこれらに類するビデ
オ・ファンクション)を実現するために、別の種類の周
知のユーザー・インターフェースを使用できることを理
解する必要がある。
FIGS. 8-11 show examples of pull-down menus for the select button on the virtual remote control of FIGS. 4-7. As shown
The user selects a button to see a list of possible choices, and then selects one of the multiple choices. 15 to 19 show actions performed by the applet in response to user input. It should be understood that other types of well-known user interfaces can be used to implement the video functions disclosed herein (or analogous video functions).

【0032】図12は、本発明の実施形態に使用するジ
ャバ・クラスの例を示す。ここに開示するクラスは例と
して示すものであり、限定的な意味で解釈してはならな
いことを理解する必要がある。本発明は、ジャバに類似
するオブジェクト指向プログラミング言語を使用して実
現可能であり、ジャバに限定する必要はない。クラスの
例としては、2つのアブストラクト・ジャバ・クラス、
即ち、アブストラクトPIPクラス及びアブストラクトPIP
Infoクラスが挙げられる。PIPImplementationクラスは
アブストラクトPIPクラスのサブ・クラスである。Tuner
Infoクラス及びVideoInfoクラスはPIPInfoクラスのサブ
・クラスである。以下に詳述するように、PIPImplement
ationクラスのインスタンスは、PIPinfoクラスのインス
タンス(即ち、TunerInfoオブジェクト及びVideoInfoオ
ブジェクト)を使用する。
FIG. 12 shows an example of a Java class used in the embodiment of the present invention. It is to be understood that the classes disclosed herein are provided by way of example and should not be construed in a limiting sense. The invention can be implemented using a Java-like object-oriented programming language and need not be limited to Java. Examples of classes are two abstract Java classes,
That is, abstract PIP class and abstract PIP
Info class. The PIPImplementation class is a subclass of the abstract PIP class. Tuner
The Info class and the VideoInfo class are subclasses of the PIPInfo class. As detailed below, PIPImplement
An instance of the ation class uses an instance of the PIPinfo class (that is, a TunerInfo object and a VideoInfo object).

【0033】図13は、アプレット110と、図12の
クラスのインスタンス502,504,506と、ビデ
オ・チップ510を通じてディスプレイ装置130を制
御するネイティブ・コード508とを含む本発明の実施
形態のブロック図である。この実施形態では、ビデオ・
チップはIGSテクノロジーズ・インコーポレイテッド
(IGS Technologies, Inc.)が製造するIGSサイバー
プロ5000チップ(IGS Cyberpro 5000 chip)であ
る。ビデオ・チップ130はディスプレイ装置130へ
接続され、かつ、そのディスプレイ装置130を制御す
る。ネイティブ・コード508はビデオ・チップの制御
に適するようにC++プログラミング言語などで書かれ
ている。ネイティブ・コード508の正確な特性及び仕
様は使用するビデオ・チップに基づいている。
FIG. 13 is a block diagram of an embodiment of the present invention that includes an applet 110, instances 502, 504, 506 of the class of FIG. 12, and native code 508 for controlling display device 130 through video chip 510. It is. In this embodiment, the video
The chip is an IGS Cyberpro 5000 chip manufactured by IGS Technologies, Inc. The video chip 130 is connected to the display device 130 and controls the display device 130. The native code 508 is written in a C ++ programming language or the like so as to be suitable for controlling a video chip. The exact nature and specification of native code 508 is based on the video chip used.

【0034】図14は、図13のアプレットによって実
施する方法のフローチャートである。ステップ602,
603はアプレットを含むウェブ・ページをダウンロー
ドし、かつ、アプレットの実行を開始するためにブラウ
ザが実施するステップである。ステップ606では、ア
プレットはPIPImplementationクラス、TunerInfoクラス
及びVideoInfoクラスのインスタンスをそれぞれ形成す
る。各インスタンスが形成された際、各インスタンスは
所定のデフォルト値で自身を初期化する。ステップ61
0では、アプレットはキー押下をオペレーティング・シ
ステムから受信すべく登録を行う。ステップ612で
は、アプレットはバーチャル・コントロール・パネル3
10を表示する。セット・トップ・ボックスがキーボー
ド入力(例:赤外線キーボードまたは他の適切なキーボ
ードからのキーボード入力)を受信している場合、ステ
ップ314において、アプレットは数字キー・ストロー
クに関するトラップをキー・ストローク・イベント・ハ
ンドラ内にセットする(チャンネル変更を示す)。ステ
ップ616では、アプレットは他のキー押下に関するト
ラップをキー・ストローク・ハンドラ内にセットする
(コントローラの他のビデオ属性を変更するために使用
される)。ステップ616は、数字キーを有するキーボ
ードを使用する実施形態などにおいて実施される。図3
に示す実施形態は、アプレットによってバーチャル・リ
モート・パネル上に表示された複数のチャンネル数値の
間での選択を行うために、リモート上の矢印キーを使用
する。
FIG. 14 is a flowchart of a method implemented by the applet of FIG. Step 602,
Step 603 is a step performed by the browser to download a web page including the applet and start execution of the applet. In step 606, the applet creates instances of the PIPImplementation class, TunerInfo class, and VideoInfo class, respectively. As each instance is created, each instance initializes itself with predetermined default values. Step 61
At 0, the applet registers to receive key presses from the operating system. In step 612, the applet enters the virtual control panel 3
10 is displayed. If the set top box has received keyboard input (eg, keyboard input from an infrared keyboard or other suitable keyboard), at step 314, the applet sends a trap for numeric key strokes to the keystroke event event. Set in handler (indicating channel change). In step 616, the applet sets a trap for other key presses in the keystroke handler (used to change other video attributes of the controller). Step 616 is implemented, for example, in embodiments using a keyboard having numeric keys. FIG.
The embodiment shown uses the arrow keys on the remote to make a selection between multiple channel values displayed on the virtual remote panel by the applet.

【0035】ステップ620において、アプレットがテ
レビモードでの開始を望む場合、そのアプレットはTune
rInfoオブジェクトをPIPImplementationオブジェクトへ
送信する。そうでない場合(図示略)、アプレットはイ
ンスタンスVideoInfoをPIPImplementationオブジェクト
へ送信する。
At step 620, if the applet wants to start in television mode, the applet
Send rInfo object to PIPImplementation object. Otherwise (not shown), the applet sends an instance VideoInfo to the PIPImplementation object.

【0036】図15〜図19は、本発明の実施形態の様
々なユーザー・アクションに応じてアプレットが実施す
るアクションを示す例示的なフローチャートである。図
15はユーザーがビデオ・ソースをTVからビデオへ
(例:TVからVCRへ)変更する際の複数のステップ
を示す。図16はユーザーが表示サイズを変更する際の
複数のステップを示す。図17はユーザーがウェブ・ペ
ージ内のビデオ表示をオンまたはオフへ切り換える際の
複数のステップを示す。図18はユーザーが周波数タイ
プ(例:ブロードキャストまたはケーブル)を変更する
際の複数のステップを示す。図19はユーザーがチャン
ネルを変更する際の複数のステップを示す。図15〜図
19の方法は単なる例であり、限定的な意味で解釈して
はならない。
FIGS. 15-19 are exemplary flow charts showing actions performed by an applet in response to various user actions in an embodiment of the present invention. FIG. 15 illustrates the steps when a user changes the video source from TV to video (eg, TV to VCR). FIG. 16 shows a plurality of steps when the user changes the display size. FIG. 17 shows the steps by which a user switches video display in a web page on or off. FIG. 18 illustrates steps when a user changes the frequency type (eg, broadcast or cable). FIG. 19 shows a plurality of steps when a user changes channels. The methods of FIGS. 15-19 are merely examples and should not be construed in a limiting sense.

【0037】図20〜図22は、PIPImplementationク
ラス、TunerInfoクラス及びVideoInfoクラスのオブジェ
クトの例をそれぞれ示す。図20に示すように、TunerI
nfoオブジェクトは現在のPIPタイプ(即ち、“チュ
ーナ”)と、ビデオ領域304の座標と、現在の周波数
(ブロードキャストまたはケーブル)と、現在のチャン
ネルとを識別するデータを含む。更に、図示するよう
に、TunerInfoオブジェクトはパラメータを受信するた
めのメソッドと、アプレットが領域304のデフォルト
座標を獲得することを可能にするためのメソッドと、チ
ャンネルを獲得し、かつ、セットするためのメソッド
と、周波数を獲得し、かつ、セットするためのメソッド
とを含む。これらのメソッドの詳細は図23〜図28に
示す。
FIGS. 20 to 22 show examples of objects of the PIPImplementation class, TunerInfo class and VideoInfo class, respectively. As shown in FIG.
The nfo object contains data identifying the current PIP type (ie, "tuner"), the coordinates of the video area 304, the current frequency (broadcast or cable), and the current channel. Further, as shown, the TunerInfo object has a method for receiving parameters, a method for allowing an applet to obtain the default coordinates of the area 304, and a method for obtaining and setting a channel. Methods and methods for acquiring and setting frequencies. Details of these methods are shown in FIGS.

【0038】図21に示すように、VideoInfoオブジェ
クトは現在のPIPタイプ(“ビデオ”)と、ビデオ領
域304の座標とを識別するデータを含む。図示するよ
うに、VideoInfoオブジェクトはパラメータを受信する
ためのメソッドと、アプレットが領域304のデフォル
ト座標を獲得することを可能にするためのメソッドとを
更に含む。これらのメソッドの詳細は図29〜図30に
示す。
As shown in FIG. 21, the VideoInfo object contains data identifying the current PIP type ("video") and the coordinates of the video area 304. As shown, the VideoInfo object further includes methods for receiving the parameters and enabling the applet to obtain the default coordinates of the region 304. Details of these methods are shown in FIGS.

【0039】図22に示すように、PIPImplementation
オブジェクトは図31〜図36に示すメソッドを含むと
ともに、ビデオ・チップと通信し、かつ、該ビデオ・チ
ップを制御するための幾つかのネイティブ・コード・ル
ーチンを呼び出す。PIPImplementationオブジェクトはP
IPInfoオブジェクトを入力として受信する。
As shown in FIG. 22, PIPImplementation
The object includes the methods shown in FIGS. 31-36 and communicates with the video chip and calls some native code routines for controlling the video chip. PIPImplementation object is P
Receive an IPInfo object as input.

【0040】図23〜図30は、TunerInfoクラス及びV
ideoInfoクラス内の複数の例示的なメソッドのフローチ
ャートである。これらのメソッドは、以下のものを含む
が、これらに限定されない。 ・public void setTunerInfo(channel, frequency):こ
れは情報をTunerInfoオブジェクト内にセットする。 ・public rectangle getDefaultCoordinates():これは
TunerInfoオブジェクトのデフォルト座標を獲得する。 ・public int getChannel():これはTunerInfoオブジェ
クトの現在のチャンネルを獲得する。 ・public void setChannel(channel)():これはチャン
ネルをTunerInfoオブジェクト内にセットする。 ・public int getFrequencyType():これはTunerInfoオ
ブジェクトの現在の周波数タイプ(例:ブロードキャス
トまたはケーブル)を獲得する。 ・public int setFrequencyType(frequency):これはTu
nerInfoオブジェクトの周波数タイプをセットする。 ・public void setVideoInfo():これはビデオ情報をVi
deoinfoオブジェクト内にセットする。 ・public rectangle getDefaultCoordinates():これは
VideoInfoオブジェクトのデフォルト座標を獲得する。
FIGS. 23 to 30 show TunerInfo class and V
5 is a flowchart of several exemplary methods in the ideoInfo class. These methods include, but are not limited to: Public void setTunerInfo (channel, frequency): This sets the information in the TunerInfo object. Public rectangle getDefaultCoordinates (): this is
Get the default coordinates of the TunerInfo object. Public int getChannel (): This gets the current channel of the TunerInfo object. Public void setChannel (channel) (): This sets the channel in the TunerInfo object. Public int getFrequencyType (): This gets the current frequency type (eg broadcast or cable) of the TunerInfo object.・ Public int setFrequencyType (frequency): This is Tu
Set the frequency type of the nerInfo object. • public void setVideoInfo (): This is the video information Vi
Set in deoinfo object. Public rectangle getDefaultCoordinates (): this is
Get the default coordinates of the VideoInfo object.

【0041】図31〜図36は、バーチャル・リモート
・コントロール・アプレットが呼び出すPIPImplementat
ionクラス内のメソッドの例を示す。図23〜図30及
び図31〜図36の各フローチャートは本実施形態の
“バーチャル・リモート”API内のメソッドが実施す
る複数のステップを示す。このAPIは本発明と一緒に
使用できるAPIの1つの単なる例であり、このAPI
を限定的な意味で解釈してはならないことを理解する必
要がある。
FIGS. 31 to 36 show PIPImplementat called by the virtual remote control applet.
Here is an example of a method in the ion class. 23 to 30 and 31 to 36 show a plurality of steps performed by a method in the “virtual remote” API of the present embodiment. This API is just one example of an API that can be used with the present invention,
Should not be interpreted in a restrictive sense.

【0042】PIPImplementationオブジェクトのメソッ
ドは、以下のものを含むが、これらに限定されない。 ・public void setOn(boolean switchItOn):これはウ
ェブ・ページ内のビデオ表示をオンまたはオフへ切り換
える。 ・public boolean getOn():これはウェブ・ページ内の
ビデオ表示がオンであるか否かを示すインジケータを返
す。 ・public void pipParms(pipparms pipparms):これはP
IPInfoオブジェクト内のパラメータをセットアップす
る。 ・public void setCoordinates(rectangle coordinate
s):これはウェブ・ページ内のビデオ表示上の座標をセ
ットする。 ・public Rectangle getCoordinates():これはウェブ
・ページ内のビデオ表示の座標を返す。 ・public void setPIPInfo(PipInfo pipInfo):これはP
IPInfoクラス・オブジェクトをPIPオブジェクトへ送信
する。
The methods of the PIPImplementation object include, but are not limited to: Public void setOn (boolean switchItOn): This turns the video display in the web page on or off. Public boolean getOn (): This returns an indicator that indicates whether the video display in the web page is on. Public void pipParms (pipparms pipparms): This is P
Set up the parameters in the IPInfo object.・ Public void setCoordinates (rectangle coordinate
s): This sets the coordinates on the video display within the web page. Public Rectangle getCoordinates (): This returns the coordinates of the video display within the web page. Public void setPIPInfo (PipInfo pipInfo): This is P
Send an IPInfo class object to a PIP object.

【0043】図37は、図20〜図22のオブジェクト
によって呼び出されるネイティブ・コード・ファンクシ
ョンの例示的なリストである。これらのファンクション
は“ネイティブ・コードAPI”を形成している。使用
するビデオ・チップの能力と、バーチャル・リモート・
コントロールAPIが要求する能力とに基づいて、ネイ
ティブ・コードAPIは多少変化する。
FIG. 37 is an exemplary list of native code functions called by the objects of FIGS. These functions form a "native code API". The capabilities of the video chip used and the virtual remote
The native code API will vary slightly based on the capabilities required by the control API.

【0044】図38は、バーチャル・リモート・コント
ロール・アプレットの例を含むウェブ・ページのHTM
Lの例である。この例は本発明を限定するものとして解
釈してはならない。
FIG. 38 shows an HTM of a web page containing an example of a virtual remote control applet.
L is an example. This example should not be construed as limiting the invention.

【0045】要するに、本発明の実施形態は、アプレッ
トのコントロール下で、ビデオ・データをウェブ・ペー
ジ上に表示する方法を提供する。アプレットはウェブ・
ページ上に表示されたバーチャル・リモート・コントロ
ールの外観及び機能性を定義する。このため、アプレッ
トを実行するプラットフォーム内に形成されたソフトウ
ェアのハードウェアの変更を要することなく、バーチャ
ル・リモート・コントロールの外観及び機能性を容易に
変更できる。アプレットの新バージョンがロードされる
度に、バーチャル・リモート・コントロールの外観及び
機能性は自動的に更新される。セット・トップ・ボック
スのAPIの例を説明した。アプレットは、ウェブ・ペ
ージ上に表示されたバーチャル・リモート・コントロー
ルを介して行われるユーザー入力に応じて、APIファ
ンクションを呼び出す。
In summary, embodiments of the present invention provide a method for displaying video data on a web page under the control of an applet. Applet is web
Define the appearance and functionality of the virtual remote control displayed on the page. For this reason, the appearance and functionality of the virtual remote control can be easily changed without changing the hardware of software formed in the platform that executes the applet. The appearance and functionality of the virtual remote control are automatically updated each time a new version of the applet is loaded. An example of a set top box API has been described. The applet invokes API functions in response to user input made via a virtual remote control displayed on a web page.

【0046】本発明を特定の実施形態に関連して詳述し
たが、当業者が多くの別例、変更例及び変形例を前記の
説明から明確に理解できることは明らかである。従っ
て、本発明の請求の範囲及びこれに等価なものの精神及
び範囲内に属するこれら全ての別例、変更例及び変形例
を包含することを意図する。
Although the present invention has been described in detail with reference to specific embodiments, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art from the foregoing description. It is therefore intended to embrace all such alternatives, modifications and variations that fall within the spirit and scope of the appended claims and equivalents thereof.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の1つの実施形態に基づくデータ処理シ
ステムのブロック図である。
FIG. 1 is a block diagram of a data processing system according to one embodiment of the present invention.

【図2】本発明の1つの実施形態に基づくデータ処理シ
ステムのブロック図である。
FIG. 2 is a block diagram of a data processing system according to one embodiment of the invention.

【図3】リモート・ユニットを含むセット・トップ・ボ
ックス・システム及びビデオ表示の例を示す図である。
FIG. 3 shows an example of a set top box system including a remote unit and a video display.

【図4】ビデオ領域及びバーチャル・リモート・コント
ロール・パネルを含むディスプレイ装置の例を示す図で
ある。
FIG. 4 illustrates an example of a display device including a video area and a virtual remote control panel.

【図5】小型ビデオ領域、追加コンテント及びバーチャ
ル・リモート・コントロールを含むディスプレイ装置の
例を示す図である。
FIG. 5 illustrates an example of a display device including a small video area, additional content, and a virtual remote control.

【図6】2つのビデオ領域と、バーチャル・リモート・
コントロール・パネルとを含むディスプレイ装置の例を
示す図である。
FIG. 6 shows two video areas and a virtual remote
FIG. 3 is a diagram illustrating an example of a display device including a control panel.

【図7】一方を他方の内側に配置した2つのビデオ領域
と、バーチャル・リモート・コントロール・パネルとを
含むディスプレイ装置の例を示す図である。
FIG. 7 is a diagram illustrating an example of a display device including two video areas arranged inside one another and a virtual remote control panel.

【図8】図3のバーチャル・リモート・コントロール上
のセレクト・ボタンのプルダウン・メニューの例を示す
図である。
8 is a diagram showing an example of a pull-down menu of a select button on the virtual remote control of FIG. 3;

【図9】図3のバーチャル・リモート・コントロール上
のセレクト・ボタンのプルダウン・メニューの例を示す
図である。
9 is a diagram showing an example of a pull-down menu of a select button on the virtual remote control of FIG. 3;

【図10】図3のバーチャル・リモート・コントロール
上のセレクト・ボタンのプルダウン・メニューの例を示
す図である。
FIG. 10 is a diagram showing an example of a pull-down menu of a select button on the virtual remote control of FIG. 3;

【図11】図3のバーチャル・リモート・コントロール
上のセレクト・ボタンのプルダウン・メニューの例を示
す図である。
11 is a diagram showing an example of a pull-down menu of a select button on the virtual remote control of FIG. 3;

【図12】本発明の実施形態に使用するジャバ・クラス
の例を示す図である。
FIG. 12 is a diagram showing an example of a Java class used in the embodiment of the present invention.

【図13】アプレットと、図12のクラスのインスタン
スと、ディスプレイ装置を制御するネイティブ・コード
とを含む本発明の実施形態のブロック図である。
FIG. 13 is a block diagram of an embodiment of the present invention that includes an applet, an instance of the class of FIG. 12, and native code for controlling a display device.

【図14】図13のアプレットによって実施する方法の
フローチャートである。
FIG. 14 is a flowchart of a method performed by the applet of FIG.

【図15】本発明の実施形態における様々なユーザー・
アクションに応じてアプレットが実施するアクションを
示すフローチャートの例である。
FIG. 15 shows various users according to an embodiment of the present invention.
It is an example of the flowchart which shows the action which an applet performs according to an action.

【図16】本発明の実施形態における様々なユーザー・
アクションに応じてアプレットが実施するアクションを
示すフローチャートの例である。
FIG. 16 illustrates various users in an embodiment of the present invention.
It is an example of the flowchart which shows the action which an applet performs according to an action.

【図17】本発明の実施形態における様々なユーザー・
アクションに応じてアプレットが実施するアクションを
示すフローチャートの例である。
FIG. 17 shows various users according to the embodiment of the present invention.
It is an example of the flowchart which shows the action which an applet performs according to an action.

【図18】本発明の実施形態における様々なユーザー・
アクションに応じてアプレットが実施するアクションを
示すフローチャートの例である。
FIG. 18 illustrates various users in an embodiment of the present invention.
It is an example of the flowchart which shows the action which an applet performs according to an action.

【図19】本発明の実施形態における様々なユーザー・
アクションに応じてアプレットが実施するアクションを
示すフローチャートの例である。
FIG. 19 illustrates various users in an embodiment of the present invention.
It is an example of the flowchart which shows the action which an applet performs according to an action.

【図20】PIPクラス、TunerInfoクラス及びVideoInfo
クラスのオブジェクトの例を示す図である。
FIG. 20: PIP class, TunerInfo class and VideoInfo
It is a figure showing the example of the object of a class.

【図21】PIPクラス、TunerInfoクラス及びVideoInfo
クラスのオブジェクトの例を示す図である。
FIG. 21: PIP class, TunerInfo class and VideoInfo
It is a figure showing the example of the object of a class.

【図22】PIPクラス、TunerInfoクラス及びVideoInfo
クラスのオブジェクトの例を示す図である。
FIG. 22: PIP class, TunerInfo class, and VideoInfo
It is a figure showing the example of the object of a class.

【図23】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 23 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図24】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 24 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図25】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 25 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図26】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 26 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図27】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 27 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図28】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 28 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図29】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 29 is a flowchart of exemplary methods in TunerInfo and VideoInfo classes.

【図30】TunerInfoクラス及びVideoInfoクラス内の例
示的なメソッドのフローチャートである。
FIG. 30 is a flowchart of exemplary methods in the TunerInfo and VideoInfo classes.

【図31】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 31 is a flowchart of an exemplary method in a PIP class called by a virtual remote control applet.

【図32】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 32 is a flowchart of an exemplary method in a PIP class called by the virtual remote control applet.

【図33】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 33 is a flowchart of an exemplary method in a PIP class called by the virtual remote control applet.

【図34】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 34 is a flowchart of an exemplary method in a PIP class called by the virtual remote control applet.

【図35】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 35 is a flowchart of an exemplary method in a PIP class called by a virtual remote control applet.

【図36】バーチャル・リモート・コントロール・アプ
レットによって呼び出されるPIPクラス内の例示的なメ
ソッドのフローチャートである。
FIG. 36 is a flowchart of an exemplary method in a PIP class called by the virtual remote control applet.

【図37】図8のオブジェクトによって呼び出されるネ
イティブ・コード・ファンクションのリストの例を示す
図である。
FIG. 37 is a diagram showing an example of a list of native code functions called by the object of FIG. 8;

【図38】バーチャル・リモート・コントロール・アプ
レットの例を含むウェブ・ページのHTMLの例を示す
図である。
FIG. 38 illustrates an example HTML of a web page including an example virtual remote control applet.

───────────────────────────────────────────────────── フロントページの続き (71)出願人 591064003 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. (72)発明者 ラジェシュ・カヌンゴ アメリカ合衆国 カリフォルニア州94087 サニーベイル,リメリック・コート, 765 ──────────────────────────────────────────────────の Continuation of the front page (71) Applicant 591064003 901 SAN ANTONIO ROAD PALO ALTO, CA 94303, US A. (72) Inventor Rajesh Kanungo, United States 94087, California Limerick Court, Sunnyvale, 765

Claims (16)

【特許請求の範囲】[Claims] 【請求項1】 ビデオ・データの表示を制御する方法で
あって、 ダウンロードしたウェブ・ページ内の指定されたアプレ
ットを実行する工程と、 前記アプレットによって前記ウェブ・ページ上に表示さ
れたバーチャル・コントロール・パネルを介することに
より、ユーザー入力を前記アプレットによって受信する
工程と、 前記ユーザー入力に基づき、前記ウェブ・ページ上のビ
デオ・データの表示を前記アプレットによって制御する
工程と、を含む方法。
1. A method for controlling the display of video data, comprising: executing a designated applet in a downloaded web page; and a virtual control displayed on the web page by the applet. A method comprising: receiving user input by the applet by way of a panel; and controlling the display of video data on the web page by the applet based on the user input.
【請求項2】 前記バーチャル・コントロール・パネル
はテレビジョン・リモート・コントロールに類似してい
る、請求項1に記載の方法。
2. The method of claim 1, wherein the virtual control panel is similar to a television remote control.
【請求項3】 前記バーチャル・コントロール・パネル
は、前記ユーザーがチャンネルを変更することを可能に
する、請求項1に記載の方法。
3. The method of claim 1, wherein the virtual control panel allows the user to change channels.
【請求項4】 前記バーチャル・コントロール・パネル
は、前記ユーザーがテレビ入力からビデオ入力へ変更す
ることを可能にする、請求項1に記載の方法。
4. The method of claim 1, wherein the virtual control panel allows the user to change from television input to video input.
【請求項5】 前記バーチャル・コントロール・パネル
は、前記ユーザーがブロードキャスト入力からケーブル
入力へ変更することを可能にする、請求項1に記載の方
法。
5. The method of claim 1, wherein the virtual control panel allows the user to change from a broadcast input to a cable input.
【請求項6】 前記バーチャル・コントロール・パネル
は、前記ユーザーが前記表示をオンまたはオフへ切り換
えることを可能にする、請求項1に記載の方法。
6. The method of claim 1, wherein the virtual control panel allows the user to turn the display on or off.
【請求項7】 前記バーチャル・コントロール・パネル
は、前記ユーザーが前記ビデオ表示のサイズを変更する
ことを可能にする、請求項1に記載の方法。
7. The method of claim 1, wherein the virtual control panel allows the user to resize the video display.
【請求項8】 前記ウェブ・ページは前記ビデオ表示及
び前記バーチャル・コントロール・パネルの他に、表示
されたコンテントを含む、請求項1に記載の方法。
8. The method of claim 1, wherein the web page includes displayed content in addition to the video display and the virtual control panel.
【請求項9】 前記ウェブ・ページは2つのビデオ表示
を含む、請求項1に記載の方法。
9. The method of claim 1, wherein the web page includes two video displays.
【請求項10】 前記ウェブ・ページはピクチャ・ビデ
オ表示内にピクチャを含む、請求項1に記載の方法。
10. The method of claim 1, wherein the web page includes a picture in a picture video display.
【請求項11】 前記ウェブ・ページは、より小さいサ
イズのビデオ表示をデフォルトとし、かつ、コンテント
を前記ビデオ表示のエッジの周囲に表示する、請求項1
に記載の方法。
11. The web page defaults to a smaller size video display and displays content around edges of the video display.
The method described in.
【請求項12】 前記ウェブ・ページは、より小さいサ
イズのビデオ表示をデフォルトとし、コンテントを前記
ビデオ表示のエッジの周囲に表示し、かつ、前記ユーザ
ーによる前記表示のサイズの変更を許さない、請求項1
に記載の方法。
12. The web page defaults to a smaller size video display, displays content around edges of the video display, and does not allow the user to change the size of the display. Item 1
The method described in.
【請求項13】 ビデオ信号の受信を制御するビデオ・
チップとの間の通信を前記アプレットによって行う工程
を更に含む、請求項1に記載の方法。
13. A video signal controlling reception of a video signal.
The method of claim 1, further comprising the step of communicating with a chip via said applet.
【請求項14】 前記バーチャル・コントロール・パネ
ルの新バージョンは、前記バーチャル・リモート・コン
トロールを形成する前記アプレットに対する変更を行う
ことによって実現される、請求項1に記載の方法。
14. The method of claim 1, wherein the new version of the virtual control panel is implemented by making changes to the applet that forms the virtual remote control.
【請求項15】 ビデオ・データの表示を制御する装置
であって、 ダウンロードしたウェブ・ページ内の指定されたアプレ
ットを実行するように構成されたソフトウェア回路と、 前記アプレットによって前記ウェブ・ページ上に表示さ
れたバーチャル・コントロール・パネルを介して、ユー
ザー入力を、前記アプレットによって受信するように構
成されたソフトウェア回路と、 前記ユーザー入力に従って、前記ウェブ・ページ上のビ
デオ・データの表示を、前記アプレットによって制御す
るように構成されたソフトウェア回路とを含む装置。
15. An apparatus for controlling the display of video data, comprising: a software circuit configured to execute a designated applet in a downloaded web page; and an applet on the web page by the applet. A software circuit configured to receive user input by the applet via a displayed virtual control panel; and displaying the video data on the web page according to the user input. And a software circuit configured to be controlled by the device.
【請求項16】 コンピュータ・プログラム製品であっ
て、 ビデオ・データの表示を制御するために格納されたコン
ピュータ読取り可能なコードを含むコンピュータ使用可
能媒体を有し、前記コンピュータ使用可能媒体は、 ダウンロードしたウェブ・ページ内の指定されたアプレ
ットを実行するように構成されたコンピュータ読取り可
能なプログラム・コード・デバイスと、 前記アプレットによって前記ウェブ・ページ上に表示さ
れたバーチャル・コントロール・パネルを介して、ユー
ザー入力を、前記アプレットによって受信するように構
成されたコンピュータ読取り可能なプログラム・コード
・デバイスと、 前記ユーザー入力に従って、前記ウェブ・ページ上のビ
デオ・データの表示を、前記アプレットによって制御す
るように構成されたコンピュータ読取り可能なプログラ
ム・コード・デバイスと、を含むコンピュータ・プログ
ラム製品。
16. A computer program product, comprising: a computer usable medium including computer readable code stored to control the display of video data, the computer usable medium comprising: A computer readable program code device configured to execute a designated applet in a web page; and a user via a virtual control panel displayed on the web page by the applet. A computer readable program code device configured to receive input by the applet; and configured to control display of video data on the web page by the applet according to the user input. Sa Computer program product comprising a computer readable program code devices were, a.
JP34041799A 1998-11-30 1999-11-30 Television pip applet using pip framework and pip implementation Pending JP2000200181A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US20168598A 1998-11-30 1998-11-30
US09/201685 1998-11-30

Publications (1)

Publication Number Publication Date
JP2000200181A true JP2000200181A (en) 2000-07-18

Family

ID=22746869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34041799A Pending JP2000200181A (en) 1998-11-30 1999-11-30 Television pip applet using pip framework and pip implementation

Country Status (2)

Country Link
EP (1) EP1008931A3 (en)
JP (1) JP2000200181A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109799983A (en) * 2019-01-25 2019-05-24 中教云橙(宁波)科技有限公司 A kind of JAVA software development framework and application method

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9697230B2 (en) 2005-11-09 2017-07-04 Cxense Asa Methods and apparatus for dynamic presentation of advertising, factual, and informational content using enhanced metadata in search-driven media applications
US7801910B2 (en) 2005-11-09 2010-09-21 Ramp Holdings, Inc. Method and apparatus for timed tagging of media content
US9697231B2 (en) 2005-11-09 2017-07-04 Cxense Asa Methods and apparatus for providing virtual media channels based on media search
US8312022B2 (en) 2008-03-21 2012-11-13 Ramp Holdings, Inc. Search engine optimization
TW201445988A (en) * 2013-05-17 2014-12-01 Apacer Technology Inc Virtual remote control interface and mobile apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5543857A (en) * 1994-10-25 1996-08-06 Thomson Consumer Electronics, Inc. Graphical menu for a television receiver
US5889506A (en) * 1996-10-25 1999-03-30 Matsushita Electric Industrial Co., Ltd. Video user's environment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109799983A (en) * 2019-01-25 2019-05-24 中教云橙(宁波)科技有限公司 A kind of JAVA software development framework and application method
CN109799983B (en) * 2019-01-25 2022-05-17 中教云橙(宁波)科技有限公司 JAVA software development framework and use method

Also Published As

Publication number Publication date
EP1008931A2 (en) 2000-06-14
EP1008931A3 (en) 2003-08-27

Similar Documents

Publication Publication Date Title
JP2000200182A (en) Tv pip using java api class and java implementation class
US7302693B2 (en) Remote control inputs to Java applications
US7051273B1 (en) Customizing forms in an electronic mail system utilizing custom field behaviors and user defined operations
US7278110B1 (en) Programmable device control system and method
US6407759B1 (en) Method and apparatus for modal dialog box management in applets on information appliances
US5557723A (en) Method and system for customizing forms in an electronic mail system
RU2267151C2 (en) Data input by applying gui-interface
US6188401B1 (en) Script-based user interface implementation defining components using a text markup language
JP4201875B2 (en) Modality changeable device and change method
US20030231210A1 (en) Seamless tabbed focus control in active content
US7512892B2 (en) Method and system for displaying and interacting with paginated content
JP2020021481A (en) Scene-based vibration feedback method and portable terminal
JP2001518762A (en) Interactive graphical user interface for television set-top boxes
US20060059458A1 (en) Creating software applications
US5812805A (en) Method and editing system for setting tool button
US6266056B1 (en) Display widget interaction in embedded systems using child graphics contexts
CN112217671B (en) Method and equipment for performing interface display on front-end micro-service based on split deployment
US5995100A (en) Method of automatically generating custom controls for selected modules in a library
US20040095388A1 (en) Method and apparatus for creating user interfaces for computing devices
JP2000200181A (en) Television pip applet using pip framework and pip implementation
JP2000200179A (en) Method for displaying applet and application using bufferless slave graphics context inside incorporation system
US20070079245A1 (en) Method and apparatus for providing application with remote-controllable interface
US8342965B2 (en) Displaying a game menu screen by flash program module in an on-line game application
US8615722B2 (en) Apparatus and method for providing preview of menu object
KR101595785B1 (en) Method and apparatus for setting and actuating a contraction function of remote controller