JP4780832B2 - ネットワーク通信のためにローカルホストを使用する高度化されたビデオプログラミングシステム及び方法 - Google Patents

ネットワーク通信のためにローカルホストを使用する高度化されたビデオプログラミングシステム及び方法 Download PDF

Info

Publication number
JP4780832B2
JP4780832B2 JP2000384341A JP2000384341A JP4780832B2 JP 4780832 B2 JP4780832 B2 JP 4780832B2 JP 2000384341 A JP2000384341 A JP 2000384341A JP 2000384341 A JP2000384341 A JP 2000384341A JP 4780832 B2 JP4780832 B2 JP 4780832B2
Authority
JP
Japan
Prior art keywords
module
server
network
user
content
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.)
Expired - Fee Related
Application number
JP2000384341A
Other languages
English (en)
Other versions
JP2001282648A (ja
JP2001282648A5 (ja
Inventor
ディー. アールマン クレイグ
エム. ハーリントン ジェフレイ
アール. アバトゥ マイケル
アール. ドゥダ カール
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.)
ACTV Inc
Original Assignee
ACTV 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 ACTV Inc filed Critical ACTV Inc
Publication of JP2001282648A publication Critical patent/JP2001282648A/ja
Publication of JP2001282648A5 publication Critical patent/JP2001282648A5/ja
Application granted granted Critical
Publication of JP4780832B2 publication Critical patent/JP4780832B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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
    • H04N21/4782Web browsing, e.g. WebTV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワークアドレスをユーザマシンへ配布することによるネットワーク通信方法及び装置に関する。
【0002】
【従来の技術】
コンピュータは、インターネットで多量の教育情報や娯楽情報を提供する機能を有している。現在のところ、オンラインシステムは様々なサービスをユーザに提供しているが、その中にはニュース供給、電子データベース(オンラインシステム上で直接的にユーザによってサーチ可能なものであれ、ユーザ自身のコンピュータにダウンロード可能なものであれ)、プライベートメッセージサービス、電子ニュースレター、一時に複数のユーザがプレイするリアルタイムゲーム、少数を指名するためのジョブ配置サービスなどがある。
【0003】
【発明が解決しようとする課題】
しかしながら、現在、ほとんどのオンライン通信は単にテキストで行われている。これは、代替的電子メディアであるテレビによるオーディオ/ビジュアル表現とは対照的である。しかしながら、マルチメディアの絶え間ない成長が続くに連れて、オーディオ/ビジュアルプログラムが広まり、テキストはオンライン環境ではますます劣勢になるものと予想される。
【0004】
これらのプログラムが導入されたとしても、インターネットはその非常な多量性、編成及びランダム性によって実質的にユーザに不親切な存在として留まるだろう。簡単に言えば、インターネットにはなんら秩序も方向性もない。特定の情報を見つけるのは困難であり、そのような情報を意味ある環境に置くのはさらに困難である。
【0005】
一方、テレビは受動的なメディアであると批評されてきた。対話型テレビシステムによってユーザとの対話性のレベルが増大し、学習と娯楽の機会が増したとはいえ、データベースなどの莫大な情報リソースはこのようなメディアからはアクセス不可能である。
【0006】
【課題を解決するための手段】
本発明はビデオプログラミングとインターネットが有する莫大な情報リソースと間のギャップを無くそうとするものである。
【0007】
本発明の第1の観点によれば、サーバとのネットワーク通信をマシンに提供する方法が提供され、その方法は、
ネットワーク接続のリクエストを受信し、
リクエストに応答してローカル接続への参照を生成し、
ローカル接続での通信を検出し、
検出に応答し、マシンとのネットワーク通信を容易にするためにローカル接続との接続を確立する。
【0008】
実施例では、ローカルウェブサーバ機能は、ローカル接続で提供される。
【0009】
好ましくは、受信ステップは、ネットワークコンテンツ、及び/又はウェブブラウザからのウェブページのリクエスト、及び/又はアプレットからのリクエストを受信することを含む。
【0010】
本発明は、サーバとのネットワーク通信をマシンに提供する装置に拡張することができ、その装置は、
ネットワーク接続のリクエストを受信する受信手段と、
リクエストに応答してローカル接続への参照を生成する生成手段と、
ローカル接続での通信を検出する検出手段と、
検出に応答し、マシンとのネットワーク通信を容易にするためにローカル接続との接続を確立する接続手段と、を有する。
【0011】
実施例では、受信手段は、ネットワークコンテンツ、及び/又はウェブブラウザからのウェブページのリクエスト、及び/又はアプレットからのリクエストを受信するように構成される。
【0012】
実施例では、その装置は、ローカル接続で通信を検出する検出手段をさらに有し、その検出手段はローカル接続とのソケットを開放するために使用する情報を受信するように構成することができる。
【0013】
本発明のさらなる観点によれば、アドレスに関連するコンテンツの取得に使用するために、ネットワークアドレスをユーザマシンへ分配する方法が提供され、その方法は、
特定のコンテンツのネットワーク位置を識別する複数のネットワークアドレスを受信し、
各ネットワークアドレスに関連する時間パラメータの時関値を受信し、
各対応する時間値に基づいてユーザへ各ネットワークアドレスを送信する。
【0014】
また、本発明は、アドレスに関連するコンテンツの取得に使用するために、ネットワークアドレスをユーザマシンへ分配する装置にまで拡張可能であり、その装置は、
特定のコンテンツのネットワーク位置を識別する複数のネットワークアドレスを受信する受信手段と、
各ネットワークアドレスに関連する時間パラメータの時関値を受信する手段と、
各対応する時間値に基づいてユーザへ各ネットワークアドレスを送信する送信手段と、を有する。
【0015】
本発明のさらなる観点によれば、アドレスに関連するコンテンツの取得に使用するために、ダイナミックネットワークアドレスをユーザマシンへ分配する方法が提供され、その方法は、
変数を含むネットワークアドレスを受信し、そのネットワークアドレスは変数に基づいて特定のコンテンツのネットワーク位置の変更を識別し、
ネットワークアドレスについて、関連する記述を受信し、
ネットワークアドレスの意図された受領者に関する情報に基づいて、ネットワークアドレス中の変数を解析し、
意図された受領者に対応するユーザマシンへ、関連する記述とともにネットワークアドレスを送信する。
【0016】
また、本発明は、アドレスに関連するコンテンツの取得に使用するために、ダイナミックネットワークアドレスをユーザマシンへ分配する装置にまで拡張可能であり、その装置は、
変数を含むネットワークアドレスを受信する受信手段であって、そのネットワークアドレスは変数に基づいて特定のコンテンツのネットワーク位置の変更を識別し、またネットワークアドレスについて、関連する記述を受信する受信手段と、
ネットワークアドレスの意図された受領者に関する情報に基づいて、ネットワークアドレス中の変数を解析する解析手段と、
意図された受領者に対応するユーザマシンへ、関連する記述とともにネットワークアドレスを送信する送信手段と、を有する。
【0017】
【発明の実施の形態】
本発明の実施形態を以下に添付図面を参照して例示目的で説明する。
【0018】
図1は、ユーザのコンピュータ16をインターネット20上のアドレスロケーション、すなわちウェブサイトに導いて関連するウェブページを検索させる埋め込みユニフォームリソースロケータ(URL)とともに、ビデオプログラムを受信するためのコンピュータベースのシステムの実施形態を表す。ウェブページはビデオの表示に対応する。特定のビデオプログラミングは、衛星、ケーブル、電線、テレビ放送、又はウェブ経由の通信を含むあらゆる送信手段を経由して、アナログ、ディジタル又はディジタル圧縮されたフォーマット(例えば、MPEG2)で送出することができる。
【0019】
ビデオプログラミングは、加入者への分配のために、集合されたロケーションで、例えば図1のコンテンツ生成物4として生成されるのが好ましい。プログラムの生成は適切なあらゆる手段によって遂行することができる。ビデオプログラムが生成された後、ユニフォームリソースロケータ(URL)が埋め込まれる。1つの実施形態では、URLは図1に示されるURLエンコーダ8によってビデオプログラミングの垂直帰線消去期間内に埋め込まれる。この実施形態では、URLはVBIのライン21の8つのフィールド上に符号化される。ライン21はとりわけ近接字幕説明(close captioning)に関連したラインである。しかしながらURLはさらに及び/又は代りに、VBIの他のフィールド内に、ビデオの水平部分内に、オーディオチャネルの1部としてビデオのいずれかのサブキャリヤ内に、又はビデオがディジタルである場合は1つのデータフィールド内に埋め込むこともできる。
【0020】
図1は、同一の送信ラインによるURLを伴うビデオの放送を示しているが、URLはデータチャネル上でビデオプログラムとは独立に送出してもよい。この実施形態では、URLは、初期化に先立って又はプログラムの間に遠隔サイトに転送することができる。好ましくはURLは、ビデオプログラム中に、それによってアドレス指定される特定のウェブページをいつ表示するかを加入者局に指示する関連するタイムスタンプを有する。その代りにユーザはビデオプログラムと一緒に表示する特定のウェブページをいつ呼び出すかを選択することができる。
【0021】
ライン21内の特定の情報はプログラムの可視部分の1部ではなく、従って人間の目に知覚できないので、データ情報のユーザへの送出には理想的である。ライン21の帯域幅の容量は制限されているけれども、上記システムは完全なウェブページではなくURLだけを送信するので、十分な容量がある。さらに、ビデオを受信し、ウェブページを検索するためにコンピュータ16にハードウェアを追加する必要はない。
【0022】
一旦ビデオプログラムが生成されれば、それは放送、ケーブル、衛星又はインターネットを含むあらゆる送信手段によってユーザサイトに送信され、ビデオサーバ上に常駐することができる。さらに埋め込みURLを持ち又は持たないビデオプログラムは、例えばVHS又はBetaフォーマットのビデオテープ、又はCD又はDVDなどの光ディスク、もしくは他のあらゆるメディア等の記憶手段上に符号化されうる。
【0023】
好ましくは、各受信局は、インテルのx86マシン(486プロセッサ、ペンティアムプロセッサ等が好ましい)、アップルコンピュータ、UNIX又は他の全てのタイプの標準的コンピュータワークステーションを含む。好ましくはローカルコンピュータ16は、ケーブル及び/又は放送テレビへ、もしくはローカルVCR又は他のビデオソースへ接続される。各加入者サイトにおいて、ローカルパーソナルコンピュータ16は好ましくはその背面へのケーブル接続によってケーブル送信を受信する。ビデオ/オーディオプログラムは、PAL又はNTSC等の適切なテレビフォーマットでコンピュータのモニタ上にビデオ信号を表示可能なPCカードを用いてコンピュータ画面上に表示するように処理される。PCカードの1つの例はWinTVカードである。ケーブル接続に加えて、インターネット20の接続がケーブル接続と同時に作られる。
【0024】
インターネット20の接続は、高速ライン、無線周波数、従来型モデムによって、又はビデオプログラミングを搬送する双方向ケーブルによって行われうる。ローカルPC16は、例えばASCIIのソフトウェア機構によってインターネットにアクセスする。ある実施形態では、各加入者サイトにおいて、関連するローカルURLデコーダ12は好ましくは垂直帰線消去期間内に埋め込まれたURLを適切なVBIデコーダデバイスを用いて抽出する。URLデコーダ12は、スタンドアローンユニットでも、パーソナルコンピュータ16内に実装されたカードでもよい。
【0025】
図2の実施形態では、ユニフォームリソースロケータ(URL)が上述のようにビデオに符号化される。URLはやはりVBIのライン21の8つのフィールド上に符号化されるのが好ましいが、ビデオとは独立して送出されてもよい。この実施形態では、URLデコーダ24は、加入者のロケーションにではなくてサーバサイトに配置される。デコーダ24はビデオプログラム信号を受信すると、VBIのライン21上のURLコードを取り出し、これらのコードを独立にインターネットサーバ28に送出する。それからURLコードは引き続いてインターネット20を通じてユーザのPC16に送出される。同時にビデオは、従来の放送又はケーブル送信手段36によってユーザのパーソナルコンピュータ16に放送される。
【0026】
図4に示す変更例はVBIを用いない。この実施形態では、システムはインターネット20を通じてオンラインサービスを実行する。このサービスは、データベース78及び1つ以上の関連するデータサーバ90へのユーザインタフェースを提供するインターネットウェブサイト62の形態を取る。このサービスは、放送との関連において上述のシステムを使用するためにサインアップしたTV放送者66へのメンバーアカウントを提供する。各メンバー放送者は、様々な識別及びパスワード情報を入力することにより彼らのメンバーアカウントを使用して、ウェブブラウザソフトウェア74を通じて彼らのコンピュータ70でサービスに入る。一旦アカウント内に入れば、メンバーには、一日の特定の時間に直接インターネット接続94を通じてユーザ118に送信するURLの予備スケジューリングのためのグラフィカルユーザインタフェースが提供される。同じユーザインタフェース又はその変形を放送者が使用することによって、ユーザへのURLのライブ送信82が放送86と同時に行われる。
【0027】
このインタフェースの1つの例は、(日、週、月、年の)スケジューリングカレンダーであり、そこで放送者66は、彼らの放送86に一致する時間帯を割り当て、その間に彼らのユーザにURLを送出してウェブページにリンクさせる。放送者66によって放送時間帯(そのとき彼らのTV放送設備110からユーザ118の外部TV114に放送されているテレビショーに対応するURLを送信したいと彼らが望む時間帯)と決定された各時間帯(例えば、1日の中の特定の何時間という期間)の間、放送者66はその時にインターネット20により送信する関連ファイル(“リンクファイル”)に1連のURLを入れる。このリンクファイルはスプレッドシート、表、又はリスト等のユーザインタフェースを有してもよく、単にタブ又はパラグラフにより区切られたテキストファイルであってもよい。1例として、リンクファイル内の各レコードは、次の情報を含むデータ構造からなっている:
【0028】
(<タイムコード>、<URL>、<ラベル又はタイトル>、<追加情報>、<追加情報>、…)
【0029】
上記のデータ構造は単に1つの例にすぎない。リンクファイル内のレコードは、放送者66がショーの間に送出することを望む各ウェブページについての時間、インターネットアドレス(すなわち、URL)、ラベル(例えば関連する名前)及びいくつかの選択的追加情報が明記されることが好ましい。
【0030】
放送者66が彼らのカレンダー及び/又はその中のどれか所定の時間帯に関連するリンクファイルを変更する場合、この情報は、サイト62に置かれているデータベース78内に保存される。各放送者66が例えば異なる時間帯に放送する場合は、彼らはデータベース78内に複数のカレンダーを保持することができる。
【0031】
データベース78は近づきつつある時間のためのリンクファイルのレコードをサーバ90へ提供して国内又は世界の多数の聴衆に対応するために使用し、そのサーバ90は1つのサーバであってもよく、ネットワークを通じた複数のコンピュータ上のサーバプログラムの分散型ネットワークであってもよい。サーバ90は、URLを含むリンクファイルレコードをネットワークを介して接続されたユーザのパーソナルコンピュータ16に提供する。可能なネットワークの例は、公共のインターネット94、直接的プライベートネットワーク、又は無線ネットワークさえも含む。
【0032】
図4に示される実施形態の1つの特徴は、複数の放送者66が彼ら自身の放送86のために又は同じ放送のあいだに、データベース78内の同じスケジュールを利用できるということである。例えば、ネットワーク放送者がマスタースケジュールを発展させ、様々な加入放送者がそのスケジュールに加入し又は(データベース内の)それをコピーして、彼らのローカルな聴衆又は固有のプログラミングのためにスケジュール内の特定のURLを追加したり削除したりできるようになる。このスキームによって加入者は、それらのネットワーク放送者66により与えられたより一般的な1連のURL内に、ローカルな広告主又はローカルな主題のためのURLを挿入することができるようになる。言い換えれば、加入者はネットワーク供給物上に乗るリンクを追加して、それを彼らのローカルな聴衆に再分配することができるようになる。
【0033】
また、図4のシステムは、各ユーザ固有のプロフィールに特有の1連の固有なURLという形態の個人化を可能とし、これらのURLはインターネット20を通じて各ユーザの固有のクライアントソフトウェア106に直接送信される。これは放送者66から各個人ユーザ118へ、又はユーザの特定の集合へと実行されうる。個人化を達成するために、サービスはURLの異なるストリームを各ユーザのクライアントソフトウェアプログラム106へ送出する。送出されるURLのストリームは、データベース78又はクライアントソフトウェアプログラム106内に記憶されているユーザプロフィールによって決まり、ユーザのロケーション、クライアントソフトウェアプログラム106の使用中にユーザが行う選択、放送86中に放送者66が行う選択、又は(フィルタ等の)アルゴリズムによって行われる自動的な選択等の判断基準に基づき、各ユーザ118の要求に応じて又は時間の経過とともに形成されるユーザプロフィールはサービス62上に常駐する。個人化によって各ユーザはシステム内での彼らの関心、人口統計、履歴又は行動に一意的に関連するURLを受け取ることが可能となる。
【0034】
URLがパーソナルコンピュータ16に達した後は、図1、2及び4に示される全てのシステムの動作は類似したものになる。
【0035】
1つの実施形態では、特殊化されたソフトウェア106とともにJAVA可能ブラウザ98がコンピュータ16にインストールされる。JAVA可能ブラウザ98はコンピュータ16がウェブページ102を検索するのを可能にする現在の好適なソフトウェアであり、プラットフォームから独立しており、従ってインターネット20を通じたプログラムや画像等の効率的かつ柔軟な送信を可能にする。特殊化されたインタフェースソフトウェア106(以後“クライアントソフトウェア”)は、ビデオプログラミングとインターネット機能との間のインタフェースとして動作する。クライアントソフトウェア106はビデオプログラム(図1の実施形態)から又は直接インターネット接続(図2の実施形態)からURLを検索し、これらのURLを解釈して、JAVA可能ブラウザ98に特定の関連するウェブページ102を検索させる。また、図3及び4に示され、後により詳細に説明するように、クライアントソフトウェア106はユーザのコンピュータ16上への表示のためにウェブページと、ビデオコンテンツとを同期させる。
【0036】
上述のように、URLは垂直帰線消去期間(VBI)内に挿入することによって、符号化しビデオ信号内に埋め込むことができる。
【0037】
その代りに、URLをメンバーのTV放送者66によって、ユーザへのURL送信の規定時間とともに入力してもよい。適切な時間に、URLはインターネットを通じて、直接固定接続又はマルチキャスティング接続によってクライアントソフトウェア106を介してユーザのPC16に直接送出される。
【0038】
システムは直接的に次々と送出される同じURLを検出して、ブラウザがこれらの特定の場合にURLを取り出さないようにさせる機能をもつことができる。図3に示すように、一旦URLコードがコンピュータに受信されると、クライアントソフトウェア106はまずURLを解釈し、特定のURLがそれ以前に受信されたかどうかをステップ42で判断する。それが既に受信されていた場合、先行する受信の決定のために、次に受信されたURLが解釈される。特定のURLがそれ以前に検出されていない場合は、ソフトウェアはステップ46でミススペル及び他の全ての誤りをチェックし、誤りがあればこれらの特定の誤りを修正する。URLがそれ以前に検出されたかどうかが再度判断される。検出されていれば、次のURLがステップ38でアクセスされる。URLが検出されていない場合は、ステップ54で特定のURLがURLリストに追加される。その特定のURLはウェブブラウザ、好ましくはJAVA可能ブラウザ98に送られる。URLを受け取ると、ステップ58でブラウザ98はそのURLによって示されるウェブサイトのアドレス122(図4)にアクセスして、示されたウェブページ102をインターネットを通じて取り出す。
【0039】
視聴者は統合された表示を次のような方法で見ることができる。前述したようにビデオ信号は処理され、例えばWinTVカードを用いてPC画面上のビデオウィンドウ上に表示される。対応するオーディオはオーディオカードに転送されてPCのスピーカに送られる。
【0040】
URLによって参照される検索されたウェブページ102は、所定の関連ビデオコンテンツがビデオウィンドウ内に表示されるときにタイムスタンプされてコンピュータ画面上に表示され、こうしてそのビデオコンテンツに関連する詳細な情報を提供することによってビデオの表示を高度化することができる。画面上の別の部分をさらに用いて操作制御パネルを表示するのが好ましい。この制御パネルは、放送され、それに応じてコンピュータ16によって受信されたURLのリストを提供する。この制御パネルは、新たなURLコードがPC16によって受信される度に更新されてURLコードを追加する。このリストによって加入者は、プログラム中をさかのぼり、以前に表示された特に参考になり又は興味を引くウェブページを取り出し、又は後日参照するためにそれらをプリントアウトすることが可能となる。さらにリストは、放送プログラムとともに表示はされないが、視聴者にとって興味を引く特定の話題に関するさらなる情報を提供するウェブページを参照するURLを含んでもよい。
【0041】
一例として、視聴者はあるバンドを主役にしたミュージカルビデオを見始めるかもしれない。ビデオがPC16によって受信される際に、URLはビデオ信号とともに受信されるか、又はインターネット20又は別のデータチャネルを通じて直接受信され、クライアントソフトウェア106によって解釈される。指示及びコマンドにより、JAVA可能ブラウザ98はURLで特定されるインターネット20のウェブサイトから特定のウェブページ102を検索する。それからこれらのウェブページ102は特定の時間にビデオ画面上に表示される。従って例えば、視聴者がミュージックビデオを見ているあいだ、そのバンドの伝記的情報をビデオウィンドウの隣に表示することが可能となる。また、ウェブページ102は、来るべきコンサートのスケジュールを含むことができ、及び/又はそのバンドの音楽のオーディオクリップをインターネット20からダウンロードすることができる。
【0042】
別の例として、ユーザは金融ニュースに関連するプログラムを見ているかもしれない。ナレーターがハイテク株について話しているあいだに、ハイテク株についの詳細な金融実績情報、環境及び特徴に対応するウェブページを映像とともににコンピュータ画面上に表示することができる。個人化の機能が備わっていれば、特定のユーザの株に関連したウェブページを取り出して来てそれをコンピュータ画面上にビデオプログラムとともに表示することができる。プログラムのナレーターがダウ・ジョーンズの週間実績についての議論に切り替えれば、関連する金融実績情報を表示するウェブページを同時に表示することができる。
【0043】
パーソナルコンピュータ16の表示画面と連動するテレビ装置114又は他の表示モニターを用いて、ユーザは対話型プログラムを見ることができる。この場合、ビデオプログラムがテレビモニター114上に表示されているあいだ、関連するウェブページはパーソナルコンピュータ16上に表示される。この代替例の場合、ケーブルのセットトップボックスはマルチチャネルケーブルからテレビプログラムを受信する。パーソナルコンピュータ16はさらに、マルチチャネルケーブルからビデオプログラムを受信して、ビデオ信号の垂直帰線消去期間内に埋め込まれた、又はインターネット20を通じて直接送信94されたURLを抽出する。クライアントソフトウェア106はURLを抽出して、上述のように特定のウェブページを検索する。それからウェブページは特定のビデオフレームと同期されてユーザに表示される。ユーザがクライアントソフトウェアを自動的にロードし、ウェブサイトに載っている特定のテレビチャネルを呼び出すことを可能にするハイパーリンクがウェブサイト上に存在することが理解される。例えばインターネット20を閲覧している誰かが主要テレビネットワークのウェブサイトを訪れるかもしれない。そして関心のある物語をスクロールし、それからハイパーリンクをクリックしてテレビウィンドウをネットワークに合わせるソフトウェアを起動させることができる。
【0044】
埋め込みURLを持ち又は持たないビデオプログラムが適切な手段上に保存されていれば、送信手段からビデオプログラムを受信する代りに、ビデオプログラムをユーザサイトから直接アドレス指定することができる。記憶手段は、VHS又はBeta等のあらゆるフォーマットのビデオテープ、もしくはDVD又はCD−ROM等のあらゆるフォーマットの光ディスクとすることができる。この場合ユーザのPC16及び/又はテレビ114は、ビデオテーププレイヤー、ディスクドライブ又は他の適切な装置に接続される。
【0045】
図5と図6は、使用可能なシステムの2つの代替例を示す。図5に示すように、ユーザはディジタルケーブルボックス140と関連しているテレビ装置18又は他の表示モニターを用いて対話型プログラムを見ることができる。この場合、ディジタルケーブルボックス140は図1、2、4のパーソナルコンピュータ16の機能を実行し、クライアントソフトウェアがディジタルケーブルボックス140内のメモリに記憶されている。1つの実施形態では、ディジタルケーブルボックス140は2つのチューナーを備えており、従ってウェブページとビデオプログラムの両方を同じ画面上で同時に見ることができる。しかしながら、ビデオとウェブストリームが1つのチャネル上で搬送される場合は、必要なのは1つのチューナーだけである。
【0046】
クライアントソフトウェアは、受信されたビデオプログラムから、直接的にインターネット接続20から、又は分離されたデータチャネルからURLを検索し、これらのURLを解釈し、ウェブ可能ブラウザを制御して関連する特定のウェブページを検索し、テレビ18への表示のために検索されたウェブページをビデオコンテンツに同期させる。関連するウェブページはテレビ18の1つのフレームに示され、一方ビデオプログラムは別のフレームに表示されるのが好ましい。ディスプレイ上でビデオプログラムをウェブページで置き換えることもできる。
【0047】
この実施形態では、ディジタルケーブルのセットトップボックス140はマルチチャネルケーブルからテレビプログラムを受信する。そのURLはMPEG1、MPEG2、MPEG4、MPEG7又はあらゆる他の圧縮ビデオスキームを用いてディジタルプログラムチャネルに符号化することができる。その代りに、URLをインターネットサーバ148からディジタルケーブルボックス140へ送信することもできる。ディジタルケーブルボックス140は、ディジタルビデオ信号から、又は直接的にインターネット20から送信されたURLを復号化する。クライアントソフトウェアはURLを復号化し、上述のように特定のウェブページを検索する。ウェブページは特定のビデオフレームと同期してユーザに提示されるのが好ましい。
【0048】
上記の全ての実施形態と同様に、送信手段からビデオプログラムを受信する代わりに、埋め込みURLを持ち又は持たないビデオプログラムがビデオテープ又は光ディスク等の記憶手段に記憶されている場合は、ビデオプログラムはローカルのビデオソース144から直接アドレス指定されてもよい。この実施形態ではディジタルケーブルボックス140は、VCR、ディスクドライブ又は他の適切な装置に接続される。
【0049】
図6は、ディジタルテレビ152が遠隔受信ユニットであり、図1、2及び4に示すパーソナルコンピュータ並びに図5に示すディジタルケーブルボックス140の機能を遂行するような実施形態を示す。プロセッサ手段とメモリがディジタルテレビ152内に組み込まれ、クライアントソフトウェアとウェブブラウザソフトウェアがディジタルテレビ152内のメモリに実装されている。他の実施形態に関連して上で説明された全ての機能は、ディジタルテレビ152の実施形態によって同様の方法で実行される。
【0050】
PC16の代りに、図5及び6に示されるディジタルケーブルボックス/テレビ140、18とディジタルテレビ152が図1の実施形態の中に組み込まれているが、それらを図2と4に示すPC16と置き換えてもよい。
【0051】
ユーザはビデオとウェブコンテンツを1つの画面上で(2つのウィンドウ内で)閲覧することもでき、もしくはビデオを1つの表示画面上で閲覧し、ウェブコンテンツを別個の表示モニター上で閲覧することもできる。あるいはユーザは、ビデオ又はウェブコンテンツに別々にアクセスすることもできる。こうしてユーザはビデオからウェブコンテンツへ及びその逆に分岐することができる。
【0052】
ここに述べるシステムは教育環境に良く適している。従って、生徒と教師は1つ以上のウェブサーバにアクセスし得る。インストラクタ及び生徒のユーザソフトウェア、オーサリングソフトウェア及びデータベース評価ソフトウェアを含むソフトウェアコンポーネントが提供される。例えば、インストラクタはパーソナルコンピュータ上でコンテンツ作成ソフトウェアを用いて、図7に示すインタフェース156を介して、ウェブ上で発表された現行情報をカリキュラム中に容易に統合し得る。インストラクタはプレイリスト(すなわち、リンクファイル)160を作成し、このプレイリスト160はウェブページのリスト、テキストノート及び問題を含んでいる。ウェブサイトと問題は所定の順序で並べられていて、これに時間を割り当てることが可能である。ウェブサイトと時間スタンプを識別するURLが、事前記録されたプログラムの再生中又はライブイベントの最中に、仮想コミュニティ中の各生徒に自動的に送られるのが好ましい。
【0053】
各生徒のワークステーションで、このプログラムはプレイリスト160によって制御される。言い換えれば、プレイリスト160はこのプログラムの構造を提供する。プレイリスト160によって示された所定の時間に、ブラウザはのウェブページを取り出してコンピュータ画面上のフレーム中に表示する。プログラムイベントは所定の時間にこのようにセットアップできるので、プログラムとプレイリストの全体を事前記録してウェブデータベースに記憶して、後で生徒がアクセスできるようにすることができる。
【0054】
生徒とインストラクタは、すべてウェブに接続されている限り、どこに位置してもよいことが理解されよう。サーバがプログラムを制御するので、インストラクタの出力はサーバから供給され、生徒のワークステーションはウェブサーバによって自動的に更新される。
【0055】
この教育用の実施形態は、ウェブコンテンツと他のメディアを協力的なグループウエア機能性と統合して、生徒と教師のための対話型環境を作成する。生徒は自身のウェブブラウザ中のフレーム又はテレビから従来のビデオレッスンを受信する。図8に示すように別々のフレームを同時に提供しても良く、同図ではブラウザは:ビデオ表示内容を補足する情報や演習と共に各生徒のデスクトップに自動的に送出されるウェブページ176と;インストラクタ及び/又は他の生徒とオンラインで会話するためのチャット対話フレーム168と;前記レッスンを含むウェブページ及び問題の対話型プレイリスト164と;を表示している。
【0056】
図8の生徒インタフェースでは、各生徒は、例えば、重力に関して学習するための物理学の授業の際に仮想実験を行うことができる。加えて、生徒はチャット対話フレーム168を用いて互いにまたはインストラクタと会話する。また、彼らは生徒インタフェース176のチャット対話フレーム168を介してウェブページを互いに送ったり、教師からの質問に対する解答を提供したりすることができる。このチャット機能によって、生徒は協力的な学習のためにサブグループに入ることができる。グループ中の生徒がメッセージを送るたびに、そのメッセージはインターネットサーバ20に送られ、サブグループ中の他の全ての生徒が自身のチャット対話フレーム168中でそのメッセージを受信して閲覧する。
【0057】
しかしながら、インストラクタはチャット機能に対する制御権を確保することができる。例えば、インストラクタはチャット機能又はウェブプッシュを終了して、生徒による勝手なオンライン会話又はウェブページの送出を中止することができる。
【0058】
ここに説明するシステムは、インストラクタがほぼあらゆるタイプの試験戦略を自由かつ便利に実行することができるので、従来の距離学習システムより強力である。インストラクタは、チャット対話機能とウェブページの組み合わせを利用して生徒を試験することができる。例えば、選択式問題と短答式問題がチャットウインドウ168に現れうる。より長い回答を必要とする論文式問題はウェブページとなる。上述したように、生徒は仮想的実験をオンラインで実行できる。インストラクタのパーソナルコンピュータが生徒の解答を受信すると、生徒の採点が表、チャート、線図、棒グラフなどを含む何らかのフォーマットでインストラクタに表示される。したがって、インストラクタはこの結果を分析し、これによって生徒にリアルタイムでフィードバックすることができる。
【0059】
また、生徒は分岐した対話型のオーディオ、ビデオ及び/又はグラフィックス応答を介して個別化されたフィードバックを受信することができる。例えば、ワークステーションは、インストラクタ自身の音声で事前記録されているのが好ましい特定のオーディオ応答に対して、選択式問題に対する生徒の解答に基づいて分岐することができる。複数の潜在的オーディオ応答が生徒のワークステーションで、例えば米国特許第5,537,141号に記載の方法によって利用可能となる。追加として及び/又は代わりとして、個人化されたビデオ、オーディオ及びグラフィックスセグメントが、例えば米国特許第5,724,091号に記載されるように生徒の解答又は個人のプロフィールに基づいて生徒に送出され表示される。
【0060】
生徒の解答に対する応答は、生徒の現在の解答選択だけではなく、生徒の過去の解答にも基づいてユーザに対する対話式応答を選択するアルゴリズムを含む記憶機能を用いればより強固なものとなり得る。このアルゴリズムは、各生徒のワークステーションのメモリに記憶して、プロセッサの制御下にあるのが好ましく、出力された対話式反応を生徒の解答に基づいて選択する。ある例では、3つ以上の解答が連続して正解である生徒は、即座により難しい問題を受信する。しかしながら、この3つの質問のうちの1つ以上に正解できない生徒はもっとやさしい問題を受信する。
【0061】
図9に図示するシステムは、多数のユーザ、例えば複数の学校にサービスを提供することが可能である。図示するように、通信サーバ180はLAN、WAN及びインターネット上でメッセージを分配してルーティングする。このシステムの中心にはグループデータベースサーバ184があり、これは各々がエリア192を受け持つ複数の通信サーバ180によって囲まれている。各通信サーバ180は、ユーザステーション188を表す正方形によって囲まれている。通信サーバ180は、互いにノード関係という形で編成されている。
【0062】
各ノードは1つのエリア192を受け持つ責任がある。エリア192は、単一の通信サーバ180(又は「comサーバ」)からサービスを受ける仮想ロケーションとして定義される。エリア192は1つの学校であったり、オフィスであったり、又は複数の実際の物理的ロケーションであってよい。エリア192の定義特性は、エリア192の1つのメンバーから別のメンバーに送られたメッセージは、サービスを提供しているcomサーバ180の外部にルーティングする必要がないという点にある。
【0063】
エリアのメンバーは頻繁に用いられる“ユーザ”という用語と類似している。例えば、“ユーザ”は教育環境内の生徒であってもよい。
【0064】
図9に示す分散型通信システムによって、ほとんどまたは全く管理タスク無しでグループ内で通信サーバ180を動的に追加すること、及び、全体的な通信ネットワーク内でグループを追加することが可能となる。通信サーバグループは、画定されたいくつかの仮想エリア192(250を越える数のメンバーから各々が構成されるのが好ましい)から成り、各エリア192は1つのcomサーバ180からサービスを提供される。このシステムによって、なんら構成を変更することなく、1つのエリア192のメンバー又はグループは、別のエリア192のメンバー又はグループと容易に通信することができる。
【0065】
過去においては、非常に多くのユーザにサービスを提供するには、非常に高価なサーバとネットワークが必要であった。さらに、ユーザベースが増加するに連れて、性能が劣化し、また、ハードウェアを更新して需要に対応しなければならなかった。
【0066】
この分散型通信システムによって、同一の比較的安価なマシンでも、増加し続けるユーザベースに仕えることができる。これは、IPルーティングルックアップ及びDNSルックアップと実質的に同じであるコアパターンに続いて、1つのサーバから別のサーバにメッセージを必要に応じてルーティングすることによって遂行される。あるメッセージが現行のエリア192又はグループに属しないメンバーに対するものである場合、そのメッセージは、その宛先、又はその宛先を知っていてそのメッセージを送出することが可能な誰かが分かるまで、この分散型通信システムを介してルーティングされる。この宛先をキャッシュし、そのメンバー又はグループ宛の後続のメッセージがより効率的に送出されるようにすることができる。
【0067】
図9を参照すると、メッセージがメンバー「A」によって送信され、グループ1のメンバーだけを意図している場合、このメッセージはエリア1のcomサーバから決して離れない。しかしながら、そのメッセージがエリア1のメンバーとエリア2のメンバーに対して意図されている場合、エリア1comサーバはそのメッセージをグループデータベースサーバ184に転送する。このメッセージはエリア1のメンバーに放送され、エリア2に属するものとしてグループデータベースサーバ184中にタグ付けされる。次に、このメッセージはエリア2にルーティングされ、エリア2のメンバーに放送される。この技法によって、潜在的にいかなるメンバーでもメッセージを他のいかなるメンバーに送り得る。エリアcomサーバ180が宛先を認識しない場合、そのメッセージはライン上に転送される。各comサーバ180は、他のいかなるサーバ180を意識する必要はない。メッセージは届けられるまでルーティングされる。届けることが不可能な場合、最初の送り主が告知される。
【0068】
新しいエリア192をリアルタイムで追加することが可能である。新しいcomサーバ180がネットワークに追加されると、そのサーバ180は自身をデータベースアプリケーションに登録する。これによって、この新しいエリア192宛のいかなるメッセージも、他のエリアサーバ180を変更することなく適切にルーティングされる。
【0069】
この方法とシステムは、グローバルメッセージ又はユーザ間メッセージに適している。さらに、新しいグループもまた動的に追加し得る。一旦追加すると、新しいグループデータベースサーバ184は各々が、既存のデータベースサーバ184に自身を登録する。この負荷分散によって、既存のソフトウェアとハードウェアでほとんど無制限の拡張が可能となる。各サーバが有限の数のメンバーを管理し、これが累積して、増大化するコミュニティにサービスを提供する。
【0070】
ユーザは、自身が接続すべき相手側である特定のcomサーバ180に関して通知を受ける必要はない。メンバーは1つのURLに向けられる。ユーザの接続のためのサーバ選択は、負荷均衡化ソフトウェアによって決定される。このようにして、ネットワークはサーバのグローバルネットワーク又は単にローカルな教室のように見えるかも知れない。
【0071】
上述のアーキテクチャは、データベースサーバをルーティング用ゲートウエイとして使用するものであり、これによってシステムは最小の管理及び構成、並びに最小の、費用効率のよいハードウェアで仕えることができる。
【0072】
図10は、ネットワーク222を通じたユーザマシン202とサーバ224の間のネットワーク通信を容易にするための、ローカルホストと呼ばれるエンティティを使用するように構成されたシステム200を示す。ネットワーク222は例えばインターネットなどのあらゆる適当なネットワークとすることができる。ローカルホスト接続は、例えばJAVAプログラミング言語のアプレットに存在する特定の制限を克服することにより、ネットワーク通信における機能性を増大させることができる。アプレットは、小さいアプリケーションであり、典型的にJAVAプログラミング言語により記述されている。要求されるセキュリティ基準を満足するために、JAVAプログラミング言語は、アプレットの使用により特定の機能が受け持たれることを可能としない。例えば、アプレットは典型的にユーザマシンのハードディスクから読み書きすることができない。セキュリティ基準は、例えばアプレットがユーザのシステム処理又は記憶データに悪影響を与える可能性がある場合に、ユーザがウェブページの一部としてアプレットを知らずにダウンロードしないことを確保することを助ける。しかし、特定の制御された環境においては、アプレットに適用されたセキュリティ制限を除去又は減少させることが有益な場合がある。そのような状況では、ローカルホストはアプレットの機能を増大させることができる。
【0073】
図示のシステム200において、ユーザマシン202はインターネット222を通じてサーバ224とのローカルホスト又は接続を有する。ユーザマシン202はウェブブラウザ204を含み、それはインターネット通信のためのあらゆるタイプのウェブブラウザにより実施することができる。ウェブブラウザ204は、ヒドゥンHTMLフレーム206内に、donut.htmlページと呼ばれるハイパーテキストマークアップランゲージ(HTML)ページを含む。フレームの代わりに、それはダイナミックHTML(DHTML)ページで使用されるレイヤーを使用することができる。ページ206はユーザマシン202上のメモリ中のヒドゥンフレーム内又はレイヤー内に記憶することができる。ヒドゥンフレーム又はレイヤー206は、サーバ224と通信するための機能を有するドーナツアプレット208を含み、アプレット208は例えばサーバとの通信を要求するアプリケーションを含むことができる。
【0074】
用語“ドーナツ(donut)”はラベルとしてのみ使用され、本例ではユーザにコンテンツを送信するのに使用するユーザプロファイル情報を記憶する特定のファイルを指す。ユーザプロファイル情報は、例えば以下の1つ以上などのユーザに関する多種の情報を含むことができる:ユーザの年齢、ユーザの性別、ユーザの結婚歴、ユーザの以前の活動、ユーザの収入層、ユーザの家族の数、ユーザの職業、ユーザの業種、居住期間、ユーザの関心、もしくはユーザに関する人口統計学的又は活動に基づく情報などの他の情報。
【0075】
ユーザプロファイル情報を記憶する“ドーナツ”の使用は、1999年9月29日に出願された米国特許出願09/409305に記載されている。
【0076】
また、ウェブブラウザ204はユーザマシン202のメモリに記憶されたHTMLフレーム又はレイヤー210内にpi.htmlページを含む。フレーム又はレイヤー210内のpi.htmlページはサーバ244からロードされる。また、フレーム又はレイヤー210は、アプレット208とインターネット222との間の通信のためにゲートウェイモジュール214を実行するように構成されたプラグイン212を含む。“プラグイン”は、補助的プログラムであり、それはソフトウェアパッケージ又は他のプログラムとともに動作してその能力を高める。プラグイン212は、ウェブサーバとして効率的に機能するローカルホストを提供するためにゲートウェイモジュール214内で実施される。特に、ロードされると、pi.htmlページ210は、例えばC++プログラミング言語であるプラグイン212及びゲートウェイモジュール214にアプレット208との接続220をオープンさせる。
【0077】
プラグイン212はインターネット222を通じてサーバ224と通信する。サーバ224はウェブサーバ226を含むことができ、それはインターネット及び/又は他のネットワーク通信を提供可能なあらゆるウェブサーバとすることができる。また、サーバ224は、例えば1999年9月15日に出願された米国特許出願第09/396693号に記載されるような分散通信ネットワーク(DCN)ハブ228を含むことができる。
【0078】
動作時には、プラグイン212はShowDocコマンド218、例えばnpi:ShowDoc(http://localhost/donut.html")を提供する。用語“NPI”(又は“npi”)は、ネットスケープナビゲータプログラム及びマイクロソフトインターネットエクスプローラプログラムなどのウェブブラウザにおいてプラグインにより使用されるアプリケーションプログラムである“ネットスケーププラグインインタフェース”を指す。“ShowDoc”コマンドは、NPI及びJAVAプログラミング言語中のコマンドであり、コマンド中に提供されたURLからのコンテンツをウェブブラウザのフレーム中に表示することをウェブブラウザに指示する。従って、ShowDocコマンドはコンテンツをウェブブラウザへプッシュするために使用される。
【0079】
ShowDocコマンド218はページ206中に位置するアプレットタグを開始する。ShowDocコマンド218を受信すると、ウェブブラウザ204はサーバ224との接続を確立するためにGETリクエスト216を送信することにより応答し、それは次にアプレット208を始動する。GETリクエスト216は例えば“http:GEThttp://localhost/donut.html”などの特定のページのURLを含む。プラグイン212はGETリクエストを受信し、それを使用してトランスミッションコントロールプロトコル/インターネットプロトコル(TCP/IP)ソケット220をプラグイン212に開放し、次にそれはゲートウェイモジュールを使用するローカルホストとして機能してサーバ224との開放的かつ持続的通信を可能とする。ソケットはインターネット接続を提供するための既知の方法であり、それはステーションのインターネットプロトコルアドレス及びポート番号を指定する。続いてアプレット208はモジュール214を通じてサーバ224と通信し、モジュール214はアプレット208にはウェブサーバのように見える。
【0080】
図11はシステム200内でローカルホストを実施するための方法250を示すフローチャートである。ローカルホストを実施するために、プラグイン212はローカル的にウェブサーバとして機能し、アプレット208中のJAVAコードがアクセスを許容されるホストは、アプレットを含むHTMLページを最初に提供したホストと同一のホストとなる。プラグイン212は唯一のHTTPリクエストに応答する機能を要求し、プラグイン212自身はURLをヒドゥンフレーム又はレイヤーに表示するためのShowDocコマンド218によりそのリクエストを生成する。そのURLはプラグイン212のみが知っているポート上のゲートウェイモジュール212を参照する。
【0081】
方法250において、プラグイン212は、
npi:ShowDoc((http://localhost/donut/html")などのShowDocコマンド218を使用してURLをウェブブラウザ204へ送信する(ステップ252)。ウェブブラウザ204は、GETリクエスト216を生成するために、URLを使用してウェブページ又は他のネットワークコンテンツをロードし(ステップ254)、プラグイン212はGETリクエスト216をウェブサーバ204のアプレット208から受信する(ステップ256)。GETリクエストはローカルホストののアドレスを示す“http:GEThttp://localhost/donut.html”などのURLを含む。
【0082】
ウェブブラウザ204中のプラグイン212は、プラグイン212中のゲートウェイモジュール214を含むローカルホストへTCP/IPソケット220を開放するために、ウェブページ情報又は他のネットワークコンテンツを使用する(ステップ260)。ローカルホストの確立において、ゲートウェイモジュール214はアプレット208とサーバ224の間のソケット220を提供する(ステップ262)。特に、プラグイン212はプロキシとして動作し、アプレット208からのリクエストをリモートサーバ224へ送る。プラグイン212は任意的に以下に述べる“スキン”と呼ばれるエンティティを取得し、自身をマシン202のための特定のユーザインタフェース中に提供することができる(ステップ263)。次にアプレット208はソケット220を使用し、プラグイン212及びリモートサーバ244を通じてサーバ224と通信する。プラグイン212はソケット220を維持し、アプレットが接続を切断したか否かを検出する(ステップ266)。接続が切断されたならば、プラグイン212はソケット220を除去する。
【0083】
プラグイン212は好ましくは複数のスキンを使用する能力を有し、複数のスキンはグラフィックス、色、及び他のマルチメディアコンテンツの統合されたセット並びに特定のブランド付けされたインタフェースを形成するそれらの特定の構成である。上述のプラグイン212及びDCNは任意のオブジェクトを配布及び受信する能力を有する。1つのそのようなオブジェクトは、スキンを含むグラフィックス及び他のコンテンツのパッケージとすることができる。プログラムの開始前に、ユーザがネットワークにログオンすると、システムはユーザマシンに特定のスキンがあるか否かを見るチェックを行う。スキンがない場合、プラグイン212はスキンオブジェクトを要求し、DCNは自動的にスキンをプラグイン212へ配布する。スキンがある場合、プラグイン212はそれらグラフィックス、色、及び他のコンテンツを使用してそれ自身を提供する。
【0084】
ユーザがログオンした時にスキンを要求及び配布することに加え、プログラマーはプログラム中にユーザのスキンを動的に変更することができる。プログラム中に新しいスキンをロードするためのロジックは、プログラムの開始時にスキンをロードするためのロジックと同一である。また、このスキン変更は、上述の出願に記載されるようにユーザプロファイル情報に基づいてプレイリストリクエスト又はドーナツイベントにより生じさせることができる。
【0085】
以下は、ローカルホストの使用の一例を提供する。ウェブブラウザプラグインを通じて自動的に送られたウェブコンテンツをビデオストリームと結合するイベント中に、ユーザのウェブブラウザにインタラクティブな質問を含む質問が現れる。これは例えば共通のウェブオーサリングツールであるマクロメディアフラッシュに書き込むことができる。質問は:あなたは今年新しい車を買いましたか?はい又はいいえ。ユーザが“はい”をクリックすると、質問を含むウェブページのJAVAスクリプトプログラムはhttp://localhost?userclick=Yesのフォーマットでポストを実行することができる。従ってローカルホストは、ウェブブラウザをプラグインに接続する“パイプ”である。プラグインはこの情報をオープンソケットを通じて受信し、それに対して動作して、最近新しい車を買った人に適用可能なコンテンツを有する別のウェブページをユーザに送る。
【0086】
プレイリストは、オーサーと呼ばれる1人のユーザが、他のユーザへのURL又はネットワークアドレスをプッシュすることを可能とする。プレイリストは構造化されたURLの集合であり、それはユーザマシンへ送信されて特定の時間に表示され(“プッシュされる”)又はツリー構造で提示されて後にユーザが詳細を欲した時にプルダウンされる。プレイリストは、URL、各URLについての記述、時間値、フレームセット、フレーム又はレイヤー、プリフェッチタイム(適切ならば)、プッシュコンテンツ中のプル、及び潜在的に動的URLについての変数などのネットワークアドレスを参照することができる。プレイリストは、オーサーが広告、インタラクティブゲーム、スポーツスコア、記述的コンテンツ、又は他のあらゆるタイプのマルチメディア情報などの種々のタイプのコンテンツを効率的にユーザへプッシュすることを可能とする。記述的コンテンツは、例えばビデオの提示に伴う文字記述を提供するために使用することができる。
【0087】
オーサーは、時間値とともにURL及び関連する記述を入力する。時間値に基づいて、オーサーのマシンは記述及びウェブページ又は他のネットワークコンテンツともにURLをユーザへ送信する。フレーム(又はレイヤー)とフレームセットは、ユーザのマシン上のどこにウェブページ及び他のネットワークコンテンツを表示するかを示す。プリフェッチタイムは、ヒドゥンフレーム又はレイヤー中のURLに対応するページを組み立てるために使用することができる。ダイナミックURLは、以下に説明するように、ユーザの地理的位置などの他の情報に基づいてURLをカスタマイズすることを可能とする。インターネットからのウェブページに加えて、プレイリストはURLを使用して、例えばユーザのハードディスクドライブ又は他の記憶媒体などの種々のソースからウェブ又は他のコンテンツを検索することができる。ウェブページに加えて、プレイリストを使用して、例えばオーディオストリーム、ビデオファイル、又は他のマルチメディア情報などの他のコンテンツを検索することができる。
【0088】
プッシュ状況内のプルは、以下の例により示すように、プレイリストを使用してコンテンツを検索する他の方法を提供する。ニュースプログラム中に、テレビジョン放送はニュース会議のクリップを表示する。プレイリストアイテム、ウェブページ又は特定のフレームセット中の特定のフレーム中に現れるようにデザインされた他のネットワークコンテンツが全てのユーザへオンラインでプッシュされる(自動的に配信される)。加えて、会議を放送しているニュース機構は、ユーザが背景的素材として関心を有することがあるいくつかの他のウェブページを有する。この他のネットワークコンテンツは、“プッシュ内プル”プレイリストアイテムとして送信される。付加的なコンテンツは、ユーザのブラウザに自動的には現れない。その代わりに、ユーザは、他のネットワークコンテンツがアクセス可能であるとの指示を受信する。ユーザが利用できる他のコンテンツにアクセスすることが必要であれば、ユーザはそのコンテンツに適当な方法で、例えばグラフィック上でマウスをクリックすること、又は他のユーザ入力によりアクセスすることができる。こうして、プッシュ状況内のプルは、コンテンツをユーザにプッシュすることを可能とし、そのコンテンツを通じてユーザは付加的なコンテンツをユーザマシンへプルすることができる。
【0089】
URLに加えて又はURLの代わりに、プレイリストはユニフォームリソース識別子(URI)を含むことができる。URIは抽象的又は物理的リソースを識別するための小型文字列である。より詳細には、URIはリソースを識別するための単純で拡張可能な手段を提供し、URIはさらにロケータ、ネーム又はその両者として分類することができる。URIの構文及び意味の指定は、ワールドワイドウェブグローバルインフォーメーションイニシアチブにより導入されたコンセプトから生じる。URIは、例えばURL及びユニフォームリソースネーム(URN)を含む。URLはURIのサブセットであり、それはリソースをネーム又はそのリソースの他の属性により識別するのではなく、リソースをそれらの主たるアクセスメカニズム、例えばそれらのネットワーク“ロケーション”を通じて識別する。URNの語はURIのサブセットを指し、それはリソースが存在しなくなり又は利用不能となった場合でも世界的に唯一かつ持続的に維持することが要求される。
【0090】
図12はプレイリストコンテンツのオーサーへプレイリストを表示するユーザインタフェース300の図である。この例において、プレイリストコンテンツはスクリーン300内に表示されたセクション302に示される。コンテンツは、各URLについて、文字的記述308、コンテンツのタイプ310、URL312、及び時間値314を含む。文字的記述308は、オーサーが特定のURLに関連するコンテンツについて、潜在的により記述的な識別子を提供することを可能とする。コンテンツのタイプ310は、各URLについて、関連するコンテンツのタイプ又はそれをどのように表示すべきかを識別し、その例はプッシュコンテンツ(PSH)、ティッカー表示(TIC)、及び広告(ADV)を含む。セクション302は、プレイリストをリストしているプレイリストセクション302を見るために、ユーザが選択するプレイリストメニューアイテム304を含む。また、それはプレイリストコンテンツを作成又は編集するためにユーザが選択する編集アイテム306を含む。
【0091】
アイテム306を選択すると、オーサーのマシンは図13に示すユーザインタフェース320を表示する。ユーザインタフェース320は、特定のURLについてオーサーが文字的記述を入力するためのセクション322を含む。セクション324は、オーサーがURLを入力することを可能とする。セクション326は、オーサーが、セクション324中のURLに関連するコンテンツが表示されるユーザマシン上の特定のフレーム又はレイヤーを識別することを可能とする。セクション328は、ユーザマシン上にいくつのフレーム又はレイヤーが表示されるかを識別するフレームセットをオーサーが選択することを可能とするプルダウンメニューを提供する。図示のように、1つのオプションはトリプルフレームセットであり、それにおいては3つのフレームが表示される。別の例は、それぞれ1つ、2つ又は4つのフレームを表示するシングル、ダブル又は四重フレームを含む。
【0092】
タイムセクション330は、オーサーのマシンがユーザマシンへセクション324内のURL、セクション322内の記述及び任意的に関連するウェブページ又は他のネットワークコンテンツを送信するための時間値をオーサーが識別することを可能とする。本例では、オーサーは時間、分及び秒について値を入力することができる。オーサーのマシンは入力された時間値をタイマーとして使用し、入力された時間値の経過時にユーザマシンへ関連するURLをプッシュする。URLをユーザマシンへいつプッシュするかを決定するために他の時間パラメータも可能である。例えば、URLを指定された特定の時間及び日、及び/又は指定イベントの発生後の所定時間においてプッシュすることができる。
【0093】
編集セクション320では、オーサーはアドセクション332を選択して入力情報をプレイリストに追加し、キャンセルセクション334を選択して入力情報をキャンセルすることができる。オーサーは典型的に、カーソル制御デバイスを使用してセクションを“クリック・オン”すること、及び/又はキーボードを使用してコマンドを入力することにより、セクションを選択することができる。あらゆる適当なユーザ入力インタフェースを提供可能であることが理解される。
【0094】
図14は、ユーザにプッシュされたアイテムのプレイリストを表示するユーザインタフェースの図である。ユーザインタフェース340は、ユーザにプッシュされたプレイリストアイテムを表示するためのセクション342を含む。通常、記述のみがユーザに表示され、関連するURL、ウェブページ及び/又は他のネットワークコンテンツはユーザマシン上に記憶され、記述とリンクされる。また、ユーザインタフェースは、ユーザにプッシュされURLと関連するコンテンツを表示するフレーム又はレイヤーを含み、これらは例えばビデオコンテンツを表示するための1つ以上のフレーム356、広告を表示するための1つ以上のフレーム350、ゲームを表示するための1つ以上のフレーム352、及びティッカー表示、例えばスポーツのスコアを表示するための1つ以上のフレーム354を含むことができる。
【0095】
セクション342中のプレイリストアイテム中の記述を選択する時、ユーザは関連するコンテンツを検索及び閲覧することができる。こうして、記述はハイパーリンクテキストとして動作することができる。例えば、記述344を選択することにより、セクション354内のティッカー表示を表示することができる。記述346を選択することにより、フレーム352内のゲームを表示することができる。記述348を選択することにより、フレーム350中の広告を表示することができる。ユーザは、関連するコンテンツ又はウェブページ又は他のネットワークコンテンツを閲覧するために、セクション342中のプレイリストアイテムから別の記述を選択することができる。コンテンツが表示されるフレーム又はレイヤーは、編集セクション320のセクション326内のオーサーにより識別されるフレーム又はレイヤーに依存する。
【0096】
図15は、プレイリストエンティティのデータ構造360の例を示す。プレイリストエンティティは、URLの集合へのネーム及び識別子を提供する。データ構造360は、プレイリストエンティティ及び関連データを記憶するための複数のエンティティ又は他のデータ構造要素を含む。この例では、これらのエンティティはPlaylistエンティティ362、PlaylistItemエンティティ364、フレーム又はレイヤーエンティティ366、ResFolderエンティティ368、ResItemエンティティ370を含む。
【0097】
実際のURLデータは、ResItemエンティティ370内のresDataフィールド371内に記憶される。ResFolderエンティティ368は、プレイリストのオーサーにより使用されて、ResItemエンティティ370中のデータを組織的便宜のためにフォルダ階層に組織化し、典型的にはエンドユーザの経験には影響を与えない。deFrameSetIDフィールド372、defFrameフィールド373、及び記述フィールド374は同様にオーサーの便宜のために提供される。
【0098】
“アイテム”とも呼ばれるPlaylistItemエンティティ364は、エンティティ370中の指定されたresItemを示す。それは、playlistIDフィールド376により識別されたプレイリスト中のresItemIDフィールドにより識別される。そのアイテムは、timeOffsetフィールド377により指定された時間後に表示される。特に、プルのみの形態がpullOnlyフィールド378中に識別されるように設定され、アイテムがプッシュ状況内でプルである場合でない限り、そのアイテムはその時刻にユーザマシンへプッシュされる。アイテムは、フレームフィールド379及びframeSetIDフィールド380により指定されるフレーム又はレイヤー内に表示されるべきである。記述フィールド381は、表示されたプレイリスト中にユーザが見る記述を指定する。フレームフィールド379、frameSetID380、及び記述フィールド381のためのデフォルト値は、ResItemエンティティ370中の対応するアイテムから生じる。プリフェッチフィールド382は、ステージングエリア中のURLのプリローディングを示す。プリフェッチのためのステージングエリアは、完全に組み立てられたウェブページの後続の表示のために、ヒドゥンフレーム中のページの組立を伴う。この一例は、1999年9月15日に出願された米国特許出願No.09/397298に記載されている。
【0099】
PlaylistItemエンティティ364のparentIDフィールド383は、アイテムの階層中のペアレントアイテムを指定する。フラットなプレイリスト中では、ペアレントIDはヌルである。階層中では、timeOffsetフィールド377はペアレントアイテムについてのタイムオフセットと関係を有する。その関係は再帰的であり、あらゆる時刻にプレイリストをプッシュし、URLリソース及びそれらの関係をオーサリングツール中で再利用することを容易にする。
【0100】
フレームエンティティは366は、アイテムをプッシュ又はプルすべきフレームセット中の特定のフレーム又はレイヤーを指定する。それは、ResItemエンティティ370及びPlaylistItemエンティティ364の両方により参照される。これらのエンティティは、複数のデータベース中又は複数のベンダーによってさえ存在し、例えばC++、JAVA、及びTangoプログラミング言語中で使用できるもののようなオーサリングツールにより操作される。これらのエンティティは、拡張可能マークアップ言語(XML)内で交換し、マニュアル的に編集することができ、分散コミュニティネットワークにより送信することができる。分散コミュニティネットワークの例は、1999年9月15日に出願された米国特許出願No.09/396693に記載されている。
【0101】
図16は、プレイリストを実施するための方法400をフローチャートである。方法400は、対応するマシンによる実行のためのソフトウェアモジュールを使用して実施することができる。方法400において、システムはエディットセクション320中のオーサーからプレイリスト情報を受信する(ステップ402)。この情報は、URL、記述、フレーム又はレイヤーの識別、及び時間値を含むことができる。システムはプレイリスト情報を使用してセクション302に示されるようにプレイリストを生成し表示する(ステップ404)。システムは、継続的にプレイリストを監視し、それがアイテムを含むか否かを決定する(ステップ406)。それがアイテムを含む場合、システムは、プリフェッチが起動されたか否かを決定し(ステップ408)、そうであれば、ウェブページ又は他のネットワークコンテンツを含むプレイリストアイテムをプリフェッチタイムとともにユーザマシンへプッシュする(ステップ410)。ユーザのマシンはウェブページステージングエリアを使用してプレイリストアイテムを表示することができる(ステップ412)。即ち、ウェブページは、組立時にヒドゥンフレーム又はレイヤー中に組み立て、表示することができる。プリフェッチが起動されない場合、システムは、オーサーが入力したオフセット時間が経過したか否かを決定する(ステップ414)。オフセット時間が経過すると、システムはウェブページ又は他のネットワークコンテンツを有するプレイリストをユーザマシンへプッシュし、そのアイテムをセクション342に示すように表示する(ステップ416)。また、特定のコンテンツもユーザのプレイリストアイテムの選択に基づいてユーザマシンへプッシュされる(ステップ413)。
【0102】
システムは、オーサーがプレイリストをクローズしたか否かを決定する(ステップ418)。プレイリストがオープンのままならば、システムは、オーサーがエディットセクション320により多くのプレイリスト情報を入力したか否かを決定する。より多くのプレイリスト情報が入力されるべきであれば、システムはステップ402へ戻ってプレイリスト情報を受信し、続いて新しいプレイリストをステップ404で生成及び表示する。ユーザがより多くのプレイリスト情報を入力しないならば、システムはステップ406へ戻ってプレイリスト中のあらゆる追加アイテムを処理する。
【0103】
ダイナミックURL形態は、URL、URI又は変数の分析に基づいて識別された他のコンテンツをシステムが動的に構成することを可能とする。こうして、システムは特定の使用のためにURLコンテンツをカスタマイズすることができる。ダイナミックURLは、それがコンテンツをローカライズし、例えばプレイリストに関連する種々のタイプのコンテンツの送信を可能とするので重要である。例えば、国営テレビジョン方法は特定の車のコマーシャルを含む場合がある。広告主は、その広告に、各視聴者向けの情報を追加したいと考えるであろう。ダイナミックURL形態は、視聴者に対して、ローカルディーラーを特定するウェブページを送信することを可能とする。
【0104】
1つの具体例では、ユーザボブがロサンゼルスに住んでおり、ベンチュラ通りにボブから数マイル離れた特定の自動車ディーラーがある。プレイリストオーサーは、ダイナミックURLを含む自動車広告のためのプレイリストエントリーを有する。サーバソフトウェアは、アメリカ中の全ての特定のディーラーに照会する多数のURLのうちのどれをボブへ送信すべきかを決定することができ、ボブのクライアントの内のユーザプロファイル(ドーナツ)はダイナミックURLを分析し、ベンチュラの自動車ディーラーのウェブページの特定のウェブアドレスを決定し、そのネットワークアドレスをボブのブラウザへプッシュする。
【0105】
ダイナミックURLは上述のようにプレイリスト中に記憶及び配布することができ、ステップ410及び416の一部として実行することができる。ダイナミックURLは、特定の文字を有する変数の存在により識別することができる。ダイナミックURLは例えば以下のように変数ブラケット“{”及び“}”を含むことができるPHS://http//content.qa.actv.com/[variable]。
【0106】
図17は、ダイナミックURL、URI、又は他のネットワークアドレスを処理する方法430のフローチャートである。方法430は対応するマシンによる実行のためのソフトウェアモジュールを使用して実施することができる。方法430では、システムはURLを含むプレイリストアイテムを検索し(ステップ431)、検索されたURLがダイナミックURLであるか否かを決定する(ステップ432)。それは、URLがダイナミックであるか否かを、URLを分析してブラケット中の変数の存在又は他の区別する特徴を検出することにより決定する。それがダイナミックURLでない場合、システムはプレイリストアイテムを処理無しでURLへ返す(ステップ446)。
【0107】
それがダイナミックURLである場合、システムはURL中の変数を解析する(ステップ434)。システムは、その変数が特定のプロセスを参照し又は起動させるか否かを決定する(ステップ436)。プロセスが関連しない場合、システムは変数の定義を取得する(ステップ444)。変数がプロセスを起動しない場合、システムは変数の定義を生成するために、プロセスを検索及び実行する(ステップ438)。システムは、ユーザのためのコンテンツをカスタマイズするために、URLの意図された受取人の識別に基づいて変数を解析することができる。例えば、それはユーザプロファイル情報を取得し、ユーザプロファイル情報に基づいて変数の定義を選択し、及び/又はそれはユーザの地理的位置を使用して変数を解析することができる。ユーザのロケーションは、例えばユーザプロファイル情報から決定することができる。変数の定義を使用して、システムは完成したURLステップ(440)を組立て、プレイリスト方法400のステップ410及び416で組み立てられたURLを有するプレイリストアイテムを返す(ステップ442)。
【0108】
上述のように、ユーザプロファイル情報は、ユーザマシンを通じてユーザの活動から収集することができ、及び/又はユーザに関する人口統計的情報を含むことができる。ユーザプロファイル情報は、ユーザ例えばユーザマシンによりユーザへローカルに記憶することができ、ダイナミックURLの変数を解析するのに使用することができる。
【図面の簡単な説明】
【図1】本発明の方法を用いた、加入者のロケーションでのビデオ信号の受信と復号化を示す図である。
【図2】ビデオコンテンツを有するインターネット情報の統合を達成する代替実施形態を示す図である。
【図3】本発明の基本的ソフトウェアのフロー図である。
【図4】URLが直接にユーザに送信される実施形態を示す図である。
【図5】ディジタルケーブルボックスを備えるシステムの実施形態を示す。
【図6】ディジタルテレビを含むシステムの実施形態を示す。
【図7】ユーザインタフェースの例を示す。
【図8】ユーザインタフェースを提供するディスプレイの例を示す。
【図9】分散型通信サーバを有するシステムの実施形態を示す図である。
【図10】ローカルホストの論理構造の例を示す。
【図11】ネットワーク通信のローカルホストを実施する方法のフローチャートである。
【図12】プレイリストコンテンツのオーサーへプレイリストを表示するユーザインタフェースを示す。
【図13】オーサーがプレイリストのコンテンツを編集することを可能とするユーザインタフェースを示す。
【図14】ユーザへプッシュされたプレイリストアイテムを表示するユーザインタフェースを示す。
【図15】プレイリストエンティティのデータ構造の図である。
【図16】プレイリストを実施する方法のフローチャートである。
【図17】ダイナミックURLを処理する方法のフローチャートである。

Claims (26)

  1. ウェブサーバと通信されたマシンを提供する方法において、
    ゲートウェイモジュールを含む第1ページを、ウェブブラウザ上に生成するステップと、
    ネットワーク接続およびビデオプログラミングコンテンツのリクエストを受信するステップと、
    前記ゲートウェイモジュールに接続されるのに適したプログラムを、前記ウェブブラウザ上の第2ページで開始するステップと、
    前記リクエストに応答してコマンドを生成するステップであって、前記コマンドは、前記ゲートウェイモジュールに向けられて、前記プログラムと、前記ゲートウェイモジュールと間のソケットを開放するところのステップと、
    前記プログラムと前記サーバと通信している前記ゲートウェイモジュールとの間のソケットを確立して、前記プログラムと前記サーバとの間のデータ接続を、前記ソケットおよび前記ゲートウェイモジュールを介して確立し、そして、前記プログラムと、前記ゲートウェイモジュールを介した前記サーバと間の開放的かつ持続的通信を確立するステップであって、前記ゲートウェイモジュールは、前記プログラムに特定のウェブサーバとして現れ、その結果、前記ゲートウェイモジュールが、前記プログラムのためのプロキシサーバとして作用し、これによって、前記プログラムにおいて生ずる少なくとも1つのセキュリティ制限を除去するところのステップと、
    ビデオプログラムコンテンツと関連のある、1以上の時間値を含む追加のコンテンツを、前記データ接続を通して検索するステップと、
    前記追加のコンテンツのプレゼンテーションを、前記1以上の時間値に基づいて、前記ビデオプログラムコンテンツにおける、1つ以上の所定のビデオフレーム、または、1つ以上の所定の時間に同期させるステップと
    を有する方法。
  2. 確立ステップは、前記第1ページに、ローカルウェブサーバ機能を提供することを含む請求項1に記載の方法。
  3. 受信ステップは、ネットワークコンテンツのためのリクエストを受信することを含む請求項1に記載の方法。
  4. 接続の確立に使用するために、ネットワークからネットワークコンテンツをダウンロードするステップをさらに含む請求項1に記載の方法。
  5. 受信ステップは、アプレットからリクエストを受信することを含む請求項1に記載の方法。
  6. 生成ステップは、前記ソケットのアドレスを提供することを含む請求項1に記載の方法。
  7. ローカル接続ソケットからの切断を検出するステップをさらに有する請求項1に記載の方法。
  8. ネットワーク通信のための特定のユーザインタフェースを与えるために使用する特定のコンテンツを取得するステップをさらに有する請求項1に記載の方法。
  9. ウェブサーバと通信されたマシンを提供する装置において、
    ネットワーク接続のためのリクエストを受信するための受信モジュール、および、
    サーバとのゲートウェイ接続を確立し、そして、マシン内における通信を容易にするための接続モジュール
    を有する第1モジュールと、
    ビデオプログラムコンテンツ、および、前記ビデオプログラムコンテンツと関連のある追加のコンテンツを提供して、前記追加のコンテンツのプレゼンテーションを、前記追加のコンテンツに含まれた時間値に基づいて、前記ビデオプログラムコンテンツにおける、1つ以上の所定のビデオフレーム、または、1つ以上の所定の時間に同期させるのに適した第2モジュールと、
    を備え、
    前記リクエストを受信するときに、前記第1モジュールが、前記リクエストを前記第2モジュールに通信し、前記第2モジュールは、前記マシンと、前記接続モジュールとの間のソケットを開放するための、前記接続モジュールに向けられたコマンドを生成し、前記第1モジュールは、前記サーバと通信して、前記マシンと、前記第1モジュールを介した前記サーバとの間の開放的かつ持続的通信を確立し、その結果、前記第モジュールが、前記マシンのためのプロキシサーバとして作用し、前記第1モジュールは、前記マシンに特定のウェブサーバとして現れ、これによって、前記第2モジュールの少なくとも1つのセキュリティ制限を除去することを特徴とする装置。
  10. 前記接続モジュールは、ローカルウェブサーバ機能を提供するためのモジュールを有する請求項9に記載の装置。
  11. 前記受信モジュールは、ネットワークコンテンツを受信するためのモジュールを有する請求項9に記載の装置。
  12. 前記接続モジュールは、通信のためのソケットを提供するためのモジュールを有する請求項9に記載の装置。
  13. 前記受信モジュールは、ウェブブラウザからウェブページのリクエストを受信するためのモジュールを有する請求項9に記載の装置。
  14. 接続の確立に使用するために、ネットワークからネットワークコンテンツをダウンロードするための第3モジュールをさらに有する請求項9に記載の装置。
  15. 前記受信モジュールは、アプレットからリクエストを受信するためのモジュールを有する請求項9に記載の装置。
  16. ゲートウェイ接続からの切断を検出するためのモジュールをさらに有する請求項9に記載の装置。
  17. ネットワーク通信のための特定のユーザインタフェースを与えるために使用する特定のコンテンツを取得するためのモジュールをさらに有する請求項9に記載の装置。
  18. ネットワークサーバへ接続する方法において、
    ネットワークサーバと通信中のウェブブラウザを有するユーザマシンにhtmlページをロードするステップと、
    htmlページによりプラグインモジュールを開始するステップと、
    前記ネットワークサーバと通信しているゲートウェイモジュールを、前記プラグインモジュールにより実装するステップと、
    前記ゲートウェイモジュールと、前記ウェブブラウザにロードされたアプレットとの間のTCP/IPソケット接続を、前記アプレットからのリクエストに応答して、開放して、前記アプレットと、前記ゲートウェイモジュールを介した前記ネットワークサーバとの間の開放的かつ持続的通信を確立するステップと、
    前記アプレットに対する前記ゲートウェイモジュールにおいて、ウェブサーバをエミュレートするステップであって、前記ゲートウェイモジュールは、前記アプレットにウェブサーバとして現れるところのステップと、
    を有する方法。
  19. ユーザマシン中のコンピュータシステムを制御してユーザマシンとネットワークサーバの間の通信のためのローカルホストを実施する指示を含むコンピュータ読み取り可能な媒体において、
    ネットワークサーバと通信中のウェブサーバによりユーザマシン上にhtmlページをロードし、
    htmlページによりプラグインモジュールを開始し、
    前記ネットワークサーバと通信しているゲートウェイモジュールを、前記プラグインモジュールにより実装し、
    前記ゲートウェイモジュールと、前記ウェブブラウザにロードされたアプレットとの間のTCP/IPソケット接続を、前記アプレットからのリクエストに応答して、開放して、前記アプレットと、前記ゲートウェイモジュールを介した前記ネットワークサーバとの間の開放的かつ持続的通信を確立する媒体。
  20. 前記ウェブブラウザ上に第1ページを生成するステップは、ローカルホストウェブサーバとして作用するのに適したプラグインを開始することを含む請求項1に記載の方法。
  21. 前記コマンドが、前記プログラムによって生成される請求項20に記載の方法。
  22. 前記プラグインは、前記プログラムからのコマンドを受信し、そして、前記コマンドをサーバに供給するのに更に適している請求項21に記載の方法。
  23. 前記ソケットからの切断を検出するステップをさらに含む請求項20に記載の方法。
  24. 前記切断が、前記プラグインによって検出され、そして、前記プログラムによる切断時に、前記ソケットを除去するステップを更に含む請求項23に記載の方法。
  25. 前記プラグインを介してスキンにアクセスして、ブランド付けされたユーザインタフェースを提供するステップをさらに含む請求項20に記載の方法。
  26. 前記スキンを、分散コミュニティネットワークを介して前記プラグインに分散するステップを更に含む請求項25に記載の方法。
JP2000384341A 1999-12-16 2000-12-18 ネットワーク通信のためにローカルホストを使用する高度化されたビデオプログラミングシステム及び方法 Expired - Fee Related JP4780832B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US46180899A 1999-12-16 1999-12-16
US09/461808 1999-12-16

Publications (3)

Publication Number Publication Date
JP2001282648A JP2001282648A (ja) 2001-10-12
JP2001282648A5 JP2001282648A5 (ja) 2008-02-07
JP4780832B2 true JP4780832B2 (ja) 2011-09-28

Family

ID=23834004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000384341A Expired - Fee Related JP4780832B2 (ja) 1999-12-16 2000-12-18 ネットワーク通信のためにローカルホストを使用する高度化されたビデオプログラミングシステム及び方法

Country Status (8)

Country Link
EP (1) EP1113642A3 (ja)
JP (1) JP4780832B2 (ja)
KR (1) KR20010082584A (ja)
CN (1) CN1300012A (ja)
AU (2) AU7231900A (ja)
CA (1) CA2328796A1 (ja)
GB (1) GB2365287B (ja)
WO (1) WO2001045313A2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595372B2 (en) 2000-09-12 2013-11-26 Wag Acquisition, Llc Streaming media buffering system
US7716358B2 (en) 2000-09-12 2010-05-11 Wag Acquisition, Llc Streaming media buffering system
US6766376B2 (en) 2000-09-12 2004-07-20 Sn Acquisition, L.L.C Streaming media buffering system
US20040205218A1 (en) * 2001-07-25 2004-10-14 Hideaki Nakaoka Program-related information fetch system and method
JP4118566B2 (ja) * 2002-01-17 2008-07-16 学校法人早稲田大学 機器統合のためのネットワーク構築装置
US20040032486A1 (en) 2002-08-16 2004-02-19 Shusman Chad W. Method and apparatus for interactive programming using captioning
US20030196206A1 (en) 2002-04-15 2003-10-16 Shusman Chad W. Method and apparatus for internet-based interactive programming
US20040210947A1 (en) 2003-04-15 2004-10-21 Shusman Chad W. Method and apparatus for interactive video on demand
JP4304185B2 (ja) * 2003-02-14 2009-07-29 シャープ株式会社 ストリーム出力装置及び情報提供装置
CN101516024B (zh) * 2003-02-14 2012-09-05 夏普株式会社 信息提供装置、流输出装置及流输出方法
US7475125B2 (en) * 2003-11-24 2009-01-06 Microsoft Corporation Seamless discovery of workstation-installed remote applications from an extranet
CN101023426B (zh) * 2004-07-23 2011-03-30 联邦科学和工业研究组织 集成浏览历史和媒体播放列表的方法和系统
JP2006270193A (ja) * 2005-03-22 2006-10-05 Fuji Xerox Co Ltd 画像形成システムおよび方法および画像読取装置
JP4844253B2 (ja) * 2006-06-19 2011-12-28 ソニー株式会社 別ドメインの情報を取得する方法並びにこの方法に用いるサーバシステム及びサーバ用プログラム
US20080285737A1 (en) * 2007-05-17 2008-11-20 Tekelec Methods, systems, and computer program products for point code proxying between signaling points
US8578272B2 (en) 2008-12-31 2013-11-05 Apple Inc. Real-time or near real-time streaming
US8156089B2 (en) 2008-12-31 2012-04-10 Apple, Inc. Real-time or near real-time streaming with compressed playlists
US8260877B2 (en) 2008-12-31 2012-09-04 Apple Inc. Variant streams for real-time or near real-time streaming to provide failover protection
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
MX2011006973A (es) * 2008-12-31 2011-12-06 Apple Inc Transmision de flujos de datos en tiempo real o en tiempo casi real.
CN101567721B (zh) * 2009-04-29 2012-03-28 哈尔滨工业大学 快速建立中继星与用户星间激光链路的光束捕获扫描方法
US8504918B2 (en) 2010-02-16 2013-08-06 Nbcuniversal Media, Llc Identification of video segments
GB201105502D0 (en) 2010-04-01 2011-05-18 Apple Inc Real time or near real time streaming
US8560642B2 (en) 2010-04-01 2013-10-15 Apple Inc. Real-time or near real-time streaming
US8805963B2 (en) 2010-04-01 2014-08-12 Apple Inc. Real-time or near real-time streaming
CN102238179B (zh) 2010-04-07 2014-12-10 苹果公司 实时或准实时流传输
US8843586B2 (en) 2011-06-03 2014-09-23 Apple Inc. Playlists for real-time or near real-time streaming
US8856283B2 (en) 2011-06-03 2014-10-07 Apple Inc. Playlists for real-time or near real-time streaming

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5610653A (en) * 1992-02-07 1997-03-11 Abecassis; Max Method and system for automatically tracking a zoomed video image
US5544320A (en) * 1993-01-08 1996-08-06 Konrad; Allan M. Remote information service access system based on a client-server-service model
US5918014A (en) * 1995-12-27 1999-06-29 Athenium, L.L.C. Automated collaborative filtering in world wide web advertising
US5774664A (en) * 1996-03-08 1998-06-30 Actv, Inc. Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US5778181A (en) * 1996-03-08 1998-07-07 Actv, Inc. Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US5961603A (en) * 1996-04-10 1999-10-05 Worldgate Communications, Inc. Access system and method for providing interactive access to an information source through a networked distribution system
US6625641B1 (en) * 1996-06-03 2003-09-23 Sun Microsystems, Inc. Method and apparatus for providing client support without installation of server software
US5907680A (en) * 1996-06-24 1999-05-25 Sun Microsystems, Inc. Client-side, server-side and collaborative spell check of URL's
US5889950A (en) * 1996-12-20 1999-03-30 Intel Corporation Method and apparatus for distribution of broadcast data
US5861883A (en) * 1997-05-13 1999-01-19 International Business Machines Corp. Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers
EP0901284A3 (en) * 1997-09-05 1999-05-19 AT&T Corp. Internet linkage with broadcast TV
US5954798A (en) * 1997-10-06 1999-09-21 Ncr Corporation Mechanism for dependably managing web synchronization and tracking operations among multiple browsers
US6061719A (en) * 1997-11-06 2000-05-09 Lucent Technologies Inc. Synchronized presentation of television programming and web content
NL1007709C2 (nl) * 1997-12-05 1999-06-08 Herman Elderson Werkwijze en inrichting voor het omzetten van Internet Protocol adressen.
JP3844588B2 (ja) * 1998-03-05 2006-11-15 富士通株式会社 情報管理システム、ローカルコンピュータ、及び情報取得プログラムを記録したコンピュータ読み取り可能な記録媒体

Also Published As

Publication number Publication date
WO2001045313A3 (en) 2002-11-07
CN1300012A (zh) 2001-06-20
AU7231900A (en) 2001-06-21
AU2908801A (en) 2001-06-25
GB0030366D0 (en) 2001-01-24
JP2001282648A (ja) 2001-10-12
KR20010082584A (ko) 2001-08-30
EP1113642A3 (en) 2004-04-14
GB2365287A (en) 2002-02-13
EP1113642A2 (en) 2001-07-04
GB2365287B (en) 2002-11-06
CA2328796A1 (en) 2001-06-16
WO2001045313A2 (en) 2001-06-21

Similar Documents

Publication Publication Date Title
JP4780832B2 (ja) ネットワーク通信のためにローカルホストを使用する高度化されたビデオプログラミングシステム及び方法
US10205998B2 (en) Enhanced video programming system and method utilizing user-profile information
AU773809B2 (en) Enhanced video programming system and method providing a distributed community network
US20020035615A1 (en) Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US20010037376A1 (en) Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
KR20010050479A (ko) 웹 페이지 스테이징 영역을 사용하는 강화된 비디오프로그래밍 시스템 및 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100629

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100921

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110408

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110614

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110705

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140715

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4780832

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees