(57)【特許請求の範囲】
【請求項１】
データ入力を行う入力手段と、
入力手段からのデータを符号化してストリームデータを生成する符号化手段と、
符号化されたストリームデータを一時的に記憶する符号化記憶手段と、
前記符号化されたストリームデータを復号化するため一時的に記憶する復号化記憶手段と、
前記復号化記憶手段に記憶された、前記符号化されたストリームデータを復号化する復号化手段と、
前記符号化されたストリームデータを記録する情報蓄積手段と、
前記符号化されたストリームデータを前記情報蓄積手段に記録するために一時的に格納する記録用ストリーム格納領域と、前記情報蓄積手段から読み出されたストリームデータを前記復号化記憶手段に出力するために一時的に格納する再生用ストリーム格納領域とを有する主記憶手段と、
前記符号化記憶手段、前記復号化記憶手段、前記主記憶手段の前記記録用ストリーム格納領域、及び、前記主記憶手段の前記再生用ストリーム格納領域の、書き込みおよび読み出し可能なデータ容量をモニタするとともに、該モニタによって得られた、前記復号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の再生用ストリーム格納領域の格納量が一定量のデータを満たすまで、前記情報蓄積手段から該再生用ストリーム格納領域へのデータ転送レートを、該再生用ストリーム格納領域から前記復号化記憶手段へのデータ転送レートよりも高いレートにするデータ転送間隔を予想し、該モニタによって得られた、前記符号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の記録用ストリーム格納領域の格納量が一定量以下に減少するまで、該記録用ストリーム格納領域から前記情報蓄積手段へのデータ転送レートを、前記符号化記憶手段から該記録用ストリーム格納領域へのデータ転送レートよりも高いレートにするデータ転送間隔を予測して、該予測した転送間隔に従ってストリームデータの転送を制御する転送制御手段とからなる記録再生装置。
【請求項２】
データ入力を行うステップと、
入力されたデータを符号化してストリームデータを生成するステップと、
符号化されたストリームデータを符号化記憶手段に一時的に記憶する符号化記憶ステップと、
前記符号化されたストリームデータを復号化するために復号化記憶手段に一時的に記憶する復号化記憶ステップと、
前記復号化記憶手段に記憶された、前記符号化されたストリームデータを復号化する復号化ステップと、
前記符号化されたストリームデータを情報蓄積手段に記録する情報蓄積ステップと、
前記符号化されたストリームデータと前記復号化されたストリームデータとを、前記符号化されたストリームデータを前記情報蓄積手段に記録するために一時的に格納する記録用ストリーム格納領域と前記情報蓄積手段から読み出されたストリームデータを前記復号化記憶手段に出力するために一時的に格納する再生用ストリーム格納領域とを有する主記憶手段に一時的に格納するステップと、
前記符号化記憶手段、前記復号化記憶手段、前記主記憶手段の前記記録用ストリーム格納領域、及び、前記主記憶手段の前記再生用ストリーム格納領域にストリームデータを格納する際に、各記憶手段及び各格納領域の書き込みおよび読み出し可能なデータ容量をモニタするステップと、
前記モニタによって得られた、前記復号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の再生用ストリーム格納領域の格納量が一定量のデータを満たすまで、前記情報蓄積手段から該再生用ストリーム格納領域へのデータ転送レートを、該再生用ストリーム格納領域から前記復号化記憶手段へのデータ転送レートよりも高いレートにするデータ転送間隔を予想し、前記モニタによって得られた、前記符号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の記録用ストリ
ーム格納領域の格納量が一定量以下に減少するまで、該記録用ストリーム格納領域から前記情報蓄積手段へのデータ転送レートを、前記符号化記憶手段から該記録用ストリーム格納領域へのデータ転送レートよりも高いレートにするデータ転送間隔を予測して、該予測した転送間隔に従ってストリームデータの転送を制御する転送制御ステップとからなる記録再生方法。
【請求項３】
データの記録および再生を行うプログラムであって、
データ入力を行うステップと、
入力されたデータを符号化してストリームデータを生成するステップと、
符号化されたストリームデータを符号化記憶手段に一時的に記憶する符号化記憶ステップと、
前記符号化されたストリームデータを復号化するために復号化記憶手段に一時的に記憶する復号化記憶ステップと、
前記復号化記憶手段に記憶された、前記符号化されたストリームデータを復号化する復号化ステップと、
前記符号化されたストリームデータを情報蓄積手段に記録する情報蓄積ステップと、
前記符号化されたストリームデータと前記復号化されたストリームデータとを、前記符号化されたストリームデータを前記情報蓄積手段に記録するために一時的に格納する記録用ストリーム格納領域と前記情報蓄積手段から読み出されたストリームデータを前記復号化記憶手段に出力するために一時的に格納する再生用ストリーム格納領域とを有する主記憶手段に一時的に格納するステップと、
前記符号化記憶手段、前記復号化記憶手段、前記主記憶手段の前記記録用ストリーム格納領域、及び、前記主記憶手段の前記再生用ストリーム格納領域にストリームデータを格納する際に、各記憶手段及び各格納領域の書き込みおよび読み出し可能なデータ容量をモニタするステップと、
前記モニタによって得られた、前記復号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の再生用ストリーム格納領域の格納量が一定量のデータを満たすまで、前記情報蓄積手段から該再生用ストリーム格納領域へのデータ転送レートを、該再生用ストリーム格納領域から前記復号化記憶手段へのデータ転送レートよりも高いレートにするデータ転送間隔を予想し、前記モニタによって得られた、前記符号化記憶手段の書き込みおよび読み出し可能なデータ量に基づき、前記主記憶手段の記録用ストリーム格納領域の格納量が一定量以下に減少するまで、該記録用ストリーム格納領域から前記情報蓄積手段へのデータ転送レートを、前記符号化記憶手段から該記録用ストリーム格納領域へのデータ転送レートよりも高いレートにするデータ転送間隔を予測して、該予測した転送間隔に従ってストリームデータの転送を制御する転送制御ステップとを順次実行するプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画データ等の記録および再生を同時に行う記録再生装置に適用して有効な技術である。
【背景技術】
【０００２】
近年、ハードディスク等のストレージ装置の大容量化、高速化により動画像等の高ビットレートのデータストリームを実時間で記録し、順次再生する、いわゆる追いかけ再生が可能な記録再生技術が知られている。
【０００３】
このような追いかけ再生時においては、単一のストレージ装置に対してストリームデータの書き込みと読み出しを同時にかつ独立して行わなければならない。しかし、ストレージ装置の特性によって書き込み、読み出し処理をランダムに実行すると、処理速度が著しく低下してしまい、記録時（書き込み時）のオーバーフローによってストリームデータの欠落を生じたり、再生時（読み出し時）のアンダーフローによって再生の中断を生じたりする可能性があった。
【０００４】
そのため、これらのオーバーフローやアンダーフローが発生しないように、ストレージ装置に対してストリームデータの書き込みと読み出し処理を効率的に行う必要があった。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
この点について、従来の記録・再生技術では、単に記録（書き込み）と再生（読み出し）とを時間的に切り替えて交互に行うものがあった。
【０００６】
しかし、記録中のストリームデータに対して倍速再生やスロー再生等の特殊再生を行う場合や、記録ストリームデータと再生ストリームデータとではビットレートが異なる再生方式も存在しており、単に記録と再生とを時間的に交互に行うだけでは、データのトラフィック増大にともなう処理のオーバヘッドによってデータストリーム転送処理が著しく劣化することが懸念されていた。また、今後多チャンネル同時記録再生が要求されることが予想できるが、このような従来技術では安定した多チャンネル同時記録再生は困難であった。
【０００７】
本発明はこのような点に鑑みてなされたものであり、ストリームデータの記録再生レート、デバイス間の転送レートをモニタして、ストリームデータの転送時のオーバヘッドを軽減させることによって、安定した多チャンネル同時記録再生を実現することを技術的課題とする。
【課題を解決するための手段】
【０００８】
本発明は、入力系統としては、データ入力を行う入力手段と、入力手段からのデータを符号化してストリームデータを生成する符号化手段と、符号化されたストリームデータを一時的に記憶する符号化記憶手段を設け、出力系統としては、ストリームデータを復号化するための一時的記憶する復号化記憶手段と、復号化記憶手段から読み出されたストリームデータを復号化する復号化手段とを設けた。
【０００９】
このストリームデータを蓄積する情報蓄積手段と、前記で符号化されたストリームデータと前記復号化されたストリームデータを一時的に格納し記録用ストリーム格納領域と再生用ストリーム格納領域とを有する主記憶手段を設けた。
【００１０】
そして、ストリームデータの転送を制御する転送制御手段を設けて、符号化記憶手段、復号化記憶手段、および主記憶手段の書き込みおよび読み出し可能な容量をモニタするとともに、当該モニタ結果に基づいて前記情報蓄積手段との間のデータ転送を制御するようにした。
【００１１】
このデータ転送は、主記憶手段に格納されたストリームデータを復号化記憶手段に転送する際に、前記復号化記憶手段における書き込み可能容量からストリーム転送量を決定するようにした。
【００１２】
また、符号化記憶手段から主記憶部にストリームデータを格納する際に、前記符号化記憶手段の読み出し可能容量からストリーム転送量を決定するようにした。
【００１３】
このように、制御することにより、復号化記憶手段のアンダーフローによる再生の中断の発生や、符号化記憶手段のオーバフローによるストリームデータの欠落の発生を防止することができ、ストリーム転送時のオーバヘッドを軽減させて安定した多チャンネル同時記録再生が実現される。
【００１４】
なお、本発明のデータ転送制御は、コンピュータシステムで実行されるプログラムによって実現することが可能であり、当該プログラムは光ディスク、光磁気ディスク、磁気ディスク等の記憶媒体に格納される。
【発明の効果】
【００１５】
本発明によれば、記録再生処理におけるストリーム転送制御処理におけるオーバヘッドを低減できる。
【発明を実施するための最良の形態】
【００１６】
以下、図面に基づいて、本発明の実施の形態を説明する。図１は、本発明の記録再生装置を機能ブロック図で表したものであり、図７はこれをさらに具体的なビデオデータの記録再生装置に適用した場合のブロック図である。
【００１７】
このような構成は、マルチメディアデータを扱うことのできる汎用のコンピュータ装置またはビデオ記録再生専用装置として実現できる。同図において、１は入力部であり、ＲＦ信号等で入力された動画像データをＡ／Ｄ変換して符号化可能なデータ形式に変換する機能を有している。図７の例では映像／音声入力部として機能している。
【００１８】
このように変換された動画像データは、符号化部２においてデータ符号化されてビットストリーム化される。この符号化部２は、図７においては映像符号化部２ａ、音声符号化部２ｂおよび多重化部２ｃで構成されている。
【００１９】
また、符号化としては、たとえばＭＰＥＧ１ストリーム、ＭＰＥＧ２ストリーム、ＭｏｔｉｏｎＪＰＥＧ等のデータ形式が挙げられる。符号化部２で符号化されたビットストリームデータ（以下、単にストリームデータという）は、符号化記憶部３に一時格納される。この符号化記憶部３は、後入れ先読み方式のメモリで構成されている。すなわち、符号化部２から転送されたデータを一時蓄積した後に、その転送順にストリーム転送制御部１０に出力する機能を有している。
【００２０】
ストリーム転送制御部１０は、システム制御部１２の子プロセッサとしてハードウエアで構成してもよいし、ソフトウエアで実現することもできる。復号化記憶部４は、復号化に必要なストリームデータを一時的に記憶する後入れ先読み方式のメモリであり、ストリ
ーム転送制御部１０から転送されたデータを一時蓄積した後に、その転送順に復号化部５に出力する機能を有している。
【００２１】
復号化部５は、図７では音声復号化部５ａ、映像復号化部５ｂおよび分離部５ｃで構成されている。すなわち、分離部５ｃで音声ストリームデータと映像ストリームデータとに分離されたデータはそれぞれ音声復号化部５ａで音声データに、映像復号化部５ｂで映像データに復号化される。
【００２２】
このように変換された動画像データは、出力部６（映像／音声出力部）でＤ／Ａ変換されて映像データと音声データとして外部に出力される。前述の符号化記憶部３から出力されたストリームデータは、ストリーム転送制御部１０で転送制御されながら、入出力インターフェース部８を介して情報蓄積部７に記録される。この情報蓄積部７は読み書き可能な光ディスク、光磁気ディスク、磁気ディスクを装着可能な大容量記憶装置で構成されている。
【００２３】
また、入出力インターフェース部８は、ＳＣＳＩ等の汎用インターフェースであり、複数台、複数種類の情報蓄積装置が接続可能である。９は主記憶部であり、前述の符号化記憶部３で符号化されたストリームデータを情報蓄積部７に記録するための一時記憶手段として機能する。また、情報蓄積部７から読み出したストリームデータを復号化記憶部４に出力するための一時記憶手段としても機能する。
【００２４】
したがって、この主記憶部９は図２に示すように、記録用ストリーム格納領域と、再生用ストリーム格納領域と、その他の処理用データ格納領域とで構成されている。
【００２５】
１１は操作部であり、具体的にはリモコン、操作パッド、キーボードまたはマウス等の入力装置で構成されており、ユーザーからの操作に関する情報をシステム制御部１２に伝達する機能を有している。
【００２６】
１２はシステム制御部であり、中央処理装置（ＣＰＵ）により構成されており、本システムの全体を制御する機能を有している。ストリーム転送制御部１０は、前記システム制御部１２からは独立して、ストリームデータの転送制御を行う機能を有している。
【００２７】
すなわち、情報蓄積部７のアクセス特性によって符号化記憶部３、復号化記憶部４および主記憶部９のデータ格納容量を制限したり、データ転送量を制御する機能を有している。
【００２８】
すなわち、ストリーム転送制御部１０は、（１）情報蓄積部７において一時的に書き込み・読み出しアクセスが滞ることを前提として前述の各記憶部でのデータ格納容量を制御し、（２）入出力インターフェース部８との書き込み・読み出しアクセス時のオーバヘッドを低減可能な転送単位でデータストリーム転送を制御し、（３）符号化記憶部３，復号化記憶部４および主記憶部９の書き込み・読み出し可能な容量をモニタしてデータストリーム転送間隔を制御することにより、符号化記憶部３でのオーバフローおよび復号化記憶部４でのアンダーフローを回避するものである。
【００２９】
すなわち、復号化記憶部４では常に復号化部５での復号化処理に必要な量のストリームデータを確保しなければならないため、復号化記憶部５を常に一定量以上に満たしておかなければならない。
【００３０】
ところが、復号化記憶部５への書き込み可能容量を越えた量のストリームデータを転送した場合、前記復号化記憶部５の全容量を越えた分のストリームデータは、復号化部５の
復号処理が進行して書き込み可能な状態となるまでは処理できない。そのために、ストリームデータの転送処理に時間がかかってしまい、ストリームデータ転送時のオーバヘッドが増大する。
【００３１】
そのために、ストリーム転送制御部１０では、復号化記憶部４の書き込み可能容量をモニタして、この書き込み可能量分だけのデータを主記憶部９から復号化記憶部４に転送するようにしている。
【００３２】
一方、符号化記憶部３では、データ書き込み時のオーバフローを回避するために出来る限り空の状態に保つ必要がある。しかし、符号化記憶部３からの読み出し可能量を越える量のストリームデータを読み出して主記憶部９に転送する場合、超過分のストリームデータの処理が完了するまでは、次のストリームデータ転送処理ができない。そのため、ストリームデータ転送にかかる時間が結果的に増大してしまい、ストリームデータ転送時のオーバヘッドが増大する。
【００３３】
そこで、ストリーム転送制御部１０では、符号化記憶部３の読み出し可能量をモニタして、この読み出し可能量分だけのデータを符号化記憶部３から主記憶部９に転送するようにしている。
【００３４】
一方、主記憶部９では、再生用ストリーム格納領域においてアンダーフローを回避するために、常に一定量以上の領域をデータで満たしておかなければならない。また、記録用ストリーム格納領域では、オーバフローを回避するために、出来る限り空の状態を保つ必要がある。
【００３５】
ところが主記憶部９でそれぞれの格納領域の書き込み／読み出し可能容量を越える量のストリームデータを転送する場合には処理のオーバヘッドが発生する。そこで、ストリーム転送制御部１０は、主記憶部９の各格納領域をモニタしてこの最適量だけのストリームデータ転送を行う。
【００３６】
つまり、ストリーム転送制御部１０は、再生用ストリーム格納領域の書き込み可能容量分以下でできるだけ大きい量のストリームデータを情報蓄積部７から読み出してこの再生用ストリーム格納領域に転送する。そして、再生用ストリーム格納領域の読み出し可能容量以下でかつ復号化記憶部４の書き込み可能容量以下で出来る限り大きい量のストリームデータを復号化記憶部４に転送する。
【００３７】
また、ストリーム転送制御部１０は、記録用ストリーム格納領域の書き込み可能な容量以下でかつ符号化記憶部３の読み出し可能な容量以下で出来る限り大きい量のストリームデータを符号化記憶部３から主記憶部９に転送する。そして、記録用ストリーム格納領域の読み出し可能容量以下で出来る限り大きい量のストリームデータを情報蓄積部７に転送する。
【００３８】
情報蓄積部７の特性によっては、一時的に書き込み／読み出しアクセスが停滞することがある。本実施形態では、この特性を見こんでおき、再生時に復号化に必要なストリームデータを主記憶部９に出来る限り残り満たしておくようにして、各記憶部で発生するアンダーフローを回避する。
【００３９】
再生処理では、主記憶部９の再生用ストリーム格納領域に再生用ストリームデータを出来る限り格納してから再生を開始することがアンダーフローを避けるために安全であるが、これでは再生データが出力されるまでの時間に遅延を生じてしまう。
【００４０】
そこで、通常の再生時には図３（ａ）で示すように、情報蓄積部７から主記憶部９までの転送レートを主記憶部９から復号化記憶部４までの転送レートよりも高く設定することで再生開始から徐々に主記憶部９の再生用ストリーム格納領域を満たしていき、ある一定量以上満たされた後に、情報蓄積部７から主記憶部９までの転送レートを、主記憶部９から復号化記憶部４までの転送レートと等しくするようにストリーム転送制御を行う。
【００４１】
一方、通常の録画処理時では、前述の再生処理とは逆に、主記憶部９の記録用ストリーム格納領域にデータを出来る限り残さないようにするために、図３（ｂ）に示すように、符号化記憶部３から主記憶部９までのストリーム転送レートと主記憶部９から情報蓄積部７までの転送レートとが等しくなるようにストリーム転送制御を行う。
【００４２】
ところで、一時的な書き込み／読み出しアクセスの中断があった場合の再生処理では、図４（ａ）に示すように、主記憶部９の再生用ストリーム格納領域に一定量のデータを満たすまで、情報蓄積部７から主記憶部９までの転送レートを主記憶部９から復号化記憶部４までの転送レートよりも高くするストリーム転送制御を行う。
【００４３】
同様に録画処理では、図４（ｂ）に示すように、書き込みアクセスが復帰した後に、主記憶部９の記録用ストリーム格納領域の格納量が一定以下に減少するまでは主記憶部９から情報蓄積部７までの転送レートを符号化記憶部３から主記憶部９までの転送レートよりも高くしたストリーム転送制御を行う。
【００４４】
このような制御により主記憶部９でのアンダーフローとオーバフローを回避でき、復号処理が中断してしまったり、符号化して生成されたストリームデータが欠落したりすることを有効に防止できる。
【００４５】
ところで、情報蓄積部７と主記憶部９との間のストリーム転送にかかる時間は、ストリーム転送単位によって異なる。通常は、図５に示したように、同じ量のストリームデータを転送する場合には、転送単位を大きくして転送回数を少なくするほど処理時間が短くなるので、できるだけ転送単位を大きくとる方が処理にかかるオーバヘッドが軽減される。したがって、オーバヘッドの低減の度合いが飽和する直前の転送単位でストリームの書き込み／読み出しを行うことで効率よくストリームの転送を行うことができる。この転送単位はある程度まで大きくしてしまうと処理時間短縮効果も飽和状態となってしまうため、それを越えることなくかつ最大量の単位とすることがオーバヘッドの低減にとって最大の効果が得られることがわかる。
【００４６】
ここで、ストリーム転送レートを下記の数式１で定義すると、ストリーム転送間隔を変化させることでストリーム転送レートを任意に調整することが可能となる。
［数式１］ストリーム転送レート＝（ストリーム転送単位）／（ストリーム転送間隔）
たとえば図６（ａ）のように、ストリーム転送間隔を長く設定して疎の状態とすることでレートを低くすることができ、図６（ｂ）に示すようにストリーム転送間隔を短く設定して密にすることで高く設定できる。さらに、図６（ｃ）に示すように、ストリーム転送レートを状況に応じてレートを変化させることも可能である。
【００４７】
ここで、情報蓄積部７の書き込み／読み出し時のアクセス処理のオーバヘッドが最も小さくなるようなストリーム転送量で転送を実行する場合、常に書き込み／読み出しが可能であるか否かをモニタしながら転送を行うのでは、モニタ処理のためのオーバヘッドがかえって増大してしまうことが予想される。そこで、本実形態におけるストリーム転送制御部１０では、下記の数式２を用いてストリーム転送間隔を予測して調整することによって、モニタ処理のオーバヘッドを低減させてもよい。
［数式２］ストリーム転送間隔＝（ストリーム転送単位）／（ストリーム転送レート）
たとえば、倍速再生やスロー再生などの変速再生に際しては、下記の数式３のように再生速度率を乗じることでストリーム転送間隔を予測することができる。
［数式３］ストリーム転送間隔＝（再生速度率）×（ストリーム転送単位）／（ストリーム転送レート）
ここで、再生速度率とは、通常の再生速度に対する変速再生速度の比であり、２倍速であれば再生速度率は２となる。
【００４８】
また、可変符号化されたストリームデータを再生する場合では、下記の数式４のようにして、復号化時点ｔでのストリーム転送レート（ｔｒ）からストリーム転送間隔（ｔｔ）を予測するようにしてもよい。
［数式４］ストリーム転送間隔（ｔｔ）＝（ストリーム転送単位）／（ストリーム転送レート（ｔｒ））
上述したように、再生用ストリームデータを情報蓄積部７から主記憶部９に読み出すときに、再生用ストリーム格納領域がある一定以上に満たされていなければ、ストリーム転送間隔は先読率を用いて下記の数式５のように設定する。なお、ここで先読率とは、復号化に必要なストリーム転送レートに対する比である。
［数式５］ストリーム転送間隔＝（ストリーム転送単位）／｛（ストリーム転送レート）×（先読率）｝
主記憶部９から復号化記憶部４までのストリーム転送、または符号化記憶部３から主記憶部９までのストリーム転送では、情報蓄積部７のように固定のストリーム転送単位でストリーム転送を行う必要はないものの、復号化記憶部４の書き込み可能容量または符号化記憶部３の読み出し可能容量をストリーム転送制御部１０において常にモニタしながら主記憶部９での書き込み／読み出し可能容量の範囲内で転送制御を行うのでは、モニタ処理のためのオーバヘッドが増大してしまうことになる。
【００４９】
そこで、ストリーム転送時点ｔからストリーム転送時点ｔ＋１までの間、ストリーム格納量が一定の範囲内となるようにストリーム転送間隔を予測し、ストリーム転送時点ｔ＋１における可能な限り大きな量でストリーム転送を行わせる。このときのストリーム転送間隔は下記の数式６により決定される。
［数式６］
（ストリーム転送間隔）＝ （ストリーム転送予測量）／（ストリーム転送レート）
ここで、記録：（ストリーム転送予測量）＝ （符号化記憶部３のストリーム格納量の上限）
再生：（ストリーム転送予測量）＝ （復号化記憶部４のストリーム格納量の下限）
このように、ストリーム転送間隔を予測することによって、復号化記憶部４の書き込み可能容量または符号化記憶部３の読み出し可能容量を考慮したモニタ処理による転送制御においてモニタ処理によるオーバヘッドを低減することができる。
【００５０】
なお、同時に記録再生するチャンネルが増加し、数式１で予測したストリーム転送間隔
で転送することが不可能となる場合には、アンダーフローまたはオーバフローが発生することになる。したがって、キーボード等の操作部１１からの入力により記録処理または再生処理を受け付ける前に全てのストリーム転送レートの総和がシステムのストリーム転送レートの上限を超える場合には、ストリーム転送制御部１０は、システム制御部１２に対して新たな処理を受け付けないように指示することでチャンネル増大時のアンダーフローまたはオーバフローを回避することができる。
【００５１】
倍速再生等のように一時的にストリーム転送レートが増大して全てのストリーム転送レートの総和がシステムのストリーム転送レートの上限を超える場合にもアンダーフローまたはオーバフローが発生する。このときにはストリーム転送制御部１０は、ストリームデータを間引きしながら再生する簡易倍速再生に切り替えてデータストリーム転送を実行してもよい。
【００５２】
符号化と同時にその符号化されたストリームデータと連続するストリームデータを順次再生することを追いかけ再生と呼ぶ。この追いかけ再生時に倍速再生やスキップ再生を行うことにより、復号化に必要なストリームデータが情報蓄積部７に未だ記録されていない場合には情報蓄積部７から該当するストリームデータを読み出すことができなくなる。
【００５３】
このような場合に、ストリーム転送制御部１０は、記録用ストリーム格納領域に書き込まれたストリームデータの総量を主記憶部９または情報蓄積部７に記憶しておく。ここで、下記の数式７による制御を行うことにより、記録用ストリーム格納領域の大きさと情報蓄積部７の読み出しアドレスとから復号化のためのストリームデータの読み出し範囲が計算できる。
［数式７］下限：情報蓄積部の読み出しアドレス上限：（記録用ストリーム格納領域への書き込み総量）／（記録用ストリーム格納領域の大きさ）
ここで、情報蓄積部７からの読み出しアドレスと記録用ストリーム格納領域への書き込み総量は１対１で対応しているので、数式７の範囲から再生用ストリームデータの読み出しアドレスと読み出し可能なストリームデータの大きさとを算出することができる。
【００５４】
なお、記録処理または再生処理をストリームデータの転送経路毎にタスク化することによってストリーム転送制御を単純化できる。これによって、記録処理または再生処理にかかる開発工数を低減させることができる。
【００５５】
具体的には、記録処理を符号化記憶部３から主記憶部９までのストリーム転送経路と、主記憶部９から情報蓄積部７までのストリーム転送経路とにタスク化することができる。
【００５６】
また、再生処理を情報蓄積部７から主記憶部９までのまでのストリーム転送経路と、主記憶部９から復号化記憶部４までのストリーム転送経路とにタスク化することができる。
【００５７】
これらはタスクテーブルとして情報蓄積部７または主記憶部９に登録され、ストリーム転送制御部１０またはシステム制御部１２によって読み出されて実行される。
【００５８】
このようにストリーム転送をタスク化することによって、ストリーム転送制御を単純化するとともに、タスクとして優先順位を容易に設定することができる。たとえば、記録再生システムでは記録されるべきストリームデータが欠落してしまうことが最も深刻な問題となる。そのために、符号化記憶部３から主記憶部９までのストリーム転送を行うタスクを最も優先させるように制御する。
【００５９】
復号化記憶部４でのアンダーフローにより再生出力が中断してしまうことに対しては、主記憶部９から復号化記憶部４までのストリーム転送を行うタスクを情報蓄積部７から主記憶部９までのストリーム転送を行うタスクよりも優先的採用することにより復号化記憶部４でのアンダーフローを回避することができる。
【００６０】
以上、説明した本発明の構成を再度述べると以下の通りである。
（構成１） データ入力を行う入力手段と、入力手段からのデータを符号化してストリームデータを生成する符号化手段と、符号化されたストリームデータを一時的に記憶する符号化記憶手段と、前記ストリームデータを復号化するための一時的記憶する復号化記憶手段と、復号化記憶手段から読み出されたストリームデータを復号化する復号化手段と、ストリームデータを蓄積する情報蓄積手段と、前記符号化されたストリームデータと前記復号化されたストリームデータを一時的に格納し、記録用ストリーム格納領域と再生用ストリーム格納領域とを有する主記憶手段と、前記符号化記憶手段、復号化記憶手段、および主記憶手段の書き込みおよび読み出し可能な容量をモニタするとともに、当該モニタ結果に基づいて前記情報蓄積手段との間のデータ転送を制御する転送制御手段とからなる記録再生装置。
【００６１】
（構成２） 前記転送制御手段は、主記憶手段に格納されたストリームデータを復号化記憶手段に転送する際に、前記復号化記憶手段における書き込み可能容量からストリーム転送量を決定することを特徴とする構成１記載の記録再生装置。
【００６２】
（構成３） 前記転送制御手段は、符号化記憶手段から主記憶部にストリームデータを格納する際に、前記符号化記憶手段の読み出し可能容量からストリーム転送量を決定することを特徴とする構成１記載の記録再生装置。
【００６３】
（構成４） 前記転送制御手段は、前記主記憶手段の書き込み可能容量または読み出し可能容量からストリーム転送量を決定することを特徴とする構成２または３記載の記録再生装置。
【００６４】
（構成５） 前記転送制御手段は、データストリームを再生する際に、通常の復号化ときよりも高い転送レートで前記情報蓄積手段から前記主記憶手段にストリームデータを先読みして一定量以上のストリームデータを転送することによって、情報蓄積手段からの読み出しが停滞したときにも復号化記憶手段がアンダーフローとなり復号化が中断されることを回避する制御を行うことを特徴とする構成１記載の記録再生装置。
【００６５】
（構成６） 前記転送制御手段は、前記情報蓄積手段へのストリームデータの格納の際に、前記符号化記憶手段と主記憶手段とに対して、データ記憶容量が一定以上とならないようにして、情報蓄積手段へのストリームデータの書き込みが停滞したときに符号化記憶手段と主記憶手段とがオーバフローして符号化されたストリームデータが欠落してしまうことを回避するよう制御を行うことを特徴とする構成１記載の記録再生装置。
【００６６】
（構成７） 前記転送制御手段は、ストリーム転送レートが最も高くなるストリーム転送量で情報蓄積手段からのストリームデータの読み出しのための転送を制御することを特徴とする構成１記載の記録再生装置。
【００６７】
（構成８） 前記転送制御手段は、ストリーム転送レートが最も高くなるストリーム転送量で情報蓄積手段へのストリームデータの書き込みのための転送を制御することを特徴とする構成１記載の記録再生装置。
【００６８】
（構成９） 前記転送制御手段は、ストリームデータ転送間隔を調整することでストリ
ーム転送レートを制御することを特徴とする構成７または８記載の記録再生装置。
【００６９】
（構成１０） 前記転送制御手段は、復号化されるストリームデータの転送レートが変化するような特殊再生の際に、前記主記憶手段と復号化記憶手段との間のデータ転送レートを制御することを特徴とする構成１記載の記録再生装置。
【００７０】
（構成１１） 前記転送制御手段は、さらに情報蓄積手段から主記憶手段までのストリームデータの転送レートを制御することを特徴とする構成１０記載の記録再生装置。
【００７１】
（構成１２） 前記転送制御手段は、前記特殊再生の際に復号化に必要な転送レートがシステムで転送可能な転送レートを超えると判断したとき、または符号化に必要な転送レートを低下させる影響があると判断したときには、ストリームデータを間引きしながら転送するように制御することを特徴とする構成１１記載の記録再生装置。
【００７２】
（構成１３） 前記転送制御手段は、符号化手段が出力するストリームデータの転送レートが変化するときに、符号化記憶手段から主記憶手段までのデータ転送レートを制御することを特徴とする構成１記載の記録再生装置。
【００７３】
（構成１４） 前記転送制御手段は、さらに主記憶手段から情報蓄積手段までのデータ転送レートを制御することを特徴とする構成１３記載の記録再生装置。
【００７４】
（構成１５） 前記転送制御手段は、入力データの符号化ときに主記憶手段中のデータ書き込み開始時点から総書き込み量を記録することを特徴とする構成１記載の記録再生装置。
【００７５】
（構成１６） 前記転送制御手段は、入力データの符号化と同時に符号化されたストリームデータと連続するストリームデータを再生する追いかけ再生の際に、復号化に必要なストリームデータが未だ情報蓄積手段に記録されていないときに、前記で記録された総書き込み量を用いてストリームデータ用の主記憶手段内の読み出し点を算出して、復号化手段に転送するストリームデータの読み出し先を前記情報蓄積手段から前記読み出し点に切り替える制御を行うことを特徴とする構成１５記載の記録再生装置。
【００７６】
（構成１７） データ再生に際して特殊再生を外部から指示する操作手段を有しており、前記制御手段は、ストリーム転送レートの総和がシステムのストリーム転送レートの上限を超える場合には前記操作手段による再生指示を受け付けないよう制御することを特徴とする構成１記載の記録再生装置。
【００７７】
（構成１８） 前記制御手段は、ストリームデータの記録処理および再生処理をストリームデータの転送経路毎にタスクとして登録する手段を備えていることを特徴とする構成１記載の記録再生装置。
【００７８】
（構成１９） 前記制御手段は、データの記録処理に際して、符号化記憶手段から主記憶手段までのストリーム転送経路と、主記憶手段から情報蓄積手段までのストリーム転送経路とをそれぞれタスクとして登録することを特徴とする構成１８記載の記録再生装置。
【００７９】
（構成２０） 前記制御手段は、データの再生処理に際して、情報蓄積手段から主記憶手段までのストリーム転送経路と、主記憶手段から復号化記憶手段までのストリーム転送経路とをそれぞれタスクとして登録することを特徴とする構成１８記載の記録再生装置。
【００８０】
（構成２１） 前記タスクには優先順位が付与されていることを特徴とする構成１９ま
たは２０記載の記録再生装置。
【００８１】
（構成２２） 前記符号化記憶手段から主記憶手段までのストリーム転送を行うタスクが最優先タスクとして登録されていることを特徴とする構成１９記載の記録再生装置。
【００８２】
（構成２３） 主記憶手段から復号化記憶手段までのストリーム転送を行うタスクが、情報蓄積手段から主記憶手段までのストリーム転送を行うタスクよりも高い優先順位で登録されていることを特徴とする構成１９記載の記録再生装置。
【００８３】
（構成２４） データ入力を行うステップと、入力されたデータを符号化してストリームデータを生成するステップと、符号化されたストリームデータを符号化記憶手段に一時的に記憶する符号化記憶ステップと、前記ストリームデータを復号化するために復号化記憶手段に一時的に記憶する復号化記憶ステップと、復号化記憶手段から読み出されたストリームデータを復号化する復号化ステップと、ストリームデータを蓄積する情報蓄積ステップと、前記符号化されたストリームデータと前記復号化されたストリームデータとを、記録用ストリーム格納領域と再生用ストリーム格納領域とを有する主記憶手段に一時的に格納するステップと、前記符号化記憶手段、復号化記憶手段、および主記憶手段にストリームデータを格納する際に、各記憶手段の書き込みおよび読み出し可能な容量をモニタするステップと、前記モニタ結果に基づいて前記各記憶手段と情報蓄積手段との間のデータ転送を制御する転送制御ステップとからなる記録再生方法。
【００８４】
（構成２５） データの記録および再生を行うプログラムであって、データ入力を行うステップと、入力されたデータを符号化してストリームデータを生成するステップと、符号化されたストリームデータを符号化記憶手段に一時的に記憶する符号化記憶ステップと、前記ストリームデータを復号化するために復号化記憶手段に一時的に記憶する復号化記憶ステップと、復号化記憶手段から読み出されたストリームデータを復号化する復号化ステップと、ストリームデータを蓄積する情報蓄積ステップと、前記符号化されたストリームデータと前記復号化されたストリームデータとを、記録用ストリーム格納領域と再生用ストリーム格納領域とを有する主記憶手段に一時的に格納するステップと、前記符号化記憶手段、復号化記憶手段、および主記憶手段にストリームデータを格納する際に、各記憶手段の書き込みおよび読み出し可能な容量をモニタするステップと、前記モニタ結果に基づいて前記各記憶手段と情報蓄積手段との間のデータ転送を制御する転送制御ステップとを順次実行するプログラムを記憶した記憶媒体。
【図面の簡単な説明】
【００８５】
【図１】本発明の実施形態の機能ブロック図
【図２】実施形態における主記憶部の領域配置図
【図３】通常再生・記録時におけるストリーム転送レート制御を説明するための図
【図４】アクセス中断時のストリーム転送制御を説明するための図
【図５】ストリーム転送単位におけるオーバヘッド発生を説明するための図
【図６】固定ストリーム単位でストリーム転送レート制御を説明するための図
【図７】実施形態のより具体的な機能ブロック図
【符号の説明】
【００８６】
１  入力部（映像／音声入力部）
２  符号化部
２ａ  映像符号化部
２ｂ  音声符号化部
２ｃ  多重化部
３  符号化記憶部
４  復号化記憶部
５  復号化部
５ａ  音声復号化部
５ｂ  映像復号化部
５ｃ  分離部
６  出力部（映像／音声出力部）
７  情報蓄積部
８  入出力インターフェース部
９  主記憶部
１０  ストリーム転送制御部
１１  操作部
１２  システム制御部
【図１】
0004665027.tif 000002
【図２】
0004665027.tif 000003
【図３】
0004665027.tif 000004
【図４】
0004665027.tif 000005
【図５】
0004665027.tif 000006
【図６】
0004665027.tif 000007
【図７】
0004665027.tif 000008