JP2004120440A - サーバー装置及びクライアント装置 - Google Patents
サーバー装置及びクライアント装置 Download PDFInfo
- Publication number
- JP2004120440A JP2004120440A JP2002282015A JP2002282015A JP2004120440A JP 2004120440 A JP2004120440 A JP 2004120440A JP 2002282015 A JP2002282015 A JP 2002282015A JP 2002282015 A JP2002282015 A JP 2002282015A JP 2004120440 A JP2004120440 A JP 2004120440A
- Authority
- JP
- Japan
- Prior art keywords
- metadata
- time stamp
- data
- client device
- image
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43074—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of additional data with content streams on the same device, e.g. of EPG data or interactive icon with a TV program
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6581—Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8126—Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
- H04N21/8133—Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts specifically related to the content, e.g. biography of the actors in a movie, detailed information about an article seen in a video program
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【課題】視聴者の手元にあるビデオとネットワーク上にあるメタデータとを組み合わせてハイパーメディアを楽しむ場合に、メタデータのダウンロードによる視聴者の待ち時間をなくす発明を提供する。
【解決手段】クライアント装置100はビデオデータを保持しており、このビデオデータに関連したメタデータがサーバー装置101に記録され、サーバー装置101はクライアント装置100からの要求によりネットワーク102を介してクライアント装置100にメタデータを送り、クライアント装置100では送られてきたメタデータを処理し、ローカルに保有しているビデオデータと共にハイパーメディアを実現する。
【選択図】 図1
【解決手段】クライアント装置100はビデオデータを保持しており、このビデオデータに関連したメタデータがサーバー装置101に記録され、サーバー装置101はクライアント装置100からの要求によりネットワーク102を介してクライアント装置100にメタデータを送り、クライアント装置100では送られてきたメタデータを処理し、ローカルに保有しているビデオデータと共にハイパーメディアを実現する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ローカルのビデオデータとネットワーク上のメタデータとを組み合わせて動画像ハイパーメディアを実現するサーバー装置、クライアント装置及びそれらの方法を提供する。
【0002】
【従来の技術】
ハイパーメディアは、動画像、静止画像、音声、テキスト等のメディア間にハイパーリンクと呼ばれる関連性を定義し、相互に、または一方から他方を参照できるようにしたものである。例えばインターネットを使って閲覧することのできるHTMLで記述されたホームページには、テキストや静止画が配置されており、これらテキストや静止画のいたるところにリンクが定義されている。そしてこれらのリンクを指定することにより直ちにリンク先である関連情報を表示させることができる。興味のある語句を直接指示すれば関連情報にアクセスできるため、操作が容易かつ直感的である。
【0003】
一方、テキストや静止画ではなくビデオを中心にしたハイパーメディアでは、ビデオ中に登場する人や物等のオブジェクトからそれを説明するテキストや静止画等の関連コンテンツへのリンクが定義されており、視聴者がこのオブジェクトを指示することによりこれら関連コンテンツが表示される。このとき、ビデオに登場するオブジェクトの時空間的な領域を表すデータ(オブジェクト領域データ)が必要となる。
【0004】
オブジェクト領域データとしては、2値以上の値を持つマスク画像系列、MPEG−4(国際標準ISO/IEC 14496)の任意形状符号化、特許文献1で説明されている図形の特徴点の軌跡を記述する方法等を用いることができる。
【0005】
ビデオ中心のハイパーメディアを実現するためには、この他にもオブジェクトが指定されたときに他の関連コンテンツを表示させるという動作を記述したデータ(スクリプトデータ)、表示されるコンテンツデータ等が必要となる。これらのデータをビデオに対する「メタデータ」と呼ぶ。
【0006】
視聴者がビデオ中心のハイパーメディアを楽しむには、例えばビデオとメタデータの両方が記録されたビデオCDやDVDを作ればよい。また、インターネット等のネットワークを介したストリーミング配信を利用すれば、ビデオとメタデータの両方のデータを受信しながらビデオ中心のハイパーメディアを視聴できる。
【0007】
しかしながら、既に、ビデオCDやDVDとして所有しているビデオにはメタデータがないため、これらのビデオでハイパーメディアを楽しむことはできない。メタデータのないビデオCDやDVDに収められたビデオでハイパーメディアを楽しむ一つの方法は、新しくこれらのビデオ用にメタデータを制作し、視聴者に配布する方法である。
【0008】
メタデータは、CDやフレキシブルディスク、DVD等に記録して配布してもよいが、最も便利な方法はネットワークで配布する方法である。視聴者がネットワークにアクセスすることができれば、自宅にいながら簡単にメタデータをダウンロードすることができ、これまで再生することしかできなかったビデオCDやDVDに収められたビデオをハイパーメディアとして視聴し、関連した情報を見ることが可能になる。
【0009】
しかし、メタデータのみをネットワーク経由でダウンロードする場合、メタデータのデータサイズが大きいと視聴者はダウンロードが完了するまでビデオの再生を待たなければならない。待たずに再生するためにはビデオデータ及びメタデータのストリーミング配信を受ける方法があるが、通常ストリーミング配信可能なビデオの画質は悪く、せっかく手元にあるビデオCDやDVDに収められた高画質のビデオを利用することができない。
【0010】
【特許文献1】
特開平11−20387号公報
【0011】
【発明が解決しようとする課題】
上記したように、視聴者の手元にあるビデオとネットワーク上にあるメタデータとを組み合わせてビデオを中心とするハイパーメディアを楽しむ場合の課題は、視聴者の手元にあるビデオを利用し、なおかつメタデータのダウンロードによる視聴者の待ち時間をなくすことである。
【0012】
そこで、本発明は、視聴者の手元にあるビデオとネットワーク上にあるメタデータとを組み合わせてハイパーメディアを楽しむ場合に、メタデータのダウンロードによる視聴者の待ち時間をなくす発明を提供する。
【0013】
【課題を解決するための手段】
請求項1の発明は、ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置において、動画像を再生する再生手段と、前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信手段と、前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信手段と、前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御手段と、を有することを特徴とするクライアント装置である。
【0014】
請求項2の発明は、前記メタデータは、前記各タイムスタンプに対応した画像中に登場する物体の領域を特定する物体領域情報と、前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは、前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、を含むことを特徴とする請求項1記載のクライアント装置である。
【0015】
請求項3の発明は、前記タイムスタンプ送信手段は、前記メタデータのストリーミング配信で受信する際に、前記サーバー装置へ送信するタイムスタンプを生成するタイマー時刻を、前記画像のタイムスタンプによって調整することを特徴とする請求項1記載のクライアント装置である。
【0016】
請求項4の発明は、ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置において、前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを記憶するメタデータ記憶手段と、前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信手段と、前記記憶したメタデータを前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信手段と、を有することを特徴とするサーバー装置である。
【0017】
請求項5の発明は、前記メタデータは、前記タイムスタンプにおける画像中に登場する物体の領域を特定する物体領域情報と、前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、を含むことを特徴とする請求項4記載のサーバー装置である。
【0018】
請求項6の発明は、前記メタデータ送信手段は、前記配信するメタデータ及びその配信のタイミングを決定する際に用いるタイマー時刻を、前記受信したタイムスタンプによって調整することを特徴とする請求項4記載のサーバー装置である。
【0019】
請求項7の発明は、前記メタデータ送信手段は、前記配信するメタデータ及びその配信のタイミングを決定する際に、タイマー時刻と、ストリーミング配信のデータ転送速度とから算出されるデータの送信時間間隔と、前記タイムスタンプと次に送信しようとしている前記メタデータの部分データの許容時間差とを用いて、前記メタデータの部分データの送信タイミングを決定することを特徴とする請求項4記載のサーバー装置である。
【0020】
請求項8の発明は、タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた位置対応テーブルを記憶する位置対応テーブル記憶手段を有し、前記メタデータ送信手段は、前記動画像の再生開始時刻を受け取った際に、前記位置対応テーブルを参照して特定したメタデータの格納位置から順にストリーミング配信することを特徴とする請求項4記載のサーバー装置である。
【0021】
請求項9の発明は、前記メタデータが複数あり、それぞれのメタデータが関連している前記タイムスタンプの区間と、メタデータを特定する情報とを対応させた第1のテーブルを記憶した第1のテーブル記憶手段と、前記タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた第2のテーブルを記憶した第2のテーブル記憶手段と、を有し、前記メタデータ送信手段は、前記動画像の再生開始時刻を受け取った際に、前記第1のテーブルを参照して特定したメタデータの部分情報をストリーミング配信し、次に前記第2のテーブルを参照して特定したメタデータの格納位置から順にストリーミング配信することを特徴とする請求項4記載のサーバー装置である。
【0022】
請求項10の発明は、ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置における動画像再生方法において、前記動画像を再生する再生ステップと、前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信ステップと、前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信ステップと、前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御ステップと、を有することを特徴とするクライアント装置における動画像再生方法である。
【0023】
請求項11の発明は、ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置におけるデータ送信方法において、前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信ステップと、前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを、前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信ステップと、を有することを特徴とするサーバー装置におけるデータ送信方法である。
【0024】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態を説明する。
【0025】
(1)ハイパーメディア装置の構成
図1は本発明の実施形態に係るハイパーメディア装置の概略構成を示す図である。この図を用いて各構成要素の機能について説明する。
【0026】
符号100はクライアント装置、符号101はサーバー装置、符号102はサーバー装置とクライアント装置を結ぶネットワークを意味する。また、符号103〜110はクライアント装置に含まれる装置、符号111〜112はサーバー装置に含まれる装置を意味する。
【0027】
クライアント装置100はビデオデータを保持しており、このビデオデータに関連したメタデータがサーバー装置101に記録されている。サーバー装置101はクライアント装置100からの要求によりネットワーク102を介してクライアント装置100にメタデータをストリーミング配信する。クライアント装置100では送られてきたメタデータを処理し、ローカルに保有しているビデオデータと共にハイパーメディアを実現する。
【0028】
なお、「ストリーミング(Streaming)配信」とは、インターネットで音やビデオ映像等を配信するとき、ユーザーがファイルをダウンロードし終えてからこれを再生するのではなく、ダウンロードしながら再生することであり、動画やサウンドのデータはデータ量が大きいので、待たずに再生できるものである。
【0029】
符号103は、ビデオデータ記録メディアを意味し、具体的にはDVD、ビデオCD、ビデオテープ、ハードディスク、半導体メモリ等である。ビデオデータ記録メディア103にはデジタルもしくはアナログのビデオデータが記録されている。
【0030】
符号104は、ビデオコントローラを意味し、ビデオデータ記録メディアの動作をコントロールする。すなわち、ユーザからの指示により、ビデオデータの読み出しの開始及び停止や、ビデオデータ中の所望の位置へのアクセスを命令する。
【0031】
符号105は、ビデオデコーダを意味し、ビデオデータ記録メディア103に記録されているビデオデータがデジタル圧縮されている場合に、入力されてきたビデオデータに対して復号処理を行うことによってビデオの各画素の情報を取り出す。
【0032】
符号106は、ストリーミングクライアントを意味し、ネットワークを介してサーバー装置101から送られてきたメタデータを受け取り、逐次メタデータデコーダ107に送る。また、ストリーミングクライアント106は、ビデオデコーダから入力される再生中のビデオのタイムスタンプを参照し、サーバー装置との通信の制御を行う。ここで、「タイムスタンプ」とは、再生される先頭の動画の時間を初期時刻として、再生されている画像を計測した時間であり、動画時刻ともいう。
【0033】
メタデータデコーダ107は、ストリーミングクライアント106から入力されるメタデータの処理を行う。すなわち、ビデオデコーダ105から入力される再生中のビデオのタイムスタンプを参照して表示すべき画像データを作成し、レンダラー108に出力したり、ユーザインタフェース110から入力されるユーザからの入力に対して表示すべき情報を決定したり、また不要になったメタデータをメモリから削除したりする。
【0034】
レンダラー108は、ビデオデコーダ105から入力された画像をモニター109へ描画する処理を行う。レンダラー108にはビデオデコーダ105からだけでなく、メタデータデコーダ107からも画像が入力され、両者の画像を合成し、画像をモニター109へ描画させる。
【0035】
モニター109はCRTディスプレイ、液晶ディスプレイ、プラズマディスプレイ等の動画像表示可能なディスプレイである。
【0036】
符号110は、ユーザインタフェースを意味し、マウス、タッチパネル、キーボード等表示されている画像上の座標を入力するポインティング機能のあるデバイスである。
【0037】
符号102は、ネットワークを意味し、これを介してクライアント装置100とサーバー装置101間でデータ通信が行われる。ネットワーク102はLANやインターネット等である。
【0038】
符号111は、ストリーミングサーバーで、メタデータをネットワーク102を介してクライアント装置100に送信する。ストリーミングサーバー111はストリーミングクライアント106の要求にあったデータを適切なタイミングで送れるように、データ送出のスケジューリングも行う。
【0039】
符号112は、メタデータ記録メディアを意味し、具体的にはハードディスク、半導体メモリ、DVD、ビデオCD、ビデオテープ等である。メタデータ記録メディア112にはビデオデータ記録メディア103に記録されているビデオデータに関連した情報であるメタデータが記録されている。このメタデータには、後で説明するオブジェクトデータが含まれている。
【0040】
本実施例で用いるメタデータには、ビデオデータ記録メディア103に記録されているビデオに登場する人・物等のオブジェクトの領域と、ユーザによってそれらオブジェクトが指定されたときのアクションが含まれている。メタデータにはこれらの情報がオブジェクト毎に記述されている。
【0041】
(2)オブジェクトデータのデータ構造
図2は、本実施例で用いるオブジェクトデータのデータ構造のうち、一つのオブジェクトに相当する部分を表したものである。
【0042】
符号200は、オブジェクトを識別するためのIDを意味し、オブジェクト毎に別々のIDが割り振られている。
【0043】
符号201は、オブジェクト表示情報を意味し、オブジェクトに関連した画像表示に関する情報が記述されている。例えば、オブジェクトの位置をユーザに明示するためにビデオの表示に重ね合わせてオブジェクトの輪郭を表示させるかどうか、オブジェクトの名前をオブジェクトのそばに吹き出しのように表示させるかどうか、そのときの輪郭や吹き出しの色や文字フォントには何を用いるか、等が記述されている。このデータについては、特開2002−183336で説明されている。
【0044】
符号202は、オブジェクトがユーザにより指定されたときにどのような動作をすべきかを記述したスクリプトデータである。オブジェクトをクリックすることにより関連情報を表示させる場合には、ここには関連情報のアドレスが記されている。関連情報はテキストやHTML等でデザインされたページ、静止画、ビデオ等である。
【0045】
符号203は、オブジェクト領域データである。これは、任意の時間においてオブジェクトがビデオのどの領域に存在しているかを特定するための情報である。このデータとしては、ビデオの各フレームもしくは各フィールドにおけるオブジェクト領域を示すマスク画像列が利用できる。より効率的な方法としては、マスク画像列を圧縮符号化したMPEG−4の任意形状符号化がある(ISO/IEC 14496)。また、オブジェクト領域を矩形や楕円、頂点数が比較的少ない多角形等の図形で近似しても良い場合には例えば特許文献1で説明されている方法が利用できる。
【0046】
なお、ID200,オブジェクト表示情報201やスクリプトデータ202は不要な場合には省略しても良い。
【0047】
(3)ハイパーメディアを実現する方法
次に、オブジェクトデータを用いてハイパーメディアを実現する方法について説明する。
【0048】
ハイパーメディアは、動画像、静止画像、音声、テキスト等のメディア間にハイパーリンクと呼ばれる関連性を定義し、相互に、または一方から他方を参照できるようにしたものである。本発明で実現されるハイパーメディアは、動画像中に登場する物体の領域に対してハイパーリンクを定義し、その物体に関連した情報を参照するようにしたものである。
【0049】
ユーザはビデオデータ記録メディア103に記録されたビデオを視聴中に、興味のある登場物体をユーザインタフェース110を用いて指示する。例えばマウスを用いる場合、表示されている物体にマウスカーソルを合わせてクリックを行う。このとき、画像上のクリックされた座標位置がメタデータデコーダ107に送られる。
【0050】
メタデータデコーダ107では、ユーザインタフェースからクリックされた位置座標、ビデオデコーダからは現在表示されているビデオのタイムスタンプ、そしてストリーミングクライアント106からネットワーク経由で送られてきたオブジェクトデータを受け取る。そしてこれらの情報を用いてユーザによって指示されたオブジェクトがどれであるかを特定する処理を行う。そのために、まずオブジェクトデータのオブジェクト領域データ203を処理し、入力されたタイムスタンプにおけるオブジェクトの領域を生成する。MPEG−4の任意形状符号化によりオブジェクト領域データが記述されている場合にはタイムスタンプに対応するフレームの復号を行い、オブジェクト領域が図形により近似表現されている場合にはタイムスタンプにおける図形を特定する。そして、入力された座標がオブジェクトの内部であるかどうかを判定する。MPEG−4の任意形状符号化の場合は単にその座標の画素値を調べればよい。オブジェクト領域が図形により近似表現されている場合には簡単な演算で内部かどうかを判定できる(詳細については特許文献1参照)。この処理をメタデータデコーダ107にある他のオブジェクトデータにも行うことにより、どのオブジェクトがユーザによって指定されたか、もしくはユーザによって指定されたのがオブジェクトの領域外であることが判定できる。
【0051】
ユーザによって指定されたオブジェクトが特定されると、メタデータデコーダ107はそのオブジェクトのスクリプトデータ202に記述された動作を行わせる。例えば、指定されたHTMLファイルの表示を行ったり、指定されたビデオの再生を開始する。これらHTMLファイルやビデオファイルは、サーバー装置101からネットワーク102経由で送られてきたものであっても良いし、ネットワーク上に存在しているものであっても良い。
【0052】
メタデータデコーダ106には次々にストリーミングクライアント106からメタデータが入力されるが、メタデータデコーダ106はメタデータを解釈するのに十分なデータがそろった時点で処理を開始することができる。
【0053】
例えば、オブジェクトデータはオブジェクトのID200,オブジェクト表示情報201,スクリプトデータ202、及びオブジェクト領域データの一部がそろった時点で処理を開始することができる。オブジェクト領域データの一部とは、例えばMPEG−4の任意形状符号化の場合には先頭の1フレームを復号するためのデータである。
【0054】
さらに、メタデータデコーダ106は不要になったメタデータの削除も行う。オブジェクトデータのオブジェクト領域データには記述されているオブジェクトの存在時間が記述されており、ビデオデコーダ105からのタイムスタンプがオブジェクトの存在時間を過ぎた場合にはそのオブジェクトのデータをメタデータデコーダ107から削除してメモリを節約する。
【0055】
また、メタデータとしてオブジェクトが指定されたときに表示させるコンテンツが送られてきている場合には、メタデータデコーダ107はコンテンツデータのヘッダ部分に含まれるファイル名を取り出し、ヘッダ以下のデータを記録してこのファイル名を付ける。
【0056】
同じファイルに関するデータが順次送られてくる場合には、以前のデータに新しく到着したデータを付け足していく。
【0057】
コンテンツファイルも、コンテンツファイルを参照しているオブジェクトデータが削除されるのと同時に削除してよい。
【0058】
(4)ハイパーメディアの表示例
図3はモニター109上でのハイパーメディアの表示例である。
【0059】
符号300は、ビデオの再生画面、符号301はマウスカーソルである。
【0060】
符号302は、オブジェクトデータに記述されているオブジェクト領域から取り出した表示中の場面におけるオブジェクト領域を表している。ユーザがオブジェクト領域内にマウスカーソルを移動させてクリックすると、クリックされたオブジェクトに関連した情報303が表示される。
【0061】
オブジェクト領域302はユーザにわかるように表示しても良いし、全く表示しなくても良い。
【0062】
表示を行う場合には、どのように表示するかはオブジェクトデータ中のオブジェクト表示情報201に記述されている。表示の方法としては、オブジェクトを線で囲む方法、オブジェクト内部とそれ以外の領域とで輝度や色合いを変える方法、等がある。これらの方法でオブジェクト領域を表示させる場合、メタデータデコーダ107はビデオデコーダ105から入力されるタイムスタンプに合わせ、その時刻におけるオブジェクト領域をオブジェクトデータから生成する。そしてオブジェクト領域をレンダラー108に送り、ビデオの再生画像に合成して表示させる。
【0063】
(5)メタデータを送る方法
次に、サーバー装置101にあるメタデータをネットワーク102を介してクライアント装置100に送る方法について説明する。
【0064】
図4はサーバーシステム101のストリーミングサーバー111とクライアントシステム100のストリーミングクライアント105の通信内容の例を示した図である。
【0065】
ユーザからのビデオの再生指示は、まずビデオコントローラ104に伝えられる。
【0066】
ビデオコントローラ104はビデオデータ記録メディア103にビデオの再生を命令し、ストリーミングクライアント105にはビデオの再生開始命令とその開始位置のタイムスタンプ、及び再生するビデオコンテンツの特定情報を送る。ビデオコンテンツ特定情報は、ビデオと共に記録されているコンテンツIDやファイル名などである。
【0067】
ストリーミングクライアント105は、ビデオコントローラ103からビデオ再生開始の命令とビデオの再生開始位置のタイムスタンプ、及び再生するビデオコンテンツの特定情報を受け取ると、基準時刻、ビデオコンテンツ特定情報、及びクライアントシステム100の仕様をサーバー装置101に送る。
【0068】
基準時刻はビデオの再生開始位置のタイムスタンプから算出された時刻であり、例えばビデオの再生開始位置のタイムスタンプから一定の時間を減じた時刻である。クライアントの仕様は通信のプロトコル、通信速度、クライアントのバッファサイズ等である。
【0069】
ストリーミングサーバー111はまず、ビデオコンテンツ情報を参照し、クライアントが再生するビデオのメタデータがメタデータ記録メディア112に記録されているか否かを確認する。
【0070】
メタデータが記録されている場合には、タイマーを送られてきた基準時刻に合わせ、クライアントの仕様が通信を行うための条件を満たしているかをチェックし、条件を満たしていればストリーミングクライアント106に確認信号を送る。
【0071】
クライアント装置100が、再生するビデオのメタデータが記録されていない場合や条件を満たさない場合には、メタデータがないこと、または通信が不可能であることを示す信号をストリーミングクライアント106に送り、通信を終了する。
【0072】
サーバー装置101にあるタイマーは、ストリーミングサーバー111がデータ送出スケジューリングを行うために用いる時計であり、クライアントで再生されるビデオのタイムスタンプに同期するように調整されるものである。
【0073】
次にストリーミングクライアント106は再生命令と再生開始位置のタイムスタンプをストリーミングサーバー111に送る。これを受けたストリーミングサーバー111は、受け取ったタイムスタンプにおいて必要なデータをメタデータの中から特定し、その部分からのメタデータを含むパケットをストリーミングクライアント106に順次送信する。
【0074】
送信開始位置の決定方法とパケットの送出スケジューリングについては、後で詳細に説明する。
【0075】
ビデオコントローラ104はストリーミングクライアント106にビデオ再生開始の命令送ってもすぐにはビデオ再生を開始しない。これはビデオ再生開始時に必要なメタデータがメタデータデコーダ107に蓄積されるのを待つためである。ビデオ再生開始に必要なメタデータがそろうと、ストリーミングクライアント106はビデオコントローラ104に準備が完了したことを連絡し、ビデオコントローラはビデオの再生を開始させる。
【0076】
ストリーミングクライアント106はメタデータを含むパケットを受信しているときに、一定時間毎に遅延情報をストリーミングサーバー111に送る。遅延情報は、ストリーミングクライアント106がメタデータを受け取るタイミングが、ビデオの再生時間に対してどれだけ遅れているかの情報である。逆に、どれだけ早すぎるという情報であることもある。ストリーミングサーバー111はこの情報を利用して、遅れがある場合にはメタデータを含むパケットの送出のタイミングを早め、逆に早すぎる場合には遅くする。
【0077】
ストリーミングクライアント106はまた、メタデータを含むパケットを受信しているときに定期的に基準時刻をストリーミングサーバー111に送信する。このときの基準時刻は再生中のビデオのタイムスタンプであり、ビデオデコーダ105から入力される。ストリーミングサーバー111は基準時刻を受け取るたびにタイマーを合わせ、クライアント装置100で再生中のビデオとの同期を取る。
【0078】
最後に、ビデオの最後まで再生が終わるか、ユーザによりビデオの再生停止が入力されると、ビデオコントローラ104からビデオ再生停止の命令がストリーミングクライアント106に送られる。この命令を受け、ストリーミングクライアント106は停止命令をストリーミングサーバー111に送信する。停止命令を受け取ったストリーミングサーバー111はデータの送信を終了する。ストリーミングクライアント106が停止命令を送る前に全てのメタデータの送信が終了してしまう場合もあるが、この場合にはストリーミングサーバー111がストリーミングクライアント106にデータ送信が終了したことを告げるメッセージを送信し、通信を終了する。
【0079】
クライアントからサーバーに送られるコマンドには既に説明した再生命令、停止命令のほか、一時停止命令、一時停止解除命令、ジャンプ命令等がある。メタデータの受信中にユーザによって一時停止が命令されると、ストリーミングサーバー111に送る。この命令を受けたストリーミングサーバー111はメタデータの送信を一時中断する。一時停止中にユーザによって一時停止解除が命令されると、ストリーミングクライアント106は一時停止解除命令をストリーミングサーバー111に送る。この命令を受けたストリーミングサーバー111は中断していたメタデータの送信を再び再開する。
【0080】
ジャンプ命令は、再生中のビデオに対してユーザが現在再生中の位置とは別の位置からの再生を命令したときにストリーミングクライアント106からストリーミングサーバー111に送られる。このとき、ジャンプ命令と共に新たなビデオ再生開始位置のタイムスタンプも送る。ストリーミングサーバー111は直ちにタイマーをこのタイムスタンプに合わせ、さらに受け取ったタイムスタンプにおいて必要なデータをメタデータの中から特定し、その部分からのメタデータを含むパケットをストリーミングクライアント106に順次送信する。
【0081】
(6)パケットの送信をどのようにスケジューリングするかの方法
次に、サーバー装置101がメタデータを含むパケットの送信をどのようにスケジューリングするかについて説明する。
【0082】
図5は、ストリーミングサーバー111がメタデータを送信する際に行う処理の流れを示すフローチャートである。
【0083】
(6−1)メタデータのパケット化(ステップS500)
まず、ステップS500では、送信するメタデータをパケット化する。メタデータに含まれているオブジェクトデータは図6に示されるようにパケット化される。
【0084】
図6の符号600が一つのオブジェクトに関するオブジェクトデータである。
【0085】
また、符号601がパケットのヘッダ、符号602がパケットのペイロードで、ヘッダ601とペイロード602で一つのパケットを構成している。
【0086】
パケットは常に一定の長さであり、ヘッダ601及びペイロード602の長さも一定である。オブジェクトデータ600はペイロードと同じ長さに分割され、複数のパケットのペイロードに挿入される。
【0087】
オブジェクトデータは必ずしもペイロードの長さの倍数ではないため、オブジェクトデータの最後尾のデータはペイロードの長さよりも短くなってしまうことがある。この場合には、ダミーデータ603をペイロードに入れることにより、他のパケットと同じ長さのパケットを生成する。オブジェクトデータがペイロードの長さよりも短い場合にはオブジェクトデータは一つのパケットに入れられる。
【0088】
図7はパケットの構造をより詳細に説明した図である。
【0089】
図7の符号700はIDを意味し、同一のオブジェクトデータから生成されたパケットには同じIDが割り当てられる。
【0090】
符号701はパケット番号を意味し、同一のオブジェクトデータから生成されたパケットのうち、何番目のパケットであるかを記述する。
【0091】
符号702はタイムスタンプを意味し、ペイロード602に格納されたデータが必要となる時刻を記述する。パケットがオブジェクトデータを格納している場合、オブジェクト領域データ203にはオブジェクトの存在時刻データが含まれているため、この存在時刻データから取り出したオブジェクト出現時刻がタイムスタンプ702に記述される。
【0092】
オブジェクト領域データ203が部分的なデータでも処理可能である場合、同一のオブジェクトデータから生成されたパケットでも異なるタイムスタンプが記述されていても良い。図8はこの様子を図示したものである。
【0093】
図8の符号800〜802までが一つのオブジェクトデータを表し、符号803〜806までがこのオブジェクトデータから生成されたパケットを表している。
【0094】
符号800にはオブジェクトデータのうちID200,オブジェクト表示情報201、スクリプトデータ202が含まれており、その他にオブジェクト領域データ203の一部が含まれていても良い。
【0095】
符号801と802はオブジェクト領域データ203のみが含まれている。オブジェクトの登場時刻がT1であるとすると、クライアント装置100はT1までに部分データ800が必要になる。そのため、部分データ800を含むパケット803及び804にはT1のタイムスタンプが記述される。
【0096】
一方、部分データ801に含まれるデータのうち、クライアント装置100が最も早く必要とするデータの時刻がT2であるものとする。このとき、部分データ801を含むパケット805のタイムスタンプはT2となる。
【0097】
パケット804には部分データ800及び801の両方が含まれているが、より早い時刻T1が採用される。同様に、部分データ802に含まれるデータのうち、クライアント装置100が最も早く必要とするデータの時刻がT3であるものとしたとき、部分データ802を含むパケット706のタイムスタンプはT3となる。
【0098】
オブジェクト領域データ203がMPEG−4の任意形状符号化である場合には、フレーム内符号化されたフレーム(I−VOP)の間隔毎に異なるタイムスタンプを付与することができる。
【0099】
また、オブジェクト領域データ203が、特許文献1で説明されている方法で記述されている場合、オブジェクト領域を表す図形の頂点の補間関数を単位として異なるタイムスタンプを付与することができる。
【0100】
オブジェクトデータに含まれるスクリプトデータ202において、オブジェクトがユーザにより指定された際の動作としてオブジェクトに関連したHTMLファイルや静止画ファイル等の別のコンテンツを表示させることが記述されている場合、これら関連コンテンツをメタデータとしてクライアント装置100に送ることができる。ここで、コンテンツデータにはコンテンツのファイル名を記述したヘッダと、コンテンツ本体のデータの両方を含んでいるものとする。この場合、コンテンツデータはオブジェクトデータと同様にパケット化される。同一のコンテンツデータから生成されたパケットのID700には同じIDが付与される。また、タイムスタンプ702には関連するオブジェクトの登場時刻が記述される。
【0101】
(6−2)ソート(ステップS501)
ステップS500のパケット化が終了すると、次にステップS501のソートが行われる。
【0102】
図9はパケットがタイムスタンプ順にソートされる様子の例を表したものである。
【0103】
図9ではメタデータとして、N個のオブジェクトデータとM個のコンテンツデータがあると仮定している。
【0104】
符号900はオブジェクトデータを意味し、符号901は送信すべきコンテンツデータである。それぞれのデータから生成されたパケット902はパケット内のタイムスタンプ702の順にソートされる。
【0105】
ソートされたパケットを一つにファイル化したものを、ここではパケットストリームと呼ぶ。クライアントからのメタデータ送信要求を受け取ってからパケットのソートを行っても良いが、処理量の軽減のためには予めパケットストリームを作成しておく方がよい。
【0106】
(6−3)送出処理(ステップS502)
ステップS501のパケットのソート処理が終了すると、ステップS502の送出処理を行う。
【0107】
予めステップS500及びステップS501を行い、パケットストリームを生成している場合には、クライアントからのメタデータ送信要求を受け取ってからの処理はステップS503から開始すればよい。ステップS503の処理をより詳細に説明しているのが図10の流れ図である。
【0108】
まず、ステップS1000ではこれから送出すべきパケットがあるかどうかを確認する。クライアント装置100の要求するメタデータを全て送出してしまった場合には、もう送出すべきパケットがないため、処理を終了する。そうでない場合にはステップS1001に処理を進める。
【0109】
ステップS1001では、これから送出すべきパケットのうち、最も早いタイムスタンプを有するパケットを選択する。ここでは既にパケットはタイムスタンプでソートされているので、順番にパケットを選択するだけでよい。
【0110】
ステップS1002は選択されたパケットを直ちに送出すべきかどうかを判断する。ここでTSはパケットのタイムスタンプ、Tはサーバー装置101のタイマー時刻を表している。Lmaxは最大送出先行時間であり、パケット中のタイムスタンプの時刻よりも早くパケットを送出する場合に、どれだけ先行して送出しても良いかの限度を表している。この値は予め決めておいても良いし、ストリーミングクライアント106から送られてくるクライアント仕様に記述されたビットレートとバッファサイズから計算しても良い。または、このクライアント仕様に直接記述しても良い。ΔTは直前のパケットを送出したタイマー時刻から現在のタイマー時刻までに経過した時間である。また、Lminは最小パケット送出間隔であり、ストリーミングクライアント106から送られてくるクライアント仕様に記述されたビットレートとパケットサイズから算出することができる。ステップS1002に記述された2つの条件式を両方とも満たす場合に限り、次にステップS1004の処理を行う。2つの条件式の一方、もしくは2つとも満たさない場合にはステップS1003の処理を行った後にステップS1004を行わなければならない。
【0111】
ステップS1003は、選択中のパケットが送出可能になるまで送出を待つ処理である。MAX(a,b)は、aとbのうち大きい方の値、という意味である。従ってステップS1003では、TS−Lmax−TとLmin−ΔTのうち大きい方の値の時間だけパケット送出を待つ。
【0112】
最後にステップS1004で選択中のパケットを送信し、再びステップS1000からの処理を繰り返す。
【0113】
(7)ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する方法
次に、ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する方法について説明する。
【0114】
図11はストリーミングサーバー111が送出開始パケットを判断するために用いるパケットのアクセスポイントテーブルである。
【0115】
このテーブルは予め作成され、サーバー装置上に記録されている。符号1100の列にはアクセス時間が列挙されており、符号1101の列には左側のアクセス時間に対応したオフセット値が列挙されている。
【0116】
例えば、ストリーミングクライアント106から時刻0:01:05:00Fへのジャンプが要求された場合、ストリーミングサーバー111はジャンプ先の時刻以降の最も近い時刻をアクセス時間列から検索する。図11の例では検索結果は時刻0:01:06:21Fとなる。次にストリーミングサーバー111は検索された時刻に対応するオフセット値を参照する。
【0117】
図11の例ではオフセット値は312となる。オフセット値は何番目のパケットから送出すべきかを表している。従って、予めパケットストリームが作られている場合には、パケットストリーム中の312番目のパケットから送出を開始すればよい。
【0118】
パケットのアクセスポイントテーブルは、例えば図12の流れ図のようにして生成される。
【0119】
まず、ステップS1200で、各オブジェクトデータ及びコンテンツデータの先頭パケットがタイムスタンプ順にソート後何番目に並べられたかを調べる。これは図5のステップS501を実行するときに合わせて行うこともできる。
【0120】
次に、ステップS1201で各オブジェクトデータ、及びコンテンツデータの先頭を含むパケットの順番をオフセットとし、そのパケットのタイムスタンプと共に列挙することによりテーブルを作成する処理を行う。このテーブルの中には、同じタイムスタンプに対するオフセット値が存在することがあるので、ステップS1202でこれらオフセット値の最小値のみを残して他の重複したタイムスタンプは削除する処理を行う。
【0121】
以上の処理により、パケットのアクセスポイントテーブルが作成される。このアクセスポイントテーブルでは、オフセットに記されている順番のパケットはかならずオブジェクトデータまたはコンテンツデータの先頭に該当するため、これらのパケットからストリーミングサーバー111が送出を始めることにより、クライアント装置100ではビデオの再生位置に置いて必要となるオブジェクトデータまたはコンテンツデータを得ることができる。
【0122】
(8)ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法
ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法は以下の通りである。
【0123】
まず、予め図12の方法とは別の方法でパケットのアクセスポイントテーブルを作成する。このときの処理の手順を図13に示す。
【0124】
まず、ステップS1300で、タイムスタンプ順にソートされたパケット全てについてパケットの順番(オフセット)とそのパケットのタイムスタンプを列挙することにより、テーブルを作成する処理を行う。
【0125】
次に、ステップS1301で重複したタイムスタンプを削除する処理を行う。すなわち、作成したテーブルにタイムスタンプが重複しているオフセット値がある場合に、オフセット値の最小値のみを残して他の重複したタイムスタンプ及びオフセットは削除する処理を行う。
【0126】
このようにして作成されたパケットのアクセスポイントテーブルを用いてメタデータ送出を開始する場合には、図12による方法で生成されたパケットのアクセスポイントテーブルを用いてメタデータ送出を開始する場合とは別の方法で送出を開始しなければならない。この方法について説明する。
【0127】
図14は、図13による方法で生成されたパケットのアクセスポイントテーブルを用いた場合のメタデータ送出を開始処理の流れを示したフローチャートである。
【0128】
ステップS1400は、オブジェクトデータのうちクライアント装置が要求した再生開始時刻においてビデオ中に存在しているオブジェクトがどれであるかを特定する処理である。そのために、オブジェクトスケジューリングテーブルを参照するが、このテーブルは予め作成されてクライアント装置101に記録されているものである。
【0129】
オブジェクトスケジューリングテーブルの例を図15に示した。
【0130】
符号1500はオブジェクトIDを意味し、オブジェクトデータのID200に対応する。
【0131】
符号1501は開始時間を意味し、オブジェクト領域データ203に記述されたオブジェクト領域が始まる時間が記述される。
【0132】
符号1502は終了時間を意味し、オブジェクト領域データ203に記述されたオブジェクト領域が終了する時間が記述される。
【0133】
符号1503はオブジェクトファイル名を意味し、オブジェクトデータのファイル名を特定するためのものである。
【0134】
図15の例では、例えばオブジェクトIDが000002のオブジェクトは0:00:19:00Fに登場して0:00:26:27Fに画面から消え、このオブジェクトに関するデータはGirl−1.datに記述されている、ということがわかる。
【0135】
ステップS1400では、オブジェクトスケジューリングテーブルにおいて開始時から終了時刻の間にクライアント装置が要求した再生開始時刻を含むオブジェクトを選び出す。
【0136】
次に、ステップS1401において、選ばれたオブジェクトのファイル名をオブジェクトスケジューリングテーブルから拾い出し、これらのファイルからオブジェクト領域データ203以外のオブジェクトデータをパケット化し、送出する。
【0137】
次に、ステップS1402の送出開始パケット決定処理を行う。この処理では、図13の処理により作成されたパケットのアクセスポイントテーブルを参照し、ソートされたパケットの中から送出開始パケットを決定する。
【0138】
最後に、ステップS1403において、送出開始パケットから順番にパケットを送出する。
【0139】
図13の処理手順によって作成されたパケットのアクセスポイントテーブルでは、オフセットで指定されるパケットが必ずしもオブジェクトデータの先頭に対応していない。そのため、オフセットで指定されるパケットから送出を開始すると、オブジェクトデータの中のID200やスクリプトデータ202等の重要な情報が欠落してしまう。これを防ぐため、オブジェクトデータ中の重要データのみを先に送出し、その後にパケットのアクセスポイントテーブルのオフセットで指定されるパケットから順次送出を行う。
【0140】
(変更例)
以上の説明にはメタデータとしてオブジェクトデータ及びコンテンツデータを用いたが、これら以外のメタデータについてもサーバー装置からクライアント装置にメタデータを送出し、クライアント側で保有しているビデオやオーディオ等のコンテンツの再生に同期させて処理を行うことができる。
【0141】
例えば、ビデオコンテンツやオーディオコンテンツの内容記述のように、コンテンツの時間毎に異なる内容が記述されているメタデータ全てに対して適用可能である。
【0142】
【発明の効果】
以上説明したように、本発明によれば、視聴者が既に所有しているビデオでも新しく制作されたメタデータをネットワーク経由で受信することができるので、ビデオ中心のハイパービデオとして楽しむことができるようになる。
【0143】
また、本発明によれば、視聴者はメタデータをビデオの再生に同期させながらネットワーク経由のストリーミング配信で受信するので、メタデータをダウンロードするときのようにビデオの再生を待つ必要がない。
【0144】
さらに、本発明によれば、視聴者の手元にあるビデオを利用しているため、ビデオ毎ストリーミング配信を受けるときに比べて高画質の映像を見ることができる。
【図面の簡単な説明】
【図1】本実施形態に係るハイパーメディア装置の構成を示すブロック図である。
【図2】本実施形態に係るオブジェクトデータのデータ構造例の図である。
【図3】本実施形態に係るハイパーメディア装置の画面表示例の図である。
【図4】本実施形態に係るサーバー・クライアント間の通信例の図である。
【図5】本実施形態に係るメタデータ送出のスケジューリング決定処理の流れを示すフローチャートである。
【図6】本実施形態に係るオブジェクトデータのパケット化処理の例の図である。
【図7】本実施形態に係るパケットのデータ構造例の図である。
【図8】本実施形態に係るオブジェクトデータのパケット化処理の別の例の図である。
【図9】本実施形態に係るメタデータのパケットのソート例の図である。
【図10】本実施形態に係るパケット送出のタイミング決定処理の流れを示すフローチャートである。
【図11】本実施形態に係るパケットのアクセスポイントテーブルの例の図である。
【図12】本実施形態に係るパケットのアクセスポイントテーブルの生成を流れを示すフローチャートである。
【図13】ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法のフローチャートである。
【図14】図13による方法で生成されたパケットのアクセスポイントテーブルを用いた場合のメタデータ送出を開始処理の流れを示したフローチャートである。
【図15】オブジェクトデータのスケジュールテーブルの例の図である。
【符号の説明】
100 クライアント装置
101 サーバー装置
102 ネットワーク
103 ビデオデータ記録メディア
104 ビデオコントローラ
105 ビデオデコーダ
106 ストリーミングクライアント
107 メタデータデコーダ
108 レンダラー
109 モニター
110 ユーザインタフェース
111 ストリーミングサーバー
112 メタデータ記録メディア
200 ID
201 オブジェクト表示情報
202 スクリプトデータ
203 オブジェクト領域データ
【発明の属する技術分野】
本発明は、ローカルのビデオデータとネットワーク上のメタデータとを組み合わせて動画像ハイパーメディアを実現するサーバー装置、クライアント装置及びそれらの方法を提供する。
【0002】
【従来の技術】
ハイパーメディアは、動画像、静止画像、音声、テキスト等のメディア間にハイパーリンクと呼ばれる関連性を定義し、相互に、または一方から他方を参照できるようにしたものである。例えばインターネットを使って閲覧することのできるHTMLで記述されたホームページには、テキストや静止画が配置されており、これらテキストや静止画のいたるところにリンクが定義されている。そしてこれらのリンクを指定することにより直ちにリンク先である関連情報を表示させることができる。興味のある語句を直接指示すれば関連情報にアクセスできるため、操作が容易かつ直感的である。
【0003】
一方、テキストや静止画ではなくビデオを中心にしたハイパーメディアでは、ビデオ中に登場する人や物等のオブジェクトからそれを説明するテキストや静止画等の関連コンテンツへのリンクが定義されており、視聴者がこのオブジェクトを指示することによりこれら関連コンテンツが表示される。このとき、ビデオに登場するオブジェクトの時空間的な領域を表すデータ(オブジェクト領域データ)が必要となる。
【0004】
オブジェクト領域データとしては、2値以上の値を持つマスク画像系列、MPEG−4(国際標準ISO/IEC 14496)の任意形状符号化、特許文献1で説明されている図形の特徴点の軌跡を記述する方法等を用いることができる。
【0005】
ビデオ中心のハイパーメディアを実現するためには、この他にもオブジェクトが指定されたときに他の関連コンテンツを表示させるという動作を記述したデータ(スクリプトデータ)、表示されるコンテンツデータ等が必要となる。これらのデータをビデオに対する「メタデータ」と呼ぶ。
【0006】
視聴者がビデオ中心のハイパーメディアを楽しむには、例えばビデオとメタデータの両方が記録されたビデオCDやDVDを作ればよい。また、インターネット等のネットワークを介したストリーミング配信を利用すれば、ビデオとメタデータの両方のデータを受信しながらビデオ中心のハイパーメディアを視聴できる。
【0007】
しかしながら、既に、ビデオCDやDVDとして所有しているビデオにはメタデータがないため、これらのビデオでハイパーメディアを楽しむことはできない。メタデータのないビデオCDやDVDに収められたビデオでハイパーメディアを楽しむ一つの方法は、新しくこれらのビデオ用にメタデータを制作し、視聴者に配布する方法である。
【0008】
メタデータは、CDやフレキシブルディスク、DVD等に記録して配布してもよいが、最も便利な方法はネットワークで配布する方法である。視聴者がネットワークにアクセスすることができれば、自宅にいながら簡単にメタデータをダウンロードすることができ、これまで再生することしかできなかったビデオCDやDVDに収められたビデオをハイパーメディアとして視聴し、関連した情報を見ることが可能になる。
【0009】
しかし、メタデータのみをネットワーク経由でダウンロードする場合、メタデータのデータサイズが大きいと視聴者はダウンロードが完了するまでビデオの再生を待たなければならない。待たずに再生するためにはビデオデータ及びメタデータのストリーミング配信を受ける方法があるが、通常ストリーミング配信可能なビデオの画質は悪く、せっかく手元にあるビデオCDやDVDに収められた高画質のビデオを利用することができない。
【0010】
【特許文献1】
特開平11−20387号公報
【0011】
【発明が解決しようとする課題】
上記したように、視聴者の手元にあるビデオとネットワーク上にあるメタデータとを組み合わせてビデオを中心とするハイパーメディアを楽しむ場合の課題は、視聴者の手元にあるビデオを利用し、なおかつメタデータのダウンロードによる視聴者の待ち時間をなくすことである。
【0012】
そこで、本発明は、視聴者の手元にあるビデオとネットワーク上にあるメタデータとを組み合わせてハイパーメディアを楽しむ場合に、メタデータのダウンロードによる視聴者の待ち時間をなくす発明を提供する。
【0013】
【課題を解決するための手段】
請求項1の発明は、ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置において、動画像を再生する再生手段と、前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信手段と、前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信手段と、前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御手段と、を有することを特徴とするクライアント装置である。
【0014】
請求項2の発明は、前記メタデータは、前記各タイムスタンプに対応した画像中に登場する物体の領域を特定する物体領域情報と、前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは、前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、を含むことを特徴とする請求項1記載のクライアント装置である。
【0015】
請求項3の発明は、前記タイムスタンプ送信手段は、前記メタデータのストリーミング配信で受信する際に、前記サーバー装置へ送信するタイムスタンプを生成するタイマー時刻を、前記画像のタイムスタンプによって調整することを特徴とする請求項1記載のクライアント装置である。
【0016】
請求項4の発明は、ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置において、前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを記憶するメタデータ記憶手段と、前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信手段と、前記記憶したメタデータを前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信手段と、を有することを特徴とするサーバー装置である。
【0017】
請求項5の発明は、前記メタデータは、前記タイムスタンプにおける画像中に登場する物体の領域を特定する物体領域情報と、前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、を含むことを特徴とする請求項4記載のサーバー装置である。
【0018】
請求項6の発明は、前記メタデータ送信手段は、前記配信するメタデータ及びその配信のタイミングを決定する際に用いるタイマー時刻を、前記受信したタイムスタンプによって調整することを特徴とする請求項4記載のサーバー装置である。
【0019】
請求項7の発明は、前記メタデータ送信手段は、前記配信するメタデータ及びその配信のタイミングを決定する際に、タイマー時刻と、ストリーミング配信のデータ転送速度とから算出されるデータの送信時間間隔と、前記タイムスタンプと次に送信しようとしている前記メタデータの部分データの許容時間差とを用いて、前記メタデータの部分データの送信タイミングを決定することを特徴とする請求項4記載のサーバー装置である。
【0020】
請求項8の発明は、タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた位置対応テーブルを記憶する位置対応テーブル記憶手段を有し、前記メタデータ送信手段は、前記動画像の再生開始時刻を受け取った際に、前記位置対応テーブルを参照して特定したメタデータの格納位置から順にストリーミング配信することを特徴とする請求項4記載のサーバー装置である。
【0021】
請求項9の発明は、前記メタデータが複数あり、それぞれのメタデータが関連している前記タイムスタンプの区間と、メタデータを特定する情報とを対応させた第1のテーブルを記憶した第1のテーブル記憶手段と、前記タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた第2のテーブルを記憶した第2のテーブル記憶手段と、を有し、前記メタデータ送信手段は、前記動画像の再生開始時刻を受け取った際に、前記第1のテーブルを参照して特定したメタデータの部分情報をストリーミング配信し、次に前記第2のテーブルを参照して特定したメタデータの格納位置から順にストリーミング配信することを特徴とする請求項4記載のサーバー装置である。
【0022】
請求項10の発明は、ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置における動画像再生方法において、前記動画像を再生する再生ステップと、前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信ステップと、前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信ステップと、前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御ステップと、を有することを特徴とするクライアント装置における動画像再生方法である。
【0023】
請求項11の発明は、ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置におけるデータ送信方法において、前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信ステップと、前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを、前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信ステップと、を有することを特徴とするサーバー装置におけるデータ送信方法である。
【0024】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態を説明する。
【0025】
(1)ハイパーメディア装置の構成
図1は本発明の実施形態に係るハイパーメディア装置の概略構成を示す図である。この図を用いて各構成要素の機能について説明する。
【0026】
符号100はクライアント装置、符号101はサーバー装置、符号102はサーバー装置とクライアント装置を結ぶネットワークを意味する。また、符号103〜110はクライアント装置に含まれる装置、符号111〜112はサーバー装置に含まれる装置を意味する。
【0027】
クライアント装置100はビデオデータを保持しており、このビデオデータに関連したメタデータがサーバー装置101に記録されている。サーバー装置101はクライアント装置100からの要求によりネットワーク102を介してクライアント装置100にメタデータをストリーミング配信する。クライアント装置100では送られてきたメタデータを処理し、ローカルに保有しているビデオデータと共にハイパーメディアを実現する。
【0028】
なお、「ストリーミング(Streaming)配信」とは、インターネットで音やビデオ映像等を配信するとき、ユーザーがファイルをダウンロードし終えてからこれを再生するのではなく、ダウンロードしながら再生することであり、動画やサウンドのデータはデータ量が大きいので、待たずに再生できるものである。
【0029】
符号103は、ビデオデータ記録メディアを意味し、具体的にはDVD、ビデオCD、ビデオテープ、ハードディスク、半導体メモリ等である。ビデオデータ記録メディア103にはデジタルもしくはアナログのビデオデータが記録されている。
【0030】
符号104は、ビデオコントローラを意味し、ビデオデータ記録メディアの動作をコントロールする。すなわち、ユーザからの指示により、ビデオデータの読み出しの開始及び停止や、ビデオデータ中の所望の位置へのアクセスを命令する。
【0031】
符号105は、ビデオデコーダを意味し、ビデオデータ記録メディア103に記録されているビデオデータがデジタル圧縮されている場合に、入力されてきたビデオデータに対して復号処理を行うことによってビデオの各画素の情報を取り出す。
【0032】
符号106は、ストリーミングクライアントを意味し、ネットワークを介してサーバー装置101から送られてきたメタデータを受け取り、逐次メタデータデコーダ107に送る。また、ストリーミングクライアント106は、ビデオデコーダから入力される再生中のビデオのタイムスタンプを参照し、サーバー装置との通信の制御を行う。ここで、「タイムスタンプ」とは、再生される先頭の動画の時間を初期時刻として、再生されている画像を計測した時間であり、動画時刻ともいう。
【0033】
メタデータデコーダ107は、ストリーミングクライアント106から入力されるメタデータの処理を行う。すなわち、ビデオデコーダ105から入力される再生中のビデオのタイムスタンプを参照して表示すべき画像データを作成し、レンダラー108に出力したり、ユーザインタフェース110から入力されるユーザからの入力に対して表示すべき情報を決定したり、また不要になったメタデータをメモリから削除したりする。
【0034】
レンダラー108は、ビデオデコーダ105から入力された画像をモニター109へ描画する処理を行う。レンダラー108にはビデオデコーダ105からだけでなく、メタデータデコーダ107からも画像が入力され、両者の画像を合成し、画像をモニター109へ描画させる。
【0035】
モニター109はCRTディスプレイ、液晶ディスプレイ、プラズマディスプレイ等の動画像表示可能なディスプレイである。
【0036】
符号110は、ユーザインタフェースを意味し、マウス、タッチパネル、キーボード等表示されている画像上の座標を入力するポインティング機能のあるデバイスである。
【0037】
符号102は、ネットワークを意味し、これを介してクライアント装置100とサーバー装置101間でデータ通信が行われる。ネットワーク102はLANやインターネット等である。
【0038】
符号111は、ストリーミングサーバーで、メタデータをネットワーク102を介してクライアント装置100に送信する。ストリーミングサーバー111はストリーミングクライアント106の要求にあったデータを適切なタイミングで送れるように、データ送出のスケジューリングも行う。
【0039】
符号112は、メタデータ記録メディアを意味し、具体的にはハードディスク、半導体メモリ、DVD、ビデオCD、ビデオテープ等である。メタデータ記録メディア112にはビデオデータ記録メディア103に記録されているビデオデータに関連した情報であるメタデータが記録されている。このメタデータには、後で説明するオブジェクトデータが含まれている。
【0040】
本実施例で用いるメタデータには、ビデオデータ記録メディア103に記録されているビデオに登場する人・物等のオブジェクトの領域と、ユーザによってそれらオブジェクトが指定されたときのアクションが含まれている。メタデータにはこれらの情報がオブジェクト毎に記述されている。
【0041】
(2)オブジェクトデータのデータ構造
図2は、本実施例で用いるオブジェクトデータのデータ構造のうち、一つのオブジェクトに相当する部分を表したものである。
【0042】
符号200は、オブジェクトを識別するためのIDを意味し、オブジェクト毎に別々のIDが割り振られている。
【0043】
符号201は、オブジェクト表示情報を意味し、オブジェクトに関連した画像表示に関する情報が記述されている。例えば、オブジェクトの位置をユーザに明示するためにビデオの表示に重ね合わせてオブジェクトの輪郭を表示させるかどうか、オブジェクトの名前をオブジェクトのそばに吹き出しのように表示させるかどうか、そのときの輪郭や吹き出しの色や文字フォントには何を用いるか、等が記述されている。このデータについては、特開2002−183336で説明されている。
【0044】
符号202は、オブジェクトがユーザにより指定されたときにどのような動作をすべきかを記述したスクリプトデータである。オブジェクトをクリックすることにより関連情報を表示させる場合には、ここには関連情報のアドレスが記されている。関連情報はテキストやHTML等でデザインされたページ、静止画、ビデオ等である。
【0045】
符号203は、オブジェクト領域データである。これは、任意の時間においてオブジェクトがビデオのどの領域に存在しているかを特定するための情報である。このデータとしては、ビデオの各フレームもしくは各フィールドにおけるオブジェクト領域を示すマスク画像列が利用できる。より効率的な方法としては、マスク画像列を圧縮符号化したMPEG−4の任意形状符号化がある(ISO/IEC 14496)。また、オブジェクト領域を矩形や楕円、頂点数が比較的少ない多角形等の図形で近似しても良い場合には例えば特許文献1で説明されている方法が利用できる。
【0046】
なお、ID200,オブジェクト表示情報201やスクリプトデータ202は不要な場合には省略しても良い。
【0047】
(3)ハイパーメディアを実現する方法
次に、オブジェクトデータを用いてハイパーメディアを実現する方法について説明する。
【0048】
ハイパーメディアは、動画像、静止画像、音声、テキスト等のメディア間にハイパーリンクと呼ばれる関連性を定義し、相互に、または一方から他方を参照できるようにしたものである。本発明で実現されるハイパーメディアは、動画像中に登場する物体の領域に対してハイパーリンクを定義し、その物体に関連した情報を参照するようにしたものである。
【0049】
ユーザはビデオデータ記録メディア103に記録されたビデオを視聴中に、興味のある登場物体をユーザインタフェース110を用いて指示する。例えばマウスを用いる場合、表示されている物体にマウスカーソルを合わせてクリックを行う。このとき、画像上のクリックされた座標位置がメタデータデコーダ107に送られる。
【0050】
メタデータデコーダ107では、ユーザインタフェースからクリックされた位置座標、ビデオデコーダからは現在表示されているビデオのタイムスタンプ、そしてストリーミングクライアント106からネットワーク経由で送られてきたオブジェクトデータを受け取る。そしてこれらの情報を用いてユーザによって指示されたオブジェクトがどれであるかを特定する処理を行う。そのために、まずオブジェクトデータのオブジェクト領域データ203を処理し、入力されたタイムスタンプにおけるオブジェクトの領域を生成する。MPEG−4の任意形状符号化によりオブジェクト領域データが記述されている場合にはタイムスタンプに対応するフレームの復号を行い、オブジェクト領域が図形により近似表現されている場合にはタイムスタンプにおける図形を特定する。そして、入力された座標がオブジェクトの内部であるかどうかを判定する。MPEG−4の任意形状符号化の場合は単にその座標の画素値を調べればよい。オブジェクト領域が図形により近似表現されている場合には簡単な演算で内部かどうかを判定できる(詳細については特許文献1参照)。この処理をメタデータデコーダ107にある他のオブジェクトデータにも行うことにより、どのオブジェクトがユーザによって指定されたか、もしくはユーザによって指定されたのがオブジェクトの領域外であることが判定できる。
【0051】
ユーザによって指定されたオブジェクトが特定されると、メタデータデコーダ107はそのオブジェクトのスクリプトデータ202に記述された動作を行わせる。例えば、指定されたHTMLファイルの表示を行ったり、指定されたビデオの再生を開始する。これらHTMLファイルやビデオファイルは、サーバー装置101からネットワーク102経由で送られてきたものであっても良いし、ネットワーク上に存在しているものであっても良い。
【0052】
メタデータデコーダ106には次々にストリーミングクライアント106からメタデータが入力されるが、メタデータデコーダ106はメタデータを解釈するのに十分なデータがそろった時点で処理を開始することができる。
【0053】
例えば、オブジェクトデータはオブジェクトのID200,オブジェクト表示情報201,スクリプトデータ202、及びオブジェクト領域データの一部がそろった時点で処理を開始することができる。オブジェクト領域データの一部とは、例えばMPEG−4の任意形状符号化の場合には先頭の1フレームを復号するためのデータである。
【0054】
さらに、メタデータデコーダ106は不要になったメタデータの削除も行う。オブジェクトデータのオブジェクト領域データには記述されているオブジェクトの存在時間が記述されており、ビデオデコーダ105からのタイムスタンプがオブジェクトの存在時間を過ぎた場合にはそのオブジェクトのデータをメタデータデコーダ107から削除してメモリを節約する。
【0055】
また、メタデータとしてオブジェクトが指定されたときに表示させるコンテンツが送られてきている場合には、メタデータデコーダ107はコンテンツデータのヘッダ部分に含まれるファイル名を取り出し、ヘッダ以下のデータを記録してこのファイル名を付ける。
【0056】
同じファイルに関するデータが順次送られてくる場合には、以前のデータに新しく到着したデータを付け足していく。
【0057】
コンテンツファイルも、コンテンツファイルを参照しているオブジェクトデータが削除されるのと同時に削除してよい。
【0058】
(4)ハイパーメディアの表示例
図3はモニター109上でのハイパーメディアの表示例である。
【0059】
符号300は、ビデオの再生画面、符号301はマウスカーソルである。
【0060】
符号302は、オブジェクトデータに記述されているオブジェクト領域から取り出した表示中の場面におけるオブジェクト領域を表している。ユーザがオブジェクト領域内にマウスカーソルを移動させてクリックすると、クリックされたオブジェクトに関連した情報303が表示される。
【0061】
オブジェクト領域302はユーザにわかるように表示しても良いし、全く表示しなくても良い。
【0062】
表示を行う場合には、どのように表示するかはオブジェクトデータ中のオブジェクト表示情報201に記述されている。表示の方法としては、オブジェクトを線で囲む方法、オブジェクト内部とそれ以外の領域とで輝度や色合いを変える方法、等がある。これらの方法でオブジェクト領域を表示させる場合、メタデータデコーダ107はビデオデコーダ105から入力されるタイムスタンプに合わせ、その時刻におけるオブジェクト領域をオブジェクトデータから生成する。そしてオブジェクト領域をレンダラー108に送り、ビデオの再生画像に合成して表示させる。
【0063】
(5)メタデータを送る方法
次に、サーバー装置101にあるメタデータをネットワーク102を介してクライアント装置100に送る方法について説明する。
【0064】
図4はサーバーシステム101のストリーミングサーバー111とクライアントシステム100のストリーミングクライアント105の通信内容の例を示した図である。
【0065】
ユーザからのビデオの再生指示は、まずビデオコントローラ104に伝えられる。
【0066】
ビデオコントローラ104はビデオデータ記録メディア103にビデオの再生を命令し、ストリーミングクライアント105にはビデオの再生開始命令とその開始位置のタイムスタンプ、及び再生するビデオコンテンツの特定情報を送る。ビデオコンテンツ特定情報は、ビデオと共に記録されているコンテンツIDやファイル名などである。
【0067】
ストリーミングクライアント105は、ビデオコントローラ103からビデオ再生開始の命令とビデオの再生開始位置のタイムスタンプ、及び再生するビデオコンテンツの特定情報を受け取ると、基準時刻、ビデオコンテンツ特定情報、及びクライアントシステム100の仕様をサーバー装置101に送る。
【0068】
基準時刻はビデオの再生開始位置のタイムスタンプから算出された時刻であり、例えばビデオの再生開始位置のタイムスタンプから一定の時間を減じた時刻である。クライアントの仕様は通信のプロトコル、通信速度、クライアントのバッファサイズ等である。
【0069】
ストリーミングサーバー111はまず、ビデオコンテンツ情報を参照し、クライアントが再生するビデオのメタデータがメタデータ記録メディア112に記録されているか否かを確認する。
【0070】
メタデータが記録されている場合には、タイマーを送られてきた基準時刻に合わせ、クライアントの仕様が通信を行うための条件を満たしているかをチェックし、条件を満たしていればストリーミングクライアント106に確認信号を送る。
【0071】
クライアント装置100が、再生するビデオのメタデータが記録されていない場合や条件を満たさない場合には、メタデータがないこと、または通信が不可能であることを示す信号をストリーミングクライアント106に送り、通信を終了する。
【0072】
サーバー装置101にあるタイマーは、ストリーミングサーバー111がデータ送出スケジューリングを行うために用いる時計であり、クライアントで再生されるビデオのタイムスタンプに同期するように調整されるものである。
【0073】
次にストリーミングクライアント106は再生命令と再生開始位置のタイムスタンプをストリーミングサーバー111に送る。これを受けたストリーミングサーバー111は、受け取ったタイムスタンプにおいて必要なデータをメタデータの中から特定し、その部分からのメタデータを含むパケットをストリーミングクライアント106に順次送信する。
【0074】
送信開始位置の決定方法とパケットの送出スケジューリングについては、後で詳細に説明する。
【0075】
ビデオコントローラ104はストリーミングクライアント106にビデオ再生開始の命令送ってもすぐにはビデオ再生を開始しない。これはビデオ再生開始時に必要なメタデータがメタデータデコーダ107に蓄積されるのを待つためである。ビデオ再生開始に必要なメタデータがそろうと、ストリーミングクライアント106はビデオコントローラ104に準備が完了したことを連絡し、ビデオコントローラはビデオの再生を開始させる。
【0076】
ストリーミングクライアント106はメタデータを含むパケットを受信しているときに、一定時間毎に遅延情報をストリーミングサーバー111に送る。遅延情報は、ストリーミングクライアント106がメタデータを受け取るタイミングが、ビデオの再生時間に対してどれだけ遅れているかの情報である。逆に、どれだけ早すぎるという情報であることもある。ストリーミングサーバー111はこの情報を利用して、遅れがある場合にはメタデータを含むパケットの送出のタイミングを早め、逆に早すぎる場合には遅くする。
【0077】
ストリーミングクライアント106はまた、メタデータを含むパケットを受信しているときに定期的に基準時刻をストリーミングサーバー111に送信する。このときの基準時刻は再生中のビデオのタイムスタンプであり、ビデオデコーダ105から入力される。ストリーミングサーバー111は基準時刻を受け取るたびにタイマーを合わせ、クライアント装置100で再生中のビデオとの同期を取る。
【0078】
最後に、ビデオの最後まで再生が終わるか、ユーザによりビデオの再生停止が入力されると、ビデオコントローラ104からビデオ再生停止の命令がストリーミングクライアント106に送られる。この命令を受け、ストリーミングクライアント106は停止命令をストリーミングサーバー111に送信する。停止命令を受け取ったストリーミングサーバー111はデータの送信を終了する。ストリーミングクライアント106が停止命令を送る前に全てのメタデータの送信が終了してしまう場合もあるが、この場合にはストリーミングサーバー111がストリーミングクライアント106にデータ送信が終了したことを告げるメッセージを送信し、通信を終了する。
【0079】
クライアントからサーバーに送られるコマンドには既に説明した再生命令、停止命令のほか、一時停止命令、一時停止解除命令、ジャンプ命令等がある。メタデータの受信中にユーザによって一時停止が命令されると、ストリーミングサーバー111に送る。この命令を受けたストリーミングサーバー111はメタデータの送信を一時中断する。一時停止中にユーザによって一時停止解除が命令されると、ストリーミングクライアント106は一時停止解除命令をストリーミングサーバー111に送る。この命令を受けたストリーミングサーバー111は中断していたメタデータの送信を再び再開する。
【0080】
ジャンプ命令は、再生中のビデオに対してユーザが現在再生中の位置とは別の位置からの再生を命令したときにストリーミングクライアント106からストリーミングサーバー111に送られる。このとき、ジャンプ命令と共に新たなビデオ再生開始位置のタイムスタンプも送る。ストリーミングサーバー111は直ちにタイマーをこのタイムスタンプに合わせ、さらに受け取ったタイムスタンプにおいて必要なデータをメタデータの中から特定し、その部分からのメタデータを含むパケットをストリーミングクライアント106に順次送信する。
【0081】
(6)パケットの送信をどのようにスケジューリングするかの方法
次に、サーバー装置101がメタデータを含むパケットの送信をどのようにスケジューリングするかについて説明する。
【0082】
図5は、ストリーミングサーバー111がメタデータを送信する際に行う処理の流れを示すフローチャートである。
【0083】
(6−1)メタデータのパケット化(ステップS500)
まず、ステップS500では、送信するメタデータをパケット化する。メタデータに含まれているオブジェクトデータは図6に示されるようにパケット化される。
【0084】
図6の符号600が一つのオブジェクトに関するオブジェクトデータである。
【0085】
また、符号601がパケットのヘッダ、符号602がパケットのペイロードで、ヘッダ601とペイロード602で一つのパケットを構成している。
【0086】
パケットは常に一定の長さであり、ヘッダ601及びペイロード602の長さも一定である。オブジェクトデータ600はペイロードと同じ長さに分割され、複数のパケットのペイロードに挿入される。
【0087】
オブジェクトデータは必ずしもペイロードの長さの倍数ではないため、オブジェクトデータの最後尾のデータはペイロードの長さよりも短くなってしまうことがある。この場合には、ダミーデータ603をペイロードに入れることにより、他のパケットと同じ長さのパケットを生成する。オブジェクトデータがペイロードの長さよりも短い場合にはオブジェクトデータは一つのパケットに入れられる。
【0088】
図7はパケットの構造をより詳細に説明した図である。
【0089】
図7の符号700はIDを意味し、同一のオブジェクトデータから生成されたパケットには同じIDが割り当てられる。
【0090】
符号701はパケット番号を意味し、同一のオブジェクトデータから生成されたパケットのうち、何番目のパケットであるかを記述する。
【0091】
符号702はタイムスタンプを意味し、ペイロード602に格納されたデータが必要となる時刻を記述する。パケットがオブジェクトデータを格納している場合、オブジェクト領域データ203にはオブジェクトの存在時刻データが含まれているため、この存在時刻データから取り出したオブジェクト出現時刻がタイムスタンプ702に記述される。
【0092】
オブジェクト領域データ203が部分的なデータでも処理可能である場合、同一のオブジェクトデータから生成されたパケットでも異なるタイムスタンプが記述されていても良い。図8はこの様子を図示したものである。
【0093】
図8の符号800〜802までが一つのオブジェクトデータを表し、符号803〜806までがこのオブジェクトデータから生成されたパケットを表している。
【0094】
符号800にはオブジェクトデータのうちID200,オブジェクト表示情報201、スクリプトデータ202が含まれており、その他にオブジェクト領域データ203の一部が含まれていても良い。
【0095】
符号801と802はオブジェクト領域データ203のみが含まれている。オブジェクトの登場時刻がT1であるとすると、クライアント装置100はT1までに部分データ800が必要になる。そのため、部分データ800を含むパケット803及び804にはT1のタイムスタンプが記述される。
【0096】
一方、部分データ801に含まれるデータのうち、クライアント装置100が最も早く必要とするデータの時刻がT2であるものとする。このとき、部分データ801を含むパケット805のタイムスタンプはT2となる。
【0097】
パケット804には部分データ800及び801の両方が含まれているが、より早い時刻T1が採用される。同様に、部分データ802に含まれるデータのうち、クライアント装置100が最も早く必要とするデータの時刻がT3であるものとしたとき、部分データ802を含むパケット706のタイムスタンプはT3となる。
【0098】
オブジェクト領域データ203がMPEG−4の任意形状符号化である場合には、フレーム内符号化されたフレーム(I−VOP)の間隔毎に異なるタイムスタンプを付与することができる。
【0099】
また、オブジェクト領域データ203が、特許文献1で説明されている方法で記述されている場合、オブジェクト領域を表す図形の頂点の補間関数を単位として異なるタイムスタンプを付与することができる。
【0100】
オブジェクトデータに含まれるスクリプトデータ202において、オブジェクトがユーザにより指定された際の動作としてオブジェクトに関連したHTMLファイルや静止画ファイル等の別のコンテンツを表示させることが記述されている場合、これら関連コンテンツをメタデータとしてクライアント装置100に送ることができる。ここで、コンテンツデータにはコンテンツのファイル名を記述したヘッダと、コンテンツ本体のデータの両方を含んでいるものとする。この場合、コンテンツデータはオブジェクトデータと同様にパケット化される。同一のコンテンツデータから生成されたパケットのID700には同じIDが付与される。また、タイムスタンプ702には関連するオブジェクトの登場時刻が記述される。
【0101】
(6−2)ソート(ステップS501)
ステップS500のパケット化が終了すると、次にステップS501のソートが行われる。
【0102】
図9はパケットがタイムスタンプ順にソートされる様子の例を表したものである。
【0103】
図9ではメタデータとして、N個のオブジェクトデータとM個のコンテンツデータがあると仮定している。
【0104】
符号900はオブジェクトデータを意味し、符号901は送信すべきコンテンツデータである。それぞれのデータから生成されたパケット902はパケット内のタイムスタンプ702の順にソートされる。
【0105】
ソートされたパケットを一つにファイル化したものを、ここではパケットストリームと呼ぶ。クライアントからのメタデータ送信要求を受け取ってからパケットのソートを行っても良いが、処理量の軽減のためには予めパケットストリームを作成しておく方がよい。
【0106】
(6−3)送出処理(ステップS502)
ステップS501のパケットのソート処理が終了すると、ステップS502の送出処理を行う。
【0107】
予めステップS500及びステップS501を行い、パケットストリームを生成している場合には、クライアントからのメタデータ送信要求を受け取ってからの処理はステップS503から開始すればよい。ステップS503の処理をより詳細に説明しているのが図10の流れ図である。
【0108】
まず、ステップS1000ではこれから送出すべきパケットがあるかどうかを確認する。クライアント装置100の要求するメタデータを全て送出してしまった場合には、もう送出すべきパケットがないため、処理を終了する。そうでない場合にはステップS1001に処理を進める。
【0109】
ステップS1001では、これから送出すべきパケットのうち、最も早いタイムスタンプを有するパケットを選択する。ここでは既にパケットはタイムスタンプでソートされているので、順番にパケットを選択するだけでよい。
【0110】
ステップS1002は選択されたパケットを直ちに送出すべきかどうかを判断する。ここでTSはパケットのタイムスタンプ、Tはサーバー装置101のタイマー時刻を表している。Lmaxは最大送出先行時間であり、パケット中のタイムスタンプの時刻よりも早くパケットを送出する場合に、どれだけ先行して送出しても良いかの限度を表している。この値は予め決めておいても良いし、ストリーミングクライアント106から送られてくるクライアント仕様に記述されたビットレートとバッファサイズから計算しても良い。または、このクライアント仕様に直接記述しても良い。ΔTは直前のパケットを送出したタイマー時刻から現在のタイマー時刻までに経過した時間である。また、Lminは最小パケット送出間隔であり、ストリーミングクライアント106から送られてくるクライアント仕様に記述されたビットレートとパケットサイズから算出することができる。ステップS1002に記述された2つの条件式を両方とも満たす場合に限り、次にステップS1004の処理を行う。2つの条件式の一方、もしくは2つとも満たさない場合にはステップS1003の処理を行った後にステップS1004を行わなければならない。
【0111】
ステップS1003は、選択中のパケットが送出可能になるまで送出を待つ処理である。MAX(a,b)は、aとbのうち大きい方の値、という意味である。従ってステップS1003では、TS−Lmax−TとLmin−ΔTのうち大きい方の値の時間だけパケット送出を待つ。
【0112】
最後にステップS1004で選択中のパケットを送信し、再びステップS1000からの処理を繰り返す。
【0113】
(7)ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する方法
次に、ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する方法について説明する。
【0114】
図11はストリーミングサーバー111が送出開始パケットを判断するために用いるパケットのアクセスポイントテーブルである。
【0115】
このテーブルは予め作成され、サーバー装置上に記録されている。符号1100の列にはアクセス時間が列挙されており、符号1101の列には左側のアクセス時間に対応したオフセット値が列挙されている。
【0116】
例えば、ストリーミングクライアント106から時刻0:01:05:00Fへのジャンプが要求された場合、ストリーミングサーバー111はジャンプ先の時刻以降の最も近い時刻をアクセス時間列から検索する。図11の例では検索結果は時刻0:01:06:21Fとなる。次にストリーミングサーバー111は検索された時刻に対応するオフセット値を参照する。
【0117】
図11の例ではオフセット値は312となる。オフセット値は何番目のパケットから送出すべきかを表している。従って、予めパケットストリームが作られている場合には、パケットストリーム中の312番目のパケットから送出を開始すればよい。
【0118】
パケットのアクセスポイントテーブルは、例えば図12の流れ図のようにして生成される。
【0119】
まず、ステップS1200で、各オブジェクトデータ及びコンテンツデータの先頭パケットがタイムスタンプ順にソート後何番目に並べられたかを調べる。これは図5のステップS501を実行するときに合わせて行うこともできる。
【0120】
次に、ステップS1201で各オブジェクトデータ、及びコンテンツデータの先頭を含むパケットの順番をオフセットとし、そのパケットのタイムスタンプと共に列挙することによりテーブルを作成する処理を行う。このテーブルの中には、同じタイムスタンプに対するオフセット値が存在することがあるので、ステップS1202でこれらオフセット値の最小値のみを残して他の重複したタイムスタンプは削除する処理を行う。
【0121】
以上の処理により、パケットのアクセスポイントテーブルが作成される。このアクセスポイントテーブルでは、オフセットに記されている順番のパケットはかならずオブジェクトデータまたはコンテンツデータの先頭に該当するため、これらのパケットからストリーミングサーバー111が送出を始めることにより、クライアント装置100ではビデオの再生位置に置いて必要となるオブジェクトデータまたはコンテンツデータを得ることができる。
【0122】
(8)ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法
ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法は以下の通りである。
【0123】
まず、予め図12の方法とは別の方法でパケットのアクセスポイントテーブルを作成する。このときの処理の手順を図13に示す。
【0124】
まず、ステップS1300で、タイムスタンプ順にソートされたパケット全てについてパケットの順番(オフセット)とそのパケットのタイムスタンプを列挙することにより、テーブルを作成する処理を行う。
【0125】
次に、ステップS1301で重複したタイムスタンプを削除する処理を行う。すなわち、作成したテーブルにタイムスタンプが重複しているオフセット値がある場合に、オフセット値の最小値のみを残して他の重複したタイムスタンプ及びオフセットは削除する処理を行う。
【0126】
このようにして作成されたパケットのアクセスポイントテーブルを用いてメタデータ送出を開始する場合には、図12による方法で生成されたパケットのアクセスポイントテーブルを用いてメタデータ送出を開始する場合とは別の方法で送出を開始しなければならない。この方法について説明する。
【0127】
図14は、図13による方法で生成されたパケットのアクセスポイントテーブルを用いた場合のメタデータ送出を開始処理の流れを示したフローチャートである。
【0128】
ステップS1400は、オブジェクトデータのうちクライアント装置が要求した再生開始時刻においてビデオ中に存在しているオブジェクトがどれであるかを特定する処理である。そのために、オブジェクトスケジューリングテーブルを参照するが、このテーブルは予め作成されてクライアント装置101に記録されているものである。
【0129】
オブジェクトスケジューリングテーブルの例を図15に示した。
【0130】
符号1500はオブジェクトIDを意味し、オブジェクトデータのID200に対応する。
【0131】
符号1501は開始時間を意味し、オブジェクト領域データ203に記述されたオブジェクト領域が始まる時間が記述される。
【0132】
符号1502は終了時間を意味し、オブジェクト領域データ203に記述されたオブジェクト領域が終了する時間が記述される。
【0133】
符号1503はオブジェクトファイル名を意味し、オブジェクトデータのファイル名を特定するためのものである。
【0134】
図15の例では、例えばオブジェクトIDが000002のオブジェクトは0:00:19:00Fに登場して0:00:26:27Fに画面から消え、このオブジェクトに関するデータはGirl−1.datに記述されている、ということがわかる。
【0135】
ステップS1400では、オブジェクトスケジューリングテーブルにおいて開始時から終了時刻の間にクライアント装置が要求した再生開始時刻を含むオブジェクトを選び出す。
【0136】
次に、ステップS1401において、選ばれたオブジェクトのファイル名をオブジェクトスケジューリングテーブルから拾い出し、これらのファイルからオブジェクト領域データ203以外のオブジェクトデータをパケット化し、送出する。
【0137】
次に、ステップS1402の送出開始パケット決定処理を行う。この処理では、図13の処理により作成されたパケットのアクセスポイントテーブルを参照し、ソートされたパケットの中から送出開始パケットを決定する。
【0138】
最後に、ステップS1403において、送出開始パケットから順番にパケットを送出する。
【0139】
図13の処理手順によって作成されたパケットのアクセスポイントテーブルでは、オフセットで指定されるパケットが必ずしもオブジェクトデータの先頭に対応していない。そのため、オフセットで指定されるパケットから送出を開始すると、オブジェクトデータの中のID200やスクリプトデータ202等の重要な情報が欠落してしまう。これを防ぐため、オブジェクトデータ中の重要データのみを先に送出し、その後にパケットのアクセスポイントテーブルのオフセットで指定されるパケットから順次送出を行う。
【0140】
(変更例)
以上の説明にはメタデータとしてオブジェクトデータ及びコンテンツデータを用いたが、これら以外のメタデータについてもサーバー装置からクライアント装置にメタデータを送出し、クライアント側で保有しているビデオやオーディオ等のコンテンツの再生に同期させて処理を行うことができる。
【0141】
例えば、ビデオコンテンツやオーディオコンテンツの内容記述のように、コンテンツの時間毎に異なる内容が記述されているメタデータ全てに対して適用可能である。
【0142】
【発明の効果】
以上説明したように、本発明によれば、視聴者が既に所有しているビデオでも新しく制作されたメタデータをネットワーク経由で受信することができるので、ビデオ中心のハイパービデオとして楽しむことができるようになる。
【0143】
また、本発明によれば、視聴者はメタデータをビデオの再生に同期させながらネットワーク経由のストリーミング配信で受信するので、メタデータをダウンロードするときのようにビデオの再生を待つ必要がない。
【0144】
さらに、本発明によれば、視聴者の手元にあるビデオを利用しているため、ビデオ毎ストリーミング配信を受けるときに比べて高画質の映像を見ることができる。
【図面の簡単な説明】
【図1】本実施形態に係るハイパーメディア装置の構成を示すブロック図である。
【図2】本実施形態に係るオブジェクトデータのデータ構造例の図である。
【図3】本実施形態に係るハイパーメディア装置の画面表示例の図である。
【図4】本実施形態に係るサーバー・クライアント間の通信例の図である。
【図5】本実施形態に係るメタデータ送出のスケジューリング決定処理の流れを示すフローチャートである。
【図6】本実施形態に係るオブジェクトデータのパケット化処理の例の図である。
【図7】本実施形態に係るパケットのデータ構造例の図である。
【図8】本実施形態に係るオブジェクトデータのパケット化処理の別の例の図である。
【図9】本実施形態に係るメタデータのパケットのソート例の図である。
【図10】本実施形態に係るパケット送出のタイミング決定処理の流れを示すフローチャートである。
【図11】本実施形態に係るパケットのアクセスポイントテーブルの例の図である。
【図12】本実施形態に係るパケットのアクセスポイントテーブルの生成を流れを示すフローチャートである。
【図13】ストリーミングクライアント106からストリーミングサーバー111にジャンプ要求が送られた際に、ストリーミングサーバー111がメタデータのどの位置から送出を開始すべきかを判断する別の方法のフローチャートである。
【図14】図13による方法で生成されたパケットのアクセスポイントテーブルを用いた場合のメタデータ送出を開始処理の流れを示したフローチャートである。
【図15】オブジェクトデータのスケジュールテーブルの例の図である。
【符号の説明】
100 クライアント装置
101 サーバー装置
102 ネットワーク
103 ビデオデータ記録メディア
104 ビデオコントローラ
105 ビデオデコーダ
106 ストリーミングクライアント
107 メタデータデコーダ
108 レンダラー
109 モニター
110 ユーザインタフェース
111 ストリーミングサーバー
112 メタデータ記録メディア
200 ID
201 オブジェクト表示情報
202 スクリプトデータ
203 オブジェクト領域データ
Claims (11)
- ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置において、
動画像を再生する再生手段と、
前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信手段と、
前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信手段と、
前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御手段と、
を有する
ことを特徴とするクライアント装置。 - 前記メタデータは、
前記各タイムスタンプに対応した画像中に登場する物体の領域を特定する物体領域情報と、
前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは、前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、
を含む
ことを特徴とする請求項1記載のクライアント装置。 - 前記タイムスタンプ送信手段は、
前記メタデータのストリーミング配信で受信する際に、前記サーバー装置へ送信するタイムスタンプを生成するタイマー時刻を、前記画像のタイムスタンプによって調整する
ことを特徴とする請求項1記載のクライアント装置。 - ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置において、
前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを記憶するメタデータ記憶手段と、
前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信手段と、
前記記憶したメタデータを前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信手段と、
を有する
ことを特徴とするサーバー装置。 - 前記メタデータは、
前記タイムスタンプにおける画像中に登場する物体の領域を特定する物体領域情報と、
前記物体領域情報により特定される領域が指定された際に表示させるコンテンツを特定する情報、もしくは前記物体領域情報により特定される領域が指定された際に行う動作を特定する情報と、
を含む
ことを特徴とする請求項4記載のサーバー装置。 - 前記メタデータ送信手段は、
前記配信するメタデータ及びその配信のタイミングを決定する際に用いるタイマー時刻を、前記受信したタイムスタンプによって調整する
ことを特徴とする請求項4記載のサーバー装置。 - 前記メタデータ送信手段は、
前記配信するメタデータ及びその配信のタイミングを決定する際に、タイマー時刻と、ストリーミング配信のデータ転送速度とから算出されるデータの送信時間間隔と、前記タイムスタンプと次に送信しようとしている前記メタデータの部分データの許容時間差とを用いて、前記メタデータの部分データの送信タイミングを決定する
ことを特徴とする請求項4記載のサーバー装置。 - タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた位置対応テーブルを記憶する位置対応テーブル記憶手段を有し、
前記メタデータ送信手段は、
前記動画像の再生開始時刻を受け取った際に、前記位置対応テーブルを参照して特定したメタデータの格納位置から順にストリーミング配信する
ことを特徴とする請求項4記載のサーバー装置。 - 前記メタデータが複数あり、それぞれのメタデータが関連している前記タイムスタンプの区間と、メタデータを特定する情報とを対応させた第1のテーブルを記憶した第1のテーブル記憶手段と、
前記タイムスタンプと、そのタイムスタンプに関連するメタデータが格納されている位置を対応させた第2のテーブルを記憶した第2のテーブル記憶手段と、
を有し、
前記メタデータ送信手段は、
前記動画像の再生開始時刻を受け取った際に、前記第1のテーブルを参照して特定したメタデータの部分情報をストリーミング配信し、次に前記第2のテーブルを参照して特定したメタデータの格納位置から順にストリーミング配信する
ことを特徴とする請求項4記載のサーバー装置。 - ハイパーメディアデータのサーバー装置とネットワーク経由でアクセス可能なクライアント装置における動画像再生方法において、
前記動画像を再生する再生ステップと、
前記再生中の画像のタイムスタンプを前記サーバー装置へ送信するタイムスタンプ送信ステップと、
前記各タイムスタンプにおける画像の内容に関連した情報を有するメタデータを、前記動画像の再生に同期させてストリーミング配信で前記サーバー装置から受信するメタデータ受信ステップと、
前記画像の再生に同期させて、前記受信したメタデータを表示、または、メタデータに基づいて制御を行う制御ステップと、
を有する
ことを特徴とするクライアント装置における動画像再生方法。 - ハイパーメディアデータのクライアント装置とネットワーク経由でアクセス可能なサーバー装置におけるデータ送信方法において、
前記クライアント装置から送られてくる再生に対応した画像のタイムスタンプを受信するタイムスタンプ受信ステップと、
前記クライアント装置によって再生される動画像の各タイムスタンプに対応した画像の内容に関連した情報を有するメタデータを、前記受信したタイムスタンプに基づいて前記画像の再生に同期させて、ストリーミング配信で前記クライアント装置へ送信するメタデータ送信ステップと、
を有する
ことを特徴とするサーバー装置におけるデータ送信方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002282015A JP2004120440A (ja) | 2002-09-26 | 2002-09-26 | サーバー装置及びクライアント装置 |
US10/669,553 US20040128701A1 (en) | 2002-09-26 | 2003-09-25 | Client device and server device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002282015A JP2004120440A (ja) | 2002-09-26 | 2002-09-26 | サーバー装置及びクライアント装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004120440A true JP2004120440A (ja) | 2004-04-15 |
Family
ID=32276282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002282015A Pending JP2004120440A (ja) | 2002-09-26 | 2002-09-26 | サーバー装置及びクライアント装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040128701A1 (ja) |
JP (1) | JP2004120440A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005114473A1 (en) * | 2004-05-20 | 2005-12-01 | Kabushiki Kaisha Toshiba | Data structure of meta data stream on object in moving picture, and search method and playback method therefore |
JP2006050105A (ja) * | 2004-08-02 | 2006-02-16 | Toshiba Corp | メタデータの構造及びその再生装置と方法 |
JP2006313537A (ja) * | 2005-04-05 | 2006-11-16 | Matsushita Electric Ind Co Ltd | 記録媒体及び情報処理装置 |
CN100399830C (zh) * | 2004-06-28 | 2008-07-02 | 株式会社东芝 | 元数据的数据结构及其复制方法 |
JP2008535298A (ja) * | 2005-03-25 | 2008-08-28 | トムソン ライセンシング | デジタルデータフローサーバーへコマンドを送出する方法、及び当該方法を使用する装置 |
US7472136B2 (en) | 2004-06-17 | 2008-12-30 | Kabushiki Kaisha Toshiba | Data structure of metadata of moving image and reproduction method of the same |
US8001076B2 (en) | 2005-07-12 | 2011-08-16 | International Business Machines Corporation | Ranging scalable time stamp data synchronization |
WO2012105598A1 (ja) * | 2011-02-03 | 2012-08-09 | 株式会社ドワンゴ | 動画配信システム、動画配信方法、動画サーバ、端末装置及びコンピュータプログラム |
JP2015057882A (ja) * | 2013-08-29 | 2015-03-26 | アビッド テクノロジー インコーポレイテッド | メディア・ストリームの同期再生を行う相互接続マルチメディア・システム |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
US8086752B2 (en) * | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
US10613817B2 (en) | 2003-07-28 | 2020-04-07 | Sonos, Inc. | Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group |
US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US7343347B2 (en) * | 2003-10-08 | 2008-03-11 | Time Warner Inc. | Electronic media player with metadata based control and method of operating the same |
JP2005151147A (ja) * | 2003-11-14 | 2005-06-09 | Toshiba Corp | 再生装置及び再生方法 |
US8009962B1 (en) * | 2003-12-03 | 2011-08-30 | Nvidia Corporation | Apparatus and method for processing an audio/video program |
US20050131854A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Dynamic command line user interface |
JP2005196697A (ja) * | 2004-01-09 | 2005-07-21 | Pioneer Electronic Corp | 制御情報ファイル作成装置、情報表示装置、制御情報ファイル作成方法および情報配信表示システム |
EP1712082A1 (en) * | 2004-01-13 | 2006-10-18 | Digital Media Solutions Pty Limited | Method and system for still image channel generation, delivery and provision via a digital television broadcast system |
US9374607B2 (en) | 2012-06-26 | 2016-06-21 | Sonos, Inc. | Media playback system with guest access |
US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
JP4133981B2 (ja) * | 2004-09-09 | 2008-08-13 | 株式会社東芝 | メタデータと動画像の再生装置 |
JP2006099671A (ja) * | 2004-09-30 | 2006-04-13 | Toshiba Corp | 動画像のメタデータの検索テーブル |
JP2006109109A (ja) * | 2004-10-05 | 2006-04-20 | Toshiba Corp | メタデータの構造及びメタデータの処理方法 |
US7434154B2 (en) * | 2005-01-07 | 2008-10-07 | Dell Products L.P. | Systems and methods for synchronizing media rendering |
US20070150478A1 (en) * | 2005-12-23 | 2007-06-28 | Microsoft Corporation | Downloading data packages from information services based on attributes |
US20070150595A1 (en) * | 2005-12-23 | 2007-06-28 | Microsoft Corporation | Identifying information services and schedule times to implement load management |
US8656435B2 (en) * | 2006-08-14 | 2014-02-18 | Cisco Technology Inc. | Controlled metadata revelation |
US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
US20080270410A1 (en) * | 2007-04-24 | 2008-10-30 | Nokia Corporation | Computer program products, apparatuses and methods for accessing data |
US8141123B2 (en) * | 2007-12-19 | 2012-03-20 | General Instrument Corporation | Method and apparatus for recording and rendering programs that cross SDV force tune boundaries |
JP2010219669A (ja) * | 2009-03-13 | 2010-09-30 | Toshiba Corp | ビデオサーバ |
CN102419996A (zh) * | 2010-09-27 | 2012-04-18 | 富泰华工业(深圳)有限公司 | 视频播放装置及其播放控制方法 |
US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
US8639085B2 (en) * | 2011-07-12 | 2014-01-28 | Comcast Cable Communications, Llc | Synchronized viewing of media content |
SG2014008775A (en) | 2011-08-16 | 2014-04-28 | Destiny Software Productions Inc | Script-based video rendering |
WO2013032955A1 (en) | 2011-08-26 | 2013-03-07 | Reincloud Corporation | Equipment, systems and methods for navigating through multiple reality models |
EP2824914B1 (en) * | 2012-03-08 | 2019-01-02 | NEC Corporation | Method for interlocking time series of submitted information and content, and information processing terminal |
US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
US9338209B1 (en) * | 2013-04-23 | 2016-05-10 | Cisco Technology, Inc. | Use of metadata for aiding adaptive streaming clients |
US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
CN107113750A (zh) * | 2014-12-26 | 2017-08-29 | 华为技术有限公司 | 一种数据传输方法和装置 |
US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
CN108293145B (zh) | 2015-11-17 | 2021-02-09 | 网络洞察力知识产权公司 | 视频分发同步 |
US10303422B1 (en) | 2016-01-05 | 2019-05-28 | Sonos, Inc. | Multiple-device setup |
US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7120924B1 (en) * | 2000-02-29 | 2006-10-10 | Goldpocket Interactive, Inc. | Method and apparatus for receiving a hyperlinked television broadcast |
US6642966B1 (en) * | 2000-11-06 | 2003-11-04 | Tektronix, Inc. | Subliminally embedded keys in video for synchronization |
US20020162118A1 (en) * | 2001-01-30 | 2002-10-31 | Levy Kenneth L. | Efficient interactive TV |
US8301884B2 (en) * | 2002-09-16 | 2012-10-30 | Samsung Electronics Co., Ltd. | Method of managing metadata |
-
2002
- 2002-09-26 JP JP2002282015A patent/JP2004120440A/ja active Pending
-
2003
- 2003-09-25 US US10/669,553 patent/US20040128701A1/en not_active Abandoned
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005114473A1 (en) * | 2004-05-20 | 2005-12-01 | Kabushiki Kaisha Toshiba | Data structure of meta data stream on object in moving picture, and search method and playback method therefore |
CN100440216C (zh) * | 2004-05-20 | 2008-12-03 | 株式会社东芝 | 运动图像中对象的元数据流的数据结构,及其搜索方法和重放方法 |
US7472136B2 (en) | 2004-06-17 | 2008-12-30 | Kabushiki Kaisha Toshiba | Data structure of metadata of moving image and reproduction method of the same |
CN100399830C (zh) * | 2004-06-28 | 2008-07-02 | 株式会社东芝 | 元数据的数据结构及其复制方法 |
JP2006050105A (ja) * | 2004-08-02 | 2006-02-16 | Toshiba Corp | メタデータの構造及びその再生装置と方法 |
US7502799B2 (en) | 2004-08-02 | 2009-03-10 | Kabushiki Kaisha Toshiba | Structure of metadata and reproduction apparatus and method of the same |
JP2008535298A (ja) * | 2005-03-25 | 2008-08-28 | トムソン ライセンシング | デジタルデータフローサーバーへコマンドを送出する方法、及び当該方法を使用する装置 |
JP4719789B2 (ja) * | 2005-03-25 | 2011-07-06 | トムソン ライセンシング | デジタルデータフローサーバーへコマンドを送出する方法、及び当該方法を使用する装置 |
JP2006313537A (ja) * | 2005-04-05 | 2006-11-16 | Matsushita Electric Ind Co Ltd | 記録媒体及び情報処理装置 |
US8001076B2 (en) | 2005-07-12 | 2011-08-16 | International Business Machines Corporation | Ranging scalable time stamp data synchronization |
US9621652B2 (en) | 2005-07-12 | 2017-04-11 | International Business Machines Corporation | Ranging scalable time stamp data synchronization |
WO2012105598A1 (ja) * | 2011-02-03 | 2012-08-09 | 株式会社ドワンゴ | 動画配信システム、動画配信方法、動画サーバ、端末装置及びコンピュータプログラム |
JP2012165041A (ja) * | 2011-02-03 | 2012-08-30 | Dowango:Kk | 動画配信システム、動画配信方法、動画サーバ、端末装置及びコンピュータプログラム。 |
JP2015057882A (ja) * | 2013-08-29 | 2015-03-26 | アビッド テクノロジー インコーポレイテッド | メディア・ストリームの同期再生を行う相互接続マルチメディア・システム |
Also Published As
Publication number | Publication date |
---|---|
US20040128701A1 (en) | 2004-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004120440A (ja) | サーバー装置及びクライアント装置 | |
JP6155305B2 (ja) | ストリーミングデジタルコンテンツの同期再生システム及び方法 | |
JP4304108B2 (ja) | メタデータ配信装置、動画再生装置および動画再生システム | |
JP4835170B2 (ja) | コンテンツ共有装置及びコンテンツ共有方法 | |
JP2001527709A (ja) | ビデオをオン・デマンドでレンダリングするvcrに似た機能 | |
JP2008243367A (ja) | 同報通信データを記録するための方法、および、装置 | |
JP2006174309A (ja) | 動画再生装置、プログラム、及び記録媒体 | |
JP4134164B2 (ja) | メディア再生装置 | |
JP2002010182A (ja) | データ蓄積方法およびそれを実現した受信装置および放送システム | |
JP2004529588A (ja) | 同期配信のウェブコンテンツを有する放送番組の時間シフト方法および装置 | |
JP5397995B2 (ja) | 通信端末、コンテンツ再生方法、プログラム、コンテンツ再生システム及びサーバ | |
CN113767639B (zh) | 接收媒体数据的方法、装置和非易失性计算机可读介质 | |
US9456243B1 (en) | Methods and apparatus for processing time-based content | |
JP4294933B2 (ja) | マルチメディアコンテンツ編集装置およびマルチメディアコンテンツ再生装置 | |
US20060143676A1 (en) | Content reproduce system, reproduce device, and reproduce method | |
JP2003111048A (ja) | コンテンツ再生のためのサーバ及びプログラム | |
JP2002268999A (ja) | コンテンツ再生方法及び装置 | |
JP2004140536A (ja) | 再生装置及び再生方法 | |
JP2003009113A (ja) | コンテンツ再生装置及び方法、並びにプログラム | |
JP7438486B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP7365212B2 (ja) | 動画再生装置、動画再生システム、および動画再生方法 | |
JP2004104704A (ja) | 映像再生装置、映像再生方法、プログラム | |
JP2004040502A (ja) | 情報再生装置、情報再生方法および情報再生システム | |
JP2002176638A (ja) | データ通信システムおよび装置、データ通信方法、記録媒体 | |
JP2008048091A (ja) | 動画タグ付けプログラム、動画タグシステム、及び動画配信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051101 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051207 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060214 |