JP2006099671A - 動画像のメタデータの検索テーブル - Google Patents

動画像のメタデータの検索テーブル Download PDF

Info

Publication number
JP2006099671A
JP2006099671A JP2004287916A JP2004287916A JP2006099671A JP 2006099671 A JP2006099671 A JP 2006099671A JP 2004287916 A JP2004287916 A JP 2004287916A JP 2004287916 A JP2004287916 A JP 2004287916A JP 2006099671 A JP2006099671 A JP 2006099671A
Authority
JP
Japan
Prior art keywords
data
vclick
moving image
metadata
attribute
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.)
Withdrawn
Application number
JP2004287916A
Other languages
English (en)
Inventor
Yoichiro Yamagata
洋一郎 山縣
Yasushi Tsumagari
康史 津曲
Toshimitsu Kaneko
敏充 金子
Tatsu Kamibayashi
達 上林
Hiroshi Isozaki
宏 磯崎
Hideki Takahashi
秀樹 高橋
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2004287916A priority Critical patent/JP2006099671A/ja
Priority to US11/237,794 priority patent/US20060117352A1/en
Priority to CNA2005101076028A priority patent/CN1767609A/zh
Publication of JP2006099671A publication Critical patent/JP2006099671A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/87Regeneration of colour television signals
    • H04N9/8715Regeneration of colour television signals involving the mixing of the reproduced video signal with a non-recorded signal, e.g. a text signal
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal

Abstract

【課題】視聴者の手元にある動画像と、視聴者の手元もしくはネットワーク上にあるメタデータとを組み合わせた処理を効率よく行う。
【解決手段】メタデータは、有効期間を特定するデータ、動画像中の時空間領域を記述したオブジェクト領域データ、関連属性情報等を有し、独立して処理可能なデータ単位であるVclickアクセスユニットを、1以上含む。このメタデータへのアクセスに利用される検索テーブル(VCKSRCT.IFO)をVclickデータに含める。
【選択図】 図53

Description

この発明は、クライアント装置にある動画像データとネットワーク(またはディスク)上のメタデータとを組み合わせて動画像ハイパーメディアを実現したり、また動画像にテロップや吹き出しを表示したりする方法に関する。
ハイパーメディアは、動画像、静止画像、音声、テキストなどのメディア間にハイパーリンクと呼ばれる関連性を定義し、相互に、または一方から他方を参照できるようにしたものである。例えばインターネットを使って閲覧することのできるHTMLで記述されたホームページには、テキストや静止画が配置されており、これらテキストや静止画のいたるところにリンクが定義されている。そしてこれらのリンクを指定することにより直ちにリンク先である関連情報を表示させることができる。興味のある語句を直接指示すれば関連情報にアクセスできるため、操作が容易かつ直感的である。
一方、テキストや静止画ではなく動画像を中心にしたハイパーメディアでは、動画像中に登場する人や物などのオブジェクトからそれを説明するテキストや静止画などの関連コンテンツへのリンクが定義されており、視聴者がこのオブジェクトを指示することによりこれら関連コンテンツが表示される。このとき、動画像に登場するオブジェクトの時空間的な領域とその関連コンテンツへのリンクを定義するには、動画像中のオブジェクトの時空間的な領域を表すデータ(オブジェクト領域データ)が必要となる。
オブジェクト領域データとしては、2値以上の値を持つマスク画像系列、MPEG−4の任意形状符号化、特許文献1で説明されている図形の特徴点の軌跡を記述する方法、さらに特許文献2で説明されている方法などを用いることができる。動画像中心のハイパーメディアを実現するためには、このほかにもオブジェクトが指定されたときに他の関連コンテンツを表示させるという動作を記述したデータ(動作情報)などが必要となる。これらの動画像以外のデータを動画像のメタデータと呼ぶことにする。
動画像とメタデータを視聴者に提供する方法としては、まず動画像とメタデータの両方が記録された記録媒体(ビデオCD、DVDなど)を作る方法がある。また、すでにビデオCDやDVDとして所有している動画像のメタデータを提供するには、メタデータのみをネットワーク上からダウンロード、もしくはストリーミングにより配信すればよい。さらに、動画像とメタデータの両方のデータをネットワークで配信しても良い。このとき、メタデータは効率的にバッファを使用することが可能で、ランダムアクセスに適しており、ネットワークにおけるデータロスに強い形式であることが望ましい。
また、動画像の切り替えが頻繁に生じる場合には(例えば、複数のカメラアングルで撮影された動画像が用意されており、視聴者は自由にカメラアングルを選択できるような場合…DVDビデオのマルチアングル映像のようなものなど)、動画像の切り替えに対応して高速にメタデータの切り替えができなければならない。
特開2000−285253号公報 特開2001−111996号公報
視聴者の手元にある動画像に関連したネットワーク上のメタデータを視聴者の元にストリーミング配信したり、視聴者の基にあるメタデータを再生したりする際の課題は、バッファの利用効率を向上させること、ランダムアクセスをしやすくすること、メタデータの切り替えが高速にできること、ユーザが必要なメタデータを自由に検索しアクセスできることである。この発明はこれらの課題の一部あるいは全部を解決すべくなされたものである。
この発明の一実施の形態に係る動画像メタデータは、動画像の時間軸に対して定義される有効期間内に関する情報として、前記有効期間を特定するデータと、前記動画像中の時空間領域を記述したオブジェクト領域データと、前記時空間領域に関連した表示方法を特定するデータおよび/または前記時空間領域が指定された際に行う処理を特定するデータとを有する。ここで、前記メタデータは、独立して処理可能なデータ単位であるアクセスユニット(Vclick_AU)を1以上含むことにより構成される。
また、この発明の一実施の形態に係る動画像メタデータは、それぞれのオブジェクトに関連するキーワードをまとめたテーブル(VCKSRCT.IFO)を持つことができる。このテーブルを用いることにより、ユーザが全てのメタデータの中から取得したい情報の検索を行なう場合に、対応する情報が記録されているメタデータ(Vclickデータ)へアクセスすることを可能にする。
また、より迅速に対象のVclickデータへアクセスするために、Vclickデータの再生開始時間などを属性情報として持つことも可能にしている。
メタデータは単独で処理可能なアクセスユニット(Vclick_AU)の集合体として構成されるため、バッファを効率よく使用でき、ランダムアクセスが容易であり、データロスの影響が小さく、メタデータの切り替えが高速にできるようになる。さらに、メタデータ(Vclickデータ)へ迅速にアクセスすることが可能になる。
以下、図面を参照しながらこの発明の一実施の形態を説明する。
(アプリケーションの概要)
図1はこの発明のオブジェクト・メタデータを動画像と共に利用することにより実現されるアプリケーション(動画像ハイパーメディア)の画面上の表示例である。図1(a)の100は動画像の再生画面、そして101はマウスカーソルである。動画像の再生画面100で再生される動画像のデータは、ローカルにある動画像データ記録媒体に記録されている。102は動画像中に登場するオブジェクトの領域である。ユーザがオブジェクトの領域内にマウスカーソルを移動させてクリック等によりオブジェクトを選択すると、所定の機能が実行される。例えば図1(b)では、ローカルおよび/またはネットワーク上にあるドキュメント(クリックされたオブジェクトに関連した情報)103が表示されている。そのほか、動画像の別の場面にジャンプしたり、別の動画像ファイルが再生されたり、再生モードを変更するなどの機能を実行することができる。
オブジェクトの領域102のデータ及びこの領域がクリック等により指定された場合のクライアント装置の動作データなどをまとめて、オブジェクト・メタデータまたはVclickデータと呼ぶことにする。オブジェクト・メタデータはローカルにある動画像データ記録媒体(光ディスク、ハードディスク、半導体メモリ等)に動画像データと共に記録されていても良いし、ネットワーク上のサーバに蓄積されていてネットワーク経由でクライアントに送られるようにしても良い。以下ではこのアプリケーションがどのように実現されるかについて詳細に説明する。
(システムモデル)
図2はこの発明の一実施の形態に係るストリーミング装置(ネットワーク対応ディスクプレーヤ)の概略構成を示す図である。この図を用いて各構成要素の機能について説明する。
200はクライアント装置、201はサーバ装置、221はサーバ装置201とクライアント装置200を結ぶネットワークである。クライアント装置200は、動画再生エンジン203、Vclickエンジン202、ディスク装置230、ユーザ・インタフェース240、ネットワーク・マネージャ208、ディスク装置マネージャ213、を備えている。また、204から206は動画再生エンジンに含まれる装置、207、209から212、214から218はVclickエンジンに含まれる装置、219と220はサーバ装置201に含まれる装置である。クライアント装置200はディスク装置230にある動画像データの再生や、HTML等のマークアップ言語で書かれたドキュメントの表示を行うことができる。また、ネットワーク上にあるHTML等のドキュメントの表示を行うことも可能である。
クライアント装置200にある動画像データに関連したメタデータがサーバ装置201に存在する場合、クライアント装置200はこのメタデータとディスク装置230にある動画像データとを利用した再生を以下のように行うことが可能である。まず、サーバ装置201はクライアント装置200からの要求によりネットワーク221を介してクライアント装置200にメディアデータM1を送る。クライアント装置200では、送られてきたメディアデータを動画像の再生と同期させて処理することでハイパーメディアなどの付加機能を実現させる(ここでの“同期”とは、物理的に完全なタイミングの一致のみに限定されず、多少のタイミングずれも許容している)。
動画再生エンジン203は、ディスク装置230にある動画像データを再生するためのエンジンであり、204、205、206の装置を有している。231は動画像データ記録媒体であり、具体的にはDVD、ビデオCD、ビデオテープ、ハードディスク、半導体メモリなどである。動画像データ記録媒体231にはデジタルおよび/またはアナログの動画像データが記録されている。動画像データに関連したメタデータは、動画像データと共に動画像データ記録媒体231に記録されている場合もある。205は、動画像再生制御用のコントローラであり、Vclickエンジン202のインタフェース・ハンドラ207から出力される“コントロール”信号に応じて、動画像データ記録媒体231からの映像・音声・副映像データD1の再生を制御することもできるように構成されている。
具体的には、動画像再生コントローラ205は、動画像の再生時に、インタフェース・ハンドラ207からあるイベント(例えばユーザ指示によるメニュー・コールやタイトル・ジャンプ)が発生した際に送信される“コントロール”信号に応じて、インタフェース・ハンドラ207に対して、映像・音声・副映像データD1の再生状況を示す“トリガ”信号を出力することができる。その際(トリガ信号の出力と同時に、あるいはその前後の適当なタイミングで)、動画像再生コントローラ205は、プロパティ情報(例えばプレーヤに設定されている音声言語、副映像字幕言語、再生動作、再生位置、各種時間情報、ディスクの内容等)を示す“ステータス”信号をインタフェース・ハンドラ207に出力することができる。これらの信号の送受信により動画像データ読み出しの開始および停止や、動画像データ中の所望の位置へのアクセスが可能となる。
AVデコーダ206は、動画像データ記録媒体231に記録されている映像データ、音声データ、および副映像データをそれぞれデコードし、デコードされた映像データ(前述の映像データと前述の副映像データを合成したもの)と音声データをそれぞれ出力する機能を持っている。これにより、動画再生エンジン203は、既存のDVDビデオ規格に基づいて製造される通常のDVDビデオプレーヤの再生エンジンと同じ機能を持つようになる。つまり、図2のクライアント装置200は、MPEG−2プログラムストリーム構造の映像、音声等のデータを通常のDVDビデオプレーヤと同様に再生することができ、これにより既存のDVDビデオディスク(従来のDVDビデオ規格に則ったディスク)の再生が可能となる(既存DVDソフトに対する再生互換確保)。
インタフェース・ハンドラ207は、動画像再生エンジン203、ディスク装置マネージャ213、ネットワーク・マネージャ208、メタデータ・マネージャ210、バッファ・マネージャ211、スクリプト・インタプリタ212、メディア・デコーダ216(メタデータ・デコーダ217を含む)、レイアウト・マネージャ215、AVレンダラー218などのモジュール間のインタフェース制御を行う。また、ユーザ操作(マウス、タッチパネル、キーボード等の入力デバイスへの操作)による入力イベントをユーザ・インタフェース240から受け取り、適切なモジュールにイベントを送信する。
インタフェース・ハンドラ207はVclickアクセス・テーブル(図53を参照して後述するVCAに対応)を解釈するアクセステーブル・パーサー、Vclick情報ファイル(図53を参照して後述するVCIに対応)を解釈する情報ファイル・パーサー、Vclickエンジンの管理するプロパティを記録しておくプロパティ・バッファ、Vclickエンジンのシステムクロック、動画再生エンジンにある動画像クロック204のクロックをコピーした動画像クロック等を有している。
ネットワーク・マネージャ208は、ネットワークを介してHTML等のドキュメントや静止画・音声等のデータをバッファ209へ取得する機能を持っており、インターネット接続部222の動作を制御する。ネットワーク・マネージャ212は、ユーザ操作または、メタデータ・マネージャ210からの要求を受けたインタフェース・ハンドラ207より、ネットワークへの接続や非接続の指示が来ると、インターネット接続部222の接続・非接続の切替を行う。また、サーバ装置201とインターネット接続部222とのネットワーク確立時には、制御データやメディアデータ(オブジェクト・メタデータ)の送受信を行う。
クライアント装置200からサーバ装置201へ送信するデータとしては、セッション構築の要求、セッション終了の要求、メディアデータ(オブジェクト・メタデータ)送信の要求、OKやエラーなどのステータス情報などがある。また、クライアント装置の状態情報の送信を行うようにしても良い。一方、サーバ装置201からクライアント装置200へ送信するデータにはメディアデータ(オブジェクト・メタデータ)、OKやエラーなどのステータス情報がある。
ディスク装置マネージャ213は、HTML等のドキュメントや静止画・音声等のデータをバッファ209へ取得する機能及び、動画再生エンジン203へ映像・音声・副映像データD1を送信する機能を持っている。ディスク装置マネージャ213は、メタデータ・マネージャ210からの指示に従ってデータ送信処理を行う。
バッファ209は、ネットワークを介して(ネットワーク・マネージャ経由で)サーバ装置201から送られてきたメディアデータM1を一時的に蓄積する。また、動画像データ記録媒体231にメディアデータM2が記録されていることがあるが、この場合も同様にディスク装置マネージャ経由でバッファ209へメディアデータM2を蓄積することになる。なお、メディアデータにはVclickデータ(オブジェクト・メタデータ)、HTML等のドキュメントやこれに付随する静止画・動画像データなど)が含まれる。
動画像データ記録媒体231にメディアデータM2が記録されている場合は、映像・音声・副映像データD1の再生を開始する前にあらかじめ動画像データ記録媒体231からメディアデータM2を読み出し、バッファ209に記憶しておいてもよい。これは、動画像データ記録媒体231上のメディアデータM2と映像・音声・副映像データD1のデータ記録位置が異なるため、通常の再生を行った場合にはディスクのシーク等が発生してシームレスな再生が保障できなくなってしまうため、これを回避するための手段となる。
以上のように、サーバ装置201からダウンロードしたメディアデータM1も、動画像データ記録媒体231に記録されているメディアデータM2と同様に、バッファ209に記憶させることにより、映像・音声・副映像データD1とメディアデータを同時に読み出して再生することが可能になる。
なお、バッファ209の記憶容量には限界がある。つまり、バッファ209に記憶できるメディアデータM1、M2のデータサイズには限りがある。このため、メタデータ・マネージャ210、および/またはバッファ・マネージャ211の制御(バッファ・コントロール)により、不必要なデータの消去を行うことにしてもよい。
メタデータ・マネージャ210は、バッファ209に蓄積されたメタデータを管理しており、インタフェース・ハンドラ207からの動画像の再生に同期させた適切なタイミング(“動画像クロック”信号)を受けて、該当するタイムスタンプを持つメタデータをバッファ209よりメディア・デコーダ216に転送する。
なお、該当するタイムスタンプを持つメタデータがバッファ209に存在しない場合は、メディア・デコーダ216に転送しなくてもよい。また、メタデータ・マネージャ210は、バッファ209より送出したメタデータのサイズ分、または、任意のサイズのデータをサーバ装置201、またはディスク装置230からバッファ209へ読み込むためのコントロールを行う。具体的な処理としては、メタデータ・マネージャ210は、インタフェース・ハンドラ207経由で、ネットワーク・マネージャ208、またはディスク装置マネージャ213に対し、指定サイズ分のメタデータ取得要求を行う。ネットワーク・マネージャ208、またはディスク装置マネージャ213は、指定サイズ分のメタデータをバッファ209に読み込み、メタデータ取得済の応答をインタフェース・ハンドラ207経由で、メタデータ・マネージャ210へ通知する。
バッファ・マネージャ211は、バッファ209に蓄積されたメタデータ以外のデータ(HTML等のドキュメントやこれに付随する静止画・動画像データなど)の管理をしており、インタフェース・ハンドラ207からの動画像の再生に同期させた適切なタイミング(“動画像クロック”信号)を受けてバッファ209に蓄積されたメタデータ以外のデータをパーサー214やメディア・デコーダ216に送る。バッファ・マネージャ211は、不要になったデータをバッファ209から削除してもよい。
パーサー214は、HTML等のマークアップ言語で書かれたドキュメントの構文解析を行い、スクリプトはスクリプト・インタプリタ212へ、そしてレイアウトに関する情報はレイアウト・マネージャ215に送る。
スクリプト・インタプリタ212は、パーサー214から入力されるスクリプトを解釈し、実行する。スクリプトの実行には、インタフェース・ハンドラ207から入力されるイベントやプロパティの情報を利用することもできる。動画像中のオブジェクトがユーザにより指定された場合には、スクリプトはメタデータ・デコーダ217からスクリプト・インタプリタ212へ入力される。
AVレンダラー218は、映像・音声・テキスト出力を制御する機能をもつ。具体的には、AVレンダラー218は、レイアウト・マネージャ215から出力される“レイアウト・コントロール”信号に応じて、例えば、映像・テキストの表示位置、表示サイズや(これらとともに表示タイミング、表示時間を含むこともある)、音声の大きさ(これらとともに出力タイミング、出力時間を含むこともある)を制御したり、指定されているモニターの種別かつ/または表示する映像の種類に応じて、その映像の画素変換を行う。制御の対象となる映像・音声・テキスト出力は、動画再生エンジン203およびメディア・デコーダ216からの出力である。さらに、AVレンダラー218は、インタフェース・ハンドラ207から出力される“AV出力コントロール”信号に従って、動画再生エンジン203から入力される映像・音声データとメディア・デコーダから入力される映像・音声・テキストデータのミキシング(混合)、スイッチング(切替)を制御する機能をもつ。
レイアウト・マネージャ215は、“レイアウト・コントロール”信号をAVレンダラー218に出力する。“レイアウト・コントロール”信号には、出力する動画・静止画・テキストの大きさやその位置に関する情報(表示開始・終了・継続といった表示時間に関する情報を含む場合もある)が含まれており、どのようなレイアウトで表示すべきかをAVレンダラー218に指示するための情報となっている。また、インタフェース・ハンドラ207から入力されるユーザのクリック等の入力情報に対して、どのオブジェクトが指定されたのかを判定し、指定されたオブジェクトに対して定義された関連情報の表示などの動作命令を取り出すようにメタデータ・デコーダ217に対して指示する。取り出された動作命令は、スクリプト・インタプリタ212に送られ実行される。
メディア・デコーダ216(メタデータデコーダを含む)は、動画・静止画・テキストデータをデコードする。これらデコードされた映像データ、テキスト画像データをメディア・デコーダ216からAVレンダラー218に送信する。また、これらデコードデータは、インタフェース・ハンドラ202からの“メディア・コントロール”信号の指示によりデコードを行うとともに、インタフェース・ハンドラ202からの“タイミング”信号に同期してデコードが行われる。
219はサーバ装置201のメタデータ記録媒体であり、クライアント装置200に送信するメタデータが記録されたハードディスク、光ディスク、半導体メモリ、磁気テープなどである。このメタデータは、動画像データ記録媒体231に記録されている動画像データに関連したメタデータである。このメタデータには、後で説明するオブジェクト・メタデータが含まれている。220はサーバ装置201のネットワーク・マネージャであり、クライアント装置200とネットワーク221を介してデータの送受信を行う。
(EDVDデータ構造とIFOファイル)
図53は、動画像データ記録媒体231としてエンハンスドDVDビデオディスクを用いた際のデータ構造の一例を示す図である。エンハンスドDVDビデオディスクのDVDビデオエリアは、DVDビデオ規格と同じデータ構造のDVDビデオコンテンツ(MPEG−2プログラムストリーム構造を持つ)を格納する。さらに、エンハンスドDVDビデオディスクの他の記録エリアは、ビデオコンテンツの再生をバラエティに富んだものにできるエンハンスド・ナビゲーション(以下ENAVと略記する)コンテンツを格納する。なお、上記“他の記録エリア”は、DVDビデオ規格でも存在が認められている。
ここで、DVDビデオディスクの基本的なデータ構造について説明する。すなわち、DVDビデオディスクの記録エリアは、内周から順にリードインエリア、ボリュームスペース、およびリードアウトエリアを含んでいる。ボリュームスペースは、ボリューム/ファイル構造情報エリア、およびDVDビデオエリア(DVDビデオゾーン)を含み、さらにオプションで他の記録エリア(DVDアザーゾーン)を含むことができる。
上記ボリューム/ファイル構造情報エリアは、UDF(Universal Disk Format)ブリッジ構造のために割り当てられたエリアである。UDFブリッジフォーマットのボリュームは、ISO/IEC13346のパート2に従って認識されるようになっている。このボリュームを認識するスペースは、連続したセクタからなり、図53のボリュームスペースの最初の論理セクタから始まる。その最初の16論理セクタは、ISO9660で規定されるシステム使用のために予約されている。従来のDVDビデオ規格との互換性を確保するには、このような内容のボリューム/ファイル構造情報エリアが必要となる。
また、DVDビデオエリアには、ビデオマネージャVMGという管理情報と、ビデオタイトルセットVTS(VTS#1〜VTS#n)というビデオコンテンツが1つ以上記録されている。VMGは、DVDビデオエリアに存在する全てのVTSに対する管理情報であり、制御データVMGI、VMGメニュー用データVMGM_VOBS(オプション)、およびVMGのバックアップデータを含んでいる。また、各VTSは、そのVTSの制御データVTSI、VTSメニュー用データVTSM_VOBS(オプション)、そのVTS(タイトル)の内容(映画等)のデータVTSTT_VOBS、およびVTSIのバックアップデータを含んでいる。従来のDVDビデオ規格との互換性を確保するには、このような内容のDVDビデオエリアも必要となる。
各タイトル(VTS#1〜VTS#n)の再生選択メニュー等は、VMGを用いてプロバイダ(DVDビデオディスクの制作者)により予め与えられ、特定タイトル(例えばVTS#1)内での再生チャプター選択メニューや記録内容(セル)の再生手順等は、VTSIを用いてプロバイダにより予め与えられている。従って、ディスクの視聴者(DVDビデオプレーヤのユーザ)は、予めプロバイダにより用意されたVMG/VTSIのメニューやVTSI内の再生制御情報(プログラムチェーン情報PGCI)に従ってそのディスクの記録内容を楽しむことができる。しかし、DVDビデオ規格では、視聴者(ユーザ)が、プロバイダが用意したVMG/VTSIと異なる方法でVTSの内容(映画や音楽)を再生することはできない。
プロバイダが用意したVMG/VTSIと異なる方法でVTSの内容(映画や音楽)を再生したり、プロバイダが用意したVMG/VTSIとは異なる内容を付加して再生したりする仕組みのために用意したのが、図53のエンハンスドDVDビデオディスクである。このディスクに含まれるENAVコンテンツは、DVDビデオ規格に基づき製造されたDVDビデオプレーヤではアクセスできない(仮にアクセスできたとしてもその内容を利用できない)が、この発明の一実施の形態のDVDビデオプレーヤ(例えば図2のVclickエンジン202を装備したクライアント装置200)ではアクセスでき、その再生内容を利用できるようになっている。
ENAVコンテンツは、音声、静止画、フォント・テキスト、動画、アニメーション、Vclickデータ等のデータと、これらの再生を制御するための情報であるENAVドキュメント(これはMarkup/Script言語で記述されている)を含むように構成される。この再生を制御するための情報には、ENAVコンテンツ(音声、静止画、フォント・テキスト、動画、アニメーション、Vclick等から構成される)および/またはDVDビデオコンテンツの再生方法(表示方法、再生手順、再生切換手順、再生対象の選択等)がMarkup言語やScript言語を用いて記述されている。例えば、Markup言語として、HTML(Hyper Text Markup Language)/XHTML(eXtensible Hyper Text Markup Language)やSMIL(Synchronized Multimedia Integration Language)、Script言語として、ECMA(European Computer Manufacturers Association)ScriptやJavaScript(登録商標)のようなScript言語などを組み合わせながら用いることができる。
ここで、図53のエンハンスドDVDビデオディスクは、他の記録エリア以外の内容がDVDビデオ規格に従っているので、既に普及しているDVDビデオプレーヤを用いても、DVDビデオエリアに記録されたビデオコンテンツを再生できる(つまり従来のDVDビデオディスクと互換性がある)。他の記録エリアに記録されたENAVコンテンツは従来のDVDビデオプレーヤでは再生できない(あるいは利用できない)が、この発明の一実施の形態に係るDVDビデオプレーヤでは再生でき利用できる。従って、この発明の一実施の形態に係るDVDビデオプレーヤを用いENAVコンテンツを再生すれば、プロバイダが予め用意したVMG/VTSIの内容だけに限定されることなく、よりバラエティに富んだビデオ再生が可能になる。
特に、図53に示すように、ENAVコンテンツはVclickデータVCDを含み、このVclickデータVCDは、Vclick情報ファイル(Vclickインフォ)VCI、Vclickアクセス・テーブルVCA、VclickストリームVCS、Vclick情報ファイル・バックアップ(Vclickインフォ・バックアップ)VCIB、Vclickアクセス・テーブル・バックアップVCABを含んで構成される。
Vclick情報ファイルVCIは、後述のVclickストリームVCSが、DVDビデオコンテンツのどの箇所(例えば、DVDビデオコンテンツのタイトル全体、チャプター全体、あるいはその一部であるプログラムチェーン、プログラム、またはセル等)に付加しているかを表すデータである。Vclickアクセス・テーブルVCAは、後述のVclickストリームVCS毎に存在し、VclickストリームVCSにアクセスするためのテーブルである。VclickストリームVCSは、動画像中のオブジェクトの位置情報やオブジェクトがクリックされた際の動作記述等のデータを含むストリームである。Vclick情報ファイル・バックアップVCIBは、前述のVclick情報ファイルVCIのバックアップであり、Vclick情報ファイルVCIと常に同じ内容のものである。また、Vclickアクセス・テーブル・バックアップVCABは、前述のVclickアクセス・テーブルVCAのバックアップであり、Vclickアクセス・テーブルVCAと常に同じ内容のものである。
なお、図53の例では、Vclick情報ファイルVCI内に、後述する“Vclickデータの検索テーブル(VCKSRCT.IFO)”を格納できるようになっている。
図53の例ではVclickデータVCDはエンハンスドDVDビデオディスク上に記録されている。しかし、前述したようにVclickデータVCDはネットワーク上のサーバ装置201に置かれている場合もある。すなわち、VclickデータVCD(Vclickデータの検索テーブルを含む)は、ディスク内および/またはディスク外に用意しておくことができる。そして、ディスク外にVclickデータVCDを用意しておけば、VclickデータVCDが記録されていない旧タイプのディスク(過去に市販されたビデオディスクなど)のコンテンツ再生においても、あるいはTV放送を録画したコンテンツの再生においても、VclickデータVCDを利用した再生が可能になる(それらのコンテンツに対応してVclickデータVCDが作成されている場合)。
さらには、ビデオ記録可能な媒体(例えばDVD−Rディスク、DVD−RWディスク、DVD−RAMディスク、ハードディスクなど)と、ビデオレコーダ(例えばDVD−VRレコーダ、DVD−SRレコーダ、HD−DVDレコーダ、HDDレコーダなど)を用いてユーザが独自のディスクを作成した場合において、このディスクにVclickデータVCDを含むENAVコンテンツを記録するか、このディスク以外のパーソナルコンピュータのデータストレージなどにVclickデータVCDを用意しこのパーソナルコンピュータとレコーダを接続すれば、DVD−ROMビデオ+図2のENAVプレーヤと同様なメタデータ再生を楽しむことができる。
図54は、上述した、Vclick情報ファイルVCI、Vclickアクセス・テーブルVCA、VclickストリームVCS、Vclick情報ファイル・バックアップVCIB、Vclickアクセス・テーブル・バックアップVCABを構成するためのファイルの例を示す。Vclick情報ファイルVCIを構成するファイル(VCKINDEX.IFO)とVclickデータの検索テーブル(VCKSRCT.IFO)は、例えばXML(Extensible Markup Language)言語で記述されており、Vclick情報ファイルを構成するファイル(VCKINDEX.IFO)には、VclickストリームVCSと、そのVclickストリームVCSが付加されるDVDビデオコンテンツの位置情報(VTS番号、タイトル番号、PGC番号等)が記述されている。Vclickデータの検索テーブル(VCKSRCT.IFO)は、検索処理を迅速に行なうために、VclickオブジェクトとDVDビデオコンテンツとの対応が取れるようになっている。Vclickアクセス・テーブルVCAは、一つ以上のファイルから構成されており(VCKSTR01.IFO〜VCKSTR99.IFO、または任意のファイル・ネーム)、一つのアクセス・テーブルVCA・ファイルは、一つのVclickストリームVCSに対応する。
Vclickストリーム・ファイルは、VclickストリームVCSの位置情報(ファイルの先頭からの相対バイト・サイズ)と時間情報(対応する動画像のタイムスタンプもしくはファイルの先頭からの相対時間情報)の関係が記述されており、与えられた時間に対応する再生開始位置を検索することができる。
VclickストリームVCSは、一つ以上のファイルから構成されており(VCKSTR01.VCK〜VCKSTR99.VCK、または任意のファイル・ネーム)、前述のVclick情報ファイルVCIの記述を参照して、付加されるDVDビデオコンテンツとともに再生できる。また、複数の属性が存在する場合(例えば日本語用VclickデータVCDと英語用VclickデータVCD等)は、属性毎に、異なるVclickストリームVCS(つまり異なるファイル)として構成することも可能である。また、それぞれの属性をマルチプレクスして、一つのVclickストリームVCS(つまり一つのファイル)として構成することも可能である(例えば図5参照)。
なお、前者(異なる属性を複数のVclickストリームVCSで構成)の場合は、再生装置(プレーヤ)にいったん記憶させるときのバッファ(図2の例では209)の占有容量を少なくすることができる。また、後者(異なる属性を一つのVclickストリームVCSで構成…前述した図5のような例など)の場合は、属性を切り替えるとき、ファイルを切り替えずに、一つのファイルを再生したままでよいので、切り替える速度を速くすることができる。
ここで、VclickストリームVCSとVclickアクセス・テーブルVCAの関連付けは、例えばファイル名にて行うことが可能である。前述の例においては、一つのVclickストリームVCS(VCKSTRXX.VCK、XXは01〜99)に対して、一つのVclickアクセス・テーブルVCA(VCKSTRXX.IFO、XXは01〜99)を割り当てており、拡張子以外のファイル名を同じものにすることにより、VclickストリームVCSとVclickアクセス・テーブルVCAの関連付けが識別可能になる。
これ以外にも、Vclick情報ファイルVCIにて、VclickストリームVCSとVclickアクセス・テーブルVCAの関連付けを記述することにより(具体的には、VCI内においてVCSの記述とVCAの記述を並行に記載することにより)、VclickストリームVCSとVclickアクセス・テーブルVCAの関連付けが識別可能になる。
Vclick情報ファイル・バックアップはVCKINDEX.BUPファイルとVCKSRCT.BUPファイルにて構成されており、前述のVclick情報ファイル(VCKINDEX.IFO)とVclickデータの検索テーブル(VCKSRCT.IFO)の全く同じ内容である。VCKINDEX.IFO及びVCKSRCT.IFO が何らかの理由により(ディスクの傷や汚れ等により)、読み込みが不可能な場合、このVCKINDEX.BUP、VCKSRCT.BUPを代わりに読み込むことにより、所望の手続きを行うことができる。Vclickアクセス・テーブル・バックアップはVCKSTR01.BUP〜VCKSTR99.BUPファイルにて構成されており、前述のVclickアクセス・テーブル(VCKSTR01.IFO〜VCKSTR99.IFO)と全く同じ内容のものである。一つのVclickアクセス・テーブル(VCKSTRXX.IFO、XXは01〜99)に対して、一つのVclickアクセス・テーブル・バックアップ(VCKSTRXX.BUP、XXは01〜99)を割り当てており、拡張子以外のファイル名を同じものにすることにより、Vclickアクセス・テーブルとVclickアクセス・テーブル・バックアップの関連付けが識別可能になる。VCKSTRXX.IFO が何らかの理由により(ディスクの傷や汚れ等により)、読み込みが不可能な場合、このVCKSTRXX.BUPを代わりに読み込むことにより、所望の手続きを行うことができる。
(データ構造の概略とアクセス・テーブル)
VclickストリームVCSには、動画像データ記録媒体231に記録されている動画像に登場する人・物などのオブジェクトの領域に関するデータと、クライアント装置200におけるオブジェクトの表示方法とユーザがそれらオブジェクトを指定したときにクライアント装置が取るべき動作のデータが含まれている。以下では、Vclickデータの構造とその構成要素の概要について説明する。
まず動画像に登場する人・物などのオブジェクトの領域に関するデータであるオブジェクト領域データについて説明する。
図3はオブジェクト領域データの構造を説明する図である。300は、1つのオブジェクトの領域が描く軌跡をX(映像の水平方向の座標値)、Y(映像の垂直方向の座標値)、T(映像の時刻)の3次元座標上に表現したものである。オブジェクト領域はあらかじめ決められた範囲内の時間(例えば0.5秒から1.0秒の間や、2秒から5秒の間、など)ごとにオブジェクト領域データに変換される。図3では1つのオブジェクト領域300が301から305の5つのオブジェクト領域データに変換されており、これらオブジェクト領域データは別々のVclickアクセスユニット(AU)(後述)に格納される。このときの変換方法としては、例えばMPEG−4の形状符号化やMPEG−7の時空間領域記述子などを使うことができる。MPEG―4形状符号化やMPEG−7時空間記述子はオブジェクト領域の時間的な相関を利用してデータ量を削減する方式であるため、途中からデータが復号できないことや、ある時刻のデータが欠落した場合に周囲の時刻のデータも復号できなくなるという問題がある。図3のように長い時間連続して動画像中に登場しているオブジェクトの領域を時間方向に分割してデータ化することにより、ランダムアクセスを容易にし、一部のデータの欠落の影響を軽減することができる。各Vclick_AUは動画像の中である特定の時間区間でのみ有効である。このVclick_AUが有効な時間区間をVclick_AUの有効期間(lifetime)と呼ぶ。
図4は、この発明の一実施の形態で用いるVclickストリームVCS中の、独立にアクセス可能な1単位(Vclick_AU)の構造を表したものである。400はオブジェクト領域データである。図3で説明したとおり、ここには1つのオブジェクト領域のある連続した時間区間における軌跡がデータ化されている。このオブジェクト領域が記述されている時間区間をそのVclick_AUのアクティブ期間(active time)と呼ぶ。通常はVclick_AUのアクティブ期間はそのVclick_AUの有効期間と同一である。しかし、Vclick_AUのアクティブ期間をそのVclick_AUの有効期間の一部とすることも可能である。
401はVclick_AUのヘッダである。ヘッダ401には、Vclick_AUを識別するためのIDと、そのAUのデータサイズを特定するデータが含まれる。402はタイムスタンプであり、このVclick_AUの有効期間開始のタイムスタンプを示している。通常はVclick_AUのアクティブ期間と有効期間が同一であるため、オブジェクト領域データ400に記述されたオブジェクト領域が動画像のどの時刻に相当するかも示している。図3に示されるように、オブジェクト領域はある時間範囲に及んでいるため、通常はタイムスタンプ402にはオブジェクト領域の先頭の時刻を記述しておく。もちろんオブジェクト領域データに記述されたオブジェクト領域の時間間隔やオブジェクト領域の末尾の時刻も記述するようにしても良い。403はオブジェクト属性情報であり、例えばオブジェクトの名称、オブジェクトが指定された際の動作記述、オブジェクトの表示属性などが含まれる。これらVclick_AU内のデータに関しては、後でより詳細に説明する。Vclick_AUは、サーバ装置(図2の201など)においては送信しやすいようにタイムスタンプ順に並べて記録しておくほうが良い。
図5は複数のAUをタイムスタンプ順に並べてVclickストリームVCSを生成する方法を説明する図である。この図では、カメラアングル1とカメラアングル2の2つのカメラアングルがあり、クライアント装置でカメラアングルを切り替えると表示される動画像も切り替えられることを想定している。また、選択可能な言語モードには日本語と英語の2種類があり、それぞれの言語に対して別々のVclickデータが用意されている場合を想定している。
図5に於いて、カメラアングル1かつ日本語用のVclick_AUは500、501、502であり、カメラアングル2かつ日本語用のVclick_AUのAUは503である。そして英語用のVclick_AUは504と505である。500から505はそれぞれ動画像中の一つのオブジェクトに対応したデータである。すなわち、図3と図4で説明したとおり一つのオブジェクトに関するメタデータは一つまたは複数のVclick_AUで構成されている(図5では1つの長方形が1つのAUを表している)。この図の横軸は動画像中の時間に対応しており、オブジェクトの登場時間に対応させて500から505を表示してある。
各Vclick_AUの時間的な区切りは任意でもよいが、図5に例示されるように、全てのオブジェクトに対してVclick_AUの区切りを揃えておくと、データの管理が容易になる。506は、これらのVclick_AU(500から705)から構成されたVclickストリームVCSである。VclickストリームVCSは、ヘッダ部507に続いてVclick_AUをタイムスタンプ順にならべることにより構成される。
選択しているカメラアングルはユーザが視聴中に変更する可能性が高いため、このようにVclickストリームVCSに異なるカメラアングルのVclick_AUを多重化してVclickストリームVCSを作った方が良い。これは、クライアント装置200側で高速な表示切り替えが可能だからである。例えば、Vclickデータがサーバ装置201に置かれているとき、複数のカメラアングルのVclick_AUを含むVclickストリームVCSをそのままクライアント装置200に送信すれば、クライアント装置200では視聴中のカメラアングルに対応したVclick_AUが常に届いているため、瞬時にカメラアングルの切り替えができる。もちろん、クライアント装置200の設定情報をサーバ装置201に送り、必要なVclick_AUのみをVclickストリームVCSから選択して送信することも可能であるが、この場合はサーバ(201)との通信を行う必要があるため多少処理が遅くなる(もっとも、通信に光ファイバなどの高速手段を用いればこの処理遅延の問題は大筋解決できる)。
一方、動画像タイトル、DVDビデオのPGC、動画像のアスペクト比、視聴地域等の属性は変更の頻度が低いため、別々のVclickストリームVCSとして作成しておいた方がクライアント装置200の処理が軽くなり、ネットワークの負荷も軽くなる。複数のVclickストリームVCSがある場合にどのVclickストリームVCSを選択すべきかは、すでに説明したようにVclick情報ファイルVCIを参照して決定できる。
次に、別のVclick_AUの選択方法について説明する。クライアント装置200がサーバ装置201から、Vclickストリーム(VCS)506を取得し、クライアント装置200の側で必要なアクセスユニット(AU)のみを利用する場合を考える。この場合、必要なVclick_AUを識別する為のIDが各AUに振られていても良い。これをフィルタIDと呼ぶ。
必要とされるアクセスユニット(AU)の条件は、例えば、Vclick情報ファイルVCI中に次のように記述される:
<pgc num="7">
//audio/subpictureストリームとangleによるVclickストリームVCSの定義
<object data="file://dvdrom:/dvd_enav/vclick1.vck" audio="1" subpic="1" angle="1"/>
<object data="file://dvdrom:/dvd_enav/vclick1.vck" audio="3" subpic="2" angle="1"/>
</pgc>
ここでは、一つのVclickストリームVCSに対して、二種類のフィルタリング条件が記述されている。これは、クライアントのシステムパラメータの設定に応じて、同一のVclickストリームVCSから異なる属性を有する二種類のVclick_AUが選択可能である事を示している。
なお、Vclick情報ファイルVCIは、動画像データ記録媒体(例えば図53のエンハンスドDVDビデオディスク)上に存在しても良いし、サーバ装置201からネットワーク経由でクライアント装置200にダウンロードされるように構成しても良い。Vclick情報ファイルVCIは、通常は、動画像データ記録媒体(エンハンスドDVDビデオディスク)やサーバ装置(201)など、VclickストリームVCSと同じところから供給される。
アクセスユニット(AU)が前述したフィルタIDを持たない場合、メタデータ・マネージャ210が必要なVclick_AUを識別するには、AUのタイムスタンプや属性などを見て、与えられた条件に適合するAUを選択する。
フィルタIDを用いる例を、上記の記述に即して説明する。audioはオーディオ・ストリーム番号を表しているが、これを4ビットの数値で表現する。同様に、副映像番号subpicとアングル番号angleに、それぞれ4ビットの数値を割り当てる。これにより、三つのパラメータの状態を12ビットの数値で表現する事ができる。例えば、audio="3"、subpic="2"かつangle="1"のパラメータは、16進表記で0x321と表現される。これをフィルタIDとして用いる。即ち、Vclick_AUは12ビットのフィルタIDをVclick_AUヘッダ内に有する(図14のfiltering_id参照)。これは、AUを選別する独立なパラメータ値のそれぞれに数字を割り当て、当該数字の組み合わせによりフィルタIDを定める方法である。なお、フィルタIDはVclick_AUヘッダ以外の場所に記述しても良い。
クライアント装置200のフィルタリング動作を図44に示す。まず、メタデータ・マネージャ210がインタフェース・ハンドラ207から、動画像クロック値TとフィルタID xとを受け取る(ステップS4401)。データ・マネージャ210は、バッファ209に格納されているVclickストリームVCSの中から、有効期間が動画像クロック値Tを含むようなVclick_AUを全て見出す(ステップS4402)。このようなAUを見出すには、Vclickアクセス・テーブルVCAを用いて、図45及び図46のような手続きを用いることができる。メタデータ・マネージャ210は、上記Vclick_AUヘッダを調べ、xと同一のフィルタIDを有するAUのみをメディア・デコーダ216に送る(ステップS4403〜S4405)。
以上の手続きによって、バッファ209からメタデータ・デコーダ217に送られるVclick_AUは次の性質を有する:
i)これら全てのAUは同一の有効期間を有するが、動画像クロックTは当該有効期間に含まれる;
ii)これら全てのAUは、同一のフィルタID xを有する。
iii)上記i)及びii)の条件を満足する、当該オブジェクト・メタデータ・ストリーム中のAUは、これらのAU以外には存在しない。
なお、あるフィルタIDで特定のAUを識別し選択するということは、選択されたAUを含むVclickストリームを選択することにもなる。一方、再生すべきVclickストリームの選択は、VclickインフォVCIファイルを参照することによっても可能である。
上記では、フィルタIDは、パラメータに割り当てられたの組み合わせによって定義されていたが、Vclick情報ファイルVCIの中でフィルタIDを直接指定するようにしても良い。例えば、IFOファイル中には次のように定められている:
<pgc num="5">
<param angle="1">
<object data="file://dvdrom:/dvd_enav/vclick1.vck" filter_id="3"/>
</param>
<param angle="3">
<object data="file://dvdrom:/dvd_enav/vclick2.vck" filter_id="4"/>
</param>
<param aspect="16:9" display="wide">
<object data="file://dvdrom:/dvd_enav/vclick1.vck" filter_id="2"/>
</param>
</pgc>
上記の記述は、各パラメータの指定によって、VclickストリームVCSとフィルタIDの値が定まる事を示している。フィルタIDによるVclick_AUの選別と、バッファ209からメディア・デコーダ217へのAUの転送は、図44の手続きと同じである。上記Vclick情報ファイルVCIの指定に基づき、プレーヤのアングル番号が3である場合、"vclick2.vck"というファイルに格納されているVclickストリームVCSから、フィルタIDの値が4に等しいVclick_AUのみが、バッファ209からメディア・デコーダ217に送られる。
サーバ装置201にVclickデータがある場合、動画像が先頭から再生される場合にはサーバ装置201はVclickストリームVCSを先頭から順にクライアント装置に配信すればよい。しかし、ランダムアクセスが生じた場合にはVclickストリームVCSの途中からデータを配信する必要がある。このとき、VclickストリームVCS中の所望の位置に高速にアクセスするためには、Vclickアクセス・テーブルVCAが必要となる。
図6はVclickアクセス・テーブルVCAの例である。このテーブルはあらかじめ作成され、サーバ装置201内に記録されている。Vclick情報ファイルVCIと同じファイルにしておくことも可能である。600はタイムスタンプの配列であり、動画像のタイムスタンプが列挙されている。601はアクセスポイントの配列であり、動画像のタイムスタンプに対応したVclickストリームVCSの先頭からのオフセット値が列挙されている。動画像のランダムアクセス先のタイムスタンプに対応した値がVclickアクセス・テーブルVCAにない場合は、近い値のタイムスタンプのアクセスポイントを参照し、そのアクセスポイント周辺でVclickストリームVCS内のタイムスタンプを参照しながら送信開始場所を探索する。もしくは、Vclickアクセス・テーブルVCAから動画像のランダムアクセス先のタイムスタンプよりも手前の時刻のタイムスタンプを探索し、そのタイムスタンプに対応したアクセスポイントからVclickストリームVCSを送信する。
上記Vclickアクセス・テーブルVCAは、サーバ装置201が格納しており、サーバ装置201がクライアントからのランダムアクセスに応じて、送信すべきVclickデータの検索の便宜に資する為のものである。しかし、サーバ装置201が格納しているVclickアクセス・テーブルVCAをクライアント装置200にダウンロードして、VclickストリームVCSの検索をクライアント装置200に行わせるようにしても良い。特に、VclickストリームVCSが、サーバ装置201からクライアント装置200に一括ダウンロードされる場合、Vclickアクセス・テーブルVCAも又、サーバ装置201からクライアント装置200に一括ダウンロードされる。
一方、VclickストリームVCSがDVDなどの動画像記録媒体に記録されて提供される場合も考えられる。この場合も、再生コンテンツのランダムアクセスに応じて、利用すべきデータを検索するために、クライアント装置200がVclickアクセス・テーブルVCAを利用する事は有効である。この場合Vclickアクセス・テーブルVCAは、VclickストリームVCS同様、動画像記録媒体に記録されており、クライアント装置200は当該動画像記録媒体から当該Vclickアクセス・テーブルVCAを内部の主記憶等に読み出して利用する。
動画像のランダム再生などに伴って発生する、VclickストリームVCSのランダム再生は、メタデータ・デコーダ217によって処理される。図6のVclickアクセス・テーブルVCAにおいて、タイムスタンプtimeは、動画像記録媒体に記録された動画像のタイムスタンプの形式を有する時刻情報である。例えば、動画像がMPEG−2で圧縮されて記録されているなら、timeはMPEG−2のPTS(Presentation Time Stamp)の形式をとる。更に、動画像が、例えばDVDのように、タイトルやプログラム・チェーンなどのナビゲーション構造を持つ場合、それらを表現するパラメータ(タイトル番号TTN、ビデオタイトルセットタイトル番号VTS_TTN、タイトルプログラムチェーン番号TT_PGCN、パートオブタイトル番号PTTNなど)がtimeの形式に含まれる。
タイムスタンプの値の集合には、何らかの自然な全順序関係が定義されているものと仮定する。例えば、上記のPTSについては時刻としての自然な順序関係が導入可能である。DVDのパラメータを含むタイムスタンプについても、DVDの自然な再生順序に従って、順序関係を導入する事が可能である。VclickストリームVCSは次の条件を満たしている:
i)VclickストリームVCS中のVclick_AUはタイムスタンプの昇順に並べられている。
このとき、Vclick_AUの有効期間を次のように決定する:あるAUのタイムスタンプ値をtとおく。VclickストリームVCSにおいて当該AU以降にあるAUのタイムスタンプ値uについて、上記条件によりu >= tなる関係が成立する。このようなuの中でu≠tである最小の値をt’とおく。時刻tを開始時刻、時刻t’を終了時刻とする期間を、当該AUの有効期間とする。ただし、当該AU以降にu > tなるタイムスタンプ値uを有するAUが存在しない場合、当該AUの有効期間の終了時刻は、動画像の終了時刻に一致するものとする。
Vclick_AUのアクティブ期間は、先に定義したとおり、Vclick_AU含まれるオブジェクト領域データに記述されているオブジェクト領域の時間範囲である。ここで、VclickストリームVCSについて、アクティブ期間に関する次の制約条件をおく:
ii)Vclick_AUのアクティブ期間は、当該AUの有効期間に含まれている。
上記i)、ii)の制約条件を満たすVclickストリームVCSは、以下に示すような良い性質を有する:
第一には、下に述べるように、VclickストリームVCSのランダムアクセスを高速に行う事が可能である。第二には、VclickストリームVCSの再生を行う際のバッファ処理を単純化する事が可能となる。
バッファ(図2の209など)にはVclickストリームVCSがVclick_AU単位で格納され、大きいタイムスタンプを持つAUから消去されて行く。もし、上記二つの仮定が無ければ、有効なAUをバッファ上に保持しておく為に、大きなバッファと複雑なバッファ管理が必要になる。以後、VclickストリームVCSは、上記i)及びii)の二条件を満たすと仮定して説明を行う。
図6のVclickアクセス・テーブルVCAにおいて、アクセスポイントoffsetはVclickストリームVCS上の位置を指し示す。例えば、VclickストリームVCSはファイルであり、offsetは当該ファイルのファイル・ポインタの値を指し示す。タイムスタンプtimeと組になっているアクセスポイントoffsetの関係は次のようになっている:
i)offsetの示す位置は、あるVclick_AUの先頭位置である;
ii)当該AUがもつタイムスタンプの値は、timeの値以下である;
iii)当該AUより一つ前にあるAUがもつタイムスタンプの値は、timeより真に小さい。
Vclickアクセス・テーブルVCAにおけるtimeの並びの間隔は任意で良いし、均等である必要もない。しかし、検索等の便宜を考慮して、均等にとっても良い。
Vclickアクセス・テーブルVCAを用いた具体的な検索手順を図45及び図46に示す。VclickストリームVCSがサーバ装置201からバッファ209に予めダウンロードされる場合、Vclickアクセス・テーブルVCAも同様にサーバ装置201からダウンロードされ、バッファ209内に格納される。VclickストリームVCSとVclickアクセス・テーブルVCAとが共に動画像データ記録媒体231に蓄積されている場合も同様に、VclickストリームVCSとVclickアクセス・テーブルVCAはディスク装置230からロードされ、バッファ209内に格納される。
メタデータ・マネージャ210は、インタフェース・ハンドラ207から動画像クロックTを受け取ると(ステップS4501)、バッファ209に格納されているVclickアクセス・テーブルVCAのtimeを検索し、t’ <= Tなる最大のtime t’を求める(ステップS4502)。ここでの検索のアルゴリズムとして、例えばバイナリ・サーチを用いて、高速に検索を行う事ができる。Vclickアクセス・テーブルVCAにおいて、得られたtime t’と組になっているoffset値を変数hに代入する(ステップS4503)。メタデータ・マネージャ210は、バッファ209に格納されているVclickストリームVCSの先頭からhバイト目に存在するAUxを見出し(ステップS4504)、xのタイムスタンプ値を変数tに代入する(ステップS4505)。上記条件より、tはt’以下であるから、t <= Tが成立する。
メタデータ・マネージャ210は、xから始めて、当該VclickストリームVCS中のVclick_AUを順次調べて行き、次のAUを改めてxとおく(ステップS4506)。続いて、変数h’にxのオフセット値を代入し(ステップS4507)、xのタイムスタンプ値を変数uに代入する(ステップS4508)。u > Tであれば(ステップS4509イエス)、バッファ209に対して、VclickストリームVCSのオフセットhからh’までを、メディア・デコーダ216に送るよう指示を出す(ステップS4510〜S4511)。一方、u <= Tであって(ステップS4509ノー)、かつu > tであれば(ステップS4601イエス)、tの値をuで更新する(即ちt = uとする)(ステップS4602)。そして、変数hの値をh’で更新する(即ちh= h’とする)(ステップS4603)。
VclickストリームVCS上に、次のAUが存在すれば(即ち、xが最後のAUでなければ)(ステップS4604イエス)、次のAUを改めてxとおき、上記手続きを繰り返す(図45のステップS4506へ戻る)。ここで、もし、xが当該VclickストリームVCSの最後のVclick_AUであれば(ステップS4604ノー)、バッファ209に対して、VclickストリームVCSのオフセットhから最後までを、メディア・デコーダ216に送るよう指示を出す(ステップS4605〜S4606)。
以上の手続きによって、バッファ209からメディア・デコーダ216に送られるVclick_AUは、明らかに次の性質を有する:
i)全てのVclick_AUは同一の有効期間を有する。しかも、動画像クロックTは当該有効期間に含まれる。
ii)上記i)の条件を満足する、当該VclickストリームVCS中のVclick_AUは、これらのAU以外には存在しない。
VclickストリームVCSにおけるVclick_AUの有効期間は、当該AUのアクティブ期間を含んでいるが、これらは常に一致しているとは限らない。実際、図47に示すような状況が考えられる。それぞれオブジェクト1及びオブジェクト2を記述するAU#1及びAU#2の有効期間は、AU#3の有効期間の開始時刻(t476)までである。しかし、各AUのアクティブ期間は有効期間に一致していない(図47の例ではt476≠t474≠t472)。
いま、AUが#1、#2、#3の順に並んだVclickストリームVCSを考える。そして、図47の例において、動画像クロックTが指定されたとする。この場合、図45及び図46に示すような手続きによれば、当該VclickストリームVCSからAU#1とAU#2とがメディア・デコーダ216に送られる。メディア・デコーダ216は受け取ったVclick_AUのアクティブ期間を認識できるため、この処理によりランダムアクセスが実現可能である。しかし実際には、オブジェクトが存在しない時刻T(有効期間内ではあるが非アクティブ期間であるt474〜t476の間)についても、バッファ209からのデータ転送と、メディア・デコーダ216におけるデコード処理が発生するため、クライアント装置200におけるハードウエアの計算効率が低下するという問題がある。この問題は、NULL_AUと呼ぶ特別なVclick_AUを導入することで解決できる。
NULL_AUの構造を図48に示す。NULL_AUは、通常のVclick_AUが必ず持つオブジェクト領域データを持たない。すなわち、NULL_AUは有効期間のみを持ち、アクティブ期間は存在しない。NULL_AUのヘッダには当該AUがNULL_AUである事を示すフラグが含まれている。NULL_AUは、VclickストリームVCSにおいて、オブジェクト(図49の例ではオブジェクト2)のアクティブ期間が存在しない時間範囲(図49の例ではt494〜t496)に挿入する事ができる。
メタデータ・マネージャ210は、ヘッダ(図48の“Vclick AU Header”)に含まれる図示しないフラグから当該AUが“NULL_AU”であることを検知すると、このNULL_AUをメディア・デコーダ216に送出しない。このようなNULL_AUを導入した場合、図47は例えば図49の様に変化する。図49のAU#4がNULL_AUである。この場合、VclickストリームVCSおいて、Vclick_AUは例えばAU#1'、#2'、#4、#3の順に並んでいる。NULL_AUを含むVclickストリームVCSに関して、図45及び図46に相当するメタデータ・マネージャ210の動作を図50、図51及び図52に示す。
すなわち、メタデータ・マネージャ210がインターフェース・ハンドラ207から動画像クロックTを受け取り(ステップS5001)、 t’ <= Tである最大のt’を求め(ステップS5002)、 t’と組になるoffset値を変数hに代入する(ステップS5003)。続いて、オブジェクトメタデータストリームにおいてオフセット値hにあるアクセスユニットAUをxとおき(ステップS5004)、xのタイムスタンプ値を変数tに格納する(ステップS5005)。ここで、xがNULL_AUであれば(ステップS5006イエス)、xの次のAUを改めてxとおいて(ステップS5007)、ステップS5006に戻る。ここで、xがNULL_AUでなければ(ステップS5006ノー)、xのオフセット値を変数h’に格納する(ステップS5101)。この後の処理(図51のステップS5102〜S5105および図52のステップS5201〜S5206)は、図45のステップS4508〜S454511および図46のステップS4601〜S4606と同様な処理となる。
(検索テーブル)
ユーザが全てのVclickストリーム(あるいは複数のVclickストリーム群)からある特定のVclickデータを検索したい場合のために、対象Vclickデータの検索を効率的に行なう検索テーブルを用意する。この検索テーブルの情報(VCKSRCT.IFO)は、図53の例ではディスク231のVclick情報VCI内に格納され、この検索テーブルのファイルは図54に例示するようにDVD_ENAVというディレクトリ内に配置される。
図55は、この発明の一実施の形態に係るDVD再生準備処理を説明するフローチャート図である。図55に示すように、検索テーブル(VCKSRCT.IFO)は、ディスクが再生機器(ディスクドライブ)に挿入され(S5501)、VCKINDEX.IFOがロードされた後に読み込まれる(S5502)。この検索テーブル(VCKSRCT.IFO)は、ディスク上もしくはサーバ上、または再生機器内に記録することができる。コンテンツ製作者があらかじめ検索の利便性のためにこのテーブルを用意する場合にはディスク内に記録しておくことが考えられる。また、ディスク作成後に検索テーブルをアップデートしたい場合などにはサーバ上に新たに検索テーブルを作成し、アップデートすることもできる。また、再生機器自らのファームウエアが、Vclick IDやアノテーション(Vclick_AUで記述されているオブジェクトに関する注釈を表す文字列:図19参照)から検索テーブルを作成することもできる。
すなわち、検索テーブルの情報(VCKSRCT.IFO)がサーバ上にあるときは(S5503イエス)サーバから検索テーブルがロードされ(S5504)、サーバになくてもディスク上にあるときは(S5503ノー;S5505イエス)ディスクから検索テーブルがロードされる。(S5504)。サーバにもディスクにもないときは(S5503ノー;S5505ノー)、再生機器は検索テーブルなしでユーザからの再生開始指示を待つか、自動的に検索テーブルの情報(VCKSRCT.IFO)を作成する(S5506)。
この自動作成は、例えばデフォルトで用意した複数のVclickオブジェクトのIDそれぞれに、関連する時間および/またはテキストを、図54のVCKINDEX.IFO(VclickデータとDVDビデオの関係を示す情報)を参照して対応付けることで具現できる(図58中の(a)参照)。
あるいは、図14に示した“continue_flag”や“ojbect_subid”等を利用して、検索テーブルの情報(VCKSRCT.IFO)を自動作成することも可能である(図58中の(b)参照)。
あるいは、デフォルトで用意した複数のVclickオブジェクトのIDそれぞれに、DVDビデオのコンテンツとして記録された映像のチャプタ毎の指定時間を対応させることで、検索テーブルの情報(VCKSRCT.IFO)を自動作成することも可能である(図58中の(c)、図59等参照)。
図56および図57は、オブジェクトの選択方法および再生方法の一例を説明するフローチャート図である。メニューを含むDVD再生中にユーザ動作により、検索が開始される(S5601またはS5701)。リモコンなどによってユーザの検索が開始されると、検索メニューを表示し(S5602またはS5702)、キーワードによる一致検索(S5606〜S5607またはS5706〜S5707)か、選択検索か(S5603またはS5703)が選ばれる。
図58は、この発明の一実施の形態に係る検索テーブルの構成例(その1)を説明する図である。ユーザはVcobjタグ内に記述されるテキスト情報(図58中の“丸・丸・丸・丸”や“菱形・菱形・菱形・菱形”等参照)によるテキストの一致検索、もしくは選択検索を行なうことができる。テキストの一致検索はリモコン、キーボードやマウスなどの入力装置を使用してユーザが検索したい言葉を入力する。その言葉に一致、もしくは関連のあるVclickデータを検索して、対応するサムネイルの表示や対応個所へのジャンプなどによって、ユーザに検索結果を表示(通知)できる。
また、選択検索の場合には、ユーザはリモコン、キーボード、マウス等の入力装置を用い、画面上に表示されるキーワードを順番に選択していくことによって検索対象にアクセスすることができる。この方法を採用することで、検索対象の絞込みが可能となる。また、上記2つの方法(選択検索と一致検索)を組み合わせて利用することもできる。
検索テーブルの情報(VCKSRCT.IFO)は、図58に例示されるようにXMLで作成されており、Vcobjタグ内に属性として対象VclickデータのobjectIDを持つことで関連付けている。また、より早く対象オブジェクトにアクセスするためにオブジェクトの再生開始時間などを属性情報として持つこともできる。
図59は、この発明の一実施の形態に係る検索テーブルの構成例(その2)を説明する図である。図59に例示されるように、同じテキスト情報に異なったVclickデータが指定されている(Vcobj id=“03h”とVcobj id=“04h”)ような場合に対応するため、属性情報にチャプターナンバーや表示時間など(例えばtime=“00:00-00:50”と“ch=1”)の指定をすることも可能としている。
図60は、この発明の一実施の形態に係る検索テーブルの構成例(その3)を説明する図である。図60の例では、XMLデータを階層構造にしておき、peopleタグの子要素として役名を表すcast、役者の名前を表すactorなどを持つ(ここでは、例えば“<people>人の名前”が上位階層で“<cast>役名”と“<actor>役者名”が下位階層)。このように、XMLデータを階層構造にすることで、階層を上から下へたどるような(場合によっては階層を下流へたどる途中で下から上へ戻るような)選択検索により、想定するVclcikデータへの容易なアクセスを可能にする。
図61は、この発明の一実施の形態に係る検索テーブルの構成例(その4)を説明する図である。図61の例は、図60の階層構造を深くした場合である。この例では、「人の名前」→「役名」→「シーン」の順に選択することで対象Vclickデータへ容易に到達することができるようになる。
図62は、この発明の一実施の形態に係る検索テーブルの構成例(その5)を説明する図である。この例においては、「人」→「アイテム」→「シーン」における「シーン」と、「アイテム」→「人」→「シーン」における「シーン」の内容が同じであるような場合が考えられる。そこで、図62の例では、同じデータの再利用を可能にするために各要素を別に(別ファイルとして)設け、同じデータ(図62の例では、誰かがコップというアイテムを持つ「シーン」のデータ)を適宜反復参照することで再利用可能にしている。
図63は、この発明の一実施の形態に係る検索テーブルを用いる場合において、異なる場面で同じデータを使い回す場合の例を説明する図である。この例では、人の検索データI*とアイテムの検索データIが、「人→アイテム→シーン」という検索手順と「アイテム→人→シーン」という検索手順において、共用(使い回し)できることが図解されている。
図64は、この発明の一実施の形態に係る検索方法(選択検索)を説明する図である。この図は、選択検索を行なったときの手順を例示している。すなわち、(a)ユーザ動作により検索が開始される→(b)選択検索か一致検索かを選ぶ→(c)選択検索を選んだ場合、次の選択肢「人」「アイテム」「シーン」が表示される→(d)「人」を選ぶと次の選択し「Aさん」「Bさん」…が表示される→(e)Aさんを選択すると、(f)次の選択肢「服」「靴」「コップ」などが表示される。
ここで、検索手順の階層構造の途中で検索操作を終了を選択すれば、そこまでにヒットしている検索結果を全て表示させることもできる。また、「戻る」で1段階づつ前の選択肢へ戻ることもできる。また、画面左上の“一致”を選択することで、現在ヒットしている選択肢に絞り込まれた中で一致検索を行なうこともできる。なお、図示中カッコ内に表示される数字(例えば図64(e)の“Aさん(30)”の「30」)は現在ヒットしている検索結果の数を例示している。
図65は、この発明の一実施の形態に係る検索方法(一致検索)を説明する図である。この図は、キーワードの一致検索を行なった場合の手順を例示している。すなわち、(a)ユーザ動作により検索が開始される→(b)選択検索か一致検索かを選ぶ→(c)一致検索を選んだ場合、キーワード入力フィールドが表示される→(d)検索キーワードとして例えば「Aさん、服」と入力した結果、一致した検索結果が表示される。ここ(d)で、続けるを選択することでさらにキーワードの入力を続けることもできる。あるいは、(d)で選択を選ぶことで、現在ヒットしている検索結果の中での選択検索を行なうこともできる。なお、(d)の図示において、検索結果の後にある(30)は現在ヒットしている検索結果の数を例示している。
次にサーバ装置・クライアント装置間のプロトコルについて説明する。Vclickデータをサーバ装置201からクライアント装置200に送信するときに使用するプロトコルとしては、例えばRTP(Real-time Transport Protocol)がある。RTPはUDP/IPとの相性が良く、リアルタイム性を重視しているためにパケットが欠落する可能性がある。RTPを用いると、VclickストリームVCSは送信用パケット(RTPパケット)に分割されて送信される。ここではVclickストリームVCSの送信用パケットへの格納方法例を説明する。
図7と図8はそれぞれVclick_AUのデータサイズが小さい場合と大きい場合の送信用パケット構成方法を説明する図である。図7の700はVclickストリームVCSである。送信用パケットはパケットヘッダー701とペイロードからなる。パケットヘッダー701にはパケットのシリアル番号、送信時刻、発信元の特定情報などが含まれている。ペイロードは送信データを格納するデータ領域である。ペイロードにVclick_AU700から順に取り出したVclick_AU(702)を納めていく。ペイロードに次のVclick_AUが入りきらない場合には残りの部分にパディングデータ703を挿入する。パディングデータはデータのサイズを合わせるためのダミーデータであり、例えば0値の連続である。ペイロードのサイズを1つまたは複数のVclick_AUサイズと等しくできる場合にはパディングデータは不要である。
一方、図8はペイロードに1つのVclick_AUが収まりきらない場合の送信用パケットの構成方法である。Vclick_AU(800)はまず1番目の送信用パケットのペイロードに入りきる部分(802)のみペイロードに格納される。残りのデータ(804)は第2の送信用パケットのペイロードに格納され、ペイロードの格納サイズに余りが生じていればパディングデータ805で埋める。一つのVclick_AUを3つ以上のパケットに分割する場合の方法も同様である。
RTP以外のプロトコルとしては、HTTP(Hypertext Transport Protocol)またはHTTPSを用いることができる。HTTPはTCP/IPとの相性が良く、この場合欠落したデータは再送されるため信頼性の高いデータ通信が行えるが、ネットワークのスループットが低い場合にはデータの遅延が生じるおそれがある。HTTPではデータの欠落がないため、VclickストリームVCSをどのようにパケットに分割して格納するかを特に考慮する必要はない。
(再生手順(ネットワーク))
次に、VclickストリームVCSがサーバ装置201上にある場合における再生処理の手順について説明する。
図37はユーザが再生開始を指示してから再生が開始されるまでの再生開始処理手順を表す流れ図である。まずステップS3700でユーザにより再生開始の指示が入力される。この入力は、インタフェース・ハンドラ207が受け取り、動画像再生コントローラ205に動画像再生準備の命令を出す。次に、分岐処理ステップS3701として、すでにサーバ装置201とのセッションが構築されているかどうかの判定を行う。セッションがまだ構築されていなければステップS3702に、すでに構築されていればステップS3703に処理を移す。ステップS3702ではサーバとクライアント間のセッションを構築する処理を行う。
図9はサーバ・クライアント間の通信プロトコルとしてRTP用いた場合の、セッション構築からセッション切断までの通信手順例である。セッションの始めにサーバ・クライアント間でネゴシエーションを行う必要があるが、RTPの場合にはRTSP(Real Time Streaming Protocol)が用いられることが多い。ただし、RTSPの通信には高信頼性が要求されるため、RTSPはTCP/IPで、RTPはUDP/IPで通信を行うのが好ましい。まず、セッションを構築するために、クライアント装置(図2の例では200)はストリーミングされるVclickデータに関する情報提供をサーバ装置(図2の例では201)に要求する(RTSPのDESCRIBEメソッド)。
ここで、再生される動画像に対応したデータを配信するサーバ(201)のアドレスは、例えば動画像データ記録媒体にアドレス情報を記録しておくなどの方法であらかじめクライアント(200)に知らされているものとする。サーバ装置201はこの応答としてVclickデータの情報をクライアント装置200に送る。具体的には、セッションのプロトコルバージョン、セッション所有者、セッション名、接続情報、セッションの時間情報、メタデータ名、メタデータ属性といった情報がクライアント装置に送られる。これらの情報記述方法としては、例えばSDP(Session Description Protocol)を使用する。次にクライアント装置200はサーバ装置201にセッションの構築を要求する(RTSPのSETUPメソッド)。サーバ装置201はストリーミングの準備を整え、セッションIDをクライアント装置200に返す。ここまでの処理がRTPを用いる場合のステップS3702の処理である。
RTPではなくHTTPが使われている場合の通信手順は、例えば図10のように行う。まず、HTTPより下位の階層であるTCPでのセッション構築(3 way handshake)を行う。ここで、先ほどと同様に、再生される動画像に対応したデータを配信するサーバ(201)のアドレスはあらかじめクライアント(200)に知らされているものとする。この後、クライアント装置200の状態(例えば、製造国、言語、各種パラメータの選択状態など)をSDP等を用いてサーバ装置201に送る処理が行われるようにしてもよい。ここまでがHTTPの場合のステップS3702の処理となる。
ステップS3703では、サーバ装置201とクライアント装置200間のセッションが構築された状態で、サーバ(201)にVclickデータ送信を要求する処理を行う。これはインタフェース・ハンドラ207がネットワーク・マネージャ208に指示を出し、ネットワーク・マネージャ208がサーバ(201)に要求を出すことにより行われる。RTPの場合には、ネットワーク・マネージャ208はRTSPのPLAYメソッドをサーバに送ることでVclickデータ送信を要求する。サーバ装置は、これまでにクライアントから受け取った情報とサーバ装置内にあるVclickインフォVCIを参照して送信すべきVclickストリームVCSを特定する。さらに、Vclickデータ送信要求に含まれる再生開始位置のタイムスタンプ情報とサーバ装置内にあるVclickアクセス・テーブルVCAを用いてVclickストリームVCS中の送信開始位置を特定し、VclickストリームVCSをパケット化してRTPによりクライアント装置に送る。
一方HTTPの場合には、ネットワーク・マネージャ208はHTTPのGETメソッドを送信することによりVclickデータ送信を要求する。この要求には、動画像の再生開始位置のタイムスタンプの情報を含めても良い。サーバ装置は、RTPの時と同様の方法により送信すべきVclickストリームVCSと、このストリーム中の送信開始位置を特定し、VclickストリームVCSをHTTPによりクライアント装置に送る。
次に、ステップS3704では、サーバから送られてくるVclickストリームVCSをバッファ209にバッファリングする処理を行う。これは、VclickストリームVCSの再生中にサーバからのVclickストリーム送信が間に合わず、バッファ209が空になってしまうことをさけるために行われる。メタデータ・マネージャ210からバッファに十分なVclickストリームVCSが蓄積されたことがインタフェース・ハンドラに通知されると、ステップS3705の処理に移る。ステップS3705では、インタフェース・ハンドラがコントローラ205に動画像の再生開始命令を出し、さらにメタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出を開始するよう命令を出す。
図38は図37とは別の再生開始処理の手順を説明する流れ図である。図37の流れ図で説明される処理では、ネットワークの状態やサーバ、クライアント装置の処理能力により、ステップS3704でのVclickストリームVCSを一定量バッファリングする処理に時間がかかる場合がある。すなわち、ユーザが再生を指示してから実際に再生が始まるまでに時間がかかってしまうことがある。図38の処理手順では、ステップS3800でユーザが再生開始を指示すると、次のステップS3801で直ちに動画像の再生が開始される。すなわち、ユーザからの再生開始指示を受けたインタフェース・ハンドラ207は、直ちにコントローラ205に再生開始命令を出す。これにより、ユーザは再生を指示してから動画像を視聴するまで待たされることがなくなる。次の処理ステップS3802からステップS3805までは、図37のステップS3701からステップS3704と同一の処理である。
ステップS3806では、再生中の動画像に同期させてVclickストリームVCSを復号する処理を行う。すなわち、インタフェース・ハンドラ207は、メタデータ・マネージャ210からバッファ209に一定量のVclickストリームVCSが蓄積された通知を受け取ると、メタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出開始を命令する。メタデータ・マネージャ210はインタフェース・ハンドラから再生中の動画像のタイムスタンプを受け取り、バッファに蓄積されたデータからこのタイムスタンプに該当するVclick_AUを特定し、メタデータ・デコーダ217へ送出する。
図38の処理手順では、ユーザは再生を指示してから動画像を視聴するまで待たされることがないが、再生開始直後はVclickストリームVCSの復号が行われないため、オブジェクトに関する表示が行われなかったり、オブジェクトをクリックしても何も動作が起こらないなどの問題点がある。
上記の問題は、動画像再生開始後VclickストリームVCSの復号が開始されたあとは解消する。従い、再生開始後一定量のVCS(Vclick_AU)の復号が済むまでの期間を、ユーザが苛立たない程度に短縮すればこの問題は実用上解決できる。そこで、クライアント装置200とサーバ装置201を高速回線を介して常時接続状態としておき、ディスク装置231にVclickを利用するDVDディスクが装填されたとき(あるいは装填されたディスクから再生するタイトルが選択されたあと)、ステップS3802〜S3803の処理を予めバックグラウンドで実行しておくことが考えられる。この場合、ステップS3800のユーザ指示があると、直ぐにステップS3801のDVD再生が開始されると同時に、ステップS3802〜S3803の処理を飛ばして、高速回線を介してサーバから直ぐにVclickストリームVCSのバッファ取り込み(ステップS3804〜S3805)が始まる。この取り込み量が一定量(例えば12kバイト)に達したら、直ちにVclickストリームVCS(その中の最初のVclick_AU)の復号が始まる(ステップS3806)。
動画像の再生中、クライアント装置200のネットワーク・マネージャ208はサーバ装置201から次々に送られてくるVclickストリームVCSを受信し、バッファ209に蓄積する。蓄積されたオブジェクト・メタデータは適切なタイミングでメタデータ・デコーダ217に送られる。すなわち、メタデータ・マネージャ208は、メタデータ・マネージャ210から送られてくる再生中の動画像のタイムスタンプを参照し、バッファ209に蓄積されているデータからそのタイムスタンプに対応したVclick_AUを特定し、この特定されたオブジェクト・メタデータをAU単位でメタデータ・デコーダ217に送る。メタデータ・デコーダ217は受け取ったデータを復号する。ただし、クライアント装置200が現在選択しているカメラアングルと異なるカメラアングル用のデータの復号は行わないようにしても良い。また、再生中の動画像のタイムスタンプに対応したVclick_AUがすでにメタデータ・デコーダ217にあることがわかっている場合には、オブジェクト・メタデータをメタデータ・デコーダ217に送らないようにしても良い。
再生中の動画像のタイムスタンプは逐次インタフェース・ハンドラ207からメタデータ・デコーダ217に送られている。メタデータ・デコーダ217ではこのタイムスタンプに同期させてVclick_AUを復号し、必要なデータをAVレンダラー218に送る。例えば、Vclick_AUに記述された属性情報によりオブジェクト領域の表示が指示されている場合には、オブジェクト領域のマスク画像や輪郭線などを生成し、再生中の動画像のタイムスタンプに合わせてA/Vレンダラー218に送る。また、メタデータ・デコーダ217は再生中の動画像のタイムスタンプとVclick_AUの有効時刻とを比較し、不要になった古いオブジェクト・メタデータを判定してそのデータを削除する。
図39は再生停止処理の手順を説明する流れ図である。ステップS3900では、ユーザにより動画像の再生中に再生停止が指示される。次にステップS3901で動画像再生を停止する処理が行われる。これはインタフェース・ハンドラ207がコントローラ205に停止命令を出すことにより行われる。また、同時にインタフェース・ハンドラはメタデータ・マネージャ210にオブジェト・メタデータのメタデータ・デコーダ217への送出停止を命令する。
ステップS3902はサーバ(201)とのセッションを切断する処理である。RTPを用いている場合には、図9に示すようにRTSPのTEARDOWNメソッドをサーバに送る。TEARDOWNのメッセージを受け取ったサーバ装置201はデータ送信を中止してセッションを終了し、クライアント装置200に確認メッセージを送る。この処理により、セッションに使用していたセッションIDが無効となる。一方、HTTPを用いている場合には、図10に示されているようにHTTPのCloseメソッドをサーバ(201)に送り、セッションを終了させる。
(ランダムアクセス手順(ネットワーク))
次に、VclickストリームVCSがサーバ装置201上にある場合におけるランダムアクセス再生の手順について説明する。
図40はユーザがランダムアクセス再生の開始を指示してから再生が開始されるまでの処理手順を表す流れ図である。まずステップS4000でユーザによりランダムアクセス再生の開始指示が入力される。入力の方法としては、チャプター等のアクセス可能位置のリストからユーザが選択する方法、動画像のタイムスタンプに対応づけられたスライドバー上からユーザが一点を指定する方法、直接動画像のタイムスタンプを入力する方法などがある。入力されたタイムスタンプは、インタフェース・ハンドラ207が受け取り、動画再生コントローラ205に動画像再生準備の命令を出す。もしもすでに動画像を再生中である場合には、再生中の動画像の再生停止を指示してから動画像再生準備の命令を出す。次に、分岐処理ステップS4001として、すでにサーバ装置201とのセッションが構築されているかどうかの判定を行う。動画像を再生中である場合など、すでにセッションが構築されている場合にはステップS4002のセッション切断処理を行う。セッションがまだ構築されていればステップS4002の処理を行わずにステップS4003に処理を移す。ステップS4003ではサーバ(201)とクライアント(200)間のセッションを構築する処理を行う。この処理は図37のステップS3702と同一の処理である。
次にステップS4004では、サーバ装置201とクライアント装置200間のセッションが構築された状態で、サーバ(201)に再生開始位置のタイムスタンプを指定してVclickデータ送信を要求する処理を行う。これはインタフェース・ハンドラ207がネットワーク・マネージャ208に指示を出し、ネットワーク・マネージャ208がサーバ(201)に要求を出すことにより行われる。RTPの場合には、ネットワーク・マネージャ208はRTSPのPLAYメソッドをサーバに送ることでVclickデータ送信を要求する。このとき、Range記述を用いるなどの方法で再生開始位置を特定するタイムスタンプもサーバ(201)に送る。サーバ装置201は、これまでにクライアント(200)から受け取った情報とサーバ装置201内にあるVclickインフォVCIを参照して送信すべきオブジェクト・メタデータ・ストリームを特定する。さらに、サーバ装置201は、Vclickデータ送信要求に含まれる再生開始位置のタイムスタンプ情報とサーバ装置201内にあるVclickアクセス・テーブルVCAを用いてVclickストリームVCS中の送信開始位置を特定し、VclickストリームVCSをパケット化してRTPによりクライアント装置200に送る。
一方、HTTPの場合には、ネットワーク・マネージャ208はHTTPのGETメソッドを送信することによりVclickデータ送信を要求する。この要求には、動画像の再生開始位置のタイムスタンプの情報が含まれている。サーバ装置201は、RTPの時と同様に、Vclick情報ファイルVCIを参照して送信すべきVclickストリームVCSを特定し、さらにタイムスタンプ情報とサーバ装置201内にあるVclickアクセス・テーブルVCAを用いてVclickストリームVCS中の送信開始位置を特定し、VclickストリームVCSをHTTPによりクライアント装置200に送る。
次に、ステップS4005では、サーバ(201)から送られてくるVclickストリームVCSをバッファ209にバッファリングする処理を行う。これは、VclickストリームVCSの再生中にサーバ(201)からのVclickストリーム送信が間に合わず、バッファ209が空になってしまうことをさけるために行われる。メタデータ・マネージャ210からバッファ209に十分なVclickストリームVCSが蓄積されたことがインタフェース・ハンドラに通知されると、ステップS4006の処理に移る。ステップS4006では、インタフェース・ハンドラ207が、コントローラ205に動画像の再生開始命令を出し、さらにメタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出を開始するよう命令を出す。
図41は図40とは別のランダムアクセス再生開始処理の手順を説明する流れ図である。図40の流れ図で説明される処理では、ネットワークの状態やサーバ/クライアント装置(201/200)の処理能力により、ステップS4005でのVclickストリームVCSを一定量バッファリングする処理に時間がかかる場合がある。すなわち、ユーザが再生を指示してから実際にステップS4006での再生が始まるまでにユーザを苛立たせるほど時間がかかってしまうことがある。
これに対し、図41の処理手順では、ステップS4100でユーザが再生開始を指示すると、次のステップS4101で直ちに動画像の再生が開始される。すなわち、ユーザからの再生開始指示を受けたインタフェース・ハンドラ207は、直ちにコントローラ205にランダムアクセス再生開始命令を出す。これにより、ユーザは再生を指示してから動画像を視聴するまで待たされることがなくなる。以後の処理ステップS4102からステップS4106までは、図40のステップS4001からステップS4005と同一の処理である。
ステップS4107では、再生中の動画像に同期させてVclickストリームVCSを復号する処理を行う。すなわち、インタフェース・ハンドラ207は、メタデータ・マネージャ210からバッファ209に一定量のVclickストリームVCSが蓄積された通知を受け取ると、メタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出開始を命令する。メタデータ・マネージャ210は、インタフェース・ハンドラ207から再生中の動画像のタイムスタンプを受け取り、バッファ209に蓄積されたデータからこのタイムスタンプに該当するVclick_AUを特定し、特定したAUをメタデータ・デコーダ217へ送出する。
図41の処理手順では、ユーザは再生を指示してから動画像を視聴するまで待たされることがないが、再生開始直後はVclickストリームVCSの復号が行われないため、オブジェクトに関する表示が行われなかったり、オブジェクトをクリックしても何も動作が起こらないなどの問題点がある。
上記の問題は、動画像再生開始後VclickストリームVCSの復号が始まったあとは解消するのであるから、再生開始後VCSの復号が始まるまでの期間を、ユーザが苛立たない程度に短縮すればこの問題は実用上解決できる。そこで、クライアント装置200とサーバ装置201を高速回線を介して常時接続状態としておき、ディスク装置231にVclickを利用するDVDディスクが装填されたとき(あるいは装填されたディスクから再生するタイトルが選択されたあと)、ステップS4102〜S4104の処理を予めバックグラウンドで実行しておくことが考えられる。この場合、ステップS4100のユーザ指示があると、直ぐにステップS4101のDVD再生が開始されると同時に、ステップS4102〜S4104の処理を飛ばして、高速回線を介してサーバから直ぐにVclickストリームVCSのバッファ取り込みが始まる(ステップS4106)。この取り込み量が一定量(例えば12kバイト)に達したら、直ちにVclickストリームVCS(その中の最初のVclick_AU)の復号が始まる(ステップS4107)。なお、その後の動画像の再生中の処理と動画像停止処理は、通常のDVD再生処理の場合と同一であるため、説明は省略する。
(再生手順(ローカル))
次に、VclickストリームVCSが動画像データ記録媒体231上にある場合における再生処理の手順について説明する。
図42はユーザが再生開始を指示してから再生が開始されるまでの再生開始処理手順を表す流れ図である。まずステップS4200でユーザにより再生開始の指示が入力される。この入力は、インタフェース・ハンドラ207が受け取り、動画再生コントローラ205に動画像再生準備の命令を出す。次に、ステップS4201では、使用するVclickストリームVCSを特定する処理が行われる。この処理では、インタフェース・ハンドラは動画像データ記録媒体231上にあるVclick情報ファイルVCIを参照し、ユーザが再生を指定した動画像に対応するVclickストリームVCSを特定する。
ステップS4202では、バッファにVclickストリームVCSを格納する処理が行われる。この処理を行うため、インタフェース・ハンドラ207はまずメタデータ・マネージャ210にバッファを確保する命令を出す。確保すべきバッファのサイズは、特定されたVclickストリームVCSを格納するのに十分なサイズとして決められるが、通常はこのサイズを記述したバッファ初期化用文書が動画像データ記録媒体231に記録されている。初期化用文書がない場合には、あらかじめ決められているサイズを適用する。バッファの確保が完了すると、インタフェース・ハンドラ207はコントローラ205に特定されたVclickストリームVCSを読み出してバッファに格納する命令を出す。
VclickストリームVCSがバッファ209に格納されると、次にステップS4203の再生開始処理が行われる。この処理では、インタフェース・ハンドラ207が動画再生コントローラ205に動画像の再生命令を出し、同時にメタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出を開始するよう命令を出す。
動画像の再生中、動画像データ記録媒体231から読み出されたVclick_AUはバッファ209に蓄積される。蓄積されたVclickストリームVCSは適切なタイミングでメタデータ・デコーダ217に送られる。すなわち、メタデータ・マネージャ208は、メタデータ・マネージャ210から送られてくる再生中の動画像のタイムスタンプを参照し、バッファ209に蓄積されているデータからそのタイムスタンプに対応したVclick_AUを特定し、この特定されたVclick_AUをメタデータ・デコーダ217に送る。メタデータ・デコーダ217は受け取ったデータを復号する。ただし、クライアント装置が現在選択しているカメラアングルと異なるカメラアングル用のデータの復号は行わないようにしても良い。また、再生中の動画像のタイムスタンプに対応したVclick_AUがすでにメタデータ・デコーダ217にあることがわかっている場合には、VclickストリームVCSをメタデータ・デコーダ217に送らないようにしても良い。
再生中の動画像のタイムスタンプは逐次インタフェース・ハンドラからメタデータ・デコーダ217に送られている。メタデータ・デコーダ217ではこのタイムスタンプに同期させてVclick_AUを復号し、必要なデータをAVレンダラー218に送る。例えば、オブジェクト・メタデータのAUに記述された属性情報によりオブジェクト領域の表示が指示されている場合には、オブジェクト領域のマスク画像や輪郭線などを生成し、再生中の動画像のタイムスタンプに合わせてA/Vレンダラー218に送る。また、メタデータ・デコーダ217は再生中の動画像のタイムスタンプとVclick_AUの有効時刻とを比較し、不要になった古いVclick_AUを判定してそのデータを削除する。
ユーザにより動画像の再生中に再生停止が指示されると、インタフェース・ハンドラ207はコントローラ205に動画像再生の停止命令と、VclickストリームVCSの読み出しの停止命令を出す。この指示により、動画像の再生が終了する。
(ランダムアクセス手順(ローカル))
次に、VclickストリームVCSが動画像データ記録媒体231上にある場合におけるランダムアクセス再生の処理手順について説明する。
図43はユーザがランダムアクセス再生の開始を指示してから再生が開始されるまでの処理手順を表す流れ図である。まずステップS4300でユーザによりランダムアクセス再生開始の指示が入力される。入力の方法としては、チャプター等のアクセス可能位置のリストからユーザが選択する方法、動画像のタイムスタンプに対応づけられたスライドバー上からユーザが一点を指定する方法、直接動画像のタイムスタンプを入力する方法などがある。入力されたタイムスタンプは、インタフェース・ハンドラ207が受け取り、動画再生コントローラ205に動画像のランダムアクセス再生準備の命令を出す。
次に、ステップS4301では、使用するVclickストリームVCSを特定する処理が行われる。この処理では、インタフェース・ハンドラは動画像データ記録媒体231上にあるVclick情報ファイルVCIを参照し、ユーザが再生を指定した動画像に対応するVclickストリームVCSを特定する。さらに、動画像データ記録媒体231上にあるVclickアクセス・テーブルVCA、もしくはメモリ(バッファ209もしくはその他のワークメモリエリア)上に読み込んであるVclickアクセス・テーブルVCAを参照し、動画像のランダムアクセス先に対応するVclickストリームVCS中のアクセスポイントを特定する。
ステップS4302は分岐処理であり、特定されたVclickストリームVCSが現在バッファ209に読み込まれているかどうかを判定する。バッファに読み込まれていない場合にはステップS4303の処理を行ってからステップS4304の処理に移る。現在バッファに読み込まれている場合には、ステップS4303の処理は行わずにステップS4304の処理に移る。ステップS4304は動画像のランダムアクセス再生開始、及びVclickストリームVCSの復号開始である。この処理では、インタフェース・ハンドラ207が動画再生コントローラ205に動画像のランダムアクセス再生命令を出し、同時にメタデータ・マネージャ210にVclickストリームVCSのメタデータ・デコーダ217への送出を開始するよう命令を出す。その後は動画像の再生に同期させてVclickストリームVCSの復号処理が行われる。その後の動画像再生中および動画像再生停止処理については、通常の再生処理と同一であるため、説明は省略する。
(クリックから関連情報表示までの手順)
次に、ユーザがマウス等のポインティングデバイスを使ってオブジェクト領域内をクリックした場合のクライアント装置の動作について説明する。ユーザがクリックを行うと、まず動画像上のクリックされた座標位置がインタフェース・ハンドラ207に入力される。インタフェース・ハンドラ207はメタデータ・デコーダ217にクリック時の動画像のタイムスタンプと座標を送る。メタデータ・デコーダ217は、タイムスタンプと座標から、ユーザによって指示されたオブジェクトがどれであるかを特定する処理を行う。メタデータ・デコーダ217では、動画像の再生に同期させてVclickストリームVCSをデコードしており、従ってクリックされた時のタイムスタンプにおけるオブジェクトの領域が生成されているため、この処理は容易に実行できる。クリックされた座標に複数のオブジェクト領域が存在する場合には、Vclick_AU内に含まれる階層情報を参照して最も前面にあるオブジェクトを特定する。
ユーザによって指定されたオブジェクトが特定されると、メタデータ・デコーダ217はそのオブジェクト属性情報403に記述されたアクション記述(動作を指示するスクリプト)をスクリプト・インタプリタ212に送る。アクション記述を受け取ったスクリプト・インタプリタ212は、その動作内容を解釈し、実行する。例えば、指定されたHTMLファイルの表示を行ったり、指定された動画像の再生を開始したりする。これらHTMLファイルや動画像データは、クライアント装置200に記録されている場合、サーバ装置201からネットワーク経由で送られてくる場合、ネットワーク上の別のサーバ上に存在している場合の、いずれでも良い。
(データ構造の詳細)
次に、より具体的なデータ構造の構成例について説明する。図11はVclickストリームVCS(図5では506)のデータ構造の例である。各データ要素の意味は以下の通りである:
vcs_start_codeは、VclickストリームVCSの始まりを示す;
data_lengthは、このVclickストリームVCSにおけるdata_lengthより後の部分のデータ長をバイトで指定する;
data_bytesはVclick_AUのデータ部である。この部分には先頭にVclickストリーム506のヘッダ507(図5)があり、続いて1つまたは複数のVclick_AU(図4)やNULL_AU(図48)が並ぶ。
図12はVclickストリーム(図5の例でいえばストリーム506のヘッダ507)のデータ構造の例である。各データ要素の意味は以下の通りである:
vcs_header_codeは、VclickストリームVCS(506)のヘッダ(507)の始まりを示す;
data_lengthは、VclickストリームVCSのヘッダのうち、data_lengthより後の部部のデータ長をバイト単位で表す;
vclick_versionは、フォーマットのバージョンを指定する。この値はこの仕様の中では例えば01hとする;
bit_rateは、このVclickストリームVCSの最大のビット・レートを指定する。
図13はVclick_AU(図5の例でいえば500〜505の各長方形部分)のデータ構造の例である。各データ要素の意味は以下の通りである:
vclick_start_codeは、各Vclick_AUの始まりを示す;
data_lengthは、このVclick_AUのdata_lengthより後の部分のデータ長をバイトで指定する;
data_byteはVclick_AUのデータ部である。この部分にヘッダ401、タイムスタンプ402、オブジェクト属性情報403、オブジェクト領域情報400が含まれる。
図14はVclick_AUのヘッダ401(図4)のデータ構造の例である。各データ要素の意味は以下の通りである:
vclick_header_codeは、各Vclick_AUのヘッダの始まりを示す;
data_lengthは、このVclick_AUのヘッダにおけるdata_lengthより後の部分のデータ長をバイトで指定される;
filtering_idはVclick_AUの識別IDである。クライアント装置の属性とこのIDにより、復号すべきVclick_AUかどうかを判定するためのデータである;
object_idはVclickデータで記述されるオブジェクトの識別番号である。object_idの同じ値が2つのVclick_AUの中で使用される場合、両者は意味的に同一のオブジェクト用のデータである;
object_subidはオブジェクトの意味的な連続性を表す。2つのVclick_AUにおいてobject_idおよびobject_subidの両方が同じである場合、両者は連続的なオブジェクトを意味する;
continue_flagはフラグである。このフラグが"1"である場合、このVclick_AUに記述されたオブジェクト領域と、同一のobject_idを有する次のVclick_AUに記述されたオブジェクト領域とは連続していることを示す。そうでない場合にはこのフラグは"0"となる;
layerは、オブジェクトの階層値を表す。階層値が大きいほどオブジェクトが画面上で手前にあることを意味する。なお、上述したように、filtering_idにより「復号すべきVclick_AUかどうかを判定」できることから、filtering_idにより、「復号すべきVclick_AUを含むVclickストリームVCS」も識別できることになる。すなわち、filtering_idにより、「動画像メタデータのストリーム選択を行う」ことができる。
図15はVclick_AUのタイムスタンプ(図4の402)のデータ構造の例である。この例では、動画像データ記録媒体としてDVDを用いる場合を仮定している。以下のタイムスタンプを用いることにより、DVD上の動画像の任意の時刻を指定することが可能となり、動画像とVclickデータの同期が実現できる。各データ要素の意味は以下の通りである:
time_typeは、DVD用タイムスタンプの始まりを示す;
data_lengthは、このタイムスタンプのうちdata_lengthより後の部分のデータ長をバイトで指定する;
VTSNは、DVDビデオのVTS(ビデオタイトルセット)番号を示す。
TTNは、DVDビデオのタイトル・ドメインにおけるタイトル番号を示すもので、DVDプレーヤのシステムパラメータSPRM(4)にストアされる値に相当する;
VTS_TTNは、DVDビデオのタイトル・ドメインにおけるVTSタイトル番号を示すもので、DVDプレーヤのシステムパラメータSPRM(5)にストアされる値に相当する;
TT_PGCNは、DVDビデオのタイトル・ドメインにおけるタイトルPGC(プログラムチェーン)番号を示すもので、DVDプレーヤのシステムパラメータSPRM(6)にストアされる値に相当する;
PTTNは、DVDビデオの部分タイト(Part_of_Title)番号を示すもので、DVDプレーヤのシステムパラメータSPRM(7)にストアされる値に相当する。
CNは、DVDビデオのセル番号を示す;
AGLNは、DVDビデオのアングル番号を示す;
PTS[s .. e]は、DVDビデオの表示タイムスタンプのうち、sビット目からeビット目までのデータを示す。
図16はVclick_AUのタイムスタンプ・スキップのデータ構造の例である。タイムスタンプ・スキップがタイムスタンプの代わりにVclick_AUに記述されている場合、このVclick_AUのタイムスタンプが直前のVclick_AUのタイムスタンプと同一である事を意味している。各データ要素の意味は以下の通りである:
time_typeは、タイムスタンプ・スキップの始まりを示す;
data_lengthは、このタイムスタンプ・スキップのうちdata_lengthより後の部分のデータ長をバイトで指定する。しかし、タイムスタンプ・スキップはtime_typeとdata_lengthのみから構成されるため、この値は常に0となる。
図17はVclick_AUのオブジェクト属性情報403(図4)のデータ構造の例である。各データ要素の意味は以下の通りである:
vca_start_codeは、各Vclick_AUのオブジェクト属性情報の始まりを示す;
data_lengthは、このオブジェクト属性情報のうちdata_lengthより後の部分のデータ長をバイトで指定する;
data_bytesはオブジェクト属性情報のデータ部である。この部分には1つまたは複数の属性が記述される。
次に、オブジェクト属性情報403の中に記述される属性情報の詳細について説明する。図18はオブジェクト属性情報403の中で記述可能な属性の種類の一覧である。最大値の欄には、それぞれの属性について、一つのオブジェクト・メタデータAU内に記述可能な最大のデータ数の例を示してある。
attribute_idは、各属性データ中に含まれるIDで、属性の種類を見分けるためのデータである。名前属性は、オブジェクトの名前を特定するための情報である。アクション属性は、動画像中のオブジェクト領域がクリックされたときに、どのようなアクションを行うべきかが記述される。輪郭線属性は、オブジェクトの輪郭線をどのように表示させるかの属性を表す。点滅領域属性は、オブジェクト領域を点滅して表示する際の点滅色を特定する。モザイク領域属性は、オブジェクト領域をモザイク化して表示する際のモザイク化の仕方が記述されている。塗りつぶし領域属性は、オブジェクト領域に色を付けて表示させる際の色を特定する。
テキストカテゴリーに属する属性は、動画像に文字を表示させたいときに、表示させる文字に関する属性を定義する。テキスト情報には、表示させるテキストを記述する。テキスト属性は、表示させるテキストの色やフォント等の属性を特定する。ハイライト効果属性は、テキストの一部または全てをハイライト表示させる際に、どの文字をどのようにハイライト表示させるかを特定する。点滅効果属性は、テキストの一部または全てを点滅表示させる際に、どの文字をどのように点滅表示させるかを特定する。スクロール効果属性には、表示させるテキストをスクロールさせる際に、どの方向にどのような速さでスクロールさせるかが記述されている。カラオケ効果属性は、テキストの色を順次変更していく際に、どのようなタイミングでどこの文字の色を変更させるかを特定する。
最後に、階層拡張属性は、オブジェクトの階層値がVclick_AU内で変化する場合に、階層値の変化のタイミングとその値を定義するために用いられる。以上の属性のデータ構造について、以下で個々に説明する。
図19はオブジェクトの名前属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。名前属性については、この値は00hとする;
data_lengthは、名前属性データのdata_lengthより後のデータ長をバイトで表す;
languageは、以下の要素(nameとannotation)の記述に用いた言語を特定する。言語の指定にはISO-639「code for the representation of names of languages」を用いる;
name_lengthは、バイトでname要素のデータ長さを指定する;
nameは文字列であり、このVclick_AUで記述されているオブジェクトの名前を表す;
annotation_lengthは、バイトでannotation要素のデータ長を表す;
annotationは文字列であり、このVclick_AUで記述されているオブジェクトに関する注釈を表す。
図20はオブジェクトのアクション属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。アクション属性については、この値は01hとする;
data_lengthは、アクション属性データのうちdata_lengthより後の部分のデータ長をバイトで表す;
script_languageは、script要素に記述されているスクリプト言語の種類を特定する;
script_lengthは、バイト単位でscript要素のデータ長を表す;
scriptは文字列であり、このVclick_AUで記述されているオブジェクトがユーザにより指定された場合に実行すべきアクションをscript_languageで指定されたスクリプト言語で記述されている。
図21はオブジェクトの輪郭線属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性のタイプを指定する。輪郭線属性については、この値は02hとする;
data_lengthは、輪郭線属性データうちdata_lengthより後の部分のデータ長を指定する;
color_r、color_g、color_b、color_aは、このオブジェクト・メタデータAUで記述されているオブジェクトの輪郭の表示色を指定する;
color_r、color_gおよびcolor_bはそれぞれ色のRGB表現における赤、緑および青の値を指定する。一方、color_aは透明度を示す;
line_typeは、このVclick_AUで記述されているオブジェクトの輪郭線の種類(実線、破線など)指定する;
thicknessは、このVclick_AUで記述されているオブジェクトの輪郭線の太さをポイントで指定する。
図22はオブジェクトの点滅領域属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。点滅領域属性データについては、この値は03hとする;
data_lengthは、点滅領域属性データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
color_r、color_g、color_b、color_aは、このVclick_AUで記述されているオブジェクトの領域の表示色を指定する。color_r、color_gおよびcolor_bはそれぞれ色のRGB表現における赤、緑および青の値を指定する。一方、color_aは透明度を示す。オブジェクト領域の点滅は、塗りつぶし領域属性の中で指定された色とこの属性で指定された色とを交互に表示させることにより実現される;
intervalは、点滅の時間間隔を指定する。
図23はオブジェクトのモザイク領域属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。モザイク領域属性データについては、この値は04hとする;
data_lengthは、モザイク領域属性データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
mosaic_sizeは、モザイク・ブロックのサイズをピクセル単位で指定する;
randomnessはモザイク化したブロックの位置を入れ替える場合に、どの程度ランダムに入れ替えるかを表す。
図24はオブジェクトの塗りつぶし領域属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。塗りつぶし領域属性データについては、この値は05hとする;
data_lengthは、塗りつぶし属性データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
color_r、color_g、color_b、color_aは、このVclick_AUで記述されているオブジェクト領域の表示色を指定する。color_r、color_gおよびcolor_bはそれぞれ色のRGB表現における赤、緑および青の値を指定する。一方、color_aは透明度を示す。
図25はオブジェクトのテキスト情報のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト情報については、この値は06hとする;
data_lengthは、オブジェクトのテキスト情報のうちdata_lengthより後の部分のデータ長をバイトで指定する;
languageは、記述されたテキストの言語を示す。言語の指定方法は、例えばISO-639「code for the representation of names of languages」を使うことができる;
char_codeは、テキストのコード種類を特定する。例えば、UTF-8、UTF-16、ASCII、Shift JISなどを指定する;
directionは、文字を並べる際の方向として、左方向、右方向、下方向、上方向を特定する。例えば、英語やフランス語ならば通常文字は左方向に並べる。一方、アラビア語ならば右方向に、日本語ならば左方向か下方向のどちらかに並べる。ただし、言語ごとに決まっている並び方向以外を指定しても良い。また、斜め方向を指定できるようにしても良い;
text_lengthは、バイトでtimed textの長さを指定する;
textは文字列であり、char_codeで指定された文字コードを用いて記述されたテキストである。
図26はオブジェクトのテキスト属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト属性については、この値は07hとする;
data_lengthは、オブジェクトのテキスト属性のうちdata_lengthより後の部分のデータ長をバイトで指定する;
font_lengthは、フォントの記述長をバイト単位で指定する;
fontは文字列であり、テキストを表示する際に用いるフォントを指定する;
color_r、color_g、color_b、color_aは、テキストを表示する際の表示色を指定する。色はRGBにより表現される。また、color_r、color_gおよびcolor_bは、赤、緑および青の値をそれぞれ指定する。また、color_aは透過度を示す。
図27はオブジェクトのテキスト・ハイライト効果属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト・ハイライト効果属性データについては、この値は08hとする;
data_lengthは、オブジェクトのテキスト・ハイライト効果属性データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
entryは、このテキスト・ハイライト効果属性データ中のhighlight_effect_entryの数を示す;
data_bytesにentry個のhighlight_effect_endtryが含まれる;
highlight_effect_endtryの仕様は以下に示す通りである。
図28はオブジェクトのテキスト・ハイライト効果属性のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
start_positionは、強調される文字の開始位置を先頭から当該文字までの文字数により指定する;
end_positionは、強調される文字の終了位置を先頭から当該文字までの文字数により指定する;
color_r、color_g、color_b、color_aは、強調後の文字の表示色を指定する。色はRGBにより表現される。また、color_r、color_gおよびcolor_bは、赤、緑および青の値をそれぞれ指定する。また、color_aは透過度を示す。
図29はオブジェクトのテキスト点滅効果属性のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト点滅効果属性データについては、この値は09hとする;
data_lengthは、テキスト点滅効果属性データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
entryは、このテキスト点滅効果属性データ中のblink_effect_entryの数を示す;
data_bytesにentry個のblink_effect_entryを含む;
blink_effect_entryの仕様は以下の通りである。
図30はオブジェクトのテキスト点滅効果属性のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
start_positionは、点滅させる文字の開始位置を先頭から当該文字までの文字数により指定する;
end_positionは、点滅させる文字の終了位置を先頭から当該文字までの文字数により指定する;
color_r、color_g、color_b、color_aは、点滅文字の表示色を指定する。色はRGBにより表現される。また、color_r、color_gおよびcolor_bは、赤、緑および青の値をそれぞれ指定する。また、color_aは透過度を示す。ここで指定された色と、テキスト属性で指定された色とを交互に表示させることで文字を点滅させる;
intervalは、点滅の時間間隔を指定する。
図31はオブジェクトのテキスト・スクロール効果属性のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト・スクロール効果属性データについては、この値は0ahとする;
data_lengthは、テキスト・スクロール効果属性データのうちdeta_lengthより後の部分のデータ長をバイト単位で指定する;
directionは文字をスクロールする方向を指定する。例えば、0は右から左を、1は左から右を、2は上から下を、3は下から上を示す;
delayは、スクロールの速度を、表示させる先頭の文字が表示されてから最後の文字が表示されるまでの時間差により指定する。
図32はオブジェクトのテキスト・カラオケ効果属性のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトのテキスト・カラオケ効果属性データについては、この値は0bhとする;
data_lengthは、テキスト・カラオケ効果属性データのうちdeta_lengthより後の部分のデータ長をバイト単位で指定する;
start_timeはこの属性データのdata_bytesに含まれる先頭のkaraoke_effect_entryで指定される文字列の文字色の変更開始時刻を指定する;
entryは、このテキスト・カラオケ効果属性データ中のkaraoke_effect_entryの数を示す;
data_bytesにentry個のkaraoke_effect_entryを含む;
karaoke_effect_entryの仕様は次に示す。
図33はオブジェクトのテキスト・カラオケ効果属性のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
end_timeはこのエントリーで指定される文字列の文字色の変更終了時刻を表す。また、このエントリーに続くエントリーがある場合には、次のエントリーで指定される文字列の文字色の変更開始時刻も表す;
start_positionは文字色を変更すべき文字列の先頭文字の位置を、先頭から当該文字までの文字数により指定する;
end_positionは文字色を変更すべき文字列の最後の文字の位置を、先頭から当該文字までの文字数により指定する。
図34はオブジェクトの階層属性拡張のデータ構造の例である。各データ要素の意味は以下の通りである:
attribute_idは、属性データのタイプを指定する。オブジェクトの階層属性拡張データについては、この値は0chとする;
data_lengthは、階層属性拡張データのうちdeta_lengthより後の部分のデータ長をバイト単位で指定する;
start_timeはこの属性データのdata_bytesに含まれる先頭のlayer_extension_entryで指定される階層値が有効となる開始時刻を指定する;
entryは、この階層属性拡張データに含まれるlayer_extension_entryの数を指定する;
data_bytesにentry個のlayer_extension_entryが含まれる;
layer_extension_entryの仕様を次に説明する。
図35はオブジェクトの階層属性拡張のエントリーのデータ構造の例である。各データ要素の意味は以下の通りである:
end_timeは、このlayer_extension_entryで指定される階層値が無効になる時刻を指定する。また、このエントリーの次にもエントリーがある場合には、次のエントリーで指定sれる階層値が有効になる開始時刻も同時に指定する;
layerは、オブジェクトの階層値を指定する。
図36はオブジェクト・メタデータのAUのオブジェクト領域データ400のデータ構造の例である。各データ要素の意味は以下の通りである:
vcr_start_codeは、オブジェクト領域データの開始を意味する;
data_lengthは、オブジェクト領域データのうちdata_lengthより後の部分のデータ長をバイトで指定する;
data_bytesはオブジェクト領域が記述されているデータ部である。オブジェクト領域の記述には、例えばMPEG-7のSpatioTemporalLocatorのバイナリフォーマットを用いることができる。
<まとめ>
この発明の一実施の形態に係る情報媒体(光ディスク等)には、ビデオコンテンツの再生に伴って再生可能な動画像のメタデータを有するものであって、独立に処理可能なデータ単位であるアクセスユニットで構成されるストリームを含むデータ構造を用いてデータ記録が行われる。ここで、前記データ構造は前記メタデータへのアクセスに利用される検索テーブルを含むように構成される。この検索テーブルにより、ユーザが知りたい情報へのアクセスが容易になり、動画像メタデータの情報を有意義に活用できる。
前記検索テーブルは所定の属性情報を持つように構成できる。この属性情報を利用して、ユーザが知りたい情報へのアクセスをより高速化できる。
前記検索テーブルは階層構造を有するように構成できる。これにより、検索テーブルを用いた検索において、一致検索または選択検索が階層をたどって選択可能になる。
前記検索テーブルは検索データを個別ファイル(別ファイル)に持つように構成できる。これにより、同じ検索データを複数箇所から参照して使い回すことが可能となり、検索データの効率的な利用ができる。
なお、この発明は上記した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を種々変形して具体化することができる。例えば、この発明は現在世界的に普及しているDVD−ROMビデオのみならず、近年急速に需要が伸びている録画再生可能なDVD−VR(ビデオレコーダ)にも適用できる。さらには、近々普及が始まるであろう次世代HD−DVDの再生系または録再系にも適用可能である。
さらに、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係る構成要素を適宜組み合わせても良い。
この発明の一実施の形態に係るハイパーメディアの表示例を説明する図。 この発明の一実施の形態に係るシステムの構成例を示すブロック図。 この発明の一実施の形態に係るオブジェクト領域とオブジェクト領域データの関係を説明する図。 この発明の一実施の形態に係るオブジェクト・メタデータのアクセスユニットのデータ構造例を説明する図。 この発明の一実施の形態に係るVclickストリームの構成方法を説明する図。 この発明の一実施の形態に係るVclickアクセス・テーブルの構成例を説明する図。 この発明の一実施の形態に係る送信用パケットの構成例を説明する図。 この発明の一実施の形態に係る送信用パケットの別の構成例を説明する図。 この発明の一実施の形態に係るサーバ・クライアント間の通信例を説明する図。 この発明の一実施の形態に係るサーバ・クライアント間の別の通信例を説明する図。 この発明の一実施の形態に係るVclickストリームのデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickストリームのヘッダのデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickアクセスユニット(AU)のデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickアクセスユニット(AU)のヘッダのデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickアクセスユニット(AU)のタイムスタンプのデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickアクセスユニット(AU)のタイムスタンプ・スキップのデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクト属性情報のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクト属性情報の種類の例を説明する図。 この発明の一実施の形態に係るオブジェクトの名前属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのアクション属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトの輪郭線属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトの点滅領域属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのモザイク領域属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトの塗りつぶし領域属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト情報データのデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト・ハイライト効果属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト・ハイライト効果属性のエントリーのデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト点滅効果属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト点滅効果属性のエントリーのデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキストスクロール効果属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト・カラオケ効果属性のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトのテキスト・カラオケ効果属性のエントリーのデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトの階層属性拡張のデータ要素の例を説明する図。 この発明の一実施の形態に係るオブジェクトの階層属性拡張のエントリーのデータ要素の例を説明する図。 この発明の一実施の形態に係るVclickアクセスユニット(AU)のオブジェクト領域データのデータ要素の例を説明する図。 この発明の一実施の形態に係る通常再生の開始処理手順を説明するフローチャート図(Vclickデータがサーバ装置にある場合)。 この発明の一実施の形態に係る別の通常再生の開始処理手順を説明するフローチャート図(Vclickデータがサーバ装置にある場合)。 この発明の一実施の形態に係る通常再生の終了処理手順を説明するフローチャート図(Vclickデータがサーバ装置にある場合)。 この発明の一実施の形態に係るランダムアクセス再生の開始処理手順を説明するフローチャート図(Vclickデータがサーバ装置にある場合)。 この発明の一実施の形態に係る別のランダムアクセス再生の開始処理手順を説明するフローチャート図(Vclickデータがサーバ装置にある場合)。 この発明の一実施の形態に係る通常再生の開始処理手順を説明するフローチャート図(Vclickデータがクライアント装置にある場合)。 この発明の一実施の形態に係るランダムアクセス再生の開始処理手順を説明するフローチャート図(Vclickデータがクライアント装置にある場合)。 この発明の一実施の形態に係るクライアント装置のフィルタリング動作を説明するフローチャート図。 この発明の一実施の形態に係るVclickアクセス・テーブルを用いたVclickストリーム中のアクセスポイント検索手順を説明するフローチャート図(その1)。 この発明の一実施の形態に係るVclickアクセス・テーブルを用いたVclickストリーム中のアクセスポイント検索手順を説明するフローチャート図(その2)。 この発明の一実施の形態に係るVclick_AUの有効期間とアクティブ期間が一致していない例を説明する図。 この発明の一実施の形態に係るNULL_AUのデータ構造の例を説明する図。 この発明の一実施の形態に係るNULL_AUを用いた場合のVclick_AUの有効期間とアクティブ期間の関係の例を説明する図。 この発明の一実施の形態に係るNULL_AUを用いた場合のメタデータ・マネージャの処理手順の例(その1)を説明するフローチャート図。 この発明の一実施の形態に係るNULL_AUを用いた場合のメタデータ・マネージャの処理手順の例(その2)を説明するフローチャート図。 この発明の一実施の形態に係るNULL_AUを用いた場合のメタデータ・マネージャの処理手順の例(その3)を説明するフローチャート図。 この発明の一実施の形態に係るエンハンスドDVDビデオディスクの構造の例を説明する図。 この発明の一実施の形態に係るエンハンスドDVDビデオディスク内のディレクトリ構成の例を説明する図。 この発明の一実施の形態に係るDVD再生準備処理を説明するフローチャート図。 この発明の一実施の形態に係るオブジェクト選択方法を説明するフローチャート図。 この発明の一実施の形態に係るオブジェクト再生方法を説明するフローチャート図。 この発明の一実施の形態に係る検索テーブルの構成例(その1)を説明する図。 この発明の一実施の形態に係る検索テーブルの構成例(その2)を説明する図。 この発明の一実施の形態に係る検索テーブルの構成例(その3)を説明する図。 この発明の一実施の形態に係る検索テーブルの構成例(その4)を説明する図。 この発明の一実施の形態に係る検索テーブルの構成例(その5)を説明する図。 この発明の一実施の形態に係る検索テーブルを用いる場合において、異なる場面で同じデータを使い回す場合の例を説明する図。 この発明の一実施の形態に係る検索方法(選択検索)を説明する図。 この発明の一実施の形態に係る検索方法(一致検索)を説明する図。
符号の説明
200…クライアント装置;201…サーバ装置;202…Vclickエンジン;203…動画再生エンジン;209、322…バッファ(リングバッファ);221…サーバ装置とクライアント装置を結ぶネットワーク;301〜305…Vclickアクセスユニット;400…Vclickアクセスユニットのオブジェクト領域データ;401…Vclickアクセスユニットのヘッダ;402…Vclickアクセスユニットのタイムスタンプ;403…Vclickアクセスユニットのオブジェクト属性情報。

Claims (7)

  1. ビデオコンテンツの再生に伴って再生可能な動画像のメタデータを有するものであって独立に処理可能なデータ単位であるアクセスユニットで構成されるストリームを含むデータ構造を用いてデータ記録を行なうものにおいて、
    前記データ構造が、前記メタデータへのアクセスに利用される検索テーブルを含むように構成された情報媒体。
  2. 前記検索テーブルが、所定の属性情報を持つように構成された請求項1に記載の情報媒体。
  3. 前記検索テーブルは一致検索または選択検索を選択可能に構成され、この検索テーブルが階層構造を有するように構成された請求項1または請求項2に記載の情報媒体。
  4. 前記検索テーブルが検索データを個別ファイルに持つように構成された請求項1ないし請求項3のいずれか1項に記載の情報媒体。
  5. 請求項1ないし請求項4のいずれか1項に記載の情報媒体から、前記ビデオコンテンツを再生するとともに、前記動画像メタデータを適宜再生するように構成された再生装置。
  6. ビデオコンテンツの再生に伴って再生可能な動画像のメタデータを有するものであって独立に処理可能なデータ単位であるアクセスユニットで構成されるストリーム、および検索テーブルを含むように構成されたデータ構造を用いるものにおいて、
    前記検索テーブルを用いて前記メタデータへのアクセスを行なうように構成した方法。
  7. ビデオコンテンツの再生に伴って再生可能な動画像のメタデータを有するものであって独立に処理可能なデータ単位であるアクセスユニットで構成されるストリーム、および検索テーブルを含むように構成されたデータ構造を用いるものにおいて、
    前記検索テーブルを用いて前記メタデータへのアクセスを行なうように構成した装置。
JP2004287916A 2004-09-30 2004-09-30 動画像のメタデータの検索テーブル Withdrawn JP2006099671A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004287916A JP2006099671A (ja) 2004-09-30 2004-09-30 動画像のメタデータの検索テーブル
US11/237,794 US20060117352A1 (en) 2004-09-30 2005-09-29 Search table for metadata of moving picture
CNA2005101076028A CN1767609A (zh) 2004-09-30 2005-09-29 用于运动图像的元数据的搜索表

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004287916A JP2006099671A (ja) 2004-09-30 2004-09-30 動画像のメタデータの検索テーブル

Publications (1)

Publication Number Publication Date
JP2006099671A true JP2006099671A (ja) 2006-04-13

Family

ID=36239379

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004287916A Withdrawn JP2006099671A (ja) 2004-09-30 2004-09-30 動画像のメタデータの検索テーブル

Country Status (3)

Country Link
US (1) US20060117352A1 (ja)
JP (1) JP2006099671A (ja)
CN (1) CN1767609A (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4945236B2 (ja) * 2006-12-27 2012-06-06 株式会社東芝 映像コンテンツ表示装置、映像コンテンツ表示方法及びそのプログラム
JP4863908B2 (ja) * 2007-03-16 2012-01-25 株式会社ソニー・コンピュータエンタテインメント データ処理装置、データ処理方法、及びデータ処理プログラム
US20090044686A1 (en) * 2007-08-14 2009-02-19 Vasa Yojak H System and method of using metadata to incorporate music into non-music applications
GB0721379D0 (en) * 2007-10-31 2007-12-12 Hasbro Internat Inc Method and apparatus for accessing media
JP5326910B2 (ja) * 2009-01-20 2013-10-30 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
KR101349227B1 (ko) * 2010-03-29 2014-02-11 한국전자통신연구원 멀티미디어 시스템에서 객체 정보 제공 장치 및 방법
KR102004262B1 (ko) * 2012-05-07 2019-07-26 엘지전자 주식회사 미디어 시스템 및 이미지와 연관된 추천 검색어를 제공하는 방법
US9071887B2 (en) * 2012-10-15 2015-06-30 Verizon Patent And Licensing Inc. Media session heartbeat messaging
EP2988495A4 (en) * 2013-06-28 2016-05-11 Huawei Tech Co Ltd DATA PRESENTATION METHOD, DEVICE AND SYSTEM
EP3542256A4 (en) 2016-11-17 2020-07-01 Painted Dog, Inc. MACHINE-BASED VIDEO CONTENT RECOGNITION
US10638192B2 (en) * 2017-06-19 2020-04-28 Wangsu Science & Technology Co., Ltd. Live streaming quick start method and system
KR102471415B1 (ko) * 2018-01-17 2022-11-29 에스케이하이닉스 주식회사 반도체 장치
CN113946701B (zh) * 2021-09-14 2024-03-19 广州市城市规划设计有限公司 一种基于图像处理的城乡规划数据的动态更新方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748158B1 (en) * 1999-02-01 2004-06-08 Grass Valley (U.S.) Inc. Method for classifying and searching video databases based on 3-D camera motion
GB0015896D0 (en) * 2000-06-28 2000-08-23 Twi Interactive Inc Multimedia publishing system
JP2002165210A (ja) * 2000-08-04 2002-06-07 Matsushita Electric Ind Co Ltd データ送信端末及びデータ送受信装置
EP1407620B1 (en) * 2001-05-31 2009-07-15 Canon Kabushiki Kaisha Moving image and supplementary information storing method
JP3943880B2 (ja) * 2001-09-18 2007-07-11 キヤノン株式会社 動画データ処理装置及び方法
JP2004120440A (ja) * 2002-09-26 2004-04-15 Toshiba Corp サーバー装置及びクライアント装置
JP4294933B2 (ja) * 2002-10-16 2009-07-15 富士通株式会社 マルチメディアコンテンツ編集装置およびマルチメディアコンテンツ再生装置
JP3793142B2 (ja) * 2002-11-15 2006-07-05 株式会社東芝 動画像加工方法及び装置

Also Published As

Publication number Publication date
US20060117352A1 (en) 2006-06-01
CN1767609A (zh) 2006-05-03

Similar Documents

Publication Publication Date Title
KR100676433B1 (ko) 동화상의 메타 데이터
AU2005246159B2 (en) Data structure of meta data stream on object in moving picture, and search method and playback method therefore
KR100679003B1 (ko) 동화상의 메타 데이터
US7461082B2 (en) Data structure of metadata and reproduction method of the same
US20060117352A1 (en) Search table for metadata of moving picture
US20050213666A1 (en) Meta data for moving picture
KR100676432B1 (ko) 동화상의 메타 데이터
JP4088274B2 (ja) メタデータの構造及びその編集方法
US20060053150A1 (en) Data structure of metadata relevant to moving image
JP2006050105A (ja) メタデータの構造及びその再生装置と方法
JP4008951B2 (ja) メタデータストリームを再生するための装置及びプログラム
US7555494B2 (en) Reproducing a moving image in a media stream
JP2006005682A (ja) 動画像のメタデータのデータ構造及びその再生方法
US20060031244A1 (en) Data structure of metadata and processing method of the metadata
JP4133982B2 (ja) メタデータと動画像の再生装置
US20060085479A1 (en) Structure of metadata and processing method of the metadata
JP2006113632A (ja) メタデータのデータ構造及びメタデータの再生装置とその方法
JP2006080918A (ja) メタデータのデータ構造及びメタデータの再生装置と方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070904

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090113