(57)【特許請求の範囲】
【請求項１】
ビデオデータとオーディオデータとで構成されるクリップを入出力する複数のポートと、
前記クリップを記録する記録媒体に対して前記ポートに入力されたクリップを記録又は再生する際に前記クリップを格納するメモリと、
前記ビデオデータ，オーディオデータを前記メモリの別々の領域に保持させ、前記ビデオデータをマスターエッセンスとして、該マスターエッセンスを保持した領域と該マスターエッセンスに同期したフレームの前記オーディオデータを保持した領域との関連付けを示すリンク情報と、前記メモリの各領域に前記ビデオデータ，オーディオデータのいずれが保持されているかを識別する識別情報とを生成するとともに、前記メモリの各領域について、前記複数のポートのうちのいくつのポートのために現在使用されているかを示す使用管理情報を生成し、生成した該使用管理情報に基づき、各領域の現在までの使用履歴の情報を生成する生成手段と、
いずれかの前記ポートを指定した前記クリップの記録要求があった後直ちに他の前記ポートを指定した該クリップの再生要求があったとき、該クリップ中の前記マスターエッセンスが前記メモリに保持されているか否かを、前記生成手段により生成された識別情報を用いて判定し、保持されている場合には、該マスターエッセンスと、該マスターエッセンスを保持している領域に前記リンク情報によって関連付けられた領域に保持されている前記オーディオデータと、を前記再生要求で指定されたポートから出力させる制御と、いずれかの前記ポートを指定した前記クリップの記録要求があった場合、及び、前記ポートを指定した再生要求のあったクリップ中の前記マスターエッセンスが前記メモリに保持されていない場合、前記メモリのうち前記マスターエッセンスを保持している領域については、前記使用履歴の情報を用いて、現在使用されていない領域のうち、使用された時期が古い領域の順に使用させ、前記メモリのうち前記オーディオデータを保持している領域については、前記リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用させる制御とを行う制御手段と、を備える
データ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
前記生成手段は、いずれの前記ポートにも使用されなくなった領域について、使用されていた際に生成された前記識別情報を保持しておき、
前記制御手段は、いずれの前記ポートのためにも使用されなくなった領域について、前記識別情報を用いて、前記マスターエッセンスが前記メモリに保持されているか否かを判定する
データ処理装置。
【請求項３】
請求項１に記載のデータ処理装置において、
前記クリップを記録する記録媒体を更に備える
データ処理装置。
【請求項４】
ビデオデータとオーディオデータとで構成されるクリップを入出力する複数のポートと、
前記クリップを記録する記録媒体に対して前記ポートに入力されたクリップを記録又は再生する際に前記クリップを格納するメモリとを有する記録再生装置におけるデータ処理方法において、
前記ビデオデータ，オーディオデータを前記メモリの別々の領域に保持させ、前記ビデオデータをマスターエッセンスとして、該マスターエッセンスを保持した領域と該マスターエッセンスに同期したフレームの前記オーディオデータを保持した領域との関連付けを示すリンク情報と、前記メモリの各領域に前記ビデオデータ，オーディオデータのいずれが保持されているかを識別する識別情報とを生成するとともに、前記メモリの各領域について、前記複数のポートのうちのいくつのポートのために現在使用されているかを示す使用管理情報を生成し、生成した該使用管理情報に基づき、各領域の現在までの使用履歴の情報を生成する第1のステップと、
いずれかの前記ポートを指定した前記クリップの記録要求があった後直ちに他の前記ポートを指定した該クリップの再生要求があったとき、該クリップ中の前記マスターエッセンスが前記メモリに保持されているか否かを、前記識別情報を用いて判定し、保持されている場合には、該マスターエッセンスと、該マスターエッセンスを保持している領域に前記リンク情報によって関連付けられた領域に保持されている前記オーディオデータと、を前記再生要求で指定されたポートから出力させる制御と、いずれかの前記ポートを指定した前記クリップの記録要求があった場合、及び、前記ポートを指定した再生要求のあったクリップ中の前記マスターエッセンスが前記メモリに保持されていない場合、前記メモリのうち前記マスターエッセンスを保持している領域については、前記使用履歴の情報を用いて、現在使用されていない領域のうち、使用された時期が古い領域の順に使用させ、前記メモリのうち前記オーディオデータを保持している領域については、前記リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用させる制御とを行う第２のステップとを有する
データ処理方法。
【請求項５】
請求項４に記載のデータ処理方法において、
前記第１のステップでは、いずれの前記ポートにも使用されなくなった領域について、使用されていた際に生成された前記識別情報を保持しておき、
前記第２のステップでは、いずれの前記ポートのためにも使用されなくなった領域について、前記識別情報を用いて、前記マスターエッセンスが前記メモリに保持されているか否かを判定する
データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばテレビジョン放送用のＡＶサーバーやノンリニア編集機のような、２以上の入出力ポートからノンリニア記録媒体にアクセスしてビデオデータを記録再生する記録再生装置に関する。
【背景技術】
【０００２】
テレビジョン放送用にＡＶデータの記録再生や編集を行う機器として、複数の入出力ポートと、メインストレージであるノンリニアアクセス可能な大容量の記録媒体（ハードディスクドライブ，フラッシュメモリ等）とを有するＡＶサーバーやノンリニア編集機が普及している。
【０００３】
こうしたＡＶサーバーやノンリニア編集機では、複数の入出力ポートが全く同じタイミングでメインストレージにアクセスすることを避けるために、通常、各入出力ポートからのメインストレージへのアクセスがタイムスロットによって管理されている（例えば特許文献１参照）。そして、各入出力ポートがこのタイムスロットとは無関係に所定レートでＡＶデータを入出力できるようにするために、メインストレージに対する記録再生時にＡＶデータを一時的に保持するためのメモリが設けられている。
【０００４】
図１は、従来のＡＶサーバーやノンリニア編集機におけるこのＡＶデータ一時保持用のメモリの管理方法を概念的に示す図である。例えば入出力ポートがＰｏｒｔ＃１〜５の５つであるとすると、このメモリＭの全領域が、各ポートＰｏｒｔ＃１〜５に専用の５つの領域Ｍ１〜Ｍ５に分割して管理される。
【０００５】
入出力ポートＰｏｒｔ＃１にＡＶデータが入力すると、そのＡＶデータは、毎フレーム、メモリＭの領域Ｍ１に書き込まれていく。そして、領域Ｍ１に一定量のＡＶデータが溜まると、入出力ポートＰｏｒｔ＃１に割り当てられたタイムスロットのタイミングで、領域Ｍ１内のＡＶデータがメインストレージＭＳに記録される。
【０００６】
また、入出力ポートＰｏｒｔ＃２からＡＶデータを出力するときは、入出力ポートＰｏｒｔ＃２に割り当てられたタイムスロットのタイミングで、メインストレージＭＳ内のＡＶデータがメモリＭの領域Ｍ２に書き込まれる。そして、領域Ｍ２に書き込まれたＡＶデータが、毎フレーム、入出力ポートＰｏｒｔ＃２から出力される。入出力ポートＰｏｒｔ＃３〜５についても同様である。
【０００７】
ところで、ＡＶサーバーやノンリニア編集機の用途としては、或る入出力ポートに入力させたＡＶデータを、直ちに他の入出力ポートから出力するという、「追っかけ再生」の用途が存在する。例えば、生放送のスポーツ番組において注目すべきシーンのリプレイを行う場合や、ニュース番組において取材現場からのＡＶデータを編集して放送する場合に、こうした追っかけ再生が行われる。
【０００８】
従来、こうしたＡＶサーバーやノンリニア編集機で追っかけ再生を行う際には、メインストレージに記録されたＡＶデータを再生して出力していた。
【０００９】
【特許文献１】特開２０００−３０７９７８号公報（段落０００８，００４６〜４７）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、こうした従来の追っかけ再生方法では、或るＡＶデータが入力した後、記録時のタイムスロット管理による待ち時間と、再生時のタイムスロット管理による待ち時間とを合わせた時間が経過するまで、そのＡＶデータを出力することができない。
【００１１】
そのため、追っかけ再生の応答性が悪くなるので、前述のスポーツ番組やニュース番組においてリプレイ再生や編集が遅れるという問題があった。また、こうしたＡＶサーバーやノンリニア編集機へのクリップ（連続再生すべき１まとまりの素材）の記録時には、そのクリップを１つのファイルとして記録するのではなく、そのクリップを構成している複数のエッセンス（ビデオデータ，オーディオデータといった、互いに種別の異なるデータ）を、独立した別々のファイル（ビデオファイルやオーディオファイル等）として記録する場合がある。
【００１２】
本発明は、上述の点に鑑み、ＡＶサーバーやノンリニア編集機のような、２以上の入出力ポートからノンリニア記録媒体にアクセスしてクリップを記録再生する記録再生装置において、特に、クリップを構成する複数のエッセンスを別々のファイルとして記録する場合に、追っかけ再生の応答性を向上させることを課題とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明は、ビデオデータとオーディオデータとで構成されるクリップを入出力する複数のポートと、クリップを記録する記録媒体に対してポートに入力されたクリップを記録又は再生する際にクリップを格納するメモリと、生成手段と、制御手段とを備える。
生成手段は、ビデオデータ，オーディオデータをメモリの別々の領域に保持させ、ビデオデータをマスターエッセンスとして、該マスターエッセンスを保持した領域と該マスターエッセンスに同期したフレームのオーディオデータを保持した領域との関連付けを示すリンク情報と、メモリの各領域にビデオデータ，オーディオデータのいずれが保持されているかを識別する識別情報とを生成するとともに、メモリの各領域について、複数のポートのうちのいくつのポートのために現在使用されているかを示す使用管理情報を生成し、生成した該使用管理情報に基づき、各領域の現在までの使用履歴の情報を生成する。
制御手段は、いずれかのポートを指定したクリップの記録要求があった後直ちに他のポートを指定した該クリップの再生要求があったとき、該クリップ中のマスターエッセンスがメモリに保持されているか否かを、生成手段により生成された識別情報を用いて判定し、保持されている場合には、該マスターエッセンスと、該マスターエッセンスを保持している領域にリンク情報によって関連付けられた領域に保持されているオーディオデータと、を再生要求で指定されたポートから出力させる制御と、いずれかのポートを指定したクリップの記録要求があった場合、及び、ポートを指定した再生要求のあったクリップ中のマスターエッセンスがメモリに保持されていない場合、メモリのうちマスターエッセンスを保持している領域については、使用履歴の情報を用いて、現在使用されていない領域のうち、使用された時期が古い領域の順に使用させ、メモリのうちオーディオデータを保持している領域については、リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用させる制御とを行う。
【００１４】
また本発明は、ビデオデータとオーディオデータとで構成されるクリップを入出力する複数のポートと、クリップを記録する記録媒体に対してポートに入力されたクリップを記録又は再生する際にクリップを格納するメモリとを有する記録再生装置におけるデータ処理方法に適用される。
第１のステップとして、ビデオデータ，オーディオデータをメモリの別々の領域に保持させ、ビデオデータをマスターエッセンスとして、該マスターエッセンスを保持した領域と該マスターエッセンスに同期したフレームのオーディオデータを保持した領域との関連付けを示すリンク情報と、メモリの各領域にビデオデータ，オーディオデータのいずれが保持されているかを識別する識別情報とを生成するとともに、メモリの各領域について、複数のポートのうちのいくつのポートのために現在使用されているかを示す使用管理情報を生成し、生成した該使用管理情報に基づき、各領域の現在までの使用履歴の情報を生成する。
第２のステップとして、いずれかのポートを指定したクリップの記録要求があった後直ちに他のポートを指定した該クリップの再生要求があったとき、該クリップ中のマスターエッセンスがメモリに保持されているか否かを、識別情報を用いて判定し、保持されている場合には、該マスターエッセンスと、該マスターエッセンスを保持している領域にリンク情報によって関連付けられた領域に保持されているオーディオデータと、を再生要求で指定されたポートから出力させる制御と、いずれかのポートを指定したクリップの記録要求があった場合、及び、ポートを指定した再生要求のあったクリップ中のマスターエッセンスがメモリに保持されていない場合、メモリのうちマスターエッセンスを保持している領域については、使用履歴の情報を用いて、現在使用されていない領域のうち、使用された時期が古い領域の順に使用させ、メモリのうちオーディオデータを保持している領域については、リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用させる制御とを行う。
【００１５】
本発明によれば、ポートに入力されたクリップを記録再生する場合において、記録媒体に対する記録再生時にクリップを一時的に保持するメモリの各領域に、クリップ中のビデオデータ，オーディオデータが別々保持される。そして、このビデオデータ，オーディオデータのうちのビデオデータをマスターエッセンスとして、そのマスターエッセンスを保持した領域とそのマスターエッセンスに同期したフレームのオーディオデータを保持した領域との関連付けを示すリンク情報が生成される。また、このメモリの各領域に、ビデオデータ，オーディオデータのいずれが保持されているかを識別する識別情報が生成される。また、メモリの各領域について、複数のポートのうちのいくつのポートのために現在使用されているかを示す使用管理情報が生成され、生成され該使用管理情報に基づき、各領域の現在までの使用履歴の情報が生成される。
【００１６】
いずれかのポートを指定したクリップの記録要求があった後直ちに他のポートを指定した該クリップの再生要求があると、この識別情報を用いて、該クリップ中のマスターエッセンスがこのメモリに保持されているか否かが検索される。そして、保持されている場合には、ノンリニア記録媒体からそのクリップを再生することなく、このメモリに保持されているマスターエッセンスと、このメモリに保持されておりリンク情報によってそのマスターエッセンスに関連付けられているオーディオデータとが出力される。
【００１７】
ここで、追っかけ再生の場合には、再生対象のクリップが記録媒体への記録のためにこのメモリに保持された直後なので、そのクリップがこのメモリにまだ保持されている（そのクリップを保持した領域がまだ他のクリップの記録や再生のために上書きされていない）可能性が高い。
【００１８】
したがって、記録媒体にアクセスすることなく（すなわち、タイムスロット管理による記録媒体へのアクセスの待ち時間に影響されることなく）、このメモリをいわばキャッシュメモリとして利用して迅速に追っかけ再生を行えるケースが多くなる。これにより、追っかけ再生の応答性を向上させることができる。そして、クリップを構成するビデオデータ，オーディオデータを別々のファイルとして記録する場合でも、ビデオデータ，オーディオデータ毎にこのメモリに存在するか否かの検索を行う必要はなく、ビデオデータ（マスターエッセンス）のみについて検索を行えば足りるので、検索処理を簡素化することができる。
また、いずれかのポートを指定したクリップの記録要求があった場合、及び、ポートを指定した再生要求のあったクリップ中のマスターエッセンスがメモリに保持されていない場合、メモリのうちマスターエッセンスを保持している領域については、使用履歴の情報を用いて、現在使用されていない領域のうち、使用された時期が古い領域の順に使用され、メモリのうちオーディオデータを保持している領域については、リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用される。
マスターエッセンスを保持している領域について、現在使用されていない領域のうち使用時期が古い順に確保するのは、最近使用されたばかりの領域がすぐに他のデータの記録のために使用されないようにすることにより、そこに保持されているデータを利用できる機会を増やして、追っかけ再生の応答性を良くするためである。
また、オーディオデータを保持している領域については、リンク情報によって関連付けられた領域の数がゼロになったことを条件として使用することにより、メモリに或るフレームのビデオデータが残っていれば、必ずそのビデオデータと同期したオーディオデータがメモリに残っていることが保障されるので、クリップを構成するビデオデータ，オーディオデータを別々のファイルとして記録する場合でも、メモリをキャッシュメモリとして利用してクリップ全体を追っかけ再生することができる。
【発明の効果】
【００１９】
本発明によれば、本発明によれば、複数の入出力ポートから記録媒体にアクセスしてクリップを記録再生する場合において、追っかけ再生の応答性を向上させることができ、且つ、クリップを構成するビデオデータ，オーディオデータを別々のファイルとして記録する場合でも、クリップを一時的に保持するメモリに対する検索処理を簡素化できるとともに、メモリをキャッシュメモリとして利用してクリップ全体を追っかけ再生することができるという効果が得られる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態として、テレビジョン放送用のＡＶサーバーに本発明を適用した例を、図面を用いて具体的に説明する。
【００２１】
最初に、本発明を適用したＡＶサーバーの全体構成例を、図２を用いて説明する。このＡＶサーバーは、次のような各部によって構成されている。
・ＳＤＩ規格のシリアルデジタル信号を入出力するための複数（例えば５つ）のＳＤＩ入出力ポート１
・バンクメモリ２
・バンクメモリ２に対するデータの読み書きを行うバンクメモリコントローラ３
・各ＳＤＩ入出力ポート１に入力したＡＶデータを記録するメインストレージである大容量のフラッシュメモリ４
・フラッシュメモリ４を制御する低機能のプロセッサを設けたＦＰＧＡ６
・ＳＤＩ入出力ポート１及びバンクメモリコントローラ３を制御するＣＰＵ７
・ＡＶサーバー全体を統括するＣＰＵ８
・外部からＲＳ−４２２プロトコルで受信した各ＳＤＩ入出力ポート１毎の記録・再生コマンドをプロトコル変換してＣＰＵ８に送ったり、ＣＰＵ８からのステータスをＲＳ−４２２プロトコルに変換して外部に返送するための低機能のプロセッサを設けたＦＰＧＡ９
【００２２】
各ＳＤＩ入出力ポート１には、入出力処理部１ａとコーデック１ｂとが設けられている。クリップの記録時には、ＳＤＩ入出力ポート１に入力したＳＤＩ規格のシリアルデジタル信号が、入出力処理部１ａでパラレル形式のＡＶデータ（１つのクリップを構成している２つのエッセンスであるビデオデータ，オーディオデータ）に変換され、コーデック１ｂによりＬｏｎｇＧＯＰ方式でエンコード（圧縮）されて、バンクメモリコントローラ３に送られる。
【００２３】
またクリップの再生時には、バンクメモリコントローラ３からＳＤＩ入出力ポート１に送られたＡＶデータが、コーデック１ｂによりＬｏｎｇＧＯＰ方式でデコード（伸長）され、入出力処理部１ａでＳＤＩ規格のシリアルデジタル信号に変換されて出力される。
【００２４】
バンクメモリ２は、フラッシュメモリ４に対するクリップの記録再生時に、クリップを構成しているビデオデータとオーディオデータとを別々の領域に一時的に保持するためのメモリであり、容量は例えば２Ｇバイトである。
【００２５】
なお、このＡＶサーバーには、図示は省略するが、同じ構成のＡＶサーバーを複数台接続して各ＡＶサーバーのＳＤＩ入出力ポート１から別のＡＶサーバーのフラッシュメモリ４にアクセスするための外部インタフェースも設けられている。そのような別のＡＶサーバーのＳＤＩ入出力ポート１からのアクセスによる記録再生時にも、このバンクメモリ２にＡＶデータが一時的に保持される。
【００２６】
ＣＰＵ７，ＣＰＵ８，ＦＰＧＡ６のプロセッサには、それぞれ内部のメモリに各種のプログラムが格納されている。図３は、それらのプログラムのモジュール構造を示す図である。
【００２７】
ＣＰＵ８内のメモリには、次のようなプログラムが格納されている。
・ＦＰＧＡ９からのコマンドを解釈するプログラムＣＭＤ
・フラッシュメモリ４内のＡＶデータを管理するファイルシステムＭＳＦＳ
・ファイルシステムＭＳＦＳの上位のプログラムであるファイルマネージャーＦＭ
【００２８】
ＣＰＵ７内のメモリには、次のようなプログラムが格納されている。
・各ＳＤＩ入出力ポート１を制御するとともに、バンクメモリコントローラ３を制御してバンクメモリ２にＡＶデータの読み書きを行わせるプログラムＶＤＣ
・バンクメモリ２の管理とバンクメモリコントローラ３の制御とを行うプログラムであるバンクメモリマネージャーＢＭＭ
【００２９】
ＦＰＧＡ６のプロセッサ内のメモリには、次のようなプログラムが格納されている。
・各ＳＤＩ入出力ポート１からのフラッシュメモリ４へのアクセスをタイムスロットによって管理するプログラムであるメインストレージマネージャーＭＳＭ
・フラッシュメモリ４を制御するプログラムであるメインストレージコントローラＭＳＣｔｒｌ
【００３０】
図３に示した各モジュールのうち、バンクメモリマネージャーＢＭＭは本発明によって新規に設けたモジュールであるが、それ以外のモジュールは既存のものである。図３には各モジュールの関係（どのモジュールとどのモジュールとの間で通信が行われるか）を矢印で描いているが、バンクメモリマネージャーＢＭＭを中心にして他のモジュールとの関係を描きなおすと、図４のようになる。
【００３１】
この図４に示すように、バンクメモリマネージャーＢＭＭは、プログラムＶＤＣとファイルマネージャーＦＭとの間に介在しており、プログラムＶＤＣ，ファイルマネージャーＦＭとそれぞれ通信を行う。但し、プログラムＶＤＣは、ファイルマネージャーＦＭとの通信を全てバンクメモリマネージャーＢＭＭを介して行うわけではなく、直接ファイルマネージャーＦＭとも通信を行う。
【００３２】
バンクメモリマネージャーＢＭＭは、次の（ａ）〜（ｄ）の機能を有するプログラムである。
（ａ）バンクメモリ２の領域管理
（ｂ）バンクメモリ２の確保制御
（ｃ）バンクメモリ２の解放制御
（ｄ）バンクメモリ２の使用履歴の管理
【００３３】
このうち、領域管理では、図５に概念的に示すように、バンクメモリ２の全ての領域を、全てのＳＤＩ入出力ポート１（Ｐｏｒｔ＃１〜５と記載している）に共用される領域として扱う。すなわち、図１に示した従来の管理方法とは異なり、バンクメモリ２を各ＳＤＩ入出力ポート１に専用の領域には分割しない。
【００３４】
また、領域管理では、図６に示すように、バンクメモリ２の全領域を、それぞれ一種類ずつのエッセンス（ビデオデータ，オーディオデータのうちの一種類ずつ）を保持するための複数のバンク２ａに区切る。なお、各バンク２ａのサイズは、例えば６Ｍバイトというような一定のサイズである。バンクメモリ２の容量が２Ｇバイトであるとすると、バンク２ａの数は３４１となり、各バンク２ａに、バンクメモリ２内での配列位置を示す番号であるインデックスが付与される。
【００３５】
そして、領域管理では、各バンク２ａを、図７に示すようなバンク管理情報で管理する。このバンク管理情報において、Clip IDは、当該バンク２ａを使用しているクリップの識別情報である。
Bank State(Prev)は、当該バンク２ａの１つ前の状態（一度も使用されていない状態か、確保された状態か、解放された状態かのいずれか）である。
Bank State(Curr)は、当該バンク２ａの現在の状態である。
【００３６】
Essence Typeは、当該バンク２ａで保持しているエッセンスの種別（ビデオデータ，オーディオデータのいずれであるか）である。
EOF Flagは、当該バンク２ａに保持しているビデオファイルやオーディオファイルにファイルの終端（ＥＯＦ）が含まれているかを示す情報である。
【００３７】
Ref Counterは、当該バンク２ａを現在使用しているＳＤＩ入出力ポート１の数を示すカウンターである。どのＳＤＩ入出力ポート１も当該バンク２ａを使用していないときには、このRef Counterの値は０にされる。そして、上記（ｂ）のバンクメモリ２の確保制御によって１つのＳＤＩ入出力ポート１が当該バンク２ａを確保する毎にこのＣｏｕｎｔの値が１ずつカウントアップされ、上記（ｃ）のバンクメモリ２の解放制御によって１つのＳＤＩ入出力ポート１が当該バンク２ａを解放する毎にこのＣｏｕｎｔの値が１ずつカウントダウンされる（確保制御，解放制御については後で図９〜図１２を用いて説明する）。
File Addressは、当該バンク２ａに保持しているビデオファイルやオーディオファイルの先頭（ＳＯＦ）からのアドレスである。
TOP Frameは、当該バンク２ａに保持しているビデオファイルやオーディオファイルの先頭フレームの番号である。
Frame Numは、当該バンク２ａに保持しているビデオファイルやオーディオファイルのフレーム数である。
Bank Valid Bitmapは、当該バンク２ａ内の各ページの有効（読み出しまたは書き込み済）／無効を示すビットマップである。１ページは、フラッシュメモリ４（図２）での記録再生単位となるバイト数である。
ClipHandle Link Bitmapは、確保状態のClipHandleを示すビットマップである。ClipHandleは、ファイル入出力におけるファイルハンドルに相当する概念であり、例えば同一のクリップ（Clip IDが同じクリップ）をシームレスに連続再生する際に現在再生中のクリップを区別するために用いられる。
Bank Link Listは、ビデオデータをマスターエッセンスとして、バンクメモリ２のバンク２ａのうちビデオデータを保持したバンク２ａとそのビデオデータに同期したフレームのオーディオデータを保持したバンク２ａとの関連付けを示すリンク情報である。各バンク２ａについてのBank Link Listは、当該バンク２ａと関連付けられたバンク２ａのインデックスで構成される。（このリンク情報の作成・更新については、後で図１５及び図１６を用いて説明する。）
【００３８】
なお、Essence Typeや EOF Flag やFile AddressやTOP FrameやFrame Numといった情報は、いずれかのＳＤＩ入出力ポート１によって当該バンク２ａが確保されてビデオファイルやオーディオファイルが保持されることによって作成されるが、その後当該バンク２ａが解放されることによってRef Counterの値が０になっても（すなわち当該バンク２ａがどのＳＤＩ入出力ポート１にも使用されなくなっても）、それらの情報はそのまま残される。これは、後で図１１及び図１２を用いて説明する再生時の処理において、使用されていないバンク２ａも検索対象にしてそこに保持されているデータを利用できるようにするためである。
【００３９】
上記（ｄ）のバンクメモリ２の使用履歴の管理では、各バンク２ａについてのバンク管理情報に基づき、各バンク２ａの使用履歴の情報を作成する。この使用履歴の情報では、全てのバンク２ａが、使用時期の順番に登録される。すなわち、図８に示すように、現在使用されていない（バンク管理情報中のRef Counterの値が０である）バンク２ａは、使用されていた時期（Ref Counterの値が１以上であった時期）が古い順に登録される。また、新たに確保されることによってビットマップ中のRef Counterの値がカウントアップされたバンク２ａは、最も使用時期の新しいバンク２ａとして登録するように、使用履歴の情報が更新される。
【００４０】
次に、ＡＶデータの記録時におけるバンクメモリマネージャーＢＭＭの処理について説明する。いずれかのＳＤＩ入出力ポート１を指定した記録コマンドがＦＰＧＡ９で受信されると、プログラムＣＭＤ（図３）の処理によってそのコマンドが解釈されて、プログラムＶＤＣ（図３）にコマンドが送られる。
【００４１】
プログラムＶＤＣは、そのＳＤＩ入出力ポート１に入力したＳＤＩ規格のシリアルデジタル信号を、パラレル形式のＡＶデータに変換させた後エンコードさせて、バンクメモリコントローラ３に供給させる。
【００４２】
また、プログラムＶＤＣは、このコマンドに基づき、ＳＤＩ入出力ポート１でＡＶデータがエンコードされる前に、ＡＶデータを保持するためのバンクメモリ２の領域の確保要求をバンクメモリマネージャーＢＭＭに送る。
【００４３】
図９は、この確保要求に基づくバンクメモリマネージャーＢＭＭの処理を示すフローチャートである。また図１０は、記録時のプログラムＶＤＣ・バンクメモリマネージャーＢＭＭ・ファイルマネージャーＦＭ間の通信内容を経時的に示す図である。
【００４４】
プログラムＶＤＣは、バンクメモリ２の領域の確保要求を、下記のようなパラメータと一緒に、バンクメモリマネージャーＢＭＭに送る（図１０のｔ１）。
・ＳＤＩ入出力ポート１のポート番号
・ClipHandle
・ビデオデータ用に確保すべきバンク２ａの数であるVideo Bank数
・オーディオデータ用に確保すべきバンク２ａの数であるAudio Bank数
【００４５】
バンクメモリマネージャーＢＭＭは、この確保要求を受け取ると（図９のステップＳ１）、使用履歴の情報（図８）を参照して、バンクメモリ２の各バンク２ａのうち、現在使用されていないバンク２ａを検索する（図９のステップＳ２）。
【００４６】
続いて、みつかったバンク２ａの中から、使用されていた時期が古い順に、Video Bank数とAudio Bank数との合計数分のバンク２ａを確保する。但し、使用されていないバンク２ａであっても、オーディオデータが保持されているバンク２ａ（図７のEssence Typeがオーディオであるバンク２ａ）については、図７のBank Link List（リンク情報）によって関連付けられているバンク２ａが存在している場合は確保の対象とせず、Bank Link Listによって関連付けられているバンク２ａの数がゼロであることを条件として確保する（図９のステップＳ３）。
【００４７】
このステップＳ３で使用時期が古い順に確保するのは、最近使用されたばかりのバンク２ａがすぐに他のデータの記録のために使用されないようにすることにより、後で図１１及び図１２を用いて説明する再生時の処理において、そこに保持されているデータを利用できる機会を増やして、追っかけ再生の応答性や、フォワード／リバース再生を繰り返した際の応答性を良くするためである。
【００４８】
すなわち、例えば全ＳＤＩ入出力ポート１のうち、或る１つのポート（Ｐｏｒｔ＃１とする）で或るデータＡの記録を行い、別の１つのポート（Ｐｏｒｔ＃２とする）でそのデータＡの追っかけ再生を行い、さらに別の１つのポート（Ｐｏｒｔ＃３とする）で別のデータＢの記録を行うような場合を考えることにする。その場合、Ｐｏｒｔ＃１がデータＡの記録のために使用していたバンク２ａが、記録が完了することによって使用されなくなった後すぐにＰｏｒｔ＃３でのデータＢの記録のために使用されてしまうと、そのバンク２ａに保持されていたデータＡをＰｏｒｔ＃２でのデータＡの追っかけ再生のために利用できなくなる。そこで、そうした事態をさけるため、ステップＳ３では使用時期が古い順に確保するようにしている。
【００４９】
図９に示すように、ステップＳ３に続いて、確保した各バンク２ａについてのバンク管理情報中のRef Counterの値を１つカウントアップする。また、ビデオデータが保持されているバンク２ａを確保した場合には、そのバンク２ａについてのバンク管理情報中のBank Link Listからオーディオバンクのインデックスを削除するとともに、そのオーディオバンクのバンク管理情報中のBank Link Listからそのビデオバンクのインデックスを削除する（図９のステップＳ４）。そして、確保した各バンク２ａを最も使用時期の新しいバンク２ａとして登録するように使用履歴の情報を更新する（図９のステップＳ５）。
【００５０】
そして、確保要求に対する応答として、ビデオデータ用に確保したバンク２ａ（以下ビデオバンクとも呼ぶ）のインデックスと、オーディオデータ用に確保したバンク２ａ（以下オーディオとも呼ぶ）のインデックスとをプログラムＶＤＣに通知する（図９のステップＳ６、図１０のｔ２）。
【００５１】
プログラムＶＤＣは、バンクメモリコントローラ３を制御して、バンクメモリ２の各バンク２ａのうち、確保されたビデオバンクに、ＳＤＩ入出力ポート１でエンコードされたビデオデータを毎フレーム書き込ませるとともに、確保されたオーディオバンクに、ＳＤＩ入出力ポート１でエンコードされたオーディオデータを毎フレーム書き込ませる。なお、オーディオデータはビデオデータよりも１フレームあたりのデータ量が少ないので、１つのオーディオバンクには、複数のビデオバンク内のビデオデータに同期したフレームのオーディオデータを書き込ませる。
【００５２】
また、プログラムＶＤＣは、１フレーム分のデータがバンク２ａに書き込まれる毎に、バンク２ａに１フレーム分のデータを書き込んだ旨の通知をバンクメモリマネージャーＢＭＭに送る（図１０のｔ３）。
【００５３】
バンクメモリマネージャーＢＭＭは、毎フレームこの通知を受け取る毎に（図９のステップＳ７）、書き込みが行われたバンク２ａについてのバンク管理情報を作成・更新して（図８のステップＳ８）、プログラムＶＤＣに応答を返す（図９のステップＳ９、図１０のｔ４）。
図１５（ａ）及び（ｂ），図１６（ａ）及び（ｂ）は、バンク管理情報のうちのBank Link List（リンク情報）の作成・更新の様子を例示する図である。
このうち図１５は、ビデオデータを書き込んでいるビデオバンク（Current Bank）が次のビデオバンク（Next Video Bank）に移るときのBank Link Listの作成・更新の様子を例示している。
インデックス＝１のビデオバンクに書き込まれたビデオデータと同期したフレームのオーディオデータがインデックス＝４のオーディオバンクに書き込まれ、インデックス＝２のビデオバンクに書き込まれたビデオデータと同期したフレームのオーディオデータがインデックス＝４のオーディオバンク及びインデックス＝５のオーディオバンクに書き込まれている。この段階で、インデックス＝１のビデオバンクのBank Link Listは４となり、インデックス＝２のビデオバンクのBank Link Listは４及び５となり、インデックス＝４のオーディオバンクのBank Link Listは１及び２となり、インデックス＝５のオーディオバンクのBank Link Listは２となっている。
この段階からCurrent Bankが次のビデオバンクに移るとき、図１５（ａ），（ｂ）に丸付数字１で示すように、Current BankのBank Link Listの末尾のインデックスである５を取得する。
続いて、図１５（ａ），（ｂ）に丸付数字２で示すように、取得したインデックス＝５のオーディオバンクへのリンクの追加の必要性の有無をチェックする。図１５（ｂ）のように、Current Bank，インデックス＝５のオーディオバンクのどちらもバンクの切れ目でフレームが終わる場合は、リンクを追加しない。そうでない場合は、図１５（ａ）に丸付数字３で示すように、インデックス＝５のオーディオバンクのBank Link Listに、次のビデオバンクのインデックスである３を追加する。また、それに対応して、図１５（ａ）に丸付数字４で示すように、次のビデオバンクであるインデックス＝３のビデオバンクのBank Link Listにインデックス５を追加する。
図１６は、オーディオデータを書き込んでいるオーディオバンク（Current Bank）が次のオーディオバンク（Next Audio Bank）に移るときのBank Link Listの作成・更新の様子を例示している。
インデックス＝１のビデオバンクに書き込まれたビデオデータと同期したフレームのオーディオデータと、インデックス＝２のビデオバンクに書き込まれたビデオデータと同期したフレームのオーディオデータとが、インデックス＝４のオーディオバンクに書き込まれている。この段階で、インデックス＝１のビデオバンクのBank Link Listは４となり、インデックス＝２のビデオバンクのBank Link Listは４となり、インデックス＝４のオーディオバンクのBank Link Listは１及び２となっている。
この段階からCurrent Bankが次のオーディオバンクに移るとき、図１６（ａ），（ｂ）に丸付数字１で示すように、Current BankのBank Link Listの末尾のインデックスである２を取得する。
続いて、図１６（ａ），（ｂ）に丸付数字２で示すように、取得したインデックス＝２のビデオバンクへのリンクの追加の必要性の有無をチェックする。
図１６（ｂ）のように、Current Bank，インデックス＝２のビデオバンクのどちらもバンクの切れ目でフレームが終わる場合は、リンクを追加しない。そうでない場合は、図１６（ａ）に丸付数字３で示すように、インデックス＝２のビデオバンクのBank Link Listに、次のオーディオバンクのインデックスである５を追加する。また、それに対応して、図１６（ａ）に丸付数字４で示すように、次のオーディオバンクであるインデックス＝５のオーディオバンクのBank Link Listにインデックス２を追加する。
【００５４】
図１０に示すように、その後、１つのバンク２ａに一定データ量（例えばバンク２ａのサイズの６分の５程度）のデータが溜まると、プログラムＶＤＣは、フラッシュメモリ４への記録要求をバンクメモリマネージャーＢＭＭに送る（図１０のｔ５）。
【００５５】
バンクメモリマネージャーＢＭＭは、この記録要求を受け取ると（図９のステップＳ１０）、バンクメモリコントローラ３を制御して、当該バンク２ａからデータを全て読み出してＦＰＧＡ６に供給させる（図９のステップＳ１１）。また、ファイルマネージャーＦＭ（図３，図４）にこの記録要求を転送する（図９のステップＳ１２、図１０のｔ６）。
【００５６】
ファイルマネージャーＦＭは、この記録要求を受け取ると、ファイルシステムＭＭＦＳ（図３，図４）に対してデータの記録を要求する。
【００５７】
この要求に基づき、ファイルシステムＭＳＦＳ，メインストレージマネージャーＭＳＭ及びメインストレージコントローラＭＳの処理により、ＦＰＧＡ６に供給されたデータがフラッシュメモリ４に記録される。
【００５８】
そして、フラッシュメモリ４または光ディスクドライブ５への記録が終了すると、ファイルマネージャーＦＭは、記録要求に対する応答として、記録されたデータ量をバンクメモリマネージャーＢＭＭに通知する（図１０のｔ７）。
【００５９】
バンクメモリマネージャーＢＭＭは、ファイルマネージャーＦＭからこの通知を受け取ると（図９のステップＳ１３）、記録要求に対する応答として、ファイルマネージャーＦＭから通知されたデータ量をプログラムＶＤＣに通知する（図９のステップＳ１４，図１０のｔ８）。
【００６０】
プログラムＶＤＣは、ビデオバンクについての記録終了の通知があり、ビデオバンクに貯まったデータのフラッシュメモリ４への記録が完了していると、そのビデオバンクの解放要求をバンクメモリマネージャーＢＭＭに送る（図１０のｔ９）。
【００６１】
バンクメモリマネージャーＢＭＭは、この解放要求を受け取ると（図９のステップＳ１５）、そのビデオバンクについてのバンク管理情報中のEssence Typeや EOF Flag やFile AddressやTOP FrameやFrame Numといった情報を残したまま、そのバンク管理情報中のRef Counterを１だけカウントダウンする。また、そのビデオバンクについてのバンク管理情報中のBank Link List（リンク情報）によってそのビデオバンクに関連付けられているオーディオバンクのバンク管理情報中のRef Counterを１だけカウントダウンする（図９のステップＳ１６）。そして、そのビデオバンクについての解放が完了したことをプログラムＶＤＣに通知する（図９のステップＳ１７，図１０のｔ１０）。
【００６２】
なお、フラッシュメモリ４への記録が失敗した場合にはプログラムＶＤＣが記録のリトライを要求する場合もあるので、プログラムＶＤＣから解放要求があるまではバンクメモリマネージャーＢＭＭはバンク２ａを解放しない。
【００６３】
そして、確保した全てのバンク２ａについて図９のステップＳ７〜Ｓ１７の処理が済む（図９のステップＳ１８）と、図９の処理を終了する。
【００６４】
次に、クリップの再生時におけるバンクメモリマネージャーＢＭＭの処理について説明する。いずれかのＳＤＩ入出力ポート１を指定した再生コマンドがＦＰＧＡ９で受信されると、プログラムＣＭＤ（図３）の処理によってそのコマンドが解釈されて、
プログラムＶＤＣ（図３）にコマンドが送られる。
【００６５】
プログラムＶＤＣは、このコマンドに基づき、クリップの再生要求をバンクメモリマネージャーＢＭＭに送る。図１１は、この再生要求に基づくバンクメモリマネージャーＢＭＭの処理を示すフローチャートである。また図１２は、再生時のプログラムＶＤＣ・バンクメモリマネージャーＢＭＭ・ファイルマネージャーＦＭ間の通信内容を経時的に示す図である。
【００６６】
プログラムＶＤＣは、ＡＶデータの再生要求を、下記のようなパラメータと一緒に、バンクメモリマネージャーＢＭＭに送る（図１２のｔ１１）。
・ＳＤＩ入出力ポート１のポート番号
・ClipHandle
・再生するビデオファイルのFile Address
・再生するビデオファイルのページ数
・再生するオーディオファイルのページ数
・再生する先頭のビデオバンクの先頭のフレーム番号
・再生する先頭のビデオバンクのフレーム数
・再生する次のビデオバンクのフレーム数
【００６７】
なお、先頭のビデオバンクの先頭のフレーム番号がページの境界に跨る場合は、そのページの境界のフレーム番号となる。
【００６８】
バンクメモリマネージャーＢＭＭは、この再生要求を受け取ると（図１１のステップＳ２１）、再生要求と一緒に受け取ったビデオに関するパラメータと、バンクメモリ２の各バンク２ａ（Ref Counterの値が０のバンク２ａを含む）について作成されているバンク管理情報（図７）とを照合することにより、再生要求されたビデオファイルと一致するビデオファイルを保持しているビデオバンクを検索する（図１１のステップＳ２２）。
【００６９】
ステップＳ２２に続き、検索がヒットしたか（一致するビデオバンクがみつかったか）否かを判断する（図１１のステップＳ２３）。イエスであれば、ヒットしたビデオバンクを確保するとともに、それらのビデオバンクについてのバンク管理情報中のBank Link List（リンク情報）によって関連付けられているオーディオバンクを確保する（図１１のステップＳ２４）。そして、確保した各バンク２ａについてのバンク管理情報中のRef Counterの値を１つカウントアップし（図１１のステップＳ２５）、確保した各バンク２ａを最も使用時期の新しいバンク２ａとして登録するように使用履歴の情報を更新する（図１１のステップＳ２６）。
【００７０】
そして、再生要求に対する応答として、確保したビデオバンク，オーディオバンクのインデックスをプログラムＶＤＣに通知する（図１１のステップＳ２７、図１２のｔ１２）。
【００７１】
ステップＳ２３でノーであった場合には、使用履歴の情報（図８）を参照して、バンクメモリ２の各バンク２ａのうち、現在使用されていないバンク２ａを検索する（図１１のステップＳ２８）。そして、みつかったバンク２ａの中から、使用されていた時期が古い順に、再生要求されたページ数分のビデオバンク，オーディオバンクを確保する。但し、使用されていないバンク２ａであっても、オーディオデータが保持されているバンク２ａ（図７のEssence Typeがオーディオであるバンク２ａ）については、図７のBank Link List（リンク情報）によって関連付けられているバンク２ａが存在している場合は確保の対象とせず、Bank Link Listによって関連付けられているバンク２ａの数がゼロであることを条件として確保する。（図１１のステップＳ２９）。
【００７２】
そして、確保した各バンク２ａについてのバンク管理情報中のRef Counterの値を１つカウントアップする。また、ビデオデータが保持されているバンク２ａを確保した場合には、そのバンク２ａについてのバンク管理情報中のBank Link Listからオーディオバンクのインデックスを削除するとともに、そのオーディオバンクのバンク管理情報中のBank Link Listからそのビデオバンクのインデックスを削除する。具体例を挙げると、例えば図１５に示したインデックス＝１のビデオバンクを確保した場合には、インデックス＝１のビデオバンクのBank Link Listから４を削除するとともに、インデックス＝４のオーディオバンクのBank Link Listから１を削除する（図１１のステップＳ３０）。そして、確保した各バンク２ａを最も使用時期の新しいバンク２ａとして登録するように使用履歴の情報を更新する（図１１のステップＳ３１）。
【００７３】
続いて、プログラムＶＤＣからの再生要求をファイルマネージャーＦＭ（図３，図４）に転送する（図１１のステップＳ３２、図１２のｔ１３）。
【００７４】
ファイルマネージャーＦＭは、この再生要求が転送されると、ファイルシステムＭＭＦＳ（図３，図４）に対してデータの再生を要求する。
【００７５】
この要求に基づき、ファイルシステムＭｓＦＳ，メインストレージマネージャーＭＳＭ及びメインストレージコントローラＭＳの処理により、フラッシュメモリ４からデータが再生されてバンクメモリコントローラ３に供給される。
【００７６】
そして、フラッシュメモリ４または光ディスクドライブ５からの再生が終了すると、ファイルマネージャーＦＭは、再生要求に対する応答として、再生したデータ量をバンクメモリマネージャーＢＭＭに通知する（図１２のｔ１４）。
【００７７】
バンクメモリマネージャーＢＭＭは、ファイルマネージャーＦＭからこの通知を受け取ると、（図１１のステップＳ３３）、バンクメモリコントローラ３を制御して、確保したビデオバンク，オーディオバンクにそれぞれビデオデータ，オーディオデータを書き込ませる（図１１のステップＳ３４）。そして、書き込みを行ったバンク２ａについてのバンク管理情報（図７）を作成して（図８のステップＳ３５）、図１１のステップＳ２７、図１２のｔ１２に進む。
【００７８】
プログラムＶＤＣは、図１１のステップＳ２７、図１２のｔ１２の通知があると、バンクメモリコントローラ３を制御して、確保されたバンク２ａからデータを読み出させてＳＤＩ入出力ポート１に供給させる。
【００７９】
そして、再生要求したページ数分のデータが読み出されると、プログラムＶＤＣは、そのビデオバンクの解放要求をバンクメモリマネージャーＢＭＭに送る（図１２のｔ１５）。
【００８０】
バンクメモリマネージャーＢＭＭは、この解放要求があると（図１１のＳ３６）、図９に示した記録時のステップＳ１６及びＳ１７と同じ処理を行う（図１１のＳ３７及びＳ３８、図１２のｔ１６）。
【００８１】
そして、確保した全てのバンク２ａについて図１１のステップＳ３６〜Ｓ３８の処理が済む（図１１のステップＳ３９）と、図１１の処理を終了する。
【００８２】
図１３は、図９及び図１１に示した処理の過程でビデオバンクとして確保した各バンク２ａについてのバンク管理情報中のRef Counterのイメージを、全ＳＤＩ入出力ポート１のうちの３つのポート（Ｐｏｒｔ＃１〜３と記載している）についてのプログラムＶＤＣによるバンク２ａのリンク（バンク管理情報中のBank Link Listとは別概念の、ビデオバンク同士のリンクである）のイメージとともに例示する図である。
【００８３】
この図１３では、Ｐｏｒｔ＃１で或るビデオデータＡの記録を行い、Ｐｏｒｔ＃２でインデックス＝０〜２のバンク２ａを使用して別のビデオデータＣをフォワード再生した後ビデオデータＡの追っかけ再生を開始し、Ｐｏｒｔ＃３で別のビデオデータＢの記録を行う場合を例にとっている。
【００８４】
プログラムＶＤＣは、ＳＤＩ入出力ポート１で使用している複数のバンク２ａを、現在の書き込みまたは読み出しを行っているバンク２ａの位置を中心とした所定バイト数分だけリンクさせて管理する。
【００８５】
ここでは、プログラムＶＤＣは、インデックス＝６のバンク２ａと、インデックス＝７のバンク２ａとを、Ｐｏｒｔ＃１で使用されているバンク２ａとしてリンクさせている。
【００８６】
またプログラムＶＤＣは、データＡの追っかけ再生の開始時には、インデックス＝１のバンク２ａと、インデックス＝２のバンク２ａと、インデックス＝６のバンク２ａとを、Ｐｏｒｔ＃２で使用されているバンク２ａとしてリンクさせている。（図示は省略するが、データＣのフォワード再生時には、インデックス＝０〜２のバンク２ａがリンクされており、データＡの追っかけ再生の開始時に、インデックス＝０のバンク２ａがリンクから外され、インデックス＝６のバンク２ａが新たにリンクされている。）
【００８７】
またプログラムＶＤＣは、インデックス＝８のバンク２ａと、インデックス＝９のバンク２ａとを、Ｐｏｒｔ＃３で使用されているバンク２ａとしてリンクさせている。
【００８８】
Ｐｏｒｔ＃１でのみ使用されているインデックス＝７のバンク２ａと、Ｐｏｒｔ＃２でのみ使用されているインデックス＝１，２のバンク２ａと、Ｐｏｒｔ＃３でのみ使用されているインデックス＝８，９のバンク２ａでは、バンク管理情報中のRef Counterの値は１になっている。
【００８９】
Ｐｏｒｔ＃１とＰｏｒｔ＃２との両方で使用されているインデックス＝６のバンク２ａでは、バンク管理情報中のRef Counterの値は２になっている。このインデックス＝６のバンク２ａに溜まったデータのフラッシュメモリ４への記録が完了し、プログラムＶＤＣの解放要求によってこのインデックス＝６のバンク２ａが解放されても、バンク管理情報中のRef Counterの値は１になるので、このインデックス＝６のバンク２ａは使用されていない状態にはならない（Ｐｏｒｔ＃２に使用されている状態にある）。
【００９０】
残りのバンク２ａは、いずれのＳＤＩ入出力ポート１でも使用されていないので、バンク管理情報中のRef Counterの値が０になっている。
【００９１】
使用されていないバンク２ａには、使用時に保持されたビデオデータが残っているので、そのデータを再生のために利用することができる。例えば、Ｐｏｒｔ＃２で、データＡの追っかけ再生の後、データＣのリバース再生を行おうとする場合、リンクから外されたインデックス＝０のバンク２ａにデータが残っているので、フラッシュメモリ４にアクセスすることなく、直ちにインデックス＝２，１，０のバンク２ａを順に使用して（プログラムＶＤＣが、インデックス＝６のバンク２ａをリンクから外し、インデックス＝０のバンク２ａを新たにリンクして）リバース再生を行うことができる。
【００９２】
図１４は、図９及び図１１に示した処理による、バンクメモリ２を利用したビデオデータの追っかけ再生の様子を例示する図である。なお、この図１４では、各バンク２ａのサイズを６０ページとしている。
【００９３】
図１４（ａ）には、図９の処理による記録の様子を経時的に４段階に分けて示している。この図１４（ａ）の１段階目は、まだビデオバンクが確保されていない状態を示している。
【００９４】
図１４（ａ）の２段階目は、Ref Counterの値が０の２つのバンク２ａ（但し、ビデオデータデータが保持されているバンク２ａ）をビデオバンクとして確保した直後の状態を示しており、確保した１つ目のバンク２ａ（確保した２つのバンク２ａのうち図の左側のほうのバンク２ａ）に１フレーム目（１ページ目）からのビデオデータが書き込まれ始めている。
【００９５】
図１４（ａ）の３段階目は、この１つ目のバンク２ａに溜まった約３０フレーム分（５０ページ分）のビデオデータのフラッシュメモリ４への記録が完了してこのバンク２ａが解放された直後の状態を示しており、確保した２つ目のバンク２ａに約３１フレーム目（５１ページ目）からのビデオデータが書き込まれ始めている。
【００９６】
図１４（ａ）の４段階目は、３段階目から約１５フレーム分の時間が経過したタイミングでの状態を示しており、確保した２つ目のバンク２ａに約１５フレーム分（３０ページ分）のビデオデータが書き込まれているが、このビデオデータはまだフラッシュメモリ４には記録されていない。
【００９７】
図１４（ｂ）には、図１４（ａ）の４段階目と同じタイミングでの、図１１の処理による、約２５フレーム目（４０ページ目）から４０フレーム目（６５ページ目）までのビデオデータの追っかけ再生の様子を示している。
【００９８】
記録のために使用されていた１つ目のバンク２ａが再び確保され、このバンク２ａに残っている約３０フレーム分（５０ページ分）のビデオデータのうち、約２５フレーム目（４０ページ目）から３０フレーム目（５０ページ目）までのビデオデータが読み出される。
【００９９】
また、現在記録のために使用されている２つ目のバンク２ａも確保され、このバンク２ａに保持されている約１５フレーム分（３０ページ分）のビデオデータ（フラッシュメモリ４には未記録のデータ）のうち、先頭から約１０フレーム分（１５ページ分）のビデオデータ、すなわち１つめ目のバンク２ａから通算して約３１フレーム目（５１ページ目）から４０フレーム目（６５ページ目）までのビデオデータが読み出される。
【０１００】
この図１４に例示したように、このＡＶサーバーでは、フラッシュメモリ４にアクセスすることなく（すなわち、タイムスロット管理によるフラッシュメモリ４へのアクセスの待ち時間等に影響されることなく）、バンクメモリ２をいわばキャッシュメモリとして利用して迅速に追っかけ再生を行えるケースが多くなる。これにより、追っかけ再生の応答性を向上させることができる。
【０１０１】
また、クリップを構成する２つのエッセンスであるビデオデータ，オーディオデータのうちのビデオデータをマスターエッセンスとして、バンクメモリ２のバンク２ａのうちビデオデータを保持したビデオバンクとオーディオデータを保持したオーディオバンクとの関連付けを示すBank Link List（リンク情報）を作成し、再生時には、ビデオバンクのみについて検索を行い、オーディオバンクのほうはBank Link Listを利用して確保している（図１１のステップＳ２１〜Ｓ２５）。したがって、クリップを構成するビデオデータとオーディオデータとを別々のファイルとして記録する場合でも、各種別のエッセンス毎にバンクメモリ２に存在するか否かの検索を行う必要がないので、検索処理を簡素化することができる。
【０１０２】
また、オーディオバンクは、使用されていない（バンク管理情報中のRef Counterの値が０になっている）場合でも、Bank Link Listによって関連付けられているビデオバンクが存在している場合は新たなデータの記録のための確保の対象とならず、Bank Link Listによって関連付けられているビデオバンクの数がゼロになった（関連付けられている全てのビデオバンクが、解放されて新たなデータの記録のための確保された）ことを条件として新たなデータの記録のため確保の対象となる（図９のステップＳ３、図１１のステップＳ２９）。換言すれば、オーディオバンクは、Bank Link Listによって関連付けられている全てのビデオバンクが解放されて新たなデータの記録のために確保されるまでは、解放されない。これにより、バンクメモリ２に或るフレームのビデオデータが残っていれば、必ずそのビデオデータと同期したオーディオデータがバンクメモリ２に残っていることが保障されるので、クリップを構成するビデオデータとオーディオデータとを別々のファイルとして記録する場合でも、バンクメモリ２をキャッシュメモリとして利用してクリップ全体を追っかけ再生することができる。
【０１０３】
また、図１３のＰｏｒｔ＃２について説明したように、フォワード再生を行った後にリバース再生を行う際にも、リンクから外したバンク２ａにデータが残っている可能性が高いので、フラッシュメモリ４にアクセスすることなく、バンクメモリ２をキャッシュメモリとして利用して迅速にリバース再生を行えるケースが多くなる。これにより、フォワード／リバース再生を繰り返す際の応答性も向上させることができる。
【０１０４】
また、このようにバンクメモリ２をキャッシュメモリとして利用することにより、フラッシュメモリ４へのアクセス回数が抑えられるので、メインストレージマネージャーＭＳＭ（図３，図４）が管理しているタイムスロットの空きの数がその分増えることになる。このことは、フラッシュメモリ４にアクセスして記録や通常の再生を行う際の応答性の向上にもつながる。
【０１０５】
また、バンクメモリマネージャーＢＭＭの機能は、通常動作時に追っかけ再生やフォワード／リバース再生を行うだけでなく、ＡＶサーバーの診断時にバンクメモリ２で折り返しデバッグを行うためにも用いることができる。従来のＡＶサーバーでは、バンクメモリでの折り返しデバッグを行うために専用のプログラムを設けていたが、そうした専用のプログラムを設ける必要がなくなることになる。
【０１０６】
なお、以上の例では、クリップを構成する２つのエッセンスであるビデオデータとオーディオデータとを別々のファイルとして記録する場合に本発明を適用している。しかし、これに限らず、クリップを構成する３つ以上のエッセンス（ビデオデータ及びオーディオデータ以外に、編集作業用の低解像度のビデオデータや、さらにはリアルタイムメタデータ）を別々のファイルとして記録する場合にも、例えばビデオデータをマスターエッセンスとしてビデオデータと残りのエッセンスとの関連付けを示すリンク情報を作成し、図９〜図１２に示したような処理を実行すれば、やはりバンクメモリ２をキャッシュメモリとして利用してクリップ全体を追っかけ再生することが可能になる。
【０１０７】
また、以上の例では、メインストレージとしてフラッシュメモリを設けるとともに編集機能を有するＡＶサーバーに本発明を適用しているが、本発明は、フラッシュメモリ以外のメインストレージ（例えばハードディスクドライブ等）を設けたＡＶサーバーや、編集機能を有しないＡＶサーバーや、テレビジョン放送用のノンリニア編集機にも適用することができる。さらに、本発明は、テレビジョン放送用のＡＶサーバーやノンリニア編集機に限らず、２以上の入出力ポートからノンリニア記録媒体にアクセスしてビデオデータを記録再生するあらゆる記録再生装置に適用することができる。
【図面の簡単な説明】
【０１０８】
【図１】従来のＡＶサーバー等におけるＡＶデータ一時保持用のメモリの管理の様子を示す図である。
【図２】本発明を適用したＡＶサーバーの全体構成例を示す図である。
【図３】図２のＣＰＵ７，ＣＰＵ８，ＦＰＧＡ６内に格納されているプログラムのモジュール構造を示す図である。
【図４】バンクメモリマネージャーと他のモジュールとの関係を示す図である。
【図５】バンクメモリマネージャーによるバンクメモリの管理の様子を示す図である。
【図６】バンクメモリ内のバンクを示す図である。
【図７】バンク管理情報を示す図である。
【図８】バンクメモリの各バンクの使用履歴の情報を示す図である。
【図９】記録時のバンクメモリマネージャーの処理を示すフローチャートである。
【図１０】記録時のプログラムＶＤＣ・バンクメモリマネージャー・ファイルマネージャー間の通信内容を示す図である。
【図１１】再生時のバンクメモリマネージャーの処理を示すフローチャートである。
【図１２】再生時のプログラムＶＤＣ・バンクメモリマネージャー・ファイルマネージャー間の通信内容を示す図である。
【図１３】バンクメモリの各バンクのRef Counter及びプログラムＶＤＣによるバンクのリンクのイメージを示す図である。
【図１４】バンクメモリを利用した追っかけ再生の様子を例示する図である。
【図１５】リンク情報の作成・更新の様子を例示する図である。
【図１６】リンク情報の作成・更新の様子を例示する図である。
【符号の説明】
【０１０９】
１  ＳＤＩ入出力ポート、  ２  バンクメモリ、  ３  バンクメモリコントローラ、  ４  フラッシュメモリ、  ６  ＦＰＧＡ、  ７  ＣＰＵ、  ８  ＣＰＵ、  ９  ＦＰＧＡ、  １０  編集操作パネル
【図１】
0004930358.tif 000002
【図２】
0004930358.tif 000003
【図３】
0004930358.tif 000004
【図４】
0004930358.tif 000005
【図５】
0004930358.tif 000006
【図６】
0004930358.tif 000007
【図７】
0004930358.tif 000008
【図８】
0004930358.tif 000009
【図９】
0004930358.tif 000010
【図１０】
0004930358.tif 000011
【図１１】
0004930358.tif 000012
【図１２】
0004930358.tif 000013
【図１３】
0004930358.tif 000014
【図１４】
0004930358.tif 000015
【図１５】
0004930358.tif 000016
【図１６】
0004930358.tif 000017