JP3939198B2 - データ出力装置 - Google Patents
データ出力装置 Download PDFInfo
- Publication number
- JP3939198B2 JP3939198B2 JP2002144059A JP2002144059A JP3939198B2 JP 3939198 B2 JP3939198 B2 JP 3939198B2 JP 2002144059 A JP2002144059 A JP 2002144059A JP 2002144059 A JP2002144059 A JP 2002144059A JP 3939198 B2 JP3939198 B2 JP 3939198B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- image data
- size
- transfer
- read
- 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
Links
- 238000000034 method Methods 0.000 claims description 84
- 238000001514 detection method Methods 0.000 claims description 15
- 230000006837 decompression Effects 0.000 description 17
- 230000004044 response Effects 0.000 description 11
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 239000002131 composite material Substances 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 101100379079 Emericella variicolor andA gene Proteins 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
- H04N5/77—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
- H04N5/772—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/781—Television signal recording using magnetic recording on disks or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
【産業上の利用分野】
この発明は、データ出力装置に関し、たとえば動画像データの再生に用いられ、記録媒体に格納されたデータをバッファメモリを介して出力する、データ出力装置に関する。
【0002】
【背景技術】
記録媒体から読み出されたデータをバッファメモリに一旦格納するようにすれば、記録媒体からのデータの読み出しが間欠的であっても、データを連続的に出力することができる。しかも、バッファメモリのアドレスをリング状に更新することによって、つまりバッファメモリをリングバッファとして用いることによって、バッファメモリの容量を越えるデータの出力が可能となる。
【0003】
【発明が解決しようとする課題】
しかし、バッファメモリのアドレス管理が適切でなければ、読み出しアドレスが書き込みアドレスを追い越してしまい、データ処理が破綻してしまう。
【0004】
それゆえに、この発明の主たる目的は、バッファメモリにおいて読み出しアドレスが書き込みアドレスを追い越すのを防止できる、データ出力装置を提供することである。
【0005】
【課題を解決するための手段】
この発明に従うデータ出力装置は、記録媒体に格納されたデータを第1バッファメモリを介して出力するデータ出力装置において、複数のデータ転送命令を指示リストに設定する設定手段、指示リストに設定された複数のデータ転送命令を順に指定する指定手段、指定手段によって指定されたデータ転送命令に従うデータを記録媒体から第1バッファメモリに転送する転送手段、転送手段の転送処理によって第1バッファメモリに格納されたデータを読み出す読み出し手段、指示リストに設定された複数のデータ転送命令に従うデータのうち読み出し手段によって未だ読み出されていないデータのサイズを検出する第1検出手段、指示リストに設定された複数のデータ転送命令に従うデータのうち転送手段によって未だ転送されていないデータのサイズを検出する第2検出手段、および第1検出手段によって検出されたサイズから第2検出手段によって検出されたサイズを減算して求められる差分値が閾値を下回るとき読み出し手段を不能化する不能化手段を備えることを特徴とする。
【0006】
【作用】
記録媒体に格納されたデータを第1バッファメモリを介して出力するとき、複数のデータ転送命令が設定手段によって指示リストに設定される。指定手段は指示リストに設定された複数のデータ転送命令を順に指定し、転送手段は指定手段によって指定されたデータ転送命令に従うデータを記録媒体から第1バッファメモリに転送する。転送手段の転送処理によって第1バッファメモリに格納されたデータは、読み出し手段によって読み出される。
【0007】
ここで、指示リストに設定された複数のデータ転送命令に従うデータのうち読み出し手段によって未だ読み出されていないデータのサイズは第1検出手段によって検出され、指示リストに設定された複数のデータ転送命令に従うデータのうち転送手段によって未だ転送されていないデータのサイズは第2検出手段によって検出される。読み出し手段は、第1検出手段によって検出されたサイズから第2検出手段によって検出されたサイズを減算して求められる差分値が閾値を下回るとき、不能化手段によって不能化される。
【0008】
第1検出手段および第2検出手段の各々によって検出されるサイズの差分は、第1バッファメモリへの転送は完了したが、読み出し手段による読み出しは未だ完了していないデータのサイズとなる。このようなサイズが閾値を下回るときに読み出し手段を不能化することによって、第1バッファメモリにおいて読み出しアドレスが書き込みアドレスを追い越す事態が回避される。
【0009】
データが複数画面の画像データである場合、閾値は、好ましくは読み出し手段によって次に読み出すべき画像データのサイズに相当する。これによって、第1バッファメモリの容量が最大限に効率化される。
【0010】
記録媒体がディスク媒体である場合、データは可動再生部材によってディスク媒体から再生される。ディスク媒体では可動再生部材のシーク動作が必要であり、シーク動作の間は転送が中断されるため、第1検出手段および第2検出手段の各々によって検出されるサイズの差分はデータの記録状態によって大きく変動しうる。このような場合に、閾値を読み出し手段によって次に読み出すべき画像データのサイズとする効果が顕著に現れる。
【0011】
画像データが符号化画像データである場合、好ましくは、読み出し手段によって読み出された符号化画像データが復号手段によって復号され、復号画像データが書き込み手段によって第2バッファメモリに書き込まれ、そして第2バッファメモリに格納された復号画像データが出力手段によってモニタに出力される。これによって、読み出し手段が不能化される間は、同一画面の画像がモニタに表示され続ける。
【0012】
【発明の効果】
この発明によれば、第1検出手段および第2検出手段の各々によって検出されるサイズの差分が閾値を下回るときに読み出し手段を不能化するようにしたため、第1バッファメモリ上で読み出しアドレスが書き込みアドレスを追い越す事態が回避される。
【0013】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【0014】
【実施例】
図1を参照して、この実施例のディジタルカメラ10はイメージセンサ12を含む。イメージセンサ12の前面には色フィルタ(図示せず)が装着され、被写体の光像はこの色フィルタを介してイメージセンサ12に照射される。
【0015】
モード切換スイッチ60を“カメラ”側に切り換えると、対応する状態信号がシステムコントローラ54からCPU32に与えられる。CPU32は、被写体のリアルタイム動画像(スルー画像)をモニタ40に表示すべく、TG(Timing Generator)14に露光および間引き読み出しの繰り返しを命令する。TG14は、SG(Signal Generator)16から出力される垂直同期信号および水平同期信号に基づいてタイミング信号を生成し、イメージセンサ12に露光および間引き読み出しを施す。この結果、各フレームの低解像度カメラ信号が1/30秒毎にイメージセンサ12から出力される。
【0016】
出力されたカメラ信号は、CDS/AGC回路18で周知のノイズ除去およびレベル調整を施され、その後、A/D変換器20によってディジタル信号であるカメラデータに変換される。信号処理回路22は、A/D変換器20から出力されたカメラデータに色分離,白バランス調整,YUV変換などの処理を施してYUVデータを生成する。イメージセンサ12は各フレームのカメラ信号を1/30秒毎に出力するため、各フレームのYUVデータ(静止画像データ)もまた、1/30秒毎に信号処理回路22から出力される。信号処理回路22は、こうして生成された静止画像データを書き込みリクエストとともにメモリ制御回路26に出力する。
【0017】
メモリ制御回路26は、書き込みリクエストに応答して、静止画像データをSDRAM28に書き込む。SDRAM28には図2に示すような表示画像エリア28aが形成されており、静止画像データは当該表示画像エリア28aに書き込まれる。表示画像エリア28aは1フレーム分の容量しか持たず、各フレームの静止画像データは1/30秒毎に更新される。一方、ビデオエンコーダ38は読み出しリクエストを1/60秒毎にメモリ制御回路26に出力し、メモリ制御回路26は静止画像データを表示画像エリア28aから1/60秒毎に読み出す。読み出された各フレームの静止画像データは、バス24を介してビデオエンコーダ38に与えられる。ビデオエンコーダ38は、与えられた各フレームの静止画像データをNTSC方式のコンポジット画像信号に変換し、変換したコンポジット画像信号をモニタ40に与える。この結果、被写体のスルー画像がモニタ40に表示される。
【0018】
オペレータがシャッタボタン58を操作すると、対応する状態信号がシステムコントローラ54からCPU32に与えられる。CPU32は、静止画像データの圧縮および音声信号の取込を行うべく、1/30秒毎に画像圧縮命令および音声処理命令を発生する。画像圧縮命令はJPEGコーデック30に与えられ、音声処理命令は信号処理回路46に与えられる。
【0019】
JPEGコーデック30は、画像圧縮命令に応答して読み出しリクエストをメモリ制御回路26に出力する。SDRAM28の表示画像エリア28aに格納された静止画像データは、メモリ制御回路26によって1/30秒毎に読み出される。読み出された静止画像データは、バス24を介してJPEGコーデック30に与えられ、JPEG圧縮を施される。JPEGコーデック30は、1フレームの圧縮画像データが生成される毎に当該圧縮画像データの書き込みをメモリ制御回路26にリクエストし、メモリ制御回路26は、リクエストに応答して圧縮画像データを図2に示す圧縮画像エリア28bに書き込む。
【0020】
一方、信号処理回路46は、音声処理命令に応答して、マイク42から音声信号を取り込む。信号処理回路46はまた、取り込まれた音声信号にA/D変換処理(サンプリング周波数:7990Hz)を施して1バイト=8ビットのモノラル音声データを生成し、当該音声データを書き込みリクエストとともにメモリ制御回路26に出力する。音声処理命令は1/30秒毎に与えられるため、1/30秒分つまり266バイトの音声データがメモリ制御回路26に出力される。メモリ制御回路26は、書き込みリクエストに応答して、このような266バイトの音声データを図2に示す音声エリア28cに書き込む。
【0021】
CPU32はまた、メモリ制御回路26に対してデータの読み出しをリクエストする。メモリ制御回路26は、与えられたリクエストに応答して1/10秒分の音声データおよび3フレームの画像データを交互に読み出し、読み出されたデータをディスクドライブ34を介して光磁気ディスク36に記録する。
【0022】
なお、光磁気ディスク36は着脱自在の記録媒体であり、装着時にディスクドライブ34と接続されたときに、磁気ヘッド34aおよび光ピックアップ34bを用いた記録が可能となる。
【0023】
光磁気ディスク36には、最初のシャッタボタン58の操作に応答してQuickTime形式のファイルヘッダが作成される。SDRAM28から読み出された音声データおよび画像データは、当該ファイルヘッダ以降に書き込まれていく。この結果、図3に示すように、1/10秒分の音声データからなる音声チャンクおよび3フレーム分の圧縮画像データからなる画像チャンクが交互に形成される。1つの音声チャンクおよびこれに続く1つの画像チャンクが互いに対応する。ファイルの末尾に形成されたインデックスチャンクには、各音声チャンクの開始アドレスおよび各フレームの圧縮画像データの開始アドレスが書き込まれる。このようなインデックスチャンクによって、音声データが1/10秒毎に管理され、圧縮画像データが1フレーム毎に管理される。
【0024】
シャッタボタン58がオフされると、CPU32はJPEGコーデック30に対する画像圧縮命令の出力および信号処理回路46に対する音声処理命令の出力を中止する。つまり、SDRAM28に対するデータの書き込み処理を中止する。ただし、記録処理は、SDRAM28の全てのデータが光磁気ディスク36に記録された時点で終了される。
【0025】
なお、光磁気ディスク36におけるファイル管理方式としてはMS−DOSのFAT方式が採用され、QuickTimeファイルはクラスタ単位で離散的に記録される。
【0026】
モード切換スイッチ60が“再生”側に切り換えられ、かつセットキー56が操作されると、上述の要領で光磁気ディスク36に記録されたQuickTimeファイルが再生される。まず、CPU32が、ディスクドライブ34を介して(磁気ヘッド34aによって)光磁気ディスク36にアクセスし、QuickTimeファイル内の音声データおよび圧縮画像データをファイルヘッダの次のアドレスから順に読み出す。CPU32はまた、読み出した音声データおよび圧縮画像データを書き込みリクエストとともにメモリ制御回路26に与える。音声データおよび画像データは、メモリ制御回路26によってSDRAM28に書き込まれる。QuickTimeファイルは図3に示すように形成されているため、1/10秒分の音声データおよび3フレーム分の圧縮画像データがQuickTimeファイルから交互に読み出される。そして、音声データは図2に示す音声エリア28cの先頭から順に書き込まれ、圧縮画像データは図2に示す圧縮画像エリア28bの先頭から順に書き込まれる。
【0027】
CPU32からJPEGコーデック30に対して伸長命令が与えられると、JPEGコーデック30は、1フレームの圧縮画像データの読み出しをメモリ制御回路26にリクエストし、メモリ制御回路26によって圧縮画像エリア28bから読み出された圧縮画像データをJPEG方式で伸長する。JPEGコーデック30はさらに、伸長画像データを書き込みリクエストとともにメモリ制御回路26に与える。伸長画像データは、メモリ制御回路26によって図2に示す表示画像エリア28aに書き込まれる。CPU32は1/30秒毎に伸長命令を発生し、JPEGコーデック30は、伸長命令が与えられる毎に連続するフレームの圧縮画像データを上述の要領で伸長する。このため、表示画像エリア28aの伸長画像データは1/30秒毎に更新される。
【0028】
表示画像エリア28aに格納された伸長画像データは、ビデオエンコーダ38から1/60秒毎に出力される読み出しリクエストに基づいて、2回ずつ読み出される。読み出しはメモリ制御回路26によって行なわれ、ビデオエンコーダ38は、読み出された伸長画像データをコンポジット画像信号に変換する。変換されたコンポジット画像信号はモニタ40に与えられ、この結果、通常速度の動画像が画面に再生される。
【0029】
CPU32はまた、音声データの再生命令をシステムクロックに応答して信号処理回路48に与える。信号処理回路48は、再生命令が与えられる毎に1サンプル分(=1バイト)の音声データの読み出しリクエストをメモリ制御回路26に与え、メモリ制御回路26によって音声エリア28cから読み出された音声データに所定の再生処理を施す。再生処理が施された音声信号は、スピーカ52から出力される。
【0030】
なお、SDRAM28は、記録/再生のいずれのモードにおいてもリングバッファとして動作する。つまり、アクセス先のアドレスは、圧縮画像エリア28bおよび音声エリア28cの各々でリング状につまり循環的に更新される。このため、圧縮画像エリア28bの容量を超える圧縮画像データならびに音声エリア28cの容量を超える音声データの記録/再生が可能となる。
【0031】
モード切換スイッチ60が“再生”側に切り換えられ、セットキー56が操作されると、CPU32は、図7〜図15に示す再生処理および図16に示すバックグラウンド処理を実行する。つまり、CPU32にはμiTRONのようなマルチタスクOS(リアルタイムOS)が搭載されており、再生処理およびバックグラウンド処理の2つのタスクが並行して実行される。なお、図7〜図16に示すフロー図に対応する制御プログラムは、ROM62に記憶される。
【0032】
ここで、CPU32の処理には、表1〜表3に示す変数が用いられる。表1には音声に関連する変数を、表2には画像に関連する変数を、そして表3にはバックグラウンド処理に関連する変数を列挙している。
【0033】
【表1】
【0034】
【表2】
【0035】
【表3】
【0036】
表1について、chkは音声チャンクのチャンク番号であり、aofst[chk]はQuickTimeファイルの先頭アドレスから注目する音声チャンクの先頭までのオフセットであり、asz[chk]は注目する音声チャンクのサイズ(バイト数)である。acntはバイト数で示される音声データのカウント値であり、AMAXはQuickTimeファイルに格納された音声データの総バイト数である。AUD_BUFおよびAUD_ENDはそれぞれ音声エリア28cの先頭アドレスおよび末尾アドレスである。apreptrは音声エリア28cの書き込みアドレスであり、acptrは音声エリア28cの読み出し(再生)アドレスであり、dmは音声エリア28cの残容量値である。astartは割込み処理を許可するかどうかを示すフラグであり、aflgは音声エリア28cへの書き込みを禁止するかどうかを示すフラグである。pre_read_sz[class]は、SDRAM28への転送命令が図6に示す指示リスト32cに設定されたが信号処理回路48による処理が未だ行われていない音声データのサイズ(バイト)である。音声データの場合、classは“2”とされる。
【0037】
表2について、prefrmは圧縮画像エリア28bに書き込む圧縮画像データのフレーム番号であり、frmは圧縮画像エリア28bから読み出す(再生する)圧縮画像データのフレーム番号である。mofst[prefrm]はQuickTimeファイルの先頭アドレスから注目するフレームの圧縮画像データの先頭アドレスまでのオフセットであり、msz[prefrm]は注目するフレームの圧縮画像データのサイズであり、MFMAXはQuickTimeファイルに格納された圧縮画像データの総フレーム数である。MOV_BUFおよびMOV_ENDはそれぞれ圧縮画像エリア28bの先頭アドレスおよび末尾アドレスであり、mpreptrは圧縮画像エリア28bの書き込みアドレスであり、mcptrは圧縮画像エリア28bの読み出し(再生)アドレスである。decflgは圧縮画像データの伸長処理を許可するかどうかを示すフラグである。pre_read_sz[class]は、SDRAM28への転送命令が指示リスト32cに設定されたがJPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのサイズ(バイト)である。画像データの場合、分類を示すclassは“1”とされる。
【0038】
表3について、S-mail_Noは指示リスト32cに命令を設定するときの書き込み先を示すメール番号であり、E-mail_Noは指示リスト32cに設定された命令を実行するときの読み出し先を示すメール番号である。MAX_BOXは指示リスト32cに設定できるメール(命令)の総数であり、Rem_Mailは指示リスト32cに設定されたが未だ処理されていないメール数である。Rem_sz[class]は、SDRAM28への転送命令が指示リスト32cに設定されたがSDRAM28への書き込みが未だ行われていないデータのサイズ(バイト)である。上述と同様、画像データについてはclassが“1”とされ、音声データについては分類を示すclassが“2”とされる。
【0039】
図7を参照して、ステップS1では、図3に示すインデックスチャンクに書き込まれたアドレス情報に基づいて、図4に示す音声オフセットテーブル32aおよび図5に示す画像オフセットテーブル32bを作成する。音声オフセットテーブル32aには、各々の音声チャンクのオフセットaofst[chk]およびチャンクサイズasz[chk]が書き込まれ、画像オフセットテーブル32bには、各フレームの圧縮画像データのオフセットmofst[prefrm]およびデータサイズmsz[prefrm]が書き込まれる。
【0040】
次に、ステップS3で各種の変数を初期化する。具体的には、音声データについて、チャンク番号chkを“0”に設定し、音声書き込みアドレスapreptrおよび音声再生アドレスacptrを音声エリア28cの先頭アドレスAUD_BUFと一致させ、割り込み許可フラグastartおよび音声書き込み禁止フラグaflgを“0”に設定し、未処理データサイズpre_read_sz[2]を“0”に設定する。画像データについては、再生フレーム番号frmを書き込みフレーム番号prefrmと一致させ、画像再生アドレスmcptrおよび画像書き込みアドレスmpreptrを圧縮画像エリア28bの先頭アドレスMOV_BUFと一致させ、画像伸長許可フラグdecflgを“0”に設定し、そして未処理データサイズpre_read_sz[1]を“0”に設定する。指示リスト32cについては、設定メール番号S-mail_No、未処理メール数Rem_mail、音声の未処理データサイズRem_sz[1]および画像の未処理データサイズRem_sz[2]を“0”に設定する。
【0041】
ステップS5では数1を演算して音声データのカウント値acntを求め、続くステップS7では算出されたカウント値acntを現チャンク番号chkに対応する音声チャンクサイズasz[chk]と比較する。そして、acnt≧asz[chk]であれば、ステップS9でこの算出されたカウント値acntから現音声チャンクサイズasz[chk]を引き算し、ステップS11で音声データの総バイト数AMAXから現音声チャンクサイズasz[chk]を引き算し、そしてステップS13でチャンク番号chkをインクリメントする。ステップS13の処理を終えると、ステップS5に戻る。
【0042】
【数1】
acnt=(sample×frm)/fps
sample:1フレームに相当する音声データ量(バイト)
fps:動画像のフレームレート
数1によって、モニタ40に現時点で表示されているフレーム(現フレーム)の静止画像に対応する音声データのアドレスが求められる。ただし、ここで求められるアドレスは、音声データが先頭から連続していると仮定したときのアドレスであり、図3に示すQuickTimeファイル上のアドレスとは必ずしも一致しない。このため、ステップS7でacnt<asz[chk]と判断されるまでステップS9〜S13の処理を繰り返す。これによって、何番目の音声チャンクの何バイト目に所望のアドレスが存在するかが判明する。
【0043】
ステップS7でacnt<asz[chk]と判断されると、ステップS15で総バイト数AMAXの値を判別する。ステップS15は、全ての音声データの転送命令を指示リスト32cに設定し終えたかどうかを判別する処理である。カウント値acntが末尾の音声チャンクの末尾アドレスを示していれば、総バイト数AMAXは“0”を示す。このとき、全音声データの転送命令の設定が完了したとみなしてステップS21に進む。ステップS21では音声書き込み禁止フラグaflgの状態を判別し、aflg=0であればステップS23でaflg=1としてからステップS43に進み、aflg=1であればそのままステップS57に進む。つまり、音声書き込み禁止フラグaflgが“0”を示していれば、音声データの転送命令の設定は全て完了したものの、圧縮画像データの転送命令の設定は未だ完了していないとみなして、ステップS43に進む。このとき、ステップS23でaflg=1となるため、次回のステップS21の処理ではYESと判断される。
【0044】
ステップS17では、数2が成立するかどうか判別する。ステップS17は、次に転送命令を設定すべきデータが音声データであるか圧縮画像データであるかを判別する処理である。
【0045】
【数2】
aofst[chk]+acnt<mofst[prefrm]
後述するように、1チャンク分の音声データの転送命令が指示リスト32cに設定されたとき、または3フレーム分の圧縮画像データの転送命令が指示リスト32cに設定されたとき、“aofst[chk]+acnt”と“mofst[prefrm]”との間の大小関係が反転する。このため、数2が成立するかどうかによって、次に転送命令を設定すべきデータが音声データであるか圧縮画像データであるかを判別することができる。設定すべきデータが音声データの場合、ステップS17でYESと判断し、ステップS19で数3が成立するかどうか判別する。
【0046】
【数3】
apreptr+asz[chk]−acnt−1<AUD_END
現カウント値acntが示すアドレスからこのアドレスが属する音声チャンクの末尾アドレスまでの音声データサイズは、“asz[chk]−acnt”である。ステップS19では、この“asz[chk]−acnt”に相当する音声データを現音声書き込みアドレスapreptrから音声エリアの末尾アドレスまでの間に格納できるかどうかを判別している。なお、数3の“−1”は、音声エリア28cのアドレスが“0”から始まることを考慮したものである。
【0047】
ステップS19でNOと判断されると、全音声データの転送命令の設定は完了していないが、音声エリア28cの容量が不十分なために転送命令が設定できないとみなして、ステップS21に進む。一方、ステップS19でYESと判断されると、音声エリア28cの容量は十分存在するとみなしてステップS29に進む。
【0048】
ステップS29では、分類“0”,動作“ヘッドシーク”およびファイルアドレス“aofst[chk]+acnt”を図6に示す指示リスト32cに設定し、続くステップS31では、分類“2”,動作“ライト”,SDRAMアドレス“apreptr”およびサイズ“asz[chk]−acnt”を指示リスト32cに設定する。なお、分類“0”は、命令がデータ転送命令以外の命令であることを意味する。
【0049】
ステップS31で“asz[chk]−acnt”に相当する音声データの転送命令が設定されたため、ステップS33では未処理データサイズpre_read_sz[2]に“asz[chk]−acnt”を加算し、ステップS35では現音声書き込みアドレスapreptrに“asz[chk]−acnt”を加算し、ステップS37では現音声チャンクのサイズ“asz[chk]を総バイト数AMAXから引き算する。続いて、ステップS39でカウント値acntを“0”とし、ステップS41でチャンク番号chkをインクリメントし、その後ステップS15に戻る。
【0050】
なお、カウント値acntはある音声チャンクの途中から再生を開始するときにアクセス先のアドレスを特定するために用いる変数である。このため、この音声チャンクに属する音声データの転送設定が完了すると、カウント値acntは“0”となり、意味をなさなくなる。
【0051】
上述のステップS29およびS31ならびに後述するステップS43,S45,S103,S107,S111,S115,S129およびS131のそれぞれでは、図14に示すサブルーチンを処理する。まず、ステップS151で指示リスト32cの現設定メール番号S-mail_Noに対応する欄に所望の命令(指示)を追加する。ステップS153では所望の分類を判別し、所望の分類が“0”であればそのままステップS157に進むが、所望の分類が“1”または“2”であればステップS155を経てステップS157に進む。所望の分類が“1”の場合は、ステップS155で所望のサイズが未処理データサイズRem_sz[1]に加算される。所望の分類が“2”の場合は、ステップS155で所望のサイズが未処理データサイズRem_sz[2]に加算される。
【0052】
ステップS157では設定メール番号S-mail_Noをインクリメントし、ステップS159では未処理メール数Rem_Mailをインクリメントする。ステップS161では、インクリメントされた設定メール番号S-mail_Noを設定可能なメール総数MAX_BOXと比較する。ここで、S-mail_No<MAX_BOXであればそのままステップS165に進むが、S-mail_No=MAX_BOXであればステップS163で設定メール番号S-mail_Noを“0”に戻してからステップS165に進む。ステップS165では未処理メール数Rem_Mailがメール総数MAX_BOXと等しいかどうか判断し、NOであればそのままに復帰するが、YESであればエラーが発生したとして強制的に処理を終了する。
【0053】
図8に示すステップS37の更新処理によって総バイト数AMAXが“0”となると、図7のステップS15におけるYESの判断を経てステップS21に進む。一方、ステップS37の更新処理の後も総バイト数AMAXが“0”を上回るときは、ステップS17におけるNOの判断を経てステップS25に進む。つまり、ステップS41におけるチャンク番号chkの更新によって数2が成立しなくなるため、ステップS25に進む。ステップS25では、圧縮画像エリア28bに書き込もうとする圧縮画像データのフレーム番号prefrmを総フレーム数MFMAXと比較する。そして、prefrm=MFMAXであればステップS61に進むが、prefrm<MFMAXであればステップS27で数4が成立するかどうか判別する。
【0054】
【数4】
mpreptr+msz[prefrm]−1<MOV_END
ステップS27では、“msz[prefrm]”に相当する1フレーム分の圧縮画像データを現画像書き込みアドレスmpreptrと画像エリアの末尾アドレスとの間に格納できるかどうかを判別している。
【0055】
数4が満たされなければ、prefrm=MFMAXと判断されたときと同様、ステップS57に進む。一方、数4が満たされればステップS43に進み、分類“0”,動作“ヘッドシーク”およびファイルアドレス“mofst[prefrm]”を指示リスト32cに設定する。続いて、ステップS45で分類“1”,動作“ライト”,SDRAMアドレス“mpreptr”およびサイズ“msz[prefrm]”を指示リスト32cに設定する。
【0056】
ステップS47では未処理データサイズpre_read_sz[1]にサイズ“msz[prefrm]”を加算し、ステップS49では現画像書き込みアドレスmpreptrにサイズ“msz[prefrm]”を加算し、ステップS51では現書き込みフレーム番号prefrmをインクリメントする。その後、ステップS53で数5が成立するかどうか判断し、NOであればそのままステップS15に戻るが、YESであれば最小データサイズsz_minを未処理データサイズpre_read_sz[1]に一致させてからステップS15に戻る。
【0057】
【数5】
prefrm−frm<fps
数5は、書き込みフレーム番号prefrmと再生フレーム番号(表示静止画像のフレーム番号)frmとの間の差分がフレームレートの“30”を下回るとき成立する。このため、SDRAM28への転送命令が指示リスト32cに設定されたがJPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのフレーム数が“30”を下回る限り、最小データサイズsz_minは未処理データサイズpre_read_sz[1](=SDRAM28への転送命令が指示リスト32cに設定されたがJPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのサイズ)に追従して変化する。しかし、指示リスト32cへの設定処理が高速で実行され、上記の差分が“30”以上となると、最小データサイズsz_minの更新が中止される。これによって、30フレームつまり1秒分の圧縮画像データサイズが、最小データサイズsz_minとして規定される。
【0058】
図17を参照して、チャンク番号chkは1チャンク分の音声データの転送命令が指示リスト32cに設定される毎にインクリメントされる。一方、書き込みフレーム番号prefrmは1フレーム分の圧縮画像データの転送命令が指示リスト32cに設定される毎にインクリメントされる。このため、注目する音声チャンクの先頭アドレスおよび注目するフレームの先頭アドレスの前後関係は、1チャンク分の音声データの転送設定が完了する毎に、あるいは3フレーム分の圧縮画像データの転送設定が完了する毎に反転する。したがって、指示リスト32cには、1チャンク分の音声データの転送命令および3フレーム分の圧縮データの転送命令が、QuickTimeファイルのアドレスが大きくなる順序で交互に設定される。
【0059】
図10に示すステップS57では、数6が成立するかどうかを判別する。ステップS57に移行したときは、未処理データサイズpre_read_sz[1]および最小データサイズsz_minのいずれも固定値をとる。一方、未処理データサイズRem_sz[1]は、後述するバックグラウンド処理によって転送命令が実行される毎に減少する。
【0060】
【数6】
sz_min>pre_read_sz[1]−Rem_sz[1]
上述のように、未処理データサイズpre_read_sz[1]は、SDRAM28への転送命令が指示リスト32cに設定されたがJPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのサイズである。一方、未処理データサイズRem_sz[1]は、SDRAM28への転送命令が指示リスト32cに設定されたがSDRAM28への書き込みが未だ行われていない圧縮画像データのサイズである。したがって、“pre_read_sz[1]−Rem_sz[1]”は、SDRAM28への書き込みは完了したが、JPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのサイズとなる。ステップS57では、このようなデータサイズと最小データサイズsz_min(=1秒分の圧縮画像データサイズ)との大小関係を判別する。
【0061】
数6が成立するときは、SDRAM28に確保されているデータ量は不十分であるとみなし、ステップS59で所定時間待機する。これによって、所定期間が経過するまではバックグラウンド処理のみが実行され、未処理データサイズRem_sz[1]は速やかに減少していく。未処理データサイズRem_sz[1]の減少によって数6が成立しなくなると、SDRAM28に十分な量のデータが確保されたとみなし、ステップS61に進む。
【0062】
なお、最小データサイズsz_minを1秒分の圧縮画像データサイズとしたのは、ヘッドシークの最長時間を想定したものである。
【0063】
ステップS61では、画像伸長許可フラグdecflgの状態を判別する。decflg=0であればそのままステップS65に進み、decflg=1であれば、1フレーム分のJPEG伸長処理が完了したとステップS63で判断されてからステップS65に進む。ステップS65では、1/30秒毎に発生する垂直同期信号の入力判別を行ない、入力ありとの判別結果に応答してステップS67に進む。ステップS67では、音声データの処理に関連する割り込み許可フラグastartの状態を判別し、astart=1であればそのままステップS71に進むが、astart=0であればステップS69でastartを“1”に設定してからステップS71に進む。
【0064】
ステップS71では、圧縮画像エリア28bの画像再生アドレスmcptr以降に書き込まれた1フレーム分の圧縮画像データの伸長をJPEGコーデック30に命令する。JPEGコーデック30は、上述の要領で伸長処理を行ない、この結果、対応する静止画像がモニタ40に表示される。ステップS73では、次回のステップS61でYESとの判断結果を得るために画像伸長許可フラグdecflgを“1”に設定する。続いて、ステップS75でつまり現画像再生アドレスmcptrに圧縮画像データサイズmsz[frm]を加算し、ステップS77で未処理データサイズpre_read_sz[1]に圧縮画像データサイズmsz[frm]を加算する。ステップS79では再生フレーム番号frmをインクリメントし、ステップS81では数7が成立するかどうかを判断する。
【0065】
【数7】
mcptr+msz[frm]−1<MOV_END
数7が成立するときは、更新された画像再生アドレスmcptr以降に次フレームの圧縮画像データが格納されている。一方、数7が成立しないときは、圧縮画像エリア28bの先頭アドレスMOV_BUF以降に次フレームの圧縮画像データが格納されている。このため、ステップS81でYESであればそのままステップS85に進むが、NOであればステップS83で画像再生アドレスmcptrに先頭アドレスMOV_BUFを設定してからステップS85に進む。
【0066】
音声データの再生処理は、図15に示す割り込みルーチンに従って行なわれる。割り込み処理は、7990Hz(音声サンプリング周波数)のクロックに応答して開始される。まずステップS171で割り込み許可フラグastartが“1”であるかどうか判断する。ここでastart=0であればそのままメインルーチンに復帰するが、astart=1であればステップS173で信号処理回路48に音声再生命令を与える。信号処理回路48は、この音声再生命令に応じてメモリ制御回路26に読み出しリクエストを与え、音声エリア28cの音声再生アドレスacptrから1バイト分の音声データを読み出す。信号処理回路48はさらに、読み出された音声データに所定の処理を施し、処理が施された音声信号をスピーカ52から出力する。ステップS175では未処理データサイズpre_read_sz[2]から“1”を引き算し、ステップS177では音声再生アドレスacptrをインクリメントし、ステップ179では更新された音声再生アドレスacptrを音声エリア28cの末尾アドレスAUD_ENDと比較する。ここでacptr≦AUD_ENDであれば、更新された音声再生アドレスacptrに次バイトの音声データが書き込まれているとみなして、そのままメインルーチンに復帰する。これに対してacptr>AUD_ENDであれば、音声エリア28cの先頭アドレスAUD_BUFに次バイトの音声データが書き込まれているとみなして、ステップS181で音声再生アドレスacptrに先頭アドレスAUD_BUFを設定してからメインルーチンに復帰する。
【0067】
図11に戻って、ステップS85では現フレーム番号frmを総フレーム数MFMAXと比較する。frm=MFMAXであれば次フレームの圧縮画像データは存在しないとみなし、ステップS95で現フレームの圧縮画像データの伸長処理が完了したと判別されるのを待って、ステップS97に進む。ステップS97では割り込み許可フラグastartの状態を判別し、astart=0であればそのまま終了するが、astart=1であればステップS99でこの割り込み許可フラグastartを“0”に戻してから処理を終了する。
【0068】
ステップS85でNOと判断されると、ステップS87で書き込みフレーム番号prefrmを総フレーム数MFMAXと比較し、prefrm=MFMAXであればステップS89で総バイト数AMAXが“0”であるかどうか判断する。一方、prefrm<MFMAXであれば、ステップS91で総バイト数AMAXが“0”であるかどうか判断する。prefrm=MFMAXでかつAMAX=0であれば、全ての圧縮画像データおよび音声データについて転送命令の設定が完了したとみなして、ステップS89からステップS61に戻る。prefrm=MFMAXであるがAMAX>0である場合、またはprefrm<MFMAXでかつAMAX>0である場合は、転送命令を設定すべきデータが残っているとみなして、ステップS89またはS91からステップS93に進む。ステップS93では、現音声チャンクのオフセットaofst[chk]を現書き込みフレーム番号prefrmに対応する圧縮画像データのオフセットmofst[prefrm]と比較し、比較結果に応じてステップS101またはS125に進む。prefrm<MFMAXであるがAMAX=0であるときは、転送命令を設定すべきデータは圧縮画像データのみであるとみなして、ステップS91からステップS125に進む。
【0069】
ステップS101では、数8が成立するかどうか判断する。
【0070】
【数8】
apreptr+asz[chk]−1<AUD_END
数8が成立する場合、現音声書き込みアドレスapreptr以降には現音声チャンクの全ての音声データを書き込めるだけの空き容量が存在する。このときはステップS109で残容量値dmに“0”を設定し、ステップS111で分類“0”,動作“ヘッドシーク”およびファイルアドレス“aofst[chk]”を指示リスト32cに設定し、その後ステップS113に進む。これに対して数8が成立しなければ、現音声チャンクの音声データの一部しか現音声書き込みアドレスapreptr以降に書き込むことができない。このときは、ステップS103で分類“0”,動作“ヘッドシーク”およびファイルアドレス“aofst[chk]”を指示リスト32cに設定する。さらに、ステップS105で数9に従って残容量値dmを求め、ステップS107で分類“2”,動作“ライト”,サイズ“dm”およびSDRAMアドレス“apreptr”を指示リスト32cに設定する。ステップS107の処理を終えると、ステップS113に進む。
【0071】
【数9】
dm=(AUD_END−apreptr+1)
ステップS113では音声書き込みアドレスapreptrに音声エリア28cの先頭アドレス“AUD_BUF”を設定し、続くステップS115では分類“0”,動作“ライト”,SDRAMアドレス“apreptr”およびサイズ“asz[chk]−dm”を指示リスト32cに設定し、ステップS117では数10に従って音声書き込みアドレスapreptrを更新する。
【0072】
【数10】
apreptr=apreptr+asz[chk]−dm
続いて、ステップS119で総バイト数AMAXから現音声チャンクのサイズasz[chk]を引き算し、ステップS121で未処理データサイズpre_read_sz[2]にサイズasz[chk]を加算する。その後、ステップS123でチャンク番号chkをインクリメントしてからステップS91に戻る。
【0073】
このように、音声書き込みアドレスapreptr以降に1チャンク分の音声データを書き込めるだけの空き容量が存在すれば、ステップS115でこの1チャンク分の音声データの転送命令が指示リスト32cに設定される。一方、音声書き込みアドレスapreptr以降に1チャンク分の音声データを書き込めるだけの空き容量が存在しなければ、ステップS107で一部の音声データの転送命令が指示リスト32cに設定され、ステップS115で残りの音声データの転送命令が指示リスト32cに設定される。ステップS123からステップS91に戻った後は、直接あるいはステップS93を経てステップS125に移行する。
【0074】
ステップS125では、数11が成立するかどうか判断する。
【0075】
【数11】
mpreptr+msz[prefrm]−1<MOV_END
数11が成立すれば、現画像書き込みアドレスmpreptr以降に1フレーム分の圧縮画像データを書き込むことができるとみなして、そのままステップS129に進む。数11が成立しなければ、先頭アドレスMOV_BUF以降に1フレーム分の圧縮画像データを書き込むべく、ステップS127で画像書き込みアドレスmpreptrに先頭アドレスMOV_BUFを設定する。ステップS129では、分類“0”,動作“ヘッドシーク”およびファイルアドレス“mofset[prefrm]”を指示リスト32cに設定し、続くステップS131では、分類“1”,動作“ライト”,SDRAMアドレス“mpreptr”およびサイズ“msz[prefrm]”を指示リスト32cに設定する。その後、ステップS133で現画像書き込みアドレスmpreptrに圧縮画像データサイズmsz[prefrm]を加算し、ステップS135で未処理データサイズpre_read_sz[1]に圧縮画像データサイズmsz[prefrm]を加算し、そしてステップS137で書き込みフレーム番号prefrmをインクリメントする。
【0076】
ステップS139では、数12が成立するかどうか判断する。
【0077】
【数12】
msz[frm]>pre_read_sz[1]−Rem_sz[1]
上述のように、“pre_read_sz[1]−Rem_sz[1]”は、SDRAM28への書き込みは完了したが、JPEGコーデック30による伸長処理が未だ行われていない圧縮画像データのサイズとなる。ステップS139では、このようなデータサイズと圧縮画像データサイズmsz[frm]との大小関係を判別する。
【0078】
数12が成立しないときは、SDRAM28に十分な量のデータが確保されているとみなし、そのままステップS61に戻る。一方、数12が成立するときは、SDRAM28に確保されているデータ量は不十分であるとみなし、ステップS141に移行する。ステップS141では割り込み許可フラグastartを“0”に設定して音声データの再生を中断し、続くステップS143では所定時間待機する。これによって、所定期間が経過するまではバックグラウンド処理のみが実行される。所定時間が経過するとステップS139の処理を再度実行する。
【0079】
ステップS61に戻ることで、圧縮画像データの伸長処理が再度実行される。また、音声データの再生処理が中断されたときは、ステップS69の処理によってこの音声再生処理が再開される。
【0080】
このように、図12のステップS111およびS115あるいはステップS103,S107およびS115における1チャンク分の音声データの転送設定、ならびに図13のステップS129およびS131における1フレーム分の圧縮画像データの転送設定は、1フレーム分の圧縮画像データの伸長処理が完了する毎に行なわれる。一方、音声データの再生は、割り込み許可フラグastartが“1”を示す限り、7990Hzのクロックに応答して1バイトずつ行われる。このため、新たに指示リスト32cに設定される転送命令が、未処理の転送命令に上書きされることはない。
【0081】
バックグラウンド処理は、図16に示すフロー図に従って実行される。まず、ステップS191で実行メール番号E-mail_Noを“0”に設定し、次にステップS193で未処理メール数Rem_Mailが“0”よりも大きいかどうか判断する。ここでNOであればステップS193の処理を繰り返し、Rem_Mail>0となった時点でステップS195に進む。ステップS195では、現実行メール番号E-mail_Noの指示を実行する。つまり、指示の内容が“ヘッドシーク”であれば、光磁気ディスク36内の所望のアドレスをシークし、指示の内容が“ライト”であれば、所望のデータを光磁気ディスク36からSDRAM28に転送する。
【0082】
ステップS197では分類を判別し、分類が“0”であればそのままステップS201に進むが、分類が“1”または“2”であればステップS199を経てステップS201に進む。分類が“1”の場合、ステップS199では転送された圧縮画像データサイズを未処理データサイズRem_sz[1]から引き算する。分類が“2”の場合、ステップS199では転送された音声データサイズを未処理データサイズRem_sz[2]から引き算する。
【0083】
ステップS201では実行メール番号E-mail_Noをインクリメントし、ステップS203では未処理メール数Rem_Mailをディクリメントする。ステップS205では、実行メール番号E-mail_Noが最大メール番号MAX_BOXに達したかどうか判断し、NOであればステップS191に戻るが、YESであればステップS193に戻る。
【0084】
以上の説明から分かるように、光磁気ディスク36に記録された圧縮画像データをSDRAM28を介して出力するとき、まず圧縮画像データの転送命令が指示リスト32cに設定される(S45,S131)。圧縮画像データは、指示リスト32cの設定に従って光磁気ディスク36からSDRAM28に転送される(S195)。JPEGコーデック30は、CPU32から圧縮命令が与えられたとき(S71)、SDRAM28に格納された圧縮画像データをメモリ制御回路26を通して読み出し、読み出された圧縮画像データにJPEG伸長を施す。伸長された画像データは、SDRAM28を介してビデオエンコーダ38に与えられ、ビデオエンコーダ38によってエンコードされる。エンコードされたコンポジット画像信号はモニタ40に与えられ、これによって再生画像がモニタ40に表示される。
【0085】
ここで、転送命令が指示リスト32cに設定されたがメモリ制御回路26によって未だ読み出されていない圧縮画像データのサイズpe_read_sz[1]、ならびに転送命令が指示リスト32cに設定されたがSDRAM28に未だ転送されていない圧縮画像データのサイズRem_sz[1]は、CPU32によって検出される(S47,S77,S135,S155,S199)。CPU32は、サイズpe_read_sz[1]およびRem_sz[1]の差分が次に伸長すべき圧縮画像データのサイズmsz[frm]を下回るとき、JPEGコーデック30への伸長命令の出力を中断する(S143)。
【0086】
サイズpe_read_sz[1]およびRem_sz[1]の差分は、SDRAM28への転送は完了したが、JPEGコーデック30による伸長(つまりSDRAM28からの読み出し)は未だ完了していない圧縮画像データのサイズとなる。このようなサイズがサイズmsz[frm]を下回るときにJPEGコーデック30への伸長命令の出力を中断することによって、SDRAM28の容量を最大限に効率化しつつ、読み出しアドレスが書き込みアドレスを追い越す事態を回避することができる。
【0087】
特に、光磁気ディスク36のようなディスク記録媒体では磁気ヘッド34aのシーク動作が必要であり、シーク動作の間は転送が中断されるため、サイズpe_read_sz[1]およびRem_sz[1]の差分は圧縮画像データの記録状態によって大きく変動しうる。このような場合に、次に伸長すべき圧縮画像データのサイズmsz[frm]を閾値とする効果が顕著に現れる。
【0088】
なお、この実施例では、ディスク記録媒体として光磁気ディスクを用いているが、光磁気ディスクの代わりにハードディスクを用いてもよい。また、この実施例では、QuickTime形式のファイルを用いているが、これに代えてAVI(AudioVideo Interleave)形式のファイルを用いてもよい。さらに、この実施例の動画像のフレームレートは30fpsであるが、フレームレートはこれに限られない。また、この実施例では、光磁気ディスクに記録されたQuickTimeファイルをFAT方式で管理するようにしているが、ファイル管理方式はUDF(Universal Disc Format)方式でもよい。
【図面の簡単な説明】
【図1】この発明の1実施例を示すブロック図である。
【図2】SDRAMのマッピング状態を示す図解図である。
【図3】 QuickTimeファイルを示す図解図である。
【図4】音声データのオフセットテーブルを示す図解図である。
【図5】画像データのオフセットテーブルを示す図解図である。
【図6】指示リストを示す図解図である。
【図7】図1実施例の動作の一部を示すフロー図である。
【図8】図1実施例の動作の他の一部を示すフロー図である。
【図9】図1実施例の動作のその一部を示すフロー図である。
【図10】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図11】図1実施例の動作の他の一部を示すフロー図である。
【図12】図1実施例の動作のその他の一部を示すフロー図である。
【図13】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図14】図1実施例の動作の他の一部を示すフロー図である。
【図15】図1実施例の動作のその他の一部を示すフロー図である。
【図16】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図17】図1実施例の動作の一部を示す図解図である。
【符号の説明】
10 …ディジタルカメラ
26 …メモリ制御回路
28 …SDRAM
30 …JPEGコーデック
32 …CPU
36 …光磁気ディスク
38 …ビデオエンコーダ
46 …信号処理回路
Claims (4)
- 記録媒体に格納されたデータを第1バッファメモリを介して出力するデータ出力装置において、
複数のデータ転送命令を指示リストに設定する設定手段、
前記指示リストに設定された複数のデータ転送命令を順に指定する指定手段、
前記指定手段によって指定されたデータ転送命令に従うデータを前記記録媒体から前記第1バッファメモリに転送する転送手段、
前記転送手段の転送処理によって前記第1バッファメモリに格納されたデータを読み出す読み出し手段、
前記指示リストに設定された複数のデータ転送命令に従うデータのうち前記読み出し手段によって未だ読み出されていないデータのサイズを検出する第1検出手段、
前記指示リストに設定された複数のデータ転送命令に従うデータのうち前記転送手段によって未だ転送されていないデータのサイズを検出する第2検出手段、および
前記第1検出手段によって検出されたサイズから前記第2検出手段によって検出されたサイズを減算して求められる差分値が閾値を下回るとき前記読み出し手段を不能化する不能化手段を備えることを特徴とする、データ出力装置。 - 前記データは複数画面の画像データであり、
前記閾値は前記読み出し手段によって次に読み出すべき画像データのサイズに相当する、請求項1記載のデータ出力装置。 - 前記記録媒体はディスク媒体であり、
前記ディスク媒体から前記画像データを再生する可動再生部材をさらに備える、請求項2記載のデータ出力装置。 - 前記データは複数画面の符号化画像データであり、
前記読み出し手段によって読み出された符号化画像データを復号する復号手段、
前記復号手段によって復号された復号画像データを第2バッファメモリに書き込む書き込み手段、および
前記第2バッファメモリに格納された復号画像データをモニタに出力する出力手段をさらに備える、請求項1ないし3のいずれかに記載のデータ出力装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002144059A JP3939198B2 (ja) | 2002-05-20 | 2002-05-20 | データ出力装置 |
US10/440,887 US7512311B2 (en) | 2002-05-20 | 2003-05-19 | Data output apparatus and method with managed buffer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002144059A JP3939198B2 (ja) | 2002-05-20 | 2002-05-20 | データ出力装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003339018A JP2003339018A (ja) | 2003-11-28 |
JP3939198B2 true JP3939198B2 (ja) | 2007-07-04 |
Family
ID=29417065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002144059A Expired - Fee Related JP3939198B2 (ja) | 2002-05-20 | 2002-05-20 | データ出力装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7512311B2 (ja) |
JP (1) | JP3939198B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006134271A (ja) * | 2004-11-09 | 2006-05-25 | Toshiba Corp | 再生装置 |
JP4679609B2 (ja) * | 2008-06-05 | 2011-04-27 | 株式会社東芝 | 映像収録再生装置、映像収録方法及び映像再生方法 |
JP5368550B2 (ja) * | 2009-03-23 | 2013-12-18 | パナソニック株式会社 | 記録再生方法および記録再生装置 |
JP2011253589A (ja) * | 2010-06-02 | 2011-12-15 | Funai Electric Co Ltd | 画像音声再生装置 |
JP5564019B2 (ja) * | 2011-08-26 | 2014-07-30 | 株式会社東芝 | ファイル転送装置およびその方法 |
JP5597175B2 (ja) * | 2011-09-26 | 2014-10-01 | 株式会社東芝 | 画像圧縮装置及び画像処理システム |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69531265T2 (de) * | 1994-03-19 | 2004-06-03 | Sony Corp. | Optische Platte und Methode und Gerät zur Aufzeichnung auf und danach Wiedergabe von Informationen von dieser Platte |
US5561670A (en) * | 1994-05-13 | 1996-10-01 | Apple Computer, Inc. | Method and apparatus for operating a multicast system on an unreliable network |
JP3500724B2 (ja) * | 1994-09-05 | 2004-02-23 | ソニー株式会社 | データ再生方法およびデータ再生装置 |
US5793980A (en) * | 1994-11-30 | 1998-08-11 | Realnetworks, Inc. | Audio-on-demand communication system |
CN1144455C (zh) * | 1996-02-08 | 2004-03-31 | 松下电器产业株式会社 | 电视接收机 |
TW332961B (en) * | 1996-02-09 | 1998-06-01 | Sony Co Ltd | Recording media |
US5838876A (en) * | 1996-09-24 | 1998-11-17 | Sony Corporation | Frame-accurate edit and playback in digital stream recording |
JPH10276405A (ja) * | 1997-03-27 | 1998-10-13 | Sony Corp | 情報再生装置及び情報再生方法 |
US6247072B1 (en) * | 1998-01-27 | 2001-06-12 | Cisco Technology, Inc. | Real-time data rate matching across a medium |
US6587641B1 (en) * | 1998-07-21 | 2003-07-01 | Matsushita Electric Industrial Co., Ltd. | Apparatus for simultaneously writing and outputting data stream |
US6665751B1 (en) * | 1999-04-17 | 2003-12-16 | International Business Machines Corporation | Streaming media player varying a play speed from an original to a maximum allowable slowdown proportionally in accordance with a buffer state |
US6625655B2 (en) * | 1999-05-04 | 2003-09-23 | Enounce, Incorporated | Method and apparatus for providing continuous playback or distribution of audio and audio-visual streamed multimedia reveived over networks having non-deterministic delays |
US6385673B1 (en) * | 1999-10-06 | 2002-05-07 | Sun Microsystems, Inc. | System and method for adjusting performance of a media storage by decreasing a maximum throughput by a primary derate parameter to specify available & guaranteed rate parameters and determining ring buffer sizes for streams |
JP4066576B2 (ja) * | 1999-10-26 | 2008-03-26 | ソニー株式会社 | データ再生装置及び方法 |
US6873658B2 (en) * | 1999-12-20 | 2005-03-29 | Texas Instruments Incorporated | Digital still camera system and method |
US6757273B1 (en) * | 2000-02-07 | 2004-06-29 | Nokia Corporation | Apparatus, and associated method, for communicating streaming video in a radio communication system |
JP2001290700A (ja) | 2000-04-07 | 2001-10-19 | Mitsubishi Electric Corp | 出力fifoデータ転送制御装置 |
US7054500B1 (en) * | 2000-12-06 | 2006-05-30 | Realnetworks, Inc. | Video compression and decompression system with postfilter to filter coding artifacts |
US7747143B2 (en) * | 2001-01-15 | 2010-06-29 | Fast Forward Video, Inc. | Digital video recorder |
TW579506B (en) * | 2001-03-05 | 2004-03-11 | Matsushita Electric Ind Co Ltd | A recording device and a recording method |
US20030198184A1 (en) * | 2001-08-31 | 2003-10-23 | Joe Huang | Method of dynamically determining real-time multimedia streaming rate over a communications networks |
US6968387B2 (en) * | 2003-01-10 | 2005-11-22 | Realnetworks, Inc. | Stochastic adaptive streaming of content |
-
2002
- 2002-05-20 JP JP2002144059A patent/JP3939198B2/ja not_active Expired - Fee Related
-
2003
- 2003-05-19 US US10/440,887 patent/US7512311B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US7512311B2 (en) | 2009-03-31 |
JP2003339018A (ja) | 2003-11-28 |
US20030215225A1 (en) | 2003-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2000224535A (ja) | 動画像再生装置 | |
US20030011689A1 (en) | Digital camera accommodating recording media from other digital cameras | |
EP1400973A2 (en) | Recording apparatus and method, recording medium, and program | |
JP2009118215A (ja) | 撮像装置 | |
JP4179831B2 (ja) | 動画像記録装置 | |
JP3495709B2 (ja) | データ記録装置 | |
JP3939198B2 (ja) | データ出力装置 | |
EP1549062A1 (en) | Data processing device | |
JP3733061B2 (ja) | 画像記録装置 | |
JP2005039792A (ja) | 記録装置及び再生装置 | |
KR100734991B1 (ko) | 동화상 재생 장치 | |
JP4262913B2 (ja) | 画像処理装置 | |
JP4657130B2 (ja) | コンテンツ記録装置 | |
JP5159473B2 (ja) | 撮像装置 | |
JP2007142607A (ja) | 映像記録装置 | |
JP4152183B2 (ja) | 画像処理装置 | |
JP2005245019A (ja) | カメラ | |
JP4235052B2 (ja) | 動画像記録装置、画像情報処理装置及び方法 | |
JP4259921B2 (ja) | 画像転送装置 | |
JP2003125385A (ja) | 画像処理装置 | |
JP4717101B2 (ja) | 動画像記録装置 | |
JP2002354425A (ja) | 記録装置及びその方法 | |
JP2000078512A (ja) | 撮影装置および方法、並びに記録媒体 | |
JP4906746B2 (ja) | 情報処理装置 | |
JP4248279B2 (ja) | 動画像再生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070122 |
|
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: 20070227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070327 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3939198 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110406 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120406 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130406 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140406 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140406 Year of fee payment: 7 |
|
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 |