JP4828927B2 - ストリーム制御装置 - Google Patents

ストリーム制御装置 Download PDF

Info

Publication number
JP4828927B2
JP4828927B2 JP2005364082A JP2005364082A JP4828927B2 JP 4828927 B2 JP4828927 B2 JP 4828927B2 JP 2005364082 A JP2005364082 A JP 2005364082A JP 2005364082 A JP2005364082 A JP 2005364082A JP 4828927 B2 JP4828927 B2 JP 4828927B2
Authority
JP
Japan
Prior art keywords
stream
parameter
management table
unit
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005364082A
Other languages
English (en)
Other versions
JP2007164734A (ja
Inventor
友樹 溝渕
淳 内田
修 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2005364082A priority Critical patent/JP4828927B2/ja
Priority to US11/565,166 priority patent/US20070140668A1/en
Priority to CN2006101700463A priority patent/CN1984338B/zh
Publication of JP2007164734A publication Critical patent/JP2007164734A/ja
Application granted granted Critical
Publication of JP4828927B2 publication Critical patent/JP4828927B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • 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
    • G11B27/326Indexing; 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 used signal is a video-frame or a video-field (P.I.P.)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4332Content storage operation, e.g. storage operation in response to a pause request, caching operations by placing content in organized collections, e.g. local EPG data repository
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/7921Processing of colour television signals in connection with recording for more than one processing mode

Description

本発明は、カメラ、TVチューナー、ネットワーク等を介して入力される音声、映像データから構成される多種フォーマットのストリームデータを記録/再生する、種々のAV機器システム等に利用されるストリーム制御装置に関する。
従来、一般的なストリーム制御装置では、アプリケーションプログラムがデバイスドライバ毎に独自形式でパラメータ情報を生成し、デバイスドライバに渡している。すなわち、デバイスドライバ毎に固有のソフトウェアインターフェースを持つため、デバイスドライバの変更が生じると、デバイスドライバの変更以外に、デバイスドライバをコールするアプリケーションプログラムまでも変更する必要が生じる。このため、アプリケーションプログラムの流用が困難である。
例えば、Microsoft(登録商標)社が提供するDirectShow(登録商標)では、各フィルタのソフトウェアインターフェースが個別に定義されているため、ある特定のフィルタは、そのフィルタが付随することになる全てのフィルタのソフトウェアインターフェースに対応する必要がある。
これに対して、デマルチプレクサやデコーダなど、AVストリームを処理する一連のフィルタに対して、ソフトウェアインターフェースとデータ構造とに関する情報を開発者に提供することで、統一的にAVストリームを制御する技術が提案されている(例えば、特許文献1参照。)。
特開2005−56364号公報
しかしながら、従来の技術では、デマルチプレクサやデコーダなどのデバイスドライバ毎にソフトウェアインターフェースが定義されるため、各デバイスドライバで制御しているデバイスの同期や、制御シーケンスはアプリケーションプログラムで設計する必要がある。
そこで、本発明は、前記問題に鑑みてなされたものであり、デバイスドライバ毎にソフトウェアインターフェースを設計する作業を低減するストリーム制御装置を提供することを目的とする。
前記目的を達成するために、本発明に係わるストリーム制御装置は、(a1)ストリームに対してデコード処理を施して得られたデータを出力するストリーム処理手段と、(a2)前記ストリーム処理手段の動作を特徴付けるパラメータ情報を含む要素が連結リスト構造化されてなるパラメータリストを記憶するパラメータリスト記憶手段と、(a3)前記パラメータリストに基づいて、前記ストリーム処理手段の動作を制御するデバイスドライバを実行するデバイスドライバ実行手段と、(a4)前記パラメータリストの先頭アドレスを引数として前記デバイスドライバ実行手段に渡すアプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えることを特徴とする。
これによって、従来アプリケーションプログラム実行手段がデバイスドライバ実行手段に対して行っていた同期や制御シーケンスに関する情報もインターフェースに付加可能なデバイスドライバ構造を定義することができる。そして、アプリケーションプログラム実行手段は、デバイスドライバ実行手段に渡すパラメータをパラメータリストの中に隠蔽してコールするため、デバイスドライバ実行手段に依存せずに独立して定義することが可能となり、ソフトウェアの共通化が図れる。
さらに、(b)前記デバイスドライバ実行手段は、(b1)前記パラメータ情報のセット毎に割り当てられた優先度が登録されている優先度管理テーブルを保持する優先度管理テーブル保持手段と、(b2)前記優先度管理テーブルに基づいて、前記パラメータリストを構成する要素を並べ替えて再構築する手続き再構築手段とを備えるとしてもよい。
これによって、パラメータリストの各基本リスト構造は、優先度に基づいて処理順序が決定されるため、アプリケーションプログラム実行手段は、パラメータリストを生成するときに、パラメータリストの基本リスト構造の連結順序を意識する必要がなくなり、アプリケーションプログラム実行手段に固有の処理に専念することが可能となる。
さらに、(c)(c1)前記デバイスドライバ実行手段は、前記ストリーム処理手段の動作に同期させるか否かが示される処理タイプが登録されているパラメータ処理タイプ管理テーブルを保持するパラメータ処理タイプ管理テーブル保持手段を備え、(c2)前記手続き再構築手段は、前記パラメータ処理タイプ管理テーブルに基づいて、同期させる要素と同期させない要素とに分類し、同期させる要素からなる同期パラメータリストと同期させない要素からなる非同期パラメータリストとを生成し、前記優先度管理テーブルに基づいて、前記非同期パラメータリストを構成する要素を並べ替えて再構築するとしてもよい。
これによって、パラメータ情報の処理をデバイスからのイベントに同期して行うことが可能となり、より厳密なタイミングでのストリーム処理の起動を保証することができる。
または、(d)前記手続き再構築手段は、前記ストリームのビットレートおよび前記ストリームの転送サイズを前記パラメータリストから抽出し、前記ビットレートおよび前記転送サイズから前記ストリーム処理手段の起動周期を算出し、前記起動周期に基づいて優先度を決定し、決定した優先度を用いて前記優先度管理テーブルを更新するとしてもよい。
これによって、優先度をビットレートや一回の転送サイズに応じて、動的に変えることが可能となり、ビットレートの異なるストリームの再生にも対応することができる。
または、(e)(e1)前記デバイスドライバ実行手段は、前記ストリームのビットレートと前記ストリームに割り当てられているストリーム識別子とを前記パラメータリストから抽出し、前記ストリーム識別子に対応付けて前記ビットレートが登録されているビットレート管理テーブルを生成し保持するビットレート管理手段を備え、(e2)前記手続き再構築手段は、前記優先度管理テーブルおよび前記ビットレート管理テーブルに基づいて、前記パラメータリストを構成する要素を並べ替えて再構築するとしてもよい。
これによって、マルチストリームの処理を取り扱うことが可能となる。また、優先度をストリームごとに定義し、使用することが可能となるため、異なるビットレートのストリームを処理する場合においても、アプリケーションプログラム実行部は各ストリームに対する処理順序を意識する必要がなくなる。
または、(f)前記アプリケーションプログラム実行手段は、(f1)前記パラメータ情報が登録されているパラメータ情報管理テーブルを保持するパラメータ情報管理テーブル保持手段と、(f2)前記パラメータ情報管理テーブルに基づいて、前記パラメータリストを生成するパラメータリスト生成手段とを備えるとしてもよい。
さらに、(g)前記パラメータリスト生成手段は、(g1)DVDフォーマットのストリームに含まれるRDI(Read−time Data Information)情報を前記ストリームから抽出するRDI情報抽出手段を備え、(g2)前記パラメータ情報に前記RDI情報を含む要素を生成し、前記パラメータリストに付加するとしてもよい。
これによって、ストリーム処理手段が検出したAVストリームに含まれている情報を、続けて設定する必要があっても、優先度に基づいて優先的に処理されるため、リアルタイム性を保証することが可能となり、ユーザに対して正しい視覚効果をもたらすことができる。
なお、本発明は、ストリーム制御装置として実現されるだけではなく、ストリーム制御装置を制御する方法(以下、ストリーム制御方法)、ストリーム制御方法をコンピュータシステムなどに実行させるストリーム制御プログラム、ストリーム制御プログラムを記録した記録媒体などとして実現されるとしてもよい。
本発明によれば、種々の民生AV機器におけるパラメータがパラメータリストに隠蔽されるため、種々の民生AV機器を制御するソフトウェア間で、ソフトウェアインターフェースを共通にすることができ、ソフトウェアの共通化を向上することが可能となる。さらに、パラメータリストに隠蔽された各パラメータ情報の処理順序は、デバイスドライバ内で最適な順序で処理されるため、リアルタイム性が要求されるような処理においても、アプリケーションプログラムでその順序を意識することなくパラメータリストを生成することが可能となる。
(実施の形態1)
以下、本発明に係わる実施の形態1について、図面を参照しながら説明する。
本実施の形態におけるストリーム制御装置は、(a)(a1)ストリームに対してデコード処理を施して得られたデータを出力するストリーム処理機能と、(a2)ストリーム処理機能の動作を特徴付けるパラメータ情報を含む要素が連結リスト構造化されてなるパラメータリストを記憶するパラメータリスト記憶機能と、(a3)パラメータリストに基づいて、ストリーム処理機能の動作を制御するデバイスドライバを実行するデバイスドライバ実行機能と、(a4)パラメータリストの先頭アドレスを引数としてデバイスドライバ実行機能に渡すアプリケーションプログラムを実行するアプリケーションプログラム実行機能とを備えることを特徴とする。
さらに、(b)デバイスドライバ実行機能は、(b1)パラメータ情報のセット毎に割り当てられた優先度が登録されている優先度管理テーブルを保持する優先度管理テーブル保持機能と、(b2)優先度管理テーブルに基づいて、パラメータリストを構成する要素を並べ替えて再構築する手続き再構築機能とを備えるとしてもよい。
さらに、(c)アプリケーションプログラム実行機能は、(c1)パラメータ情報が登録されているパラメータ情報管理テーブルを保持するパラメータ情報管理テーブル保持機能と、(c2)パラメータ情報管理テーブルに基づいて、パラメータリストを生成するパラメータリスト生成機能とを備えるとしてもよい。
さらに、(d)(d1)ストリーム処理機能は、ストリームに対して個々の処理を実行する複数の機能を備え、(d2)デバイスドライバ実行機能は、機能を制御する制御機能を機能毎に備えるストリーム制御処理機能と、(d3)制御機能を起動させる起動アドレスが制御機能毎に登録されているストリーム制御処理管理テーブルを保持するストリーム制御処理管理テーブル保持機能と、(d4)ストリーム制御処理管理テーブルに基づいて、パラメータリストの要素毎に、該当する制御機能を起動させるストリーム制御処理起動機能とを備えるとしてもよい。
以上の点を踏まえて、本実施の形態におけるストリーム制御装置について、説明する。
図1は、本実施の形態におけるストリーム制御装置の構成を示す図である。図1に示されるように、ストリーム制御装置10は、アプリケーションプログラム実行部100、デバイスドライバ実行部120、ストリーム供給処理部106、蓄積部107、記憶部108、多重分離部109、オーディオデコーダ110、ビデオデコーダ111、AV出力装置112などを備える。
アプリケーションプログラム実行部100は、さらに、パラメータリスト生成部113、パラメータ情報管理テーブル保持部114などを備える。
パラメータリスト生成部113は、イベント発生時に、パラメータ情報管理テーブル(例えば、図3参照。)に基づいて、パラメータリストを構成する基本リスト構造を設定する。設定後の基本リスト構造をパラメータリストの終端の基本リスト構造の次に追加する(例えば、図4参照。)。さらに、イベント発生周期が一番短いVsyncフレームに同期させて、パラメータリストの先頭基本リスト構造が記憶されている記憶領域の先頭アドレスを手続き再構築部101に渡す。
図2は、本実施の形態におけるパラメータリストを構成する基本リスト構造のデータ構造を示す図である。図2に示されるように、パラメータリストを構成する基本リスト構造151は、メンバーとして、パラメータ識別子(メンバー151a)、パラメータ情報(メンバー151b)、およびネクストポインタ(メンバー151c)などを含む。ここで、パラメータ識別子は、パラメータセット毎に割り当てられた一意の識別子である。パラメータ情報管理テーブルに定義されている。パラメータ情報は、パラメータの値である。ネクストポインタは、次の基本リスト構造が記録されているアドレスである。
パラメータ情報管理テーブル保持部114は、パラメータ情報管理テーブル(例えば、図3参照。)を保持する。
図3は、本実施の形態におけるパラメータ情報管理テーブルの一例を示す図である。図3に示されるように、パラメータ情報管理テーブル152は、パラメータセット名(カラム152a)、パラメータ識別子(カラム152b)、およびパラメータ情報(カラム152c)が対応付けられているレコードから構成される。ここでは、一例として、パラメータ情報管理テーブル152は、“オーディオ切替パラメータ”、“CHG_AUDIO_PARAM”、および“ストリームID、出力チャンネル、・・・”が対応付けられているレコードと、“Vsync同期パラメータ”、“VSYNC_PARAM”、および“アスペクト比、・・・”が対応付けられているレコードと、“ストリーム供給情報パラメータ”、“STRM_PARAM”、および“格納アドレス、格納サイズ、・・・”が対応付けられているレコードと、“GOP同期パラメータ”、“GOP_PARAM”、および“字幕、・・・”が対応付けられているレコードを含む。
図4は、本実施の形態におけるパラメータリストのデータ構造を示す図である。図4に示されるように、ここでは、一例として、パラメータリスト153は、先頭から順に、基本リスト構造153a、基本リスト構造153b、基本リスト構造153c、基本リスト構造153dが連結されている。
基本リスト構造153aは、パラメータ識別子にCHG_AUDIO_PARAMが登録され、パラメータ情報にストリームIDと出力チャンネルとが登録され、ネクストポインタに基本リスト構造153bが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造153bは、パラメータ識別子にVSYNC_PARAMが登録され、パラメータ情報にアスペクト比が登録され、ネクストポインタに基本リスト構造153cが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造153cは、パラメータ識別子にSTRM_PARAMが登録され、パラメータ情報に格納アドレスと格納サイズが登録され、ネクストポインタに基本リスト構造153dが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造153dは、パラメータ識別子にGOP_PARAMが登録され、パラメータ情報に字幕が登録され、ネクストポインタにNULLが登録されている。
次に、図1に示されるように、デバイスドライバ実行部120は、手続き再構築部101、優先度管理テーブル保持部102、ストリーム制御処理起動部103、ストリーム制御処理部管理テーブル保持部104、ストリーム制御処理部105などを備える。
手続き再構築部101は、パラメータリスト生成部113からパラメータリストの先頭基本リスト構造の先頭アドレスを受け取ると、受け取った先頭アドレスに基づいて、パラメータリストの基本リスト構造を順に走査する。優先度管理テーブル(例えば、図5参照。)で管理されている優先度に基づいて、並び替え対象である基本リスト構造間の順序を比較して、優先度順に基本リスト構造を並び替え、パラメータリストを再構築する。そして、再構築したパラメータリスト(以下、再構築パラメータリストと呼称する。)の先頭基本リスト構造のポインタをストリーム制御処理起動部103に渡す。
優先度管理テーブル保持部102は、優先度管理テーブル(例えば、図5参照。)を保持する。
図5は、本実施の形態における優先度管理テーブルの一例を示す図である。図5に示されるように、優先度管理テーブル154は、パラメータ識別子(カラム154a)および優先度(カラム154b)が対応付けられているレコードから構成される。ここでは、一例として、優先度管理テーブルは、“CHG_AUDIO_PARAM”および“4”が対応付けられているレコードと、“VSYNC_PARAM”および“1”が対応付けられているレコードと、“STRM_PARAM”および“3”が対応付けられているレコードと、“GOP_PARAM”および“2”が対応付けられているレコードを含む。
図6は、本実施の形態における再構築パラメータリストのデータ構造を示す図である。図6に示されるように、ここでは、一例として、再構築パラメータリスト155は、先頭から順に、基本リスト構造155a、基本リスト構造155b、基本リスト構造155c、基本リスト構造155dが連結されている。
基本リスト構造155aは、ネクストポインタに基本リスト構造153cの代わりに基本リスト構造155bが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造155bは、ネクストポインタにNULLの代わりに基本リスト構造155cが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造155cは、ネクストポインタに基本リスト構造153dの代わりに基本リスト構造155dが記憶されている記憶領域の先頭アドレスが登録されている。
基本リスト構造155dは、ネクストポインタに基本リスト構造153bの代わりにNULLが登録されている。
次に、図1に示されるように、ストリーム制御処理起動部103は、再構築パラメータリストを構成している基本リスト構造を先頭から抽出する。抽出した基本リスト構造のパラメータ識別子に対応付けられている起動アドレスをストリーム制御処理部管理テーブル(例えば、図7参照。)から取得する。起動要求と取得した起動アドレスをストリーム制御処理部105に渡す。
ストリーム制御処理部管理テーブル保持部104は、ストリーム制御処理部管理テーブル(例えば、図7参照。)を保持する。
図7は、本実施の形態におけるストリーム制御処理部管理テーブルの一例を示す図である。図7に示されるように、ストリーム制御処理部管理テーブル156は、パラメータ識別子(カラム156a)およびストリーム制御処理起動アドレス(カラム156b)が対応付けられているレコードから構成される。ここでは、一例として、ストリーム制御処理部管理テーブル156は、“CHG_AUDIO_PARAM”および“オーディオ処理起動アドレス”が対応付けられているレコードと、“VSYNC_PARAM”および“AV出力装置制御起動アドレス”が対応付けられているレコードと、“STRM_PARAM”および“多重分離処理起動アドレス”が対応付けられているレコードと、“GOP_PARAM”および“AV出力処理起動アドレス”が対応付けられているレコードとを含む。
次に、図1に示されるように、ストリーム制御処理部105は、多重分離処理制御部、オーディオ処理制御部、ビデオ処理制御部、AV出力装置制御部などを備える。そして、ストリーム制御処理起動部103から起動要求を受け取ると、多重分離処理制御部、オーディオ処理制御部、ビデオ処理制御部、AV出力装置制御部の中から、起動要求と共に受け取った起動アドレスに該当するものを起動する。このとき、起動アドレスがオーディオ処理起動アドレスである場合は、オーディオ処理制御部を起動する。AV出力装置制御部起動アドレスである場合は、AV出力装置制御部を起動する。多重分離処理起動アドレスである場合は、多重分離処理制御部を起動する。AV出力処理起動アドレスである場合は、AV出力装置制御部を起動する。
また、アプリケーションプログラム実行部100は、供給開始要求と再生対象とするストリームに割り当てられたストリーム識別子をストリーム供給処理部106に渡す。
ストリーム供給処理部106は、アプリケーションプログラム実行部100から供給開始要求を受け取ると、供給開始要求と共に受け取ったストリーム識別子によって特定されるストリームを蓄積部107から読み出す。読み出したストリームを記憶部108に展開する。展開が完了すると、アプリケーションプログラム実行部100に供給完了通知を渡す。
蓄積部107は、ストリームを蓄積する。記憶部108は、ストリームを記憶する。
多重分離部109は、アプリケーションプログラム実行部100からデバイスドライバ実行部120を介して供給完了通知が渡されると、多重化ストリームをオーディオストリームとビデオストリームに分離し、オーディオストリームをオーディオデコーダ110に供給し、ビデオストリームをビデオデコーダ111に供給する。
オーディオデコーダ110は、多重分離部109から供給されるオーディオストリームに対してデコード処理を行う。デコード処理を行って得られた結果は、AV出力装置112に出力する。ビデオデコーダ111は、多重分離部109から供給されるビデオストリームに対してデコード処理を行う。デコード処理を行って得られた結果は、AV出力装置112に出力する。さらに、オーディオデコーダ110、ビデオデコーダ111は、1フレームのデコードが完了すると、モノラル/ステレオやアスペクト比などのデコード情報をパラメータリスト生成部113に通知する。また、Vsyncや状態遷移のタイミングで、Vsyncや状態遷移に関するイベント情報をパラメータリスト生成部113に通知する。
そして、パラメータリスト生成部113は、オーディオデコーダ110およびビデオデコーダ111から通知されるデコード情報やイベント情報に基づいて、AV出力装置112に対してフレーム毎にパラメータリストの基本リスト構造を設定する。また、ユーザ操作などにより、再生停止が要求された場合でも、デバイスドライバ実行部120経由で、オーディオデコーダ110およびビデオデコーダ111に対してデコード停止処理を行う。
なお、優先度は、周期管理テーブル(例えば、図8参照。)に基づいて、周期が短い順に割り当てられている。また、値が小さいほど高いとする。具体的には、周期が最短のパラメータ識別子に1が割り当てられている。以下、順に割当てられ、最後に、ユーザ操作など非周期に発生するイベントに対するパラメータ識別子に最低の優先度が割当てられている。
図8は、本実施の形態における周期管理テーブルの一例を示す図である。図8に示されるように、周期管理テーブル157は、パラメータ識別子(カラム157a)および周期(カラム157b)が対応付けられているレコードから構成される。ここでは、一例として、周期管理テーブル157は、“CHG_AUDIO_PARAM”および“なし”が対応付けられているレコードと、“VSYNC_PARAM”および“33ms”が対応付けられているレコードと、“STRM_PARAM”および“1000ms”が対応付けられているレコードと、“GOP_PARAM”および“500ms”が対応付けられているレコードとを含む。
ここで、STRM_PARAMの周期は、一回の転送サイズが9Mbit、ビットレートが9Mbpsとして、周期を算出している。
なお、これら以外にも、ストリーム制御装置10は、図には示されてはいないが、パラメータリスト生成部113で生成されたパラメータリストを記憶するパラメータリスト記憶機能を備えている。また、周期管理テーブルを保持する周期管理テーブル保持機能を備えている。
続いて、以上のように構成されているストリーム制御装置10の動作について説明する。
図9は、本実施の形態におけるアプリケーションプログラム実行処理を示す図である。図9に示されるように、アプリケーションプログラム実行部100は、供給完了通知、デコード情報の通知、ユーザ操作のイベントが発生すると(S101)、それぞれのタイミングで、パラメータリスト生成部113においてパラメータを生成する。
このとき、パラメータリスト生成部113は、パラメータ情報管理テーブル152(例えば、図3参照。)に基づいて(S103)、パラメータ識別子とパラメータ情報を設定する(S104)。ネクストポインタをNULLに設定し(S105)、パラメータリストの終端の基本リスト構造の次に追加する(S106)。
このようにして、アプリケーションプログラム実行部100は、各イベント発生時に生成されたパラメータリストの先頭の基本リスト構造の先頭アドレスを、イベント発生周期が一番短いVsyncフレームに同期して(S102)、デバイスドライバ実行部120の手続き再構築部101に渡す(S107)。パラメータリストへの追加、あるいはデバイスドライバ実行部120の処理が完了すると、再びイベント待ちの状態となり、同一の処理を繰り返す。
図10は、本実施の形態におけるデバイスドライバ実行処理を示す図である。図10に示されるように、手続き再構築部101は、パラメータリスト153(例えば、図4参照。)を構成している各基本リスト構造を先頭から走査し、優先度管理テーブル154(例えば、図5参照。)に登録されている優先度に基づいて、基本リスト構造の連結順序を並び替え、再構築パラメータリスト155(例えば、図6参照。)を生成する(S111)。再構築パラメータリスト155の先頭の基本リスト構造155aのアドレスを、ストリーム制御処理起動部103に渡す。
ストリーム制御処理起動部103は、再構築パラメータリスト155を構成している基本リスト構造を先頭から順次取得する(S112)。先頭の基本リスト構造155aにはパラメータ識別子としてVsync同期パラメータを示すVSYNC_PARAMが登録されている(S113)。ストリーム制御処理起動部103は、VSYNC_PARAMで示されるパラメータを処理するストリーム制御処理部105の起動アドレスを、ストリーム制御処理部管理テーブル156(例えば、図7参照。)から取得し、取得した起動アドレスと起動要求とをストリーム制御処理部105に渡して実行させる(S114)。VSYNC_PARAMに対するストリーム制御処理であるAV出力処理制御部の起動が終わると、基本リスト構造のネクストポインタを参照し、2番目の基本リスト構造155bを取得し、先頭の基本リスト構造155aに対して行った処理と同様に、パラメータ識別子に対応するストリーム制御処理部105を起動する。以下、終端の基本リスト構造155dまで、同一の処理を繰り返す(S115)。
なお、図11に示されるように、手続き再構築部101は、並び替え対象である基本リスト構造間の順序比較に、優先度を使用して(S121〜S125)、優先度順の並び替えを実現する(S126、S127)。
以上、本実施の形態におけるストリーム制御装置10によれば、アプリケーションプログラム実行部100は、デバイスドライバ実行部120に渡すパラメータをパラメータリストの中に隠蔽してコールするため、デバイスドライバ実行部120に依存せずに独立して定義することが可能となり、ソフトウェアの共通化が図れる。また、パラメータリスト内の各基本リスト構造は、優先度情報に基づいて処理順序が決定されるため、アプリケーションプログラム実行部100はパラメータリストを生成する際に、パラメータリストの基本リスト構造の連結順序を意識する必要がなくなり、アプリケーションプログラム実行部に固有の処理に専念することが可能となる。
(実施の形態2)
次に、本発明に係わる実施の形態2について、図面を参照しながら説明する。
本実施の形態におけるストリーム制御装置は、下記(e)に示される特徴を備える。
(e)(e1)デバイスドライバ実行機能は、ストリーム処理機能の動作に同期させるか否かが示される処理タイプが登録されているパラメータ処理タイプ管理テーブルを保持するパラメータ処理タイプ管理テーブル保持機能を備え、(e2)手続き再構築機能は、パラメータ処理タイプ管理テーブルに基づいて、同期させる要素と同期させない要素とに分類し、同期させる要素からなる同期パラメータリストと同期させない要素からなる非同期パラメータリストとを生成し、優先度管理テーブルに基づいて、非同期パラメータリストを構成する要素を並べ替えて再構築することを特徴とする。
以上の点を踏まえて、本実施の形態におけるストリーム制御装置について、説明する。なお、実施の形態1における構成要素と同一の構成要素については、同一の参照符号を付して、その説明を省略する。
図12は、本実施の形態におけるストリーム制御装置の構成を示す図である。図12に示されるように、ストリーム制御装置20は、デバイスドライバ実行部120の代わりにデバイスドライバ実行部220を備える点が異なる。
デバイスドライバ実行部220は、手続き再構築部101、ストリーム制御処理起動部103の代わりに、手続き再構築部201、ストリーム制御処理起動部203を備える。さらに、パラメータ処理タイプ管理テーブル保持部215、割込イベント管理テーブル保持部216を備える。
手続き再構築部201は、さらに、パラメータリストを構成する要素ごとに、処理タイプをパラメータ処理タイプ管理テーブル(例えば、図13参照。)から取得する。そして、取得した処理タイプに基づいて、パラメータリストとイベント同期パラメータのいずれかに分類する。取得した優先度および処理タイプを含むイベント同期パラメータをストリーム制御処理起動部203に渡す。
パラメータ処理タイプ管理テーブル保持部215は、パラメータ処理タイプ管理テーブル(例えば、図13参照。)を保持する。
図13は、本実施の形態におけるパラメータ処理タイプ管理テーブルの一例を示す図である。図13に示されるように、パラメータ処理タイプ管理テーブル251は、パラメータ識別子(カラム251a)および処理タイプ(カラム251b)が対応付けられているレコードから構成される。ここでは、一例として、パラメータ処理タイプ管理テーブル251は、“CHG_AUDIO_PARAM”および“同期不要”が対応付けられているレコードと、“VSYNC_PARAM”および“要同期”が対応付けられているレコードと、“STRM_PARAM”および“同期不要”が対応付けられているレコードと、“GOP_PARAM”および“要同期”が対応付けられているレコードとを含む。
次に、図12に示されるように、ストリーム制御処理起動部203は、手続き再構築部201から渡されたイベント同期パラメータを受け取る。受け取ったイベント同期パラメータに基づいて、イベントに同期する必要があるか否かを判定する。判定した結果、処理タイプが“同期不要‘である場合、すなわち、同期する必要がない場合は、優先度に基づいて連結順序を並び替える。一方、処理タイプが“要同期”である場合、すなわち、同期する必要がある場合は、パラメータ識別子に対応付けられている割込イベント名を割込イベント管理テーブル(例えば、図14参照。)から取得する。また、パラメータ識別子に対応付けられているストリーム制御処理起動アドレスをストリーム制御処理部管理テーブル(例えば、図7参照。)から取得する。取得した割込イベント名に対して、取得したストリーム制御処理起動アドレスを、通知された優先度で、割込みハンドラとしてイベント処理部217に登録する。
割込イベント管理テーブル保持部216は、割込イベント管理テーブル(例えば、図14参照。)を保持する。
図14は、本実施の形態における割込イベント管理テーブルの一例を示す図である。図14に示されるように、割込イベント管理テーブル252は、パラメータ識別子(カラム252a)および割込イベント名(カラム252b)が対応付けられているレコードから構成される。ここでは、一例として、割込イベント管理テーブル252は、“VSYNC_PARAM”および“VSYNC割込み”が対応付けられているレコードと、“GOP_PARAM”および“GOP周期イベント”が対応付けられているレコードとを含む。
イベント処理部217は、割込イベントを受信すると、その割込みに対して登録されている割込みハンドラを起動する。割込みイベントを多重に受信した場合は、優先度の高い割込みハンドラが起動される。なお、イベント処理部217を、汎用OSで提供される割込み処理機能を利用して実現するとしてもよい。
続いて、以上のように構成されているストリーム制御装置20の動作について説明する。なお、実施の形態1における動作と同一の動作については、同一の参照符号を付して、その説明を省略する。
図15は、本実施の形態におけるデバイスドライバ実行処理を示す図である。図15に示されるように、手続き再構築部201は、パラメータリスト153(例えば、図4参照。)を構成している各基本リスト構造を先頭から走査し、パラメータ処理タイプ管理テーブル251(例えば、図13参照。)に登録されている処理タイプと優先度管理テーブル154(例えば、図5参照。)に登録されている優先度とに基づいて、即座に処理する基本リスト構造と、イベントに同期させて処理する基本リスト構造とに分類しながら、連結順序を並び替え、再構築パラメータリスト253(例えば、図17参照。)を生成する(S211)。
このとき、図16に示されるように、手続き再構築部201は、アプリケーションプログラム実行部100から渡されたパラメータリストを優先度順に並び替える際に、基本リスト構造ごとに、パラメータ処理タイプ管理テーブル251(例えば、図13参照。)からイベントに同期する必要があるか否かの情報を取得し(S221)、同期が必要でない場合は(S222:NO)、実施の形態1で説明したように、優先度に基づいて連結順序を並び替える(S125〜S127)。同期が必要な場合は(S222:YES)、ストリーム制御処理起動部203において、パラメータ識別子に対応する割込イベント名を割込イベント管理テーブル252(例えば、図14参照。)から取得し(S223)、またストリーム制御処理部管理テーブル156(例えば、図7参照。)からストリーム処理起動アドレスを取得し(S224)、割込みイベントの割込みハンドラとして優先度でイベント処理部217に登録する(S225)。
図17は、本実施の形態における再構築パラメータリストのデータ構造を示す図である。図17に示されるように、ここでは、一例として、再構築パラメータリスト253は、先頭から順に、基本リスト構造253a、基本リスト構造253bが連結されている。
基本リスト構造253aは、パラメータ識別子にSTRM_PARAMが登録され、パラメータ情報に格納アドレスと格納サイズが登録され、ネクストポインタに基本リスト構造253bのアドレスが登録されている。
基本リスト構造253bは、パラメータ識別子にCHG_AUDIO_PARAMが登録され、パラメータ情報にストリームIDと出力チャンネルとが登録され、ネクストポインタにNULLが登録されている。
例えば、ストリーム制御処理起動部203は、“VSYNC_PARAM”に対応付けられている“VSYNC割込み”を割込イベント管理テーブル252(例えば、図14参照。)から取得する。“VSYNC_PARAM”に対応付けられている“AV出力装置制御部起動アドレス”をストリーム制御処理部管理テーブル156(例えば、図7参照。)から取得する。“VSYNC割り込みイベント”に対して “AV出力装置制御部起動アドレス”を優先度“1”で割込みハンドラとしてイベント処理部217に登録する。
同様に、“GOP_PARAM”に対応付けられている“GOP周期イベント”を割込イベント管理テーブル252(例えば、図14参照。)から取得する。“GOP_PARAM”に対応付けられている“AV出力処理起動アドレス”をストリーム制御処理部管理テーブル156(例えば、図7参照。)から取得する。“GOP周期イベント”に対して“AV出力処理起動アドレス”を優先度“2”で割込みハンドラとしてイベント処理部217に登録する。
したがって、“GOP周期イベント”が発生すると、AV出力装置制御部が起動されてGOP_PARAMが処理されるが、処理中にVSYNC割込みが発生すると、別のコンテキストでAV出力装置制御部が起動され、VSYNC_PARAMが優先して処理される。
以上、本実施の形態におけるストリーム制御装置20によれば、パラメータの処理をデバイスからのイベントに同期して行うことが可能となり、より厳密なタイミングでのストリーム処理の起動を保証することができる。
すなわち、実施の形態1におけるストリーム制御装置10では、アプリケーションプログラム実行部100で生成されたパラメータリストは、パラメータの優先度順に即座に処理されていた。そのため、デバイスと同期してパラメータを設定する必要がある場合は、そのタイミングをアプリケーションが管理する必要があった。
これに対して、本実施の形態におけるストリーム制御装置20では、パラメータ処理タイプ管理テーブル251(例えば、図13参照。)、割込イベント管理テーブル252(例えば、図14参照。)に合わせて、手続き再構築部201とストリーム制御処理起動部203の処理を変更することで、パラメータの処理タイミングをイベントに同期させることができる。
(実施の形態3)
次に、本発明に係わる実施の形態3について、図面を参照しながら説明する。
本実施の形態におけるストリーム制御装置は、下記(f)に示される特徴を備える。
(f)(f1)パラメータリスト生成機能は、DVDフォーマットのストリームに含まれるRDI(Read−time Data Information)情報をストリームから抽出するRDI情報抽出機能を備え、(f2)パラメータ情報にRDI情報を含む要素を生成し、パラメータリストに付加することを特徴とする。
以上の点を踏まえて、本実施の形態におけるストリーム制御装置について、説明する。なお、実施の形態1における構成要素と同一の構成要素については、同一の参照符号を付して、その説明を省略する。
図18は、本実施の形態におけるストリーム制御装置の構成を示す図である。図18に示されるように、ストリーム制御装置30は、アプリケーションプログラム実行部100の代わりにアプリケーションプログラム実行部300を備える点が異なる。また、多重分離部109の代わりに多重分離部309を備える点が異なる。
アプリケーションプログラム実行部300は、パラメータリスト生成部113の代わりにパラメータリスト生成部313を備える。
パラメータリスト生成部313は、さらに、RDI(Read−time Data Information)パラメータ生成部317を備える。
RDIパラメータ生成部317は、多重分離部309からRDI情報を受信すると、基本リスト構造を生成する。このとき、パラメータ情報管理テーブル(例えば、図19参照。)に登録されている“RDIパラメータ”を参照し、パラメータ識別子を“RDI_PARAM”に、パラメータ情報を“アスペクト比”と“著作権情報”に設定する。なお、アスペクト比および著作権情報は、多重分離部309から通知されたRDI情報(例えば、図20参照。)に基づいて選択される。また、RDIパラメータ生成部317は、生成した基本リスト構造のネクストポインタをNULLに設定し、設定後の基本リスト構造をパラメータリストの終端の基本リスト構造の次に追加する。
図19は、本実施の形態におけるパラメータ情報管理テーブルの一例を示す図である。図19に示されるように、パラメータ情報管理テーブル351は、パラメータセット名(カラム351a)、パラメータ識別子(カラム351b)、およびパラメータ情報(カラム351c)が対応付けられているレコードから構成される。ここでは、一例として、パラメータ情報管理テーブル351は、“RDIパラメータ”、“RDI_PARAM”、および“アスペクト比、著作権情報”が対応付けられているレコードを含む。
図20は、本実施の形態におけるRDI情報のデータ構造を示す図である。図20に示されるように、RDI情報(カラム352a)は、アスペクト比および著作権情報を含む。各パラメータ値(カラム352b)は、以下のとおりである。
アスペクト比として、“4:3”、“16:9”、“14:9レターボックス(中央)”、“14:9レターボックス(トップ)”、“16:9レターボックス(中央)”、“16:9レターボックス(トップ)”、“>16:9レターボックス(中央)”、“14:9 full format レターボックス(中央)”のいずれかが選択される。
著作権情報として、“valid CCI NOn−exist”、“valid Source information only exist”、“valid APS information only exist”、“valid APS and Source information only exist”、“valid CGMS information only exist”、“valid CGMS and Source information only exist”、“valid CGMS and APS information only exist”、“valid CGMS, APS and Source information exist”のいずれかが選択される。
次に、図18に示されるように、多重分離部309は、パラメータリスト生成部313のRDIパラメータ生成部317に、再生対象のストリームに関するRDI情報を渡す。
なお、これら以外にも、AV出力装置制御部は、付加情報制御部318を備える。
付加情報制御部318は、AV出力装置に対して、アスペクト比、および著作権情報を映像信号に重畳する制御を行う。
続いて、以上のように構成されているストリーム制御装置30の動作について説明する。なお、実施の形態1における動作と同一の動作については、同一の参照符号を付して、その説明を省略する。
図21は、本実施の形態におけるアプリケーションプログラム実行処理を示す図である。図21に示されるように、RDIパラメータ生成部317は、多重分離部309からRDI情報を受け取ると(S331)、受け取ったRDI情報に基づいて、パラメータ情報管理テーブル351(例えば、図19参照。)に登録されているRDIパラメータを参照し(S332)、パラメータ識別子を“RDI_PARAM”に(S333)、パラメータ情報をアスペクト比および著作権情報に設定して、基本リスト構造を生成する。アスペクト比および著作権情報は、多重分離部309から通知されたRDI情報(例えば、図20参照。)を参照して選択する(S334)。生成した基本リスト構造のネクストポインタをNULLに設定し(S335)、設定後の基本リスト構造をパラメータリストの終端の基本リスト構造の次に追加する(S336)。
そして、アプリケーションプログラム実行部300において生成されたパラメータリストは、手続き再構築部101において、パラメータの優先度順に並び替えられる。RDI_PARAMは、周期管理テーブル353(例えば、図22参照。)に示されるように、設定周期が33msとなり、他のパラメータよりも優先して処理される必要があるため、優先度管理テーブル354(例えば、図23参照。)に示されるように、優先度は1となる。したがって、RDI_PARAMは、パラメータリストの先頭に位置するように並び替えが行われる。ストリーム制御処理起動部103は、最初に、“RDI_PARAM”に対応付けられている “AV出力装置制御部起動アドレス”をストリーム制御処理部管理テーブル355(例えば、図24参照。)から取得して起動させる。“RDI_PARAM”は、AV出力装置制御部の付加情報制御部318において処理される。
図22は、本実施の形態における周期管理テーブルの一例を示す図である。図22に示されるように、周期管理テーブル353は、パラメータ識別子(カラム353a)および周期(カラム353b)が対応付けられているレコードから構成される。ここでは、一例として、周期管理テーブル353は、“RDI_PARAM”および“33ms”が対応付けられているレコードを含む。
図23は、本実施の形態における優先度管理テーブルの一例を示す図である。図23に示されるように、優先度管理テーブル354は、パラメータ識別子(カラム354a)および優先度(カラム354b)が対応付けられているレコードから構成される。ここでは、一例として、優先度管理テーブル354は、“RDI_PARAM”および“1”が対応付けられているレコードを含む。
図24は、本実施の形態におけるストリーム制御処理部管理テーブルの一例を示す図である。図24に示されるように、ストリーム制御処理部管理テーブル355は、パラメータ識別子(カラム355a)およびストリーム制御処理起動アドレス(カラム355b)が対応付けられているレコードから構成される。ここでは、一例として、ストリーム制御処理部管理テーブル355は、“RDI_PARAM”および “AV出力装置制御部起動アドレス”が対応付けられているレコードを含む。
以上、本実施の形態におけるストリーム制御装置30によれば、多重分離部309が検出したAVストリームに含まれている情報を、続けてAV出力装置112に対して設定する必要があっても、優先度情報に基づいて優先的に処理されるため、リアルタイム性を保証することが可能となり、ユーザに対して正しい視覚効果をもたらすことができる。
すなわち、実施の形態1におけるストリーム制御装置10では、多重分離部109からの情報をアプリケーションプログラム実行部100が検出することができないため、DVDフォーマットのAVストリームのように多重分離後のパラメータに含まれるアスペクト比や著作権情報をAV出力装置に対して設定することができず、ユーザに対して正しい視覚効果を与えることができない。
これに対して、本実施の形態におけるストリーム制御装置30では、多重分離部309から受信したアスペクト比および著作権情報に基づいて、AV出力装置112に設定するRDIパラメータを生成するRDIパラメータ生成部317と付加情報制御部318とを備え、DVDフォーマットの再生動作において、ユーザに対して正しい視覚効果を与えることができる。
(実施の形態4)
次に、本発明に係わる実施の形態4について、図面を参照しながら説明する。
本実施の形態におけるストリーム制御装置は、下記(g)に示される特徴を備える。
(g)(g1)手続き再構築機能は、ストリームのビットレートおよびストリームの転送サイズをパラメータリストから抽出し、ビットレートおよび転送サイズからストリーム処理機能の起動周期を算出し、起動周期に基づいて優先度を決定し、決定した優先度を用いて優先度管理テーブルを更新することを特徴とする。
以上の点を踏まえて、本実施の形態におけるストリーム制御装置について、説明する。なお、実施の形態1における構成要素と同一の構成要素については、同一の参照符号を付して、その説明を省略する。
図25は、本実施の形態におけるストリーム制御装置の構成を示す図である。図25に示されるように、ストリーム制御装置40は、デバイスドライバ実行部120の代わりにデバイスドライバ実行部420を備える点が異なる。
デバイスドライバ実行部420は、手続き再構築部101、優先度管理テーブル保持部402の代わりに、手続き再構築部401、優先度管理テーブル保持部402を備える。
手続き再構築部401は、パラメータリスト生成部113からパラメータリストを受け取ると、受け取ったパラメータリストを走査し、順次、パラメータリストの基本リスト構造を取り出す。取り出した基本リスト構造を参照し、参照した基本リスト構造のパラメータ識別子が“STRM_INFO_PARAM”である場合は、基本リスト構造のパラメータ情報から“ビットレート”および “一回の転送サイズ”を取り出す。取り出した“ビットレート”および“一回の転送サイズ”を用いて、下記の数式(1)に基づいて、ストリーム転送周期を算出する。
[数式(1)]
ストリーム転送周期=一回の転送サイズ/ビットレート
そして、手続き再構築部401は、算出した結果を周期管理テーブルに登録する。さらに、“STRM_INFO_PARAM”が示す基本リスト構造をパラメータリストから削除する。以上の処理を、パラメータリストの終端の基本リスト構造まで繰り返す。
さらに、手続き再構築部401は、周期管理テーブルを周期の短い順にソートし、周期の短い順に高い優先度を割り当て、優先度管理テーブルを更新する。なお、周期が同じ場合は、同じ優先度を割り当てる。
図26は、本実施の形態におけるパラメータ情報管理テーブルの一例を示す図である。図26に示されるように、パラメータ情報管理テーブル451は、パラメータセット名(カラム451a)、パラメータ識別子(カラム451b)、およびパラメータ情報(カラム451c)が対応付けられているレコードから構成される。ここでは、一例として、パラメータ情報管理テーブル451は、“ストリーム供給情報通知パラメータ”、“STRM_INFO_PARAM”、および“ビットレート、一回の転送サイズ”が対応付けられているレコードを含む。
次に、図25に示されるように、優先度管理テーブル保持部402は、手続き再構築部401が更新可能な優先度管理テーブル154(例えば、図5参照。)を保持する。
続いて、以上のように構成されているストリーム制御装置40の動作について説明する。なお、実施の形態1における動作と同一の動作については、同一の参照符号を付して、その説明を省略する。
図27は、本実施の形態におけるデバイスドライバ実行処理を示す図である。図27に示されるように、手続き再構築部401は、ストリーム供給情報に基づいて、優先度管理テーブルを更新する(S411)。
このとき、図28に示されるように、手続き再構築部401は、アプリケーションプログラム実行部100から受け取ったパラメータリストを走査し、順次、基本リスト構造を取り出す(S421)。取り出した基本リスト構造のパラメータ識別子を参照し(S422)、“STRM_INFO_PARAM”である場合は(S423:YES)、パラメータ情報からビットレート(B)および一回の転送サイズ(S)を取り出す(S424、S425)。ストリーム転送周期(Ts)を算出し(S426)、結果を周期管理テーブルに登録する(S427)。パラメータ識別子に“STRM_INFO_PARAM”が登録されている基本構造リストをパラメータリストから削除する(S428)。以上の処理を、パラメータリストの終端の基本リスト構造まで繰り返す(S429)。
次に、手続き再構築部401は、周期管理テーブルを周期の短い順にソートし(S430)、先頭の基本リスト構造のパラメータ識別子に対応付けられる優先度を1に設定し(S431)、優先度管理テーブル154の優先度を更新する(S432)。次の基本リスト構造のパラメータ識別子を取得し(S433)、次の基本リスト構造の一つ前の基本リスト構造のパラメータ識別子に対応付けられている周期と、次の基本リスト構造のパラメータ識別子に対応付けられている周期とが同じであるか否かを判定する(S434)。
判定した結果、手続き再構築部401は、周期が同じである場合は、次の基本リスト構造のパラメータ識別子に対応付けられる優先度を、一つ前の基本リスト構造のパラメータ識別子に対応付けられている優先度と同じ優先度に決定する(S435)。一方、周期が異なる場合は、一つ前の基本リスト構造のパラメータ識別子に対応付けられている優先度に1を加算した優先度に決定する(S436)。決定した優先度と、次の基本リスト構造のパラメータ識別子とを対応付けて、優先度管理テーブルの優先度を更新する(S437)。
そして、手続き再構築部401は、全ての基本リスト構造のパラメータ識別子に対する優先度の更新が完了するまで、同一の処理を繰り返す(S438)。
図29は、本実施の形態における周期管理テーブルの一例を示す図である。図29に示されるように、周期管理テーブル452は、パラメータ識別子(カラム452a)および周期(カラム452b)が対応付けられているレコードから構成される。ここでは、一例として、周期管理テーブル452は、“STRM_PARAM”および“Ts”が対応付けられているレコードを含む。
ここで、STRM_PARAMの周期Tsは、算出されるまで不定であり、パラメータ情報管理テーブル451(例えば、図26参照。)の“STRM_INFO_PARAM”に対応付けられている“ビットレート、一回の転送サイズ”を用いて算出されることによって確定される。
以上、本実施の形態におけるストリーム制御装置40によれば、STRM_PARAMの優先度をビットレートや一回の転送サイズに応じて、動的に変えることが可能となり、ビットレートの異なるストリームの再生にも対応することができる。
すなわち、STRM_PARAMの周期は、ストリームのビットレートと転送サイズにより変化するため、その周期に応じてSTRM_PARAMの優先度を変える必要がある。しかし、実施の形態1におけるストリーム制御装置10では、周期が固定であるため、優先度を動的に変えることができない。
これに対して、実施の形態4におけるストリーム制御装置40では、パラメータ情報管理テーブルに登録されているストリーム供給情報通知パラメータをトリガーにして、優先度管理テーブルを更新するように、手続き再構築部122の処理を変更することで、優先度管理テーブルのSTRM_PARAMの優先度を動的に変更することができる。
(実施の形態5)
次に、本発明に係わる実施の形態5について、図面を参照しながら説明する。
本実施の形態におけるストリーム制御装置は、下記(h)に示される特徴を備える。
(h)(h1)デバイスドライバ実行機能は、ストリームのビットレートとストリームに割り当てられているストリーム識別子とをパラメータリストから抽出し、ストリーム識別子に対応付けてビットレートが登録されているビットレート管理テーブルを生成し保持するビットレート管理機能を備え、(h2)手続き再構築機能は、優先度管理テーブルおよびビットレート管理テーブルに基づいて、パラメータリストを構成する要素を並べ替えて再構築することを特徴とする。
以上の点を踏まえて、本実施の形態におけるストリーム制御装置について、説明する。なお、実施の形態1における構成要素と同一の構成要素については、同一の参照符号を付して、その説明を省略する。
図30は、本実施の形態におけるストリーム制御装置の構成を示す図である。図30に示されるように、ストリーム制御装置50は、アプリケーションプログラム実行部100、デバイスドライバ実行部120の代わりに、アプリケーションプログラム実行部500、デバイスドライバ実行部520を備える点が異なる。
アプリケーションプログラム実行部500は、パラメータリスト生成部113の代わりにパラメータリスト生成部513を備える。
パラメータリスト生成部513は、ストリーム識別子をメンバーに含む基本リスト構造からなるパラメータリストを生成する。
図31は、本実施の形態におけるパラメータリストを構成する基本リスト構造のデータ構造を示す図である。図31に示されるように、パラメータリストを構成する基本リスト構造551は、メンバーとして、ストリーム識別子(メンバー551a)、パラメータ識別子(メンバー551b)、パラメータ情報(メンバー551c)、およびネクストポインタ(メンバー551d)などを含む。すなわち、実施の形態1における基本リスト構造151(例えば、図2参照。)に、ストリーム識別子(メンバー551a)を新たに含めたものである。ここで、ストリーム識別子は、ストリーム毎に割り当てられた一意の識別子である。
次に、図30に示されるように、デバイスドライバ実行部520は、手続き再構築部101の代わりに手続き再構築部501を備える。さらに、新たにビットレート管理部519を備える。
手続き再構築部501は、パラメータリスト生成部113からパラメータリストを受け取ると、受け取ったパラメータリストをビットレート管理部519にも渡す。
ビットレート管理部519は、手続き再構築部501からパラメータリストを受け取ると、受け取ったパラメータリストを解析する。このとき、受け取ったパラメータリストを走査して、パラメータリストから基本リスト構造を取り出す。取り出した基本リスト構造を参照し、基本リスト構造のパラメータ識別子が“STRM_BITRATE_INFO”であるか否かを判定する。基本リスト構造のパラメータ識別子が“STRM_BITRATE_INFO”である場合は、基本リスト構造のパラメータ情報からビットレート情報を取り出す。取り出したビットレート情報をストリーム識別子と対応付けてビットレート管理テーブルに登録する。そして、その基本リスト構造をパラメータリストから削除する。なお、ビットレート管理部519は、ビットレート管理テーブルを保持している。
続いて、以上のように構成されているストリーム制御装置50の動作について説明する。なお、実施の形態1における動作と同一の動作については、同一の参照符号を付して、その説明を省略する。
図32は、本実施の形態におけるアプリケーションプログラム実行処理を示す図である。図32に示されるように、アプリケーションプログラム実行部500は、処理対象のストリームを指定するにあたって、ストリーム毎に、多重分離部109、509、オーディオデコーダ110、510、ビデオデコーダ111、511に割り当てるストリーム識別子に、基本リスト構造のストリーム識別子を設定する(S501)。
ここでは、一例として、マルチビットレートとして、ビットレートを9Mbpsおよび4.5Mbpsとする。さらに、ビットレート毎に、パラメータ識別子が設けられている。例えば、ビットレートが9Mbpsである場合は、パラメータ識別子は、“STRM_PARAM_9”である。ビットレートが4.5Mbpsである場合は、“STRM_PARAM_4_5”である。そして、ビットレート毎に設けられたパラメータ識別子に対応付けて、周期が周期管理テーブル(例えば、図33参照。)に登録され、また、優先度が優先度管理テーブル(例えば、図34参照。)に登録されている。
図33は、本実施の形態における周期管理テーブルの一例を示す図である。図33に示されるように、周期管理テーブル552は、パラメータ識別子(カラム552a)および周期(カラム552b)が対応付けられているレコードから構成される。ここでは、一例として、周期管理テーブル552は、“STRM_PARAM_9”および“1000ms”が対応付けられているレコードと、 “STRM_PARAM_4_5”および“2000ms”が対応付けられているレコードとを含む。
図34は、本実施の形態における優先度管理テーブルの一例を示す図である。図34に示されるように、優先度管理テーブル553は、パラメータ識別子(カラム553a)および優先度(カラム553b)が対応付けられているレコードから構成される。ここでは、一例として、優先度管理テーブル553は、“STRM_PARAM_9”および“3”が対応付けられているレコードと、 “STRM_PARAM_4_5”および“4”が対応付けられているレコードとを含む。
図35は、本実施の形態におけるデバイスドライバ実行処理を示す図である。図35に示されるように、ビットレート管理部519は、手続き再構築部501からパラメータリストを受け取り、受け取ったパラメータリストを解析して、パラメータリストに登録されているビットレート情報をビットレート管理テーブル(例えば、図37参照。)に登録する(S511)。
このとき、図36に示されるように、ビットレート管理部519は、手続き再構築部501から受け取ったパラメータリストを走査し、順次、基本リスト構造を取り出す(S521)。取り出した基本リスト構造のパラメータ識別子を参照し(S522)、取り出した基本リスト構造のパラメータ識別子が“STRM_BITRATE_INFO”であるか否かを判定する(S523)。
判定した結果、ビットレート管理部519は、“STRM_BITRATE_INFO”である場合は(S523:YES)、取り出した基本リスト構造のパラメータ情報からビットレート情報を取り出す(S524)。取り出したビットレート情報を取り出した基本リスト構造のストリーム識別子と対応付けてビットレート管理テーブル(例えば、図37参照。)に登録する(S525)。また、パラメータ識別子に“STRM_BITRATE_INFO”が登録されている基本リスト構造をパラメータリストから削除する(S526)。以上の処理を、パラメータリストの終端の基本リスト構造まで繰り返す(S527)。
図37は、本実施の形態におけるビットレート管理テーブルの一例を示す図である。図37に示されるように、ビットレート管理テーブル554は、ストリーム識別子およびビットレートが対応付けられているレコードから構成される。ここでは、一例として、ビットレート管理テーブル554は、“STRM_ID_1”および“9(STRM_PARAM_9)”が対応付けられているレコードと、“STRM_ID_2”および“4.5(STRM_PARAM_4_5)”が対応付けられているレコードとを含む。
なお、図38に示されるように、手続き再構築部501は、優先度管理テーブル553(例えば、図34参照。)から優先度を取り出すにあたって、まず、基本リスト構造のパラメータ識別子が“STRM_PARAM”であるか否かを判定する(S531)。
判定した結果、手続き再構築部501は、“STRM_PARAM”でない場合は(S531:NO)、優先度管理テーブル553(例えば、図34参照。)から優先度を取得する(S532)。一方、“STRM_PARAM”である場合は(S531:YES)、その基本リスト構造のストリーム識別子を取得する(S533)。取得したストリーム識別子に対応付けられているビットレートをビットレート管理テーブル554(例えば、図37参照。)から取得する。取得したビットレートに基づいて、パラメータ識別子を特定する(S534)。特定したパラメータ識別子を用いて、優先度管理テーブル553(例えば、図34参照。)から優先度を取得する(S535)。
以上、本実施の形態におけるストリーム制御装置50によれば、マルチストリームの処理を取り扱うことが可能となる。また、STRM_PARAMの優先度をストリームごとに定義し、使用することが可能となるため、異なるビットレートのストリームを処理する場合においても、アプリケーションプログラム実行部500は各ストリームに対する処理順序を意識する必要がなくなる。
さらに、ストリーム識別子ごとに優先度管理テーブルを定義することで、STRM_PARAMを判定する必要がなくなり、ビットレートに依存して設定周期が異なるようなパラメータを複数扱うことができる。
すなわち、2画面同時再生装置等のように、複数のストリームを、ストリーム識別子を用いて処理するマルチストリーム処理への対応を考えた場合、同時に異なるビットレートのストリームを処理することが要求される。
これに対して、本実施の形態におけるストリーム制御装置50では、ビットレート管理部519を備え、マルチストリームやマルチビットレートに対応することができる。
(その他)
なお、本発明に係わるストリーム制御装置は、CPU(Central Processing Unit)、システムLSI(Large Scale Integration)、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、ネットワークインターフェースなどを備えるとしてもよい。さらに、DVD−RAM、Blu−rayディスク、SD(Secure Digital)メモリカードのような可搬性の記録媒体に対して読み書き可能なドライブ装置を備えるとしてもよい。
さらに、HDDまたはROMなどに、ストリーム制御装置を制御するプログラム(以下、ストリーム制御プログラムと呼称する。)がインストールされており、ストリーム制御プログラムが実行されることによって、ストリーム制御装置の各機能が実現されるとしてもよい。
なお、ストリーム制御プログラムは、コンピュータシステム、組み込みシステムなどのようなハードウェアシステムに読み取り可能な記録媒体に記録されているとしてもよい。さらに、記録媒体を介して他のハードウェアシステムに読み出されて実行されるとしてもよい。これによって、ストリーム制御装置の各機能を他のハードウェアシステムに実現することができる。ここで、コンピュータシステム読み取り可能な記録媒体として、光学記録媒体(例えば、CD−ROMなど。)、磁気記録媒体(例えば、ハードディスクなど。)、光磁気記録媒体(例えば、MOなど。)、半導体メモリ(例えば、メモリカードなど。)などがある。
また、ストリーム制御プログラムは、ネットワークに接続されているハードウェアシステムに保持されているとしてもよい。さらに、ネットワークを介して他のハードウェアシステムにダウンロードされて実行されるとしてもよい。これによって、ストリーム制御装置の各機能を他のハードウェアシステムに実現することができる。ここで、ネットワークとして、インターネット、ローカルエリアネットワーク、地上放送網、衛星放送網、PLC(Power Line Communication)、移動電話網、有線通信網(例えば、IEEE802.3など。)、無線通信網(例えば、IEEE802.11など。)などがある。
なお、ストリーム制御装置は、デジタルテレビ、デジタルレコーダ、デジタルカムコーダ、ゲーム機、IP電話機、携帯電話機などのような組み込みシステムとしてもよい。
本発明は、ストリーム制御装置などとして、特に、種々の民生AV機器において、ソフトウェア共通化を向上するものであり、SD−MovieやDVD−Movieなどのソフトウェアを実行するストリーム制御装置などとして、利用することができる。
本発明に係わる実施の形態1におけるストリーム制御装置の構成を示す図 本発明に係わる実施の形態1における基本リスト構造のデータ構造を示す図 本発明に係わる実施の形態1におけるパラメータ情報管理テーブルの一例を示す図 本発明に係わる実施の形態1におけるパラメータリストのデータ構造を示す図 本発明に係わる実施の形態1における優先度管理テーブルの一例を示す図 本発明に係わる実施の形態1における再構築パラメータリストのデータ構造を示す図 本発明に係わる実施の形態1におけるストリーム制御処理部管理テーブルの一例を示す図 本発明に係わる実施の形態1における周期管理テーブルの一例を示す図 本発明に係わる実施の形態1におけるアプリケーションプログラム実行処理を示す図 本発明に係わる実施の形態1におけるデバイスドライバ実行処理を示す図 本発明に係わる実施の形態1における手続き再構築処理を示す図 本発明に係わる実施の形態2におけるストリーム制御装置の構成を示す図 本発明に係わる実施の形態2におけるパラメータ処理タイプ管理テーブルの一例を示す図 本発明に係わる実施の形態2における割込イベント管理テーブルの一例を示す図 本発明に係わる実施の形態2におけるデバイスドライバ実行処理を示す図 本発明に係わる実施の形態2における手続き再構築処理を示す図 本発明に係わる実施の形態2におけるパラメータリストのデータ構造を示す図 本発明に係わる実施の形態3におけるストリーム制御装置の構成を示す図 本発明に係わる実施の形態3におけるパラメータ情報管理テーブルの一例を示す図 本発明に係わる実施の形態3におけるRDI情報のデータ構造を示す図 本発明に係わる実施の形態3におけるRDIパラメータ生成処理を示す図 本発明に係わる実施の形態3における周期管理テーブルの一例を示す図 本発明に係わる実施の形態3における優先度管理テーブルの一例を示す図 本発明に係わる実施の形態3におけるストリーム制御処理部管理テーブルの一例を示す図 本発明に係わる実施の形態4におけるストリーム制御装置の構成を示す図 本発明に係わる実施の形態4におけるパラメータ情報管理テーブルの一例を示す図 本発明に係わる実施の形態4におけるデバイスドライバ実行処理を示す図 本発明に係わる実施の形態4における手続き再構築処理を示す図 本発明に係わる実施の形態4における周期管理テーブルの一例を示す図 本発明に係わる実施の形態5におけるストリーム制御装置の構成を示す図 本発明に係わる実施の形態5における基本リスト構造のデータ構造を示す図 本発明に係わる実施の形態5におけるアプリケーションプログラム実行処理を示す図 本発明に係わる実施の形態5における周期管理テーブルの一例を示す図 本発明に係わる実施の形態5における優先度管理テーブルの一例を示す図 本発明に係わる実施の形態5におけるデバイスドライバ実行処理を示す図 本発明に係わる実施の形態5におけるビットレート管理処理を示す図 本発明に係わる実施の形態5におけるビットレート管理テーブルの一例を示す図 本発明に係わる実施の形態5における優先度取得処理を示す図
符号の説明
100 アプリケーションプログラム実行部
101 手続き再構築部
102 優先度管理テーブル保持部
103 ストリーム制御処理起動部
104 ストリーム制御処理部管理テーブル保持部
105 ストリーム制御処理部
106 ストリーム供給処理部
107 蓄積部
108 記憶部
109 多重分離部
110 オーディオデコーダ
111 ビデオデコーダ
112 AV出力装置
113 パラメータリスト生成部
114 パラメータ情報管理テーブル保持部

Claims (12)

  1. ストリームに対してデコード処理を施し得られたデータを出力するストリーム処理手段と、
    前記ストリーム処理手段の動作を特徴付けるパラメータ情報を含む要素が連結リスト構造化されてなるパラメータリストを生成するアプリケーションプログラム実行手段と、
    前記パラメータリストに基づいて、前記ストリーム処理手段の動作を制御するデバイスドライバを実行するデバイスドライバ実行手段とを備え、
    前記ストリーム処理手段は、1フレームの前記デコード処理が完了すると、前記データに関するデコード情報をアプリケーションプログラム実行手段に通知し、
    前記アプリケーションプログラム実行手段は、
    前記デコード情報に基づいて、前記ストリーム処理手段に対して、前記データのフレームごとに前記パラメータリストの基本リスト構造を設定し、
    前記パラメータリストの先頭アドレスを引数として前記デバイスドライバ実行手段に渡す
    ことを特徴とするストリーム制御装置。
  2. 前記デバイスドライバ実行手段は、
    前記パラメータ情報のセット毎に割り当てられた優先度が登録されている優先度管理テーブルを保持する優先度管理テーブル保持手段と、
    前記優先度管理テーブルに基づいて、前記パラメータリストを構成する要素を並べ替えて再構築する手続き再構築手段と
    を備えることを特徴とする請求項1に記載のストリーム制御装置。
  3. 前記デバイスドライバ実行手段は、
    前記ストリーム処理手段の動作に同期させるか否かが示される処理タイプが登録されているパラメータ処理タイプ管理テーブルを保持するパラメータ処理タイプ管理テーブル保持手段を備え、
    前記手続き再構築手段は、
    前記パラメータ処理タイプ管理テーブルに基づいて、同期させる要素と同期させない要素とに分類し、同期させる要素からなる同期パラメータリストと同期させない要素からなる非同期パラメータリストとを生成し、前記優先度管理テーブルに基づいて、前記非同期パラメータリストを構成する要素を並べ替えて再構築する
    ことを特徴とする請求項2に記載のストリーム制御装置。
  4. 前記手続き再構築手段は、
    前記ストリームのビットレートおよび前記ストリームの転送サイズを前記パラメータリストから抽出し、
    前記ビットレートおよび前記転送サイズから前記ストリーム処理手段の起動周期を算出し、
    前記起動周期に基づいて優先度を決定し、決定した優先度を用いて前記優先度管理テーブルを更新する
    ことを特徴とする請求項2に記載のストリーム制御装置。
  5. 前記デバイスドライバ実行手段は、
    前記ストリームのビットレートと前記ストリームに割り当てられているストリーム識別子とを前記パラメータリストから抽出し、前記ストリーム識別子に対応付けて前記ビットレートが登録されているビットレート管理テーブルを生成し保持するビットレート管理手段を備え、
    前記手続き再構築手段は、
    前記優先度管理テーブルおよび前記ビットレート管理テーブルに基づいて、前記パラメータリストを構成する要素を並べ替えて再構築する
    ことを特徴とする請求項2に記載のストリーム制御装置。
  6. 前記アプリケーションプログラム実行手段は、
    前記パラメータ情報が登録されているパラメータ情報管理テーブルを保持するパラメータ情報管理テーブル保持手段と、
    前記パラメータ情報管理テーブルに基づいて、前記パラメータリストを生成するパラメータリスト生成手段と
    を備えることを特徴とする請求項1に記載のストリーム制御装置。
  7. 前記パラメータリスト生成手段は、
    DVDフォーマットのストリームに含まれるRDI(Read−time Data Information)情報を前記ストリームから抽出するRDI情報抽出手段を備え、
    前記パラメータ情報に前記RDI情報を含む要素を生成し、前記パラメータリストに付加する
    ことを特徴とする請求項6に記載のストリーム制御装置。
  8. 前記ストリーム処理手段は、
    前記ストリームに対して個々の処理を実行する複数の機能を備え、
    前記デバイスドライバ実行手段は、
    前記機能を制御する制御機能を機能毎に備えるストリーム制御処理手段と、
    前記制御機能を起動させる起動アドレスが前記制御機能毎に登録されているストリーム制御処理管理テーブルを保持するストリーム制御処理管理テーブル保持手段と、
    前記ストリーム制御処理管理テーブルに基づいて、前記パラメータリストの要素毎に、該当する制御機能を起動させるストリーム制御処理起動手段と
    を備えることを特徴とする請求項1に記載のストリーム制御装置。
  9. 前記ストリーム処理手段は、垂直同期信号に関するイベント情報をアプリケーションプログラム実行手段に通知し、
    前記アプリケーションプログラム実行手段は、前記イベント情報および前記デコード情報に基づいて、前記ストリーム処理手段に対して、前記データのフレームごとに前記パラメータリストの基本リスト構造を設定することを特徴とする請求項1に記載のストリーム制御装置
  10. 前記ストリーム処理手段は、前記ストリーム処理手段の状態遷移に関するイベント情報をアプリケーションプログラム実行手段に通知し、
    前記アプリケーションプログラム実行手段は、前記イベント情報および前記デコード情報に基づいて、前記ストリーム処理手段に対して、前記データのフレームごとに前記パラメータリストの基本リスト構造を設定することを特徴とする請求項1に記載のストリーム制御装置。
  11. アプリケーションプログラム実行部と、デバイスドライバ実行部とを備え、ストリームに対してデコード処理を施し、得られたデータを出力する装置におけるストリーム制御方法であって
    フレームの前記デコード処理が完了すると、前記データに関するデコード情報を前記アプリケーションプログラム実行部に通知するステップと、
    前記アプリケーションプログラム実行部が、前記デコード情報に基づいて、前記データのフレームごとに、パラメータリストの基本リスト構造を生成し、前記デコード処理の動作を特徴付けるパラメータ情報を含む要素が連結リスト構造化されてなる前記パラメータリストを生成するするステップと、
    前記アプリケーションプログラム実行部が、前記パラメータリストの先頭アドレスを引数として前記デバイスドライバ実行部に渡すステップと、
    前記デバイスドライブ実行部が、前記引数に対応する前記パラメータリストに基づいてデバイスドライバを実行することによって、前記デコード処理の動作を制御するステップと
    を有するストリーム制御方法。
  12. 請求項11に記載のストリーム制御方法をコンピュータに実行させるコンピュータ読み取り可能なストリーム制御プログラム。
JP2005364082A 2005-12-16 2005-12-16 ストリーム制御装置 Expired - Fee Related JP4828927B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005364082A JP4828927B2 (ja) 2005-12-16 2005-12-16 ストリーム制御装置
US11/565,166 US20070140668A1 (en) 2005-12-16 2006-11-30 Stream control device
CN2006101700463A CN1984338B (zh) 2005-12-16 2006-12-15 流控制装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005364082A JP4828927B2 (ja) 2005-12-16 2005-12-16 ストリーム制御装置

Publications (2)

Publication Number Publication Date
JP2007164734A JP2007164734A (ja) 2007-06-28
JP4828927B2 true JP4828927B2 (ja) 2011-11-30

Family

ID=38166488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005364082A Expired - Fee Related JP4828927B2 (ja) 2005-12-16 2005-12-16 ストリーム制御装置

Country Status (3)

Country Link
US (1) US20070140668A1 (ja)
JP (1) JP4828927B2 (ja)
CN (1) CN1984338B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9449442B2 (en) 2014-10-23 2016-09-20 Vivint, Inc. Interface of an automation system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4893256A (en) * 1986-04-04 1990-01-09 International Business Machines Corporation Interactive video composition and presentation systems
JPH056251A (ja) * 1990-07-30 1993-01-14 Farallon Computing Inc コンピユータシステム上に上映を事前記録、編集及び再生するための装置
US5455910A (en) * 1993-01-06 1995-10-03 International Business Machines Corporation Method and system for creating a synchronized presentation from different types of media presentations
FR2743245B1 (fr) * 1995-12-29 1998-01-23 Thomson Multimedia Sa Dispositif de demultiplexage
JP4038700B2 (ja) * 1997-02-17 2008-01-30 ソニー株式会社 電子機器制御装置および方法、並びに、情報処理システムおよび方法
US6370323B1 (en) * 1997-04-03 2002-04-09 Lsi Logic Corporation Digital video disc decoder including command buffer and command status pointers
US6205492B1 (en) * 1997-04-04 2001-03-20 Microsoft Corporation Method and computer program product for interconnecting software drivers in kernel mode
US20020072816A1 (en) * 2000-12-07 2002-06-13 Yoav Shdema Audio system
US20050160352A1 (en) * 2001-06-14 2005-07-21 Samsung Electronics Co., Ltd. Information storage medium containing preload information, apparatus for and method of reproducing therefor
US7240350B1 (en) * 2002-01-07 2007-07-03 Slt Logic, Llc System and method for providing communications to processes
RU2004130855A (ru) * 2002-03-20 2005-04-10 Конинклейке Филипс Электроникс Н.В. (Nl) Способ и устройство для записи информации реального времени
JP4086529B2 (ja) * 2002-04-08 2008-05-14 松下電器産業株式会社 画像処理装置及び画像処理方法
KR100854531B1 (ko) * 2002-07-01 2008-10-27 노키아 코포레이션 방송 매체 스트림의 대표적인 매체 객체들을 단말기에전달하는 시스템 및 방법
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
JP2005275643A (ja) * 2004-03-24 2005-10-06 Hitachi Ltd コンテンツデータ処理装置及び方法
JP4285307B2 (ja) * 2004-04-02 2009-06-24 株式会社日立製作所 データ処理装置およびその方法
JP2006350828A (ja) * 2005-06-17 2006-12-28 Matsushita Electric Ind Co Ltd ストリーム制御装置

Also Published As

Publication number Publication date
CN1984338A (zh) 2007-06-20
JP2007164734A (ja) 2007-06-28
CN1984338B (zh) 2010-12-29
US20070140668A1 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
KR100716973B1 (ko) Av 데이터에 동기된 텍스트 서브 타이틀 데이터를기록한 정보저장매체, 재생방법 및 장치
JP4349277B2 (ja) 動画再生装置
EP1521267A1 (en) Storage medium storing search information and reproducing apparatus and method
JPWO2007058025A1 (ja) 再生装置及びプログラム
JP2007172794A (ja) 記録装置、記録方法
JPWO2008068940A1 (ja) 映像音声再生装置
CN101002467B (zh) 数据处理设备和方法
JP2009016959A (ja) 記録装置、記録再生システム、記録方法
CN101002268B (zh) 数据处理设备和数据处理方法
JP4828927B2 (ja) ストリーム制御装置
JP4423551B2 (ja) 放送記録再生装置および放送記録再生処理プログラム
JP2007267259A (ja) 画像処理装置およびファイル再生方法
EP1768123A1 (en) Data processing device, data processing method, program, program recording medium, data recording medium, and data structure
US20070005629A1 (en) Memory device for a rail longitudinal guide for a motor vehicle seat
EP1676438A1 (en) Program list generating apparatus
KR101154721B1 (ko) 데이터 처리 장치, 데이터 처리 방법 및 기록 매체
JP2008182539A (ja) 放送受信記録再生装置および放送受信記録再生方法
JP4941128B2 (ja) 映像処理装置
KR101259015B1 (ko) 재생 방법 및 장치
JP2007274594A (ja) プレビュー再生装置
JP2007013359A (ja) 放送受信端末および放送番組再生方法
JP2007048379A (ja) プログラムの再生方法
JP2010113779A (ja) ダビング装置、その制御方法及びプログラム
JP2007294057A (ja) 再生装置
JP2019140467A (ja) 受信装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110214

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110906

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110915

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

Free format text: PAYMENT UNTIL: 20140922

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4828927

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees