(57)【特許請求の範囲】
【請求項１】
所定期間毎の目標ビットレートを達成するため当該所定期間内に出力すべきストリームデータに対応するマスタークロック信号のパルス数分のパルスを当該所定期間に出力するよう設定された可変クロック信号、及び当該可変クロック信号に同期して出力されるストリームデータを出力可能なエンコーダから入力した前記可変クロック信号及びストリームデータに基づいてデータ記録及び送信を行う方法であって、
前記エンコーダから所定の処理期間に出力される前記可変クロック信号のパルス数の合計を単位パルス数で除して算出された商を可変クロック信号関連情報として前記所定の処理期間毎に記録し、
前記所定の処理期間を計時しながら、前記記録した可変クロック信号関連情報に前記単位パルス数を乗じて算出されるパルス数の可変クロック信号を作成して前記所定の処理期間毎に送信すると共に、前記エンコーダから可変クロック信号と共に出力された前記ストリームデータを記録し、
当該記録したストリームデータを前記送信する可変クロック信号のパルスに対応させて送信することを特徴とするデータ記録送信方法。
【請求項２】
前記所定の処理期間における可変クロック信号のパルス数の合計を前記単位パルス数で除して余りが算出された場合、当該余りのパルス数を次の処理期間における可変クロック信号のパルス数に加算することを特徴とする請求項１に記載のデータ記録送信方法。
【請求項３】
前記エンコーダからの全出力期間を前記所定の処理期間に区切った場合に区切ることが可能な最後の処理期間の後に出力される可変クロック信号については、当該可変クロック信号のパルス数を直接記録することを特徴とする請求項１又は２に記載のデータ記録送信方法。
【請求項４】
前記所定の処理期間は、一定周期のクロック信号に基づき前記単位パルス数の整数倍のパルスを計時した期間とすることを特徴とする請求項１〜３のいずれかに記載のデータ記録送信方法。
【請求項５】
所定期間毎の目標ビットレートを達成するため当該所定期間内に出力すべきストリームデータに対応するマスタークロック信号のパルス数分のパルスを当該所定期間に出力するよう設定された可変クロック信号、及び当該可変クロック信号に同期して出力されるストリームデータを出力可能なエンコーダから入力した前記可変クロック信号及びストリームデータに基づいてデータ記録及び送信を行うデータ記録送信装置であって、
前記エンコーダから出力される前記ストリームデータを記録するストリームデータ記録手段と、
マスタークロック信号を作成するマスタークロック信号作成手段と、
該マスタークロック信号作成手段に基づいて所定の処理期間を計時する計時手段と、
前記エンコーダから出力される前記可変クロック信号のパルスを数え、その和が単位パルス数に等しくなる毎に等しくなったことを判断し、当該判断回数を計数する計数手段と、
前記計時手段による前記所定の処理期間の計時の終了時点で、前記計数手段によって計数された前記判断回数を記録して初期化する記録初期化手段と、
前記記録初期化手段によって記録された判断回数を読み出し、当該読み出した判断回数に前記単位パルス数を乗じてパルス数を算出するパルス数算出手段と、前記計時手段により計時される前記所定の処理期間に前記パルス数算出手段によって算出したパルス数の可変クロック信号を作成して送信する可変クロック信号送信手段と、
前記可変クロック信号送信手段によって送信される可変クロック信号のパルスに対応させて、前記ストリームデータ記録手段によって記録されたストリームデータを送信するストリームデータ送信手段と、
を備えたことを特徴とするデータ記録送信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルデータの記録・送信に関し、より詳細には、デジタル圧縮画像の可変ビットレートによるデータ記録・送信の技術に関する。
【０００２】
【従来の技術及び発明が解決しようとする課題】
従来、ＭＰＥＧ（Moving Picture Image Coding Experts Group ）に代表される画像圧縮方式で可変ビットレート（ＶＢＲ）符号化と呼ばれる手法がある。可変ビットレート符号化では、例えば、再生される画像データに対して、ある画像から次の画像への差分が大きい場合は高レートで、一方、差分が小さい場合は低レートで符号化する。これにより、画質を落とすことなく平均的なビットレートを下げることができ、結果として固定ビットレート（ＣＢＲ）符号化と呼ばれる手法に比べて高画質となる。
【０００３】
ところで、ＭＰＥＧに代表される画像圧縮方式は、一般的に蓄積系及び通信系の２つに応用される。もちろん、上述の可変ビットレート符号化の手法も主として蓄積系及び通信系の２つに応用されている。蓄積系への応用としては、例えばハードディスクやＣＤ−ＲＯＭ等の媒体に画像データを記録するということが考えられる。一方、通信系への応用としては、例えば、画像データを無線又は有線の送信路を介して送信し、送信先でリアルタイムにその画像データを再生するということが考えられる。
【０００４】
しかし、蓄積系への応用で、ハードディスク等に記録した画像データを再度通信系へ応用しようとした場合、後述の問題が生じる。この問題点を説明するために、まず可変ビットレート符号化が可能なエンコーダから出力される信号について説明する。
【０００５】
画像データを圧縮し、可変ビットレート符号化が可能なエンコーダでは、元の画像のタイムコードによりビットレートを変化させながら符号化を行う。このようなエンコーダから出力されるストリームデータは一定レートでないために、このストリームデータは出力タイミングの情報と共に出力される。この出力タイミングの情報としては、ストリームデータの有効期間を示す「ストローブ信号」が一般的に挙げられるが、「クロック信号」を利用することも考えられる。ここでいうクロック信号、すなわち出力タイミングを示すクロック信号は一般的にいわれる一定周期のクロック信号（マスタークロック信号）ではない。以下、この出力タイミングを示すクロック信号を通常のクロック信号（マスタークロック信号）と区別して「可変クロック信号」という。
【０００６】
可変クロック信号は、パルスの出力でストリームデータが有効となっていることを示すものである。ビットレートは有効なストリームデータの量に比例するのであるから、可変クロック信号のパルス数に比例することになる。つまり、可変クロック信号のパルス数を変化させることによってビットレートを変化させることができる。なお、パルスの数は一周期の方形波を１として数えるものとする。
【０００７】
可変クロック信号は、例えば次のようにして作成することができる。エンコーダでは、エンコーダの動作の基準となる一定周期のマスタークロック信号が作成され、それに基づいて符号化が行われる。ここで、ある期間であるビットレートを実現する場合、そのビットレートは有効なストリームデータの量に比例するのであるから、目的のビットレートとするための有効なストリームデータが、例えば上記一定周期のマスタークロック信号のいくつ分のパルスに対応するかを算出する。そして、その期間にその算出した数のパルスを出力するような信号を可変クロック信号として作成さればよい。もちろん、ストリームデータはこの可変クロック信号に対応させる。
【０００８】
例えば、図１５に示す期間Ａでは、目的のビットレートを実現するために、有効とすべきストリームデータがマスタークロック信号の２つのパルスに対応しているとする。このとき、図１５（ａ）や（ｂ）に示すように期間Ａで２つのパルスを出力する可変クロック信号を作成するのである。図１５（ａ）は、マスタークロック信号からパルスを間引きして作成した例である。図１５（ｂ）は、期間Ａに２つのパルスが出力されるように可変クロック信号の周期を変えた例である。このように、可変クロック信号のパルスは期間Ａ中のどのタイミングで出力してもよい。
【０００９】
本発明では、出力タイミングの情報として可変クロック信号を利用した上述のようなエンコーダ、すなわち可変クロック信号及びストリームデータを出力するエンコーダを前提としたものである。
図１２は、本発明で前提としているエンコーダからの出力例であって、一定周期のクロック信号を間引きして作成した可変クロック信号とその可変クロック信号に対応したストリームデータを示している。期間Ｔ１及び期間Ｔ２で可変クロック信号のパルスが出力されており、このパルスに対応してストリームデータが有効とされている。すなわち、可変クロック信号のパルスに対応して、可変クロック信号のパルス数のストリームデータが出力されることになる。
【００１０】
後述の問題点を説明するため、次に、蓄積系へ可変ビットレート符号化が応用される場合のエンコーダからの信号の記録方法を説明する。例えばハードディスクやＣＤ−ＲＯＭ等の媒体へエンコーダからの出力を記録することを考える。このとき、エンコーダから出力されるストリームデータのみが記録され、可変クロック信号は記録されない。その理由は、ストリームデータを解析することでビットレートの変化を認識できるためである。従って、可変ビットレートの変化を示す可変クロック信号を記録しなくてもよいのである。つまり、再生の際には、デコーダがストリームデータを解析し、そのストリームデータのビットレートの変化を認識し、適当なタイミングでＣＤ−ＲＯＭ等の媒体からストリームデータを読み出すのである。このように従来は、例えばハードディスクやＣＤ−ＲＯＭ等の媒体へエンコーダからの出力を記録する場合、ストリームデータのみが記録され、可変クロック信号は記録されなかった。
【００１１】
以下、ハードディスク等に記録した画像データを再度通信系へ応用した場合の問題点を説明する。例えば、媒体へ一旦記憶したストリームデータを送信して、送信先でリアルタイムに画像を再生するような場合を例に挙げる。この場合、送信先ではデコーダを用いて再生するのであるから、送信されたストリームデータのビットレートの変化は認識できる。しかし、送信元ではストリームデータの出力タイミングの情報である可変クロック信号が記録されていないため、ストリームデータの送信タイミングが分からない。このため、送信先でデコーダがストリームデータを読み出す際に、該当するストリームデータが送信先のバッファに送信されてきていないという状況が起こる可能性がある。逆に、送信先でデコーダが必要とするタイミング以上の速度でストリームデータが送信され、送信先のバッファが飽和してしまうという可能性もある。
【００１２】
このような問題点を解決する方法として次の２つの方法が考えられる。
第１番目の方法としては、送信元にもデコーダを設けることにより、ストリームデータ内部を解析し、ビットレートの変化を認識してストリームデータを送信する方法である。しかし、この方法によると、送信元の送信装置の構成が複雑になるという問題がある。
【００１３】
第２の方法としては、エンコーダから出力される可変クロック信号を記録するという方法である。しかし、可変クロック信号をそのまま記録しようとすると、膨大な記憶容量が必要となってしまうためあまり実用的ではなかった。
例えば、図１２に示したようなマスタークロック信号を間引きした可変クロック信号を記録する場合について説明する。このとき、図１３に示すように可変クロック信号のパルス出力期間を１、可変クロック信号のパルスが出力されない（パルスが間引きされた）期間を０として記録することを考える。この場合、ビットレートの変化を記録するために、可変クロック信号のパルスが出力されない期間も記録しなければならない。その結果、パルスを間引きする前の一定周期のクロック信号のパルス数に対応するビット数分の記憶容量が必要となってくる。
【００１４】
そこで、図１４に示すようにランレングス符号化をして記録することを考える。この方法では、０又は１の連続する長さを記録するのである。つまり、期間Ｔ５では０が長さ２続き、期間Ｔ１では１が長さ９続き、期間Ｔ６では０が長さ１１続き、期間Ｔ２では１が長さ５続き、期間Ｔ７では０が長さ５続くという具合いである。この方法によれば、例えば可変クロック信号の出力期間が２００ビット続く場合、そのまま記録すれば２００ビットの記憶容量が必要であるが、長さ２００を記録するため、８ビットの２進数（０〜２５５を表現できる）を利用すれば事足りることになる。ところが、この方法であっても、可変クロック信号のパルス出力期間とパルスの出力されない期間が交互に繰り返されるような場合には、必要な記憶容量が増大してしまう。
【００１５】
本発明は、上述の第２の方法を工夫するものであり、蓄積系への応用として記録したストリームデータを再度通信系へ利用することを目的とする。
【００１６】
【課題を解決するための手段及び発明の効果】
上述の目的を達成するためになされた請求項１に記載のデータ記録送信方法は、所定期間毎の目標ビットレートを達成するため当該所定期間内に出力すべきストリームデータに対応するマスタークロック信号のパルス数分のパルスを当該所定期間に出力するよう設定された可変クロック信号、及びその可変クロック信号に同期して出力されるストリームデータを出力可能なエンコーダから入力した可変クロック信号及びストリームデータに基づいてデータ記録及び送信を行う方法であって、エンコーダから所定の処理期間に出力される可変クロック信号のパルス数の合計を単位パルス数で除して算出された商を可変クロック信号関連情報として所定の処理期間毎に記録し、所定の処理期間を計時しながら、記録した可変クロック信号関連情報に単位パルス数を乗じて算出されるパルス数の可変クロック信号を作成して所定の処理期間毎に送信すると共に、エンコーダから可変クロック信号と共に出力されたストリームデータを記録し、その記録したストリームデータを送信する可変クロック信号のパルスに対応させて送信することを特徴としている。
【００１７】
上述の従来技術に示したように、可変ビットレートでストリームデータを出力するために、エンコーダからストリームデータの有効性を示す可変クロック信号がストリームデータと共に出力される。ところが、上述のように可変クロック信号を記録しようとすると膨大な記憶容量が必要となってしまうため、従来はストリームデータのみを記録していた。そのため、一旦、ハードディスク等の記録媒体に記録されたストリームデータは、デコーダによる解析を行わなければ、送信タイミングがわからなくなってしまっていた。
【００１８】
そこで、本発明のデータ記録送信方法では、目標ビットレートを達成するため所定期間にビットレートに対応するパルス数分のパルスを出力する可変クロック信号と、当該可変クロック信号に同期して出力されるストリームデータとを出力するエンコーダを前提として、そのエンコーダから出力される可変クロック信号を可変クロック信号関連情報に変換して記録することによって少ない記憶容量で記録し、送信の際には、記録した可変クロック信号関連情報に基づき新たに可変クロック信号を作成して送信するのである。また、それと共にストリームデータを記録し、可変クロック信号のパルスに対応させて送信するのである。なお、「マスタークロック信号」は、エンコーダの動作の基本となる一定周期のクロック信号であり、所定の期間もマスタークロック信号に基づいて計時される。その意味で、各所定期間におけるビットレートはマスタークロック信号のパルス数として表現することができる。
【００１９】
ここで、可変クロック信号に係る作用について詳しく説明する。
本発明のデータ記録送信方法では、可変クロック信号のパルス数を所定の処理期間毎に合計する。そして、その合計を単位パルス数で割った商を可変クロック信号関連情報として所定の処理期間毎に記録する。
【００２０】
そして、送信の際には、可変クロック信号関連情報に単位パルス数を掛けたパルス数の可変クロック信号を作成し、所定の処理期間を計時しながら所定の処理期間毎に送信する。但し、エンコーダから出力された可変クロック信号のパルスが所定の処理期間中のどのタイミングで出力されたかは、可変クロック信号関連情報からは判断できない。このため、送信の際には所定の処理期間中の適当なタイミングでパルスを出力する。例えば、一定のクロック信号を考えて、処理期間の後ろの部分のパルスを間引きすることにより、処理期間の最初から算出されたパルス数のパルスを出力する可変クロック信号を作成して送信してもよいし、処理期間毎に周期を変化させることによって、処理期間全体で算出されたパルス数を出力する可変クロック信号を作成して送信してもよい。
【００２１】
つまり、エンコーダから可変クロック信号としてどのようなタイミングでパルスが出力されても、所定期間毎のパルス数は記録時と送信時で変わらない。例えば、図１０（ａ）にエンコーダからの間引きされた形の可変クロック信号を示し、図１０（ｂ）に送信する可変クロック信号を示した。図１０では可変クロック信号のパルスの出力期間をｈｉｇｈレベルで示している。図１０に示すように各処理期間Ｅ，Ｆ，Ｇにおいてエンコーダから出力されるパルス数と送信するパルス数は等しくなる。すなわち、所定期間毎のビットレートは保持できることになる。
【００２２】
なお、上述のように所定期間毎のパルスの送信タイミングは、エンコーダからの出力タイミングとは違ってくる。図１０の例でも、パルスの送信タイミングは各処理期間の最初からとなっており、エンコーダからの可変クロック信号のパルスの出力タイミングとは違っている。しかし、送信先のデコーダで再生する上で問題は生じない。その理由は、送信先のデコーダが読み出すタイミングで該当するストリームデータがフレーム単位で送信先のバッファに送信されておればよいからである。つまり、フレーム単位に比べて所定の処理期間を十分小さな期間とすることによって、所定の処理期間内での送信タイミングのずれは再生の際に無視できるのである。
【００２３】
また、記憶容量については、可変クロック信号のパルスを合計することによって、所定の処理期間で可変クロック信号のパルスの出力期間が途切れ途切れになった可変クロック信号であっても記憶容量は変わらず一定となる。例えば、図１０に示す処理期間Ｇにおいて、可変クロック信号のパルスは５０パルスずつ別の期間に出力されているが、合計して１００パルスとして処理するという具合いである。また、パルス数の合計を単位パルス数で割るために数値として記録でき、さらにその数値は、所定期間に出力される可変クロック信号の最大パルス数を単位パルス数で割った数値以下となる。図１０では単位パルス数を１００パルスとして割るために処理期間Ｅでは「３」、処理期間Ｆでは「２」、処理期間Ｇでは「１」が記録されることになる。また、可変クロック信号を作成した一定周期のクロック信号と、各処理期間を計時するマスタークロック信号が同じ周期であるとすれば、各処理期間Ｅ，Ｆ，Ｇにおける可変クロック信号の最大パルス数は６００パルスとなるため、記録される数値は大きくても「６」以下となる。
【００２４】
以上説明したように従来と比較して極めて少ない記憶容量で送信タイミングを保持するための可変クロック信号関連情報が記録できると共に、送信するデータを送信先でリアルタイムに再生することができる。すなわち、蓄積系への応用としてハードディスク等に一旦記録されたストリームデータを再度通信系へ利用することが可能となる。
【００２５】
ところで、本発明では、所定の処理期間に出力される可変クロック信号のパルス数の合計を単位パルス数で割った商は整数でもよいし、あるいは、条件によっては小数でもよい。条件というのは、ある桁数以下の切捨てや切上げ等の処理である。なぜなら、小数点以下の桁数が多くなると記録に必要な記憶容量が大きくなるからである。しかし、切捨てや切上げ等の処理を行うと誤差が発生することになるので、商は整数で扱うことが望ましい。
【００２６】
整数で扱うことを考えると、余りが出ることが考えられる。そこで、請求項２に示すように、所定の処理期間における可変クロック信号のパルス数の合計を単位パルス数で除して余りが算出された場合、その余りのパルス数を次の処理期間における可変クロック信号のパルス数に加算してもよい。例えば、図１０における処理期間Ｅで可変クロック信号のパルス数が３５０であるとすると、所定単位パルス数１００で割った余りとしての５０のパルスは処理期間Ｆで出力される可変クロック信号のパルス数２００に加算して、処理期間Ｆで出力される可変クロック信号のパルス数を２５０としてもよい。
【００２７】
また、エンコーダからの全出力期間が所定の処理期間の整数倍となっていない場合が考えられる。このときは、所定の処理期間で区切ることのできない最後の処理期間が存在する。エンコーダからの全出力期間が所定の処理期間の整数倍となっている場合であっても、最後の所定の処理期間に余りとなった可変クロック信号のパルス数が次の処理期間に出力されたものとして加算されることも考えられる。そこで、請求項３に示すように、エンコーダからの全出力期間を所定の処理期間に区切った場合に区切ることが可能な最後の処理期間の後に出力される可変クロック信号については、その可変クロック信号のパルス数を直接記録してもよい。
【００２８】
例えば、図１０に示す例では、エンコーダからの全出力期間がマスタークロックで１９００パルスの期間である場合、処理期間Ｇの後に１００パルスの期間ができる。このとき、この１００パルス期間に可変クロック信号のパルス数が７０パルスであった場合には「７０」という数値を記録してもよい。また、図１０中の所定期間Ｇで可変クロック信号のパルス数が１５０のときには、端数の５０パルスは最後の所定期間Ｇの後に出力されたものとして考えることができる。このとき、その５０パルスを「５０」で記録してもよい。
【００２９】
ところで、請求項４に示すように、所定の処理期間は、一定周期のクロック信号に基づき単位パルス数の整数倍のパルスを計時した期間とするとよい。その理由は、例えば、制御する上で端数のパルスが出てくることがなくなり、この制御を例えば回路で構成する場合にはその回路構成が簡単になる。
【００３０】
以上説明したデータ記録送信方法をデータ記録送信装置として構成した場合、請求項５に示すような構成が考えられる。すなわち、所定期間毎の目標ビットレートを達成するため当該所定期間内に出力すべきストリームデータに対応するマスタークロック信号のパルス数分のパルスを当該所定期間に出力するよう設定された可変クロック信号、及び当該可変クロック信号に同期して出力されるストリームデータを出力可能なエンコーダから入力した可変クロック信号及びストリームデータに基づいてデータ記録及び送信を行うデータ記録送信装置であって、エンコーダから出力されるストリームデータを記録するストリームデータ記録手段と、マスタークロック信号を作成するマスタークロック信号作成手段と、マスタークロック信号作成手段に基づいて所定の処理期間を計時する計時手段と、エンコーダから出力される可変クロック信号のパルスを数え、その和が単位パルス数に等しくなる毎に等しくなったことを判断し、その判断回数を計数する計数手段と、計時手段による所定の処理期間の計時の終了時点で、計数手段によって計数された判断回数を記録して初期化する記録初期化手段と、記録初期化手段によって記録された判断回数を読み出し、その読み出した判断回数に単位パルス数を乗じてパルス数を算出するパルス数算出手段と、計時手段により計時される所定の処理期間にパルス数算出手段によって算出したパルス数の可変クロック信号を作成して送信する可変クロック信号送信手段と、可変クロック信号送信手段によって送信される可変クロック信号のパルスに対応させて、ストリームデータ記録手段によって記録されたストリームデータを送信するストリームデータ送信手段とを備えたことを特徴とするデータ記録送信装置である。
【００３１】
本発明のデータ記録送信装置によれば、可変ビットレートで符号化されたデータを記録し、記録されたデータを送信する。以下、（１）でデータ記録における作用を説明し、（２）でデータ送信における作用を説明する。
（１）最初にデータ記録における作用を説明する。まず、ストリームデータ記録手段は、エンコーダから可変クロック信号のパルスに基づき有効性を判断してストリームデータを記録する。マスタークロック信号作成手段は、一定周期のマスタークロック信号を作成する。このとき、マスタークロック信号作成手段の一つとしてのクロックジェネレータは、データの記録と送信とで２つ用意することも考えられるし、データの記録と送信とで１つを共用することも考えられる。しかし、あるデータを記録しながら別のデータを送信するような場合にはクロックジェネレータが記録と送信とで２つ用意されることが望ましい。また、エンコーダから出力される可変クロック信号が一定周期のクロック信号からパルスを間引きした信号である場合、可変クロック信号のパルス出力に基づいてマスタークロック信号を作成することも考えられる。この場合、エンコーダの出力に同期してデータの記録をすることが可能となる。
【００３２】
計時手段は、作成したマスタークロック信号に基づいて所定の処理期間を計時する。計数手段は、エンコーダから出力される可変クロック信号のパルスを数え、その和が単位パルス数に等しくなる毎に等しくなったことを判断し、その判断回数を計数する。そして、記録初期化手段は、所定処理期間の計時が終了した時点で判断回数を記録して初期化する。なお、ここでいう「初期化」とは、次に可変クロック信号のパルス数が単位パルス数に等しくなったと判断された時に、判断回数が「１」となるようにするということである。
【００３３】
ここで、図１１（ａ）に示すタイムチャートに基づいて上述のデータ記録における作用を詳しく説明し、その結果として可変クロック信号の記憶に要する容量が少なくなることを説明する。なお、図１１（ａ）では、単位パルス数を４００パルス、所定の処理期間はマスタークロック信号６４００パルスの期間であるとする。この場合、エンコーダから出力される可変クロック信号は、一定周期のクロック信号を間引きしたものであるとする。
【００３４】
図１１（ａ）には、エンコーダから出力される可変クロック信号及びストリームデータが示されている。図を簡単にするために可変クロック信号のパルス出力期間をｈｉｇｈレベルで示した。図１１（ａ）では、期間［ｔ０〜ｔ４］、期間［ｔ５〜ｔ７］及び期間［ｔ９〜ｔ１１］が可変クロック信号のパルス出力期間である。ストリームデータはこれらの期間で出力されるパルスに対応して有効とされる。つまり、可変クロック信号のパルス数だけのストリームデータが出力されることになる。ストリームデータ記録手段は、このストリームデータを記録する。
【００３５】
図１１（ａ）中では、期間［ｔ０〜ｔ８］及び期間［ｔ８〜ｔ１２］が計時手段によって計時される所定の処理期間（マスタークロック信号６４００パルスの期間）である。計数手段は、可変クロック信号のパルス数を数え、４００パルスに等しくなる毎に、等しくなったことを判断し、判断回数を計数する。ところで、図１１（ａ）では、期間［ｔ０〜ｔ１］，［ｔ１〜ｔ２］，［ｔ２〜ｔ３］，［ｔ１０〜ｔ１１］がそれぞれマスタークロック信号で４００パルス、期間［ｔ３〜ｔ４］，［ｔ５〜ｔ６］，［ｔ６〜ｔ７］，［ｔ９〜ｔ１０］がそれぞれ２００パルスである。従って、４００パルス出力されたという判断が行われる時点は、時刻ｔ１，ｔ２，ｔ３，ｔ６，ｔ１０，ｔ１１となる。
【００３６】
このとき、記録初期化手段は計時手段による所定の処理期間の計時の終了時点で判断回数を記録して初期化する。つまり、図１１（ａ）では、時刻ｔ８及びｔ１２で判断回数を記録して初期化する。時刻ｔ８における判断回数は、時刻ｔ１，ｔ２，ｔ３，ｔ６の４回となるので「４」が記録される。ここで、一旦初期化されるため、時刻ｔ１０で新たに判断回数は「１」となり、ｔ１２で記録される判断回数は「２」となる。つまり、４００パルスをひとかたまりとして、マスタークロック信号の６４００パルス毎にそれがいくつあるかを記録するのである。
【００３７】
この方法によれば、例えば可変クロック信号のパルス数が最大の６４００パルスであった場合、最大値「１６」（６４００÷４００）が記録され、可変クロック信号のパルス数が０であった場合、最小値「０」が記録される。すなわち、マスタークロック信号で６４００パルスが出力される期間毎に「０」〜「１６」を表現できる２進数、例えば５ビットの２進数を記録できる記憶容量が必要となるのみである。すなわち、パルスの出力を１として記録すれば６４００ビットの記憶容量が必要となるが、この例では５ビットもあれば十分となる。また、マスタークロック信号で６４００パルスが出力される期間に可変クロック信号のパルス出力が連続していない場合であっても必要な記憶容量はかわらない。すなわち、上述のランレングス符号化の方法のように可変クロック信号のパルス出力期間によって記憶容量が増大するということがなくなる。
【００３８】
（２）次に、データ送信における作用を説明する。
パルス数算出手段は、記録された判断回数を読み出し、読み出した判断回数に単位パルス数を乗じてパルス数を算出する。そして、可変クロック信号送信手段は、算出されたパルス数のパルスを所定の処理期間に送信する可変クロック信号を作成して送信する。そして、ストリームデータ送信手段は、送信される可変クロック信号に同期して記録したストリームデータを送信する。
【００３９】
ここで、図１１（ｂ）に示すタイムチャートに基づいて上述のデータ送信における作用を詳しく説明し、通信系への応用として送信先へ記録したデータを送信し、再生することが可能であることを説明する。図１１（ｂ）は、送信される可変クロック信号及びその可変クロック信号に同期して送信されるストリームデータを示している。
【００４０】
計時手段は、マスタークロック信号作成手段により出力された一定周期のマスタークロック信号に基づいて所定の処理期間を計時する。上述の図１１（ａ）の例に対応させて単位パルス数を４００パルス、所定の処理期間をマスタークロック信号で６４００パルスの期間とすると、図１１（ｂ）中の期間［ｔ１３〜ｔ１５］及び期間［ｔ１５〜ｔ１７］が所定の処理期間となる。
【００４１】
パルス数算出手段は、記録された判断回数と単位パルス数４００とを掛け合わせパルス数を算出する。つまり、図１１（ａ）では、最初の所定処理期間で判断回数「４」が記録され、次の所定処理期間で判断回数「２」が記録された。そこで、４００×４＝１６００、４００×２＝８００をパルス数として算出する。
【００４２】
そして、図１１（ｂ）に示すように、可変クロック信号送信手段は、所定の処理期間に送信すべき可変クロック信号を、この場合、１６００パルス、８００パルスというパルス数で作成する。そして、時刻ｔ１３から最初の可変クロック信号を送信し、時刻ｔ１５から次の可変クロック信号を送信する。
【００４３】
ストリームデータ送信手段は、記録したストリームデータを可変クロック信号にのパルスに対応させて送信する。図１１（ｂ）中では期間［ｔ１３〜ｔ１４］，［ｔ１５〜ｔ１６］で記録したストリームデータをパルスに対応させて送信する。
【００４４】
これによれば、ストリームデータの送信タイミングは、エンコーダからの出力タイミングと比べてずれが生じることになる。例えば、図１１（ａ）の期間［ｔ５〜ｔ６］で出力されたストリームデータＢは、図１１（ｂ）ではストリームデータＡの送信に連続して送信されることになる。また、図１１（ａ）の期間［ｔ６〜ｔ７］で出力されたストリームデータＣは、図１１（ｂ）では時刻ｔ１５より送信されることになる。さらに、図１１（ａ）の期間［ｔ９〜ｔ１１］で送信されたストリームデータＤは、図１１（ｂ）ではストリームデータＣの送信に連続して送信されることになる。
【００４５】
ところが、データを再生する上で問題は生じない。その理由を説明する。
従来、可変クロック信号が記録されることはなかったために、送信タイミングがわからず、送信先のデコーダが読み出そうとするタイミングで送信先のバッファへ、該当するストリームデータを送信できないことが再生のできない理由であった。つまり、エンコーダの出力と全く同じタイミングで送信する必要はなく、送信先のデコーダが読み出そうとするタイミングで送信先のバッファへ該当するストリームデータを送信できていればよいのである。また、このタイミングはフレーム単位で送信できていればよい。そのため、マスタークロック信号で計時した６４００パルスの期間は、１フレームのストリームデータから見れば十分に小さな期間であるために、このようなずれは問題なくなる。
【００４６】
以上、（１）及び（２）で説明したように、本発明のデータ記録送信装置によれば、可変クロック信号を小さな記憶容量で記憶でき、それに基づいてストリームデータを送信することによって、一旦記憶したストリームデータであっても、データを送信し、その送信先においてリアルタイムに再生することができる。一旦蓄積系への応用として記録したデータを、再び通信系へ応用することが可能となる。
【００４７】
なお、本発明のデータ記録送信装置は図１１に示す例のような可変クロック信号、すなわち一定周期のクロック信号を間引きして作成した可変クロック信号に限定されるものではない。例えば、エンコーダから出力される可変クロック信号が期間毎に周期を変えるような形のものであってもよい。例えば、図１１中の全期間［ｔ０〜ｔ１２］でパルスを出力するような可変クロック信号であって、例えば期間［ｔ０〜ｔ７］，［ｔ７〜ｔ８］，［ｔ８〜ｔ１２］の各期間で周期を変えるような可変クロック信号でもよい。一方、送信に関しても所定の処理期間に算出されたパルスを送信するよう周期を変化させた可変クロック信号を作成して送信してもよい。例えば、期間［ｔ１３〜ｔ１５］，［ｔ１５〜ｔ１７］で１６００パルス，８００パルスのパルスが出力されるようそれぞれの期間で周期を変化させた可変クロック信号を送信してもよい。
【００４８】
【発明の実施の形態】
以下、本発明の一実施形態について図面を参照して説明する。
図１は、本実施形態のデータ記録送信装置１の概略構成を示すブロック図である。
【００４９】
データ記録送信装置１は、データ保持回路１０と、データ送信回路２０と、データ記録送信装置１全体を制御する制御部５０と、データ記録送信装置１にハードディスクドライブ（以下「ＨＤＤ」と記載する）７０を接続するためのディスクインターフェース６１と、データ記録送信装置１に、例えばＣＤ−ＲＯＭライタ等を接続する入出力インターフェース６２とを備えている。
【００５０】
制御部５０は、制御手段としてのＣＰＵ５１と、プログラム記憶手段としてのＲＯＭ５２と、一時記憶手段としてのＲＡＭ５３とを備えている。ＣＰＵ５１は、ＲＯＭ５２に予め記憶されているプログラムに基づいて後述するようなデータの記録及び読出処理を行う。このデータ記録及び読出処理を実行する際、ＲＡＭ５３はワークエリアとして機能する。
【００５１】
データ保持回路１０は、データを可変ビットレートで符号化可能なエンコーダ８０と接続されている。エンコーダ８０には、端末８２及びビデオ装置８５が接続されており、エンコーダ８０は、ビデオ装置８５から出力される映像データをエンコードして可変クロック信号及びストリームデータを出力する。このときのビットレートは端末８２によって指示される。例えば、図１７に示すようなタイムコードとビットレートの対応を示すタイムテーブル８３が端末８２内に用意されており、ビデオ装置８５の映像データのタイムコードに対応するビットレートが指示されることになる。
【００５２】
エンコーダ８０は、ビデオ装置８５からの映像データのタイムコードに対応して指示された目標のビットレートでのストリームデータの出力を行うために、例えば次のようにして可変クロック信号を作成する。エンコーダ８０では、エンコーダ８０の動作の基準となる一定周期のマスタークロック信号が作成され、それに基づいて符号化が行われる。ここで、タイムコードに対応する期間に目標のビットレートを実現する場合、そのビットレートは有効なストリームデータの量に比例するのであるから、目的のビットレートとするための有効なストリームデータが、例えば上記一定周期のマスタークロック信号のいくつ分のパルスに対応するかを算出する。そして、そのタイムコードに対応する期間にその算出した数のパルスを出力するような信号を可変クロック信号として作成する。もちろん、ストリームデータはこの可変クロック信号に対応させる。
【００５３】
例えば、図１５に示す期間Ａでは、目的のビットレートを実現するために、有効とすべきストリームデータがマスタークロック信号の２つのパルスに対応しているとする。このとき、図１５（ａ）や（ｂ）に示すように期間Ａで２つのパルスを出力する可変クロック信号を作成するのである。図１５（ａ）は、マスタークロック信号からパルスを間引きして作成した例である。図１５（ｂ）は、期間Ａに２つのパルスが出力されるように可変クロック信号の周期を変えた例である。このように、可変クロック信号のパルスは期間Ａ中のどのタイミングで出力してもよい。本実施形態のエンコーダ８０では、図１５（ａ）に示すようにエンコーダ８０のマスタークロック信号を間引きした形の可変クロック信号を出力するものとする。
【００５４】
データ保持回路１０は、エンコーダ８０からの可変クロック信号及びストリームデータの２つのデータに基づいて、可変クロック信号関連情報及びストリームデータを取り出し保持する。上述のように、ストリームデータの有効性は可変クロック信号のパルス出力によって示される。
【００５５】
制御部５０は、データ保持回路１０による可変クロック信号関連情報及び有効なストリームデータの取り出しに並行して、保持された可変クロック信号関連情報及び有効なストリームデータをデータ保持回路１０より読み出し、ＨＤＤ７０に記録する。また、ＨＤＤ７０に記録された可変クロック信号関連情報及び有効なストリームデータを読み出し、可変クロック信号関連情報から可変クロック信号のパルス数を算出して、算出した可変クロック信号のパルス数及びストリームデータをデータ送信回路２０へ順次転送する。
【００５６】
データ送信回路２０は、制御部５０によって転送されてくる可変クロック信号のパルス数に基づき新たに可変クロック信号を作成し、送信路９４を介して再生装置９０へ送信すると共に、制御部５０によって転送されてくるストリームデータをその可変クロック信号のパルスに対応させ、送信路９４を介して再生装置９０へ送信する。
再生装置９０は、データ送信回路２０から送信されたデータを一時的に記録するバッファ９１と、バッファ９１に送信されてきたストリームデータを解析して再生するデコーダ９２と、再生映像を映し出すモニタ９３とを備えている。
【００５７】
このように本実施形態のデータ記録送信装置１は、エンコーダ８０からの可変ビットレートで出力されるデータを、一旦ＨＤＤ７０へ記録し、後に再び送信先の再生装置９０でリアルタイムに再生できるように、記録したデータを送信するものである。また、本実施形態のデータ記録送信装置１は、入出力インターフェース６２を介して、従来通りＣＤ−ＲＯＭ等の記憶媒体にストリームデータのみを記録することもできる。
【００５８】
次に、本実施形態のデータ記録送信装置１の特徴であるデータ保持回路１０、データ送信回路２０及び制御部５０に関して詳しく説明する。なお、（イ）でデータ保持回路１０の構成及び機能、（ロ）で制御部５０によるデータ保持回路１０からのデータ記録処理と、それに伴うデータ保持回路１０の動作、（ハ）でデータ送信回路２０の構成及び機能、（ニ）で制御部５０によるデータ送信回路２０へのデータ転送処理とそれに伴うデータ送信回路２０の動作を説明する。また、以下の説明では本実施形態のデータ記録送信装置１のクロックジェネレータ（後述）の作成する一定周期のマスタークロック信号のパルス数で、「所定の処理期間」を６４００パルスの期間、「単位パルス数」として４００パルスという具体的数値を用いることとする。
【００５９】
（イ）図２に示す回路図に基づいてデータ保持回路１０の構成及び機能を説明する。
データ保持回路１０は、エンコーダ８０からの可変クロック信号からマスタークロック信号を作成する「マスタークロック信号作成手段」としてのマスタークロックジェネレータ１１１と、、マスタークロックジェネレータ１１１により作成されたマスタークロック信号に基づき６４００パルスの処理期間を計測する「計時手段」としてのＴカウンタ１０１と、可変クロック信号のパルスをカウントするｒカウンタ１０３と、ｒカウンタ１０３から４００パルス毎に出力されるアクティブな信号によりカウントアップするｈカウンタ１０４と、Ｔカウンタ１０１から６４００パルス毎に出力されるアクティブな信号を保持するラッチ１０２と、Ｔカウンタ１０１からアクティブな信号が出力されると、ｈカウンタ１０４の値を保持するラッチ１０５とを備えている。
【００６０】
図４に示すように、マスタークロックジェネレータ１１１は間引きされた可変クロック信号から間引きする前のマスタークロック信号を作成する。マスタークロックジェネレータ１１１は、一定周期のマスタークロックを作成するマスタークロックオシレータ１１２と、マスタークロックオシレータ１１２の作成するマスタークロック信号の周期を可変クロック信号のパルス出力に基づいて補正するＰＬＬ１１３とを備えている。
【００６１】
つまり、図５に示すように、間引きした可変クロック信号がエンコーダ８０から出力されるときを考える。マスタークロックオシレータ１１２では、間引きする前のエンコーダ８０のマスタークロック信号に近い周期のマスタークロック信号を作成する。そして、ＰＬＬ１１３は可変クロック信号のパルスの立ち上がり時点、図５中のｔ１９，ｔ２０，ｔ２１，ｔ２２，ｔ２３でマスタークロックオシレータ１１２の作成するパルスの時間的なずれを補正して、エンコーダ８０のマスタークロック信号に同期させる。これによって、エンコーダ８０の動作に同期してデータを記録することが可能となる。
【００６２】
ｒカウンタ１０３は、可変クロック信号のパルスをカウントし、４００パルス毎にｈカウンタ１０４に対してアクティブな信号を出力する。ｈカウンタ１０４の計数値はＴカウンタ１０１が６４００パルス毎に出力するアクティブな信号によってラッチ１０５に保持される。これによって、６４００パルスの所定の処理期間における可変クロック信号のパルスの合計を４００パルスの単位期間で割った整数商がラッチ１０５に保持されることになる。すなわち、ラッチ１０５に保持されるｈカウンタ１０４の値が「可変クロック信号関連情報」となる。ｈカウンタ１０４の計数値がラッチ１０５に保持されると、その直後にｈカウンタ１０４はクリアされて０となる。ｒカウンタ１０３及びｈカウンタ１０４は「計数手段」に相当する。なお、ラッチ１０２にアクティブな信号が保持されるとラッチ１０５に保持された可変クロック信号関連情報を読み出せるよう構成されており、ラッチ１０５に保持された可変クロック信号関連情報が制御部５０により読み出されるとラッチ１０２はクリアされる。
【００６３】
また、データ保持回路１０は、制御部５０からのアクセスを管理するアドレスデコーダ１０６と、ストリームデータを８ビット単位にするシフトレジスタ１０９と、作成したマスタークロック信号に基づき８ビット毎にアクティブな信号を出力する８ビットカウンタ１０７と、８ビットカウンタ１０７から８ビット毎に出力されるアクティブな信号を保持するためのラッチ１０８と、８ビットカウンタからアクティブな信号が出力されると、シフトレジスタ１０９に入力された８ビットのストリームデータを保持するラッチ１１０とを備えている。
【００６４】
アドレスデコーダ１０６は、アドレスバスに接続されており、制御部５０からアクセスがあると対応するデータがデータバス上に出力されるよう構成されている。ラッチ１０８は、ラッチ１１０に保持されたストリームデータが制御部５０により読み出されるとクリアされる。
【００６５】
８ビットカウンタ１０７及びシフトレジスタ１０９には、可変クロック信号が入力されており可変クロック信号のパルスに対応して動作するよう構成されている。これによって、シフトレジスタ１０９に入力されるストリームデータは可変クロック信号のパルスに対応することになる。
【００６６】
（ロ）次に制御部５０によるデータ保持回路１０からのデータ記録処理と、それに伴うデータ保持回路１０の動作を説明する。なお、制御部５０によるデータ記録処理は図３のフローチャートに基づいて説明し、データ保持回路１０の動作は図２の回路図に基づいて説明する。
【００６７】
図３中の最初のステップＳ１０００において、ストリームデータを記録するためのファイルをオープンする。続くＳ１０１０では、可変クロック信号関連情報を記録するためのファイルをオープンする。なお、ストリームデータを記録するためのファイル及び可変クロック信号関連情報を記録するためのファイルは、ＨＤＤ７０に用意されている。
【００６８】
次に、Ｓ１０２０では図２中のラッチ１０８にアクティブな信号が保持されているか否かを判断する。この処理は、ストリームデータが図２中のラッチ１１０に保持されているか否かを判断するための処理である。可変クロック信号のパルスに対応して８ビット分のストリームデータがシフトレジスタ１０９に入力され、８ビットカウンタ１０７からのアクティブな信号により、ラッチ１１０にその８ビットのストリームデータが保持され、８ビットカウンタ１０７からのアクティブな信号がラッチ１０８に保持される。
【００６９】
Ｓ１０２０で肯定判断された場合、すなわちラッチ１０８にアクティブな信号が保持されている場合には、Ｓ１０３０にてラッチ１１０に保持されている８ビット分のストリームデータを読み出して、Ｓ１０４０にてＨＤＤ７０中のストリームデータを記録するためのファイルに記録する。そして、Ｓ１０５０へ移行する。一方、Ｓ１０２０で否定判断された場合、すなわちラッチ１０８にアクティブな信号が保持されていない場合には、Ｓ１０３０及びＳ１０４０の処理を実行せずＳ１０５０へ移行する。なお、Ｓ１０３０の読み出し処理と同時にラッチ１０８はクリアされる。
【００７０】
Ｓ１０５０では、ラッチ１０２にＴカウンタ１０１からのアクティブな信号が保持されているか否かを判断する。この処理は、ラッチ１０５に６４００パルスの処理期間に対応する可変クロック信号関連情報が保持されているか否かを判断する処理である。Ｔカウンタ１０１が６４００パルスの処理期間を計時してアクティブな信号を出力することにより、ラッチ１０５に可変クロック信号関連情報としてｈカウンタ１０４の計数値が保持され、Ｔカウンタ１０１からのアクティブな信号がラッチ１０２に保持される。その直後にｈカウンタ１０４はクリアされて０となる。
【００７１】
Ｓ１０５０で肯定判断された場合、すなわちラッチ１０２にアクティブな信号が保持されている場合には、Ｓ１０６０にてラッチ１０５に保持されている可変クロック信号関連情報を読み出し、Ｓ１０７０にて可変クロック信号関連情報を記録するためのＨＤＤ７０中のファイルに記録する。そして、Ｓ１０８０へ移行する。一方、Ｓ１０５０で否定判断された場合、すなわちラッチ１０２にアクティブな信号が保持されていない場合には、Ｓ１０６０及びＳ１０７０の処理を実行せずＳ１０８０へ移行する。
【００７２】
なお、Ｓ１０６０の読み出し処理と同時に、ラッチ１０２はクリアされる。また、Ｓ１０７０では、可変クロック信号関連情報がＨＤＤ７０中のファイルに、図１６に示すようなフォーマットで記録される。つまり、１つの可変クロック信号関連情報の記憶容量として８ビットの記憶容量が割り当てられており、最上位ビットに０が記録され、下位７ビットに可変クロック信号関連情報が記録される。図１６では、最初の処理期間の可変クロック信号関連情報が４であり、次の処理期間での可変クロック信号関連情報が２である。このように、最上位パルスを０として順に可変クロック信号関連情報が記憶されていき、最後の行にｒカウンタ１０３に残った４００パルス未満の可変クロック信号のパルス数が記録される。このとき、４００パルス単位で記録された可変クロック信号関連情報と区別するために最上位パルスを１として記録する。
【００７３】
Ｓ１０８０では、エンコーダ８０からのデータ出力が終了したか否かを判断する。Ｓ１０８０で否定判断された場合、すなわちエンコーダ８０からのデータ出力が終了していない場合には、Ｓ１０２０へ移行し、それ以降の処理を繰り返す。一方、Ｓ１０８０で肯定判断された場合、すなわちエンコーダ８０からのデータ出力が終了した場合にはＳ１０９０へ移行する。
【００７４】
Ｓ１０９０では、エンコーダ８０からの出力の終了時点でｒカウンタ１０３に残った４００パルス未満の可変クロック信号のパルス数を読み出し、その可変クロック信号のパルス数を直接記録する。繁雑になるため、図２では省略したが、上述のパルス数を取り出すために、ｒカウンタ１０３の計数値を読み出す回路が用意されている。ｒカウンタ１０３に残った４００パルス未満の可変クロック信号のパルス数は、上述のように、図１６に示すフォーマットの最後の行に記録され、この場合は、最上位パルスを１として下位の７パルスにｒカウンタの計数値が記録される。
【００７５】
続くＳ１１００では、ストリームデータを記録するためのファイルをクローズする。そして、Ｓ１１１０では、可変クロック信号関連情報を記録するためのファイルをクローズして本データ記録処理を終了する。
なお、例えば、ＣＤ−ＲＯＭ等に記録する場合には、ストリームデータを記録したファイルに記録されたストリームデータを読み出して入出力インターフェース６２を介して記録すればよい。また、制御部５０は「記録初期化手段」及び「ストリームデータ記録手段」に相当し、制御部５０が実行する処理の内、Ｓ１０６０及びＳ１０７０が記録初期化手段としての処理に相当し、Ｓ１０３０及びＳ１０４０がストリームデータ記録手段としての処理に相当する。
【００７６】
（ハ）図６は、データ送信回路２０の回路構成を示す回路図である。次に図６に示す回路図に基づきデータ送信回路２０の構成及び機能を説明する。
データ送信回路２０は、一定周期のマスタークロック信号を出力する「マスタークロック信号作成手段」としてのマスタークロックジェネレータ１３５と、マスタークロックジェネレータ１３５からのマスタークロック信号に基づいて６４００パルスの処理期間を計時するための「計時手段」としてのＴカウンタ１３７と、アドレスバスに接続され図１に示す制御部５０からデータ送信回路２０に対するアクセスを管理するアドレスデコーダ１３４と、制御部５０によって図１に示すＨＤＤ７０から可変クロック信号関連情報が読み出され、その可変クロック信号関連情報から算出された可変クロック信号のパルス数を保持するクロックラッチ１４０と、クロックラッチ１４０から転送されるパルス数に基づき、マスタークロックジェネレータ１３５からのマスタークロック信号に基づいて可変クロック信号を生成し送信する「可変クロック信号送信手段」としてのクロックカウンタ１３９とを備えている。アドレスデコーダ１３４からは信号Ｈ〜Ｍが制御部５０のアクセスに対応して出力される。
【００７７】
また、データ送信回路２０は、制御部５０によってＨＤＤ７０から８ビット単位で読み出されたストリームデータを保持するラッチ１３１と、ラッチ１３１から転送される８ビット単位のストリームデータを１ビット単位（シリアル）にし、マスタークロックジェネレータ１３５からのマスタークロック信号に基づいてバッファ９１に送信するシフトレジスタ１３２と、マスタークロックジェネレータ１３５からのマスタークロック信号に基づいて８ビットの期間を計時する８ビットカウンタ１３３とを備えている。
【００７８】
シフトレジスタ１３２及び８ビットカウンタ１３３のイネーブル端子には、クロックカウンタ１３９から出力される可変クロック信号が入力されており、可変クロック信号のパルスに対応して動作するよう構成されている。これによって、ストリームデータは可変クロック信号のパルスに対応して送信されることになる。なお、シフトレジスタ１３２は「ストリームデータ送信手段」に相当する。
【００７９】
さらにまた、データ送信回路２０は、８ビットカウンタ１３３が８ビットの期間を計時する毎に出力するアクティブな信号を保持するためのラッチ１３６と、Ｔカウンタ１３７が６４００パルス毎に出力するアクティブな信号を保持するためのラッチ１３８とを備えている。ラッチ１３６は、制御部５０がストリームデータをラッチ１３１に書き出すタイミングを判断するためのものであり、ラッチ１３８は制御部５０が可変クロック信号のパルス数をクロックラッチ１４０に書き出すタイミングを判断するためのものである。ラッチ１３６及びラッチ１３８は、制御部５０による書き出しが行われると同時にアドレスデコーダ１３４から出力される信号Ｉ及びＫによってそれぞれクリアされる。
【００８０】
また、データ送信回路２０は、８ビットカウンタ１３３からの出力とアドレスデコーダ１３４からの信号Ｈとが入力される２入力ＯＲ１４２と、Ｔカウンタ１３７の出力とアドレスデコーダ１３４からの信号Ｊとが入力される２入力ＯＲ１４１とを備えている。２入力ＯＲ１４２の出力はシフトレジスタ１３２のＬＤ端子に入力され、２入力ＯＲ１４１の出力はクロックカウンタ１３９のＬＤ端子に入力されている。
【００８１】
これによって、アドレスデコーダ１３４からの信号Ｈがアクティブになったとき又は８ビットカウンタ１３３からの出力がアクティブになったときには、シフトレジスタ１３２にラッチ１３１に保持されているストリームデータが転送される。同様にアドレスデコーダからの信号Ｊがアクティブになったとき又はＴカウンタからの出力がアクティブになったときには、クロックラッチ１４０に保持されている可変クロック信号のパルス数がクロックカウンタ１３９に転送される。
【００８２】
Ｔカウンタ１３７のイネーブル端子には、アドレスデコーダ１３４の信号Ｌが入力されており、この信号Ｌがアクティブになるとデータの送信が開始される。（ニ）次に、制御部５０によるデータ送信回路２０へのデータ転送処理と、それに伴うデータ送信回路２０の動作を説明する。なお、制御部５０によるデータ転送処理は図７、図８及び図９のフローチャートに基づいて説明し、データ送信回路２０の動作については図６の回路図に基づいて説明する。
【００８３】
図７中の最初のステップＳ１２００において、制御部５０は可変クロック信号関連情報を記録したファイル及びストリームデータを記録したファイルをオープンする。続くＳ１２１０では、ストリームデータを記録したＨＤＤ７０中のファイルから８ビット単位でストリームデータを読み出す。そして、Ｓ１２２０にて、読み出したストリームデータを図６中のラッチ１３１に書き出す。この処理でラッチ１３６はクリアされる。
【００８４】
Ｓ１２３０では、図６中のラッチ１３１に保持された８ビットのストリームデータをシフトレジスタ１３２へ転送する。これは、シフトレジスタ１３２のＬＤ端子への入力信号であるアドレスデコーダ１３４からの信号Ｈをアクティブにすることによって行われる。
【００８５】
Ｓ１２４０及びＳ１２５０は、上述のＳ１２１０及びＳ１２２０と同様の処理が行われる。すなわち、ストリームデータを記録したファイルから８ビット単位でストリームデータを読み出し（Ｓ１２４０）、読み出したストリームデータをラッチ１３１に書き出す（Ｓ１２５０）。
【００８６】
Ｓ１２１０〜Ｓ１２５０の処理によって、シフトレジスタ１３２に８ビットのストリームデータが保持され、ラッチ１３１にはそれに続く８ビットのストリームデータが保持されていることになる。
Ｓ１２６０では、可変クロック信号関連情報を記録したＨＤＤ７０中のファイルから可変クロック信号関連情報を読み出す。続くＳ１２６１では、読み出した可変クロック信号関連情報に基づき６４００パルスの処理期間に対する可変クロック信号のパルス数を算出する。このパルス数算出処理については後述する。そして、Ｓ１２６２では、算出した可変クロック信号のパルス数を図６中のクロックラッチ１４０に書き出す。
【００８７】
Ｓ１２６３では、クロックラッチ１４０に保持された可変クロック信号のパルス数をクロックカウンタ１３９へ転送する。これは、クロックカウンタ１３９のＬＤ端子への入力信号であるアドレスデコーダ１３４からの信号Ｋをアクティブにすることによって行われる。
【００８８】
Ｓ１２６４〜Ｓ１２６６では、Ｓ１２６０〜Ｓ１２６２と同様の処理を行う。すなわち、可変クロック信号関連情報を記録したＨＤＤ７０中のファイルから可変クロック信号関連情報を読み出し（Ｓ１２６４）、可変クロック信号のパルス数を算出し（Ｓ１２６５）、クロックラッチ１４０に書き出す（Ｓ１２６６）。
【００８９】
Ｓ１２６０〜Ｓ１２６６の処理によって、図６中のクロックカウンタ１３９には最初の６４００パルスの処理期間に対応する可変クロック信号のパルス数がセットされ、クロックラッチ１４０には次の６４００パルスの処理期間に対応する可変クロック信号のパルス数が保持される。
【００９０】
そして、図８中のＳ１２６７で送信の開始を指示する。この処理は、Ｔカウンタ１３７のイネーブル端子への入力信号であるアドレスデコーダ１３４からの信号Ｌをアクティブとする処理である。これによって、図６中のＴカウンタ１３７がマスタークロックジェネレータ１３５からのマスタークロック信号に同期して動作を開始する。
【００９１】
図６中のクロックカウンタ１３９は、セットされたパルス数をカウントしながらパルスをバッファ９１へ出力し、パルス数のカウントが終了するとパルスの出力を停止する。Ｔカウンタ１３７は６４００パルスの処理期間をカウントするとアクティブな信号を出力する。この信号はラッチ１３８に保持されると同時にクロックカウンタ１３９のＬＤ端子へ入力される。ＬＤ端子へアクティブな信号が入力されることで、クロックカウンタ１３９にクロックラッチ１４０から次の処理期間における可変クロック信号のパルス数が転送される。
【００９２】
そして、クロックカウンタ１３９が可変クロック信号としてパルスを出力している間は８ビットカウンタ１３３及びシフトレジスタ１３２のイネーブル端子にもパルスが入力されることになるため、可変クロック信号のパルスに対応して、８ビットカウンタ１３３及びシフトレジスタ１３２が動作する。
【００９３】
シフトレジスタ１３２はセットされている８ビット単位のストリームデータを１ビット単位（ビットシリアル）で送信する。８ビットカウンタは８ビット毎にアクティブな信号を出力する。この信号はラッチ１３６に保持されると共に、２入力ＯＲ１４２を介してシフトレジスタ１３２のＬＤ端子へ入力される。シフトレジスタ１３２はアクティブな信号がＬＤ端子に入力されると、ラッチ１３１から次の８ビットのストリームデータを転送する。
【００９４】
このように、クロックカウンタ１３９は６４００パルス毎に可変クロック信号のパルス数をクロックラッチ１４０からＴカウンタ１３７に基づき転送し、シフトレジスタ１３２は、クロックカウンタ１３９がパルスを出力している間、８ビット毎にラッチ１３１よりストリームデータを転送する。
【００９５】
これらのデータ送信の動作に対応して以下に説明するように、制御部５０がクロックラッチ１４０及びラッチ１３１へのデータの書き出しを行う。
Ｓ１２７０では、ラッチ１３６にアクティブな信号が保持されているか否かを判断する。この処理は、ラッチ１３１に保持される８ビット単位のストリームデータが既にシフトレジスタ１３２に転送されているか否かを判断するための処理である。８ビットの期間が８ビットカウンタ１３３により計時され、シフトレジスタ１３２にラッチ１３１に保持されたストリームデータが転送されている場合、ラッチ１３６には８ビットの期間を計時したカウンタ１３３から出力されたアクティブな信号が保持されている。
【００９６】
Ｓ１２７０で肯定判断された場合、すなわちラッチ１３６にアクティブな信号が保持されている場合には、Ｓ１２８０にてストリームデータを記録したＨＤＤ７０中のファイルから８ビット単位でストリームデータを読み出し、Ｓ１２９０にて、読み出したストリームデータラッチ１３１へ書き出す。このとき、アドレスデコーダ１３４からはラッチ１３６に対する信号Ｉがアクティブで出力されラッチ１３６がクリアされる。一方、Ｓ１２７０で否定判断された場合、すなわちラッチ１３６にアクティブな信号が保持されていない場合には、Ｓ１２８０及びＳ１２９０の処理を実行せずＳ１３００へ移行する。
【００９７】
Ｓ１３００では、ラッチ１３８にアクティブな信号が保持されているか否かを判断する。この処理は、クロックラッチ１４０に保持される可変クロック信号のパルス数が既にクロックカウンタ１３９に転送されているか否かを判断するための処理である。６４００パルスの処理期間が計時され、クロックカウンタ１３９にクロックラッチ１４０に保持された可変クロック信号のパルス数が転送されている場合、ラッチ１３８には、６４００パルスの処理期間を計時したＴカウンタ１３７からのアクティブな信号が保持されている。
【００９８】
Ｓ１３００で肯定判断された場合、すなわちラッチ１３８にアクティブな信号が保持されている場合には、Ｓ１３１０にて可変クロック信号関連情報の記録されたＨＤＤ７０中のファイルから可変クロック信号関連情報を読み出し、Ｓ１３１５で可変クロック信号関連情報から可変クロック信号のパルス数を算出し、Ｓ１３２０にてクロックラッチ１４０へ算出したパルス数を書き出して１３３０へ移行する。なお、Ｓ１３２０の書き出し処理では、アドレスデコーダ１３４からの信号Ｋがアクティブとなり、ラッチ１３８はクリアされる。一方、Ｓ１３００で否定判断された場合、すなわちラッチ１３８にアクティブな信号が保持されていない場合には、Ｓ１３１０〜Ｓ１３２０の処理を実行せずＳ１３３０へ移行する。
【００９９】
Ｓ１３３０では、ストリームデータを全て読み出したか否かを判断する。ストリームデータを全て読み出している場合（Ｓ１３３０：ＹＥＳ）、Ｓ１３４０にてストリームデータを記録したファイル及び可変クロック信号関連情報を記録したファイルをそれぞれクローズして本データ読出処理を終了する。一方、ストリームデータを全て読み出していない場合（Ｓ１３３０：ＮＯ）、Ｓ１２７０へ移行して以降の処理を繰り返す。
【０１００】
なお、制御部５０が「パルス数算出手段」に相当し、制御部５０が実行する処理の内、ステップＳ１２６０，Ｓ１２６１，Ｓ１２６４，Ｓ１２６５，Ｓ１３１０，Ｓ１３１５がパルス数算出手段としての処理に相当する。
次にＳ１２６１，Ｓ１２６５，Ｓ１３１５に示したパルス数算出処理を図９のフローチャートに基づいて説明する。
【０１０１】
まず、最初のステップＳ１４００において、読み出した可変クロック信号関連情報の最上位ビットが０であるか否かを判断する。最上位ビットが０である場合（Ｓ１４００：ＹＥＳ）、可変クロック信号関連情報を４００倍する。一方、最上位パルスが０でない場合（Ｓ１４００：ＮＯ）、Ｓ１４１０の処理を実行せず本パルス数算出処理を終了する。つまり、最上位パルスを０として通常記録される可変クロック信号関連情報は、パルス数の合計を４００パルスの単位期間で割った商であるため、４００倍してパルス数を算出するのである。データ記録処理の最後に図２中のｒカウンタ１０３に残った可変クロック信号のパルス数については上述したように最上位パルスを１として記録されている。この場合、パルス数を直接記録しているため読み出した可変クロック信号関連情報がそのまま可変クロック信号のパルス数になるのである。
【０１０２】
以上説明した本実施形態のデータ記録送信装置１の動作を図１１のタイミングチャートに基づいて具体的に説明する。なお、図１１に示す可変クロック信号は、パルスの出力期間をｈｉｇｈレベルで表している。すなわち、ｈｉｇｈレベルの状態にあるとき、一定周期でパルスが出力されていることを示している。
【０１０３】
まず、図１１（ａ）に基づきデータ記録の動作を説明する。
図１１（ａ）には、エンコーダ８０から出力される可変クロック信号及びストリームデータが示されている。図１１（ａ）では、期間［ｔ０〜ｔ４］、期間［ｔ５〜ｔ７］及び期間［ｔ９〜ｔ１１］が可変クロック信号のパルス出力期間である。ストリームデータはこれらの期間に出力される可変クロック信号のパルスに対応して有効とされる。
【０１０４】
ここで、図２に示したようにストリームデータを取り出すシフトレジスタ１０９及び８ビット単位でストリームデータを取り出すための８ビットカウンタ１０７には可変クロック信号が入力されており、可変クロック信号のパルスに対応して動作するよう構成されているので、有効なストリームデータがラッチ１１０に保持される。すなわち、上述の期間［ｔ０〜ｔ４］，［ｔ５〜ｔ７］，［ｔ９〜ｔ１１］で可変クロック信号のパルスに対応するストリームデータが制御部５０によって記録される。
【０１０５】
このとき、図２中のマスタークロックジェネレータ１１１は、エンコーダ８０からの可変クロック信号からマスタークロック信号を作成する。そして、Ｔカウンタ１０１は、そのマスタークロック信号に基づいて６４００パルスの処理期間を計時し、６４００パルス毎にアクティブな信号を出力する。図１１（ａ）中では、期間［ｔ０〜ｔ８］及び期間［ｔ８〜ｔ１２］が６４００パルスであるため、時刻ｔ８及びｔ１２でＴカウンタ１０１からアクティブな信号が出力される。
【０１０６】
そして、図２中のｒカウンタ１０３は、可変クロック信号のパルスをカウントし、パルス数が４００パルスとなる毎にアクティブな信号をｈカウンタ１０４へ出力する。ｈカウンタ１０４はｒカウンタ１０３からアクティブな信号が出力されるとカウントアップする。ところで、図１１（ａ）では、期間［ｔ０〜ｔ１］，［ｔ１〜ｔ２］，［ｔ２〜ｔ３］，［ｔ１０〜ｔ１１］がそれぞれ４００パルス、期間［ｔ３〜ｔ４］，［ｔ５〜ｔ６］，［ｔ６〜ｔ７］，［ｔ９〜ｔ１０］がそれぞれ２００パルスである。従って、ｒカウンタ１０３からアクティブな信号が出力される時刻は、時刻ｔ１，ｔ２，ｔ３，ｔ６，ｔ１０，ｔ１１となる。
【０１０７】
制御部５０は図２中のラッチ１０２にＴカウンタ１０１からのアクティブな信号が保持されている場合、ラッチ１０５に保持されている可変クロック信号関連情報であるｈカウンタ１０４の計数値をＨＤＤ７０へ記録する。そして、ラッチ１０５の値を読み出すと同時にラッチ１０２をクリアする。つまり、図１１（ａ）では、時刻ｔ８及びｔ１２でラッチ１０２にアクティブな信号が保持されるため、そのすぐ後にラッチ１０５に保持された可変クロック信号関連情報が記録される。時刻ｔ８におけるラッチ１０５の値は、時刻ｔ１，ｔ２，ｔ３，ｔ６でｈカウンタ１０４がカウントアップされるため「４」となる。ここで、ｈカウンタ１０４はクリアされて０となるため、時刻ｔ１０で新たにｈカウンタ１０４の値は「１」となり、ｔ１２でのｈカウンタ１０４の値は「２」、従ってｔ１２でのラッチ１０５の値は「２」となる。
【０１０８】
以上説明したことからわかるように、６４００パルスの処理期間を通して可変クロック信号のパルスが出力された場合、ラッチ１０５には最大値「１６」が保持され、６４００パルスの処理期間を通して可変クロック信号のパルスが出力されない場合、ラッチ１０５には最小値「０」が保持される。従って、本実施形態では６４００パルス毎の処理期間に対して可変クロック信号関連情報を記録するための記憶容量を６４００パルスの処理期間毎に８ビット分用意すればよい。また、図２中のｒカウンタ１０３は、可変クロック信号のパルスをカウントするため、６４００パルスの間に可変クロック信号のパルスがどのようなタイミングで出力されてもよい。すなわち、上述の従来技術に示したランレングス符号化の方法のように、記憶容量に可変クロック信号の影響を受けない。
【０１０９】
次に、図１１（ｂ）に基づきデータ送信の動作を説明する。
図１１（ｂ）は、送信される可変クロック信号及びその可変クロック信号に対応して送信されるストリームデータを示している。
図６中のＴカウンタ１３７はマスタークロックジェネレータ１３５から出力されたマスタークロック信号に基づいて６４００パルスの処理期間を計時する。図１１（ｂ）中の期間［ｔ１３〜ｔ１５］及び［ｔ１５〜ｔ１７］が６４００パルスの処理期間であり、Ｔカウンタ１３７は時刻ｔ１５及びｔ１７でアクティブな信号を出力する。
【０１１０】
制御部５０は、可変クロック信号関連情報をＨＤＤ７０より読み出し、可変クロック信号のパルス数を算出する。つまり、図１１（ａ）では、最初の処理期間でラッチ１０５の値「４」が可変クロック信号関連情報として記録され、次の処理期間でラッチ１０５の値「２」が記録された。そこで、制御部５０は、４００パルス×４＝１６００パルス、４００パルス×２＝８００パルスを可変クロック信号の各処理期間におけるパルス数として算出する。
【０１１１】
そして、クロックカウンタ１３９はクロックラッチ１４０から転送されセットされたパルス数をカウントしながらマスタークロックジェネレータ１３５の周期のパルスを可変クロック信号として図１１（ｂ）中の時刻ｔ１４まで送信する。そして、セットされたパルス数が０となると、Ｔカウンタ１３７がアクティブな信号を出力する時刻ｔ１５までパルスの出力をしない。
【０１１２】
図６中のシフトレジスタ１３２及び８ビットカウンタ１３３のイネーブル端子にはクロックカウンタ１３９から送信される可変クロック信号が入力されており、可変クロック信号の送信に対応してストリームデータを送信する。図１１（ｂ）中では期間［ｔ１３〜ｔ１４］，［ｔ１５〜ｔ１６］で、可変クロック信号のパルスに対応させてストリームデータを送信する。
【０１１３】
これによれば、ストリームデータの送信タイミングは、エンコーダ８０からの出力タイミングと比べてずれが生じることになる。例えば、図１１（ａ）の期間［ｔ５〜ｔ６］で出力されたストリームデータＢは、図１１（ｂ）ではストリームデータＡの送信に連続して送信されることになる。また、図１１（ａ）の期間［ｔ６〜ｔ７］で出力されたストリームデータＣは、図１１（ｂ）では時刻ｔ１５より送信されることになる。さらに、図１１（ａ）の期間［ｔ９〜ｔ１１］で送信されたストリームデータＤは、図１１（ｂ）ではストリームデータＣの送信に連続して送信されることになる。
【０１１４】
以上説明してきた本実施形態のデータ記録送信装置１により発揮される効果を詳しく説明する。
本実施形態のデータ記録送信装置１においては、図２に示したデータ保持回路１０のＴカウンタ１０１が６４００パルスの処理期間を計時し、この処理期間毎にラッチ１０５に保持される可変クロック信号関連情報を記録することにより、可変クロック信号のパルスの出力されない期間を記録する必要がなくなる。なぜなら、６４００パルスの処理期間中のパルスの出力期間に対応する情報が可変クロック信号関連情報であり、可変クロック信号関連情報を記録することによって、可変クロック信号のパルスの出力されない期間は自ずとわかるからである。
【０１１５】
これによって、上述の図１３，図１４の例に示したような可変クロック信号の全期間を記録する方法に比べて、可変クロック信号のパルスの出力されない期間分の記憶容量が削減できる。
一方、図２中の可変クロック信号のパルス数を計時するｒカウンタ１０３は、可変クロック信号のパルス数をカウントするため、可変クロック信号のパルスがどのようなタイミングで出力されたとしても記憶容量が増大するようなことがない。これによって、可変クロック信号関連情報は、６４００パルスの処理期間中の可変クロック信号のパルス数の合計に関する情報となり、６４００パルスの処理期間毎に必要な記憶容量は一定となる。
【０１１６】
例えば、上述の図１４に示したような方法ではパルスの出力が断続しておこると、記憶容量が増える結果となっていた。それに対して、この場合は、可変クロック信号のパルスの出力タイミングに関係なく記憶容量を一定とすることができる。
【０１１７】
さらに、６４００パルスの処理期間における可変クロック信号のパルス数の合計を、４００パルスの単位パルス数で割った整数商を記録することによって、可変クロック信号のパルス数に比例する記憶容量の増大は生じない。例えば、可変クロック信号のパルス数が１２００パルス、１６００パルス、６０００パルスであった場合、そのまま記録すれば１２００ビット、１６００ビット、６０００ビットというパルス数に比例する記憶容量が必要となる。ところが、４００パルスの単位パルス数で割った整数商を記録するようにしたことによって、この場合はそれぞれ「３」、「４」、「１５」を記録すればよいことになる。
【０１１８】
これらによって、本データ記録送信装置１では、可変クロック信号によるタイミング情報を可変クロック信号関連情報として極めて小さな記憶容量で記録することができる。例えば、エンコーダ８０のマスタークロック信号が１０ＭＨｚ、平均ビットレート５Ｍｂｐｓの画像データを１０分間記録する場合を考える。このとき、可変クロック信号をそのまま記録すると、１５００Ｍバイトもの記憶容量となってしまう。それに対して、データ記録送信装置１で記録すると、６４００パルスに８ビットの記憶容量となるため、８４．４Ｍバイトとなる。
【０１１９】
また、本実施形態のデータ記録送信装置１においては、図６に示したデータ送信回路２０のＴカウンタ１３７が６４００パルスの処理期間を計時し、Ｔカウンタ１３７から６４００パルス毎に出力されるアクティブな信号に基づいて制御部５０が可変クロック信号関連情報を読み出し、その可変クロック信号関連情報に基づく可変クロック信号をクロックカウンタ１３９が送信する。これによって、６４００パルスの処理期間で見れば、送信される可変クロック信号のパルス数は、エンコーダ８０から出力された可変クロック信号のパルス数と変わらない。これによって、送信先の再生装置９０でリアルタイムにストリームデータを再生することができる。
【０１２０】
但し、６４００パルスの処理期間単位でのビットレートは、エンコーダ８０から出力されたときのビットレートとほぼ等しくなるが、上述したように、６４００パルスの処理期間よりも小さな期間でのビットレートは、エンコーダ８０から出力されたときのビットレートとは一般的に一致しない。ところが、再生装置９０での再生に影響はない。この理由を説明する。従来、可変クロック信号が記録されることはなかったために、送信タイミングがわからず、送信先の再生装置９０のデコーダ９２がバッファ９１から読み出そうとするタイミングで送信先のバッファ９１へ、該当するストリームデータを送信できないことが再生のできない理由であった。つまり、エンコーダ８０の出力と全く同じタイミング（パルス単位で同期させて）送信する必要はなく、再生装置９０のデコーダ９２が読み出そうとするタイミングで再生装置９０のバッファ９１へ該当するストリームデータを送信できていればよいのである。すなわち、１枚の画像（フレーム単位）で送信できていればよい。
【０１２１】
また、本実施形態のデータ記録送信装置１は、４００パルス毎に可変クロック信号のパルス数を示すｒカウンタ１０３を利用しており、６４００パルスの処理期間をＴカウンタ１０１が計時した時点でｒカウンタ１０３は可変クロック信号のパルス数の端数を保持している。これによって、ある処理期間における可変クロック信号のパルス数を４００パルスの単位パルス数で割った余りは、次の処理期間における可変クロック信号のパルス数に加算されることになる。つまり、６４００パルス毎に記録される可変クロック信号関連情報は整数として扱うことができ、端数の可変クロック信号のパルス数も欠落しない。
【０１２２】
さらにまた、本実施形態のデータ記録送信装置１は、制御部５０の読み出し処理において、最後の処理期間の可変クロック信号のパルス数をｒカウンタ１０３から直接読み出して記録している。これによって、最後にｒカウンタ１０３に残った可変クロック信号のパルス数も欠落しない。
【０１２３】
なお、本実施形態のデータ記録送信装置１では、図２中の４００パルスのｒカウンタ１０３に対して、その整数倍の期間である６４００パルスを計時するＴカウンタ１０１を利用していることにより、回路構成が簡潔になるという効果もある。また、本実施形態のデータ記録送信装置１におけるデータ保持回路１０はマスタークロック信号をエンコーダからの可変クロック信号に基づいてマスタークロックジェネレータ１１１が作成していた。これによって、エンコーダ８０の符号化処理と同期してデータの記録を行うことが可能である。一方、エンコーダ８０からの可変クロック信号がエンコーダ８０のマスタークロック信号を間引きして作成したものでなく、周期を変化させて作成したものであるときには、マスタークロック信号は本実施形態のデータ保持回路１０内で独自に作成してもよい。
【０１２４】
以上、本発明はこのような実施形態に何等限定されるものではなく、本発明の主旨を逸脱しない範囲において種々なる形態で実施し得る。
例えば、上記実施の形態においては、８ビット単位で制御部５０によりデータを転送していたが、バッファを持たせ複数バイトを一度に転送しても良い。さらにデータの転送において割り込みやＤＭＡを用いる事も有用である。
ファイルの形式も上記実施形態のように二つのファイルにするのではなく、一つのファイルにまとめる事もできる。この場合には可変クロック信号関連情報を先に記録する必要がある。なぜなら、送信時データ長を可変クロック信号関連情報により認識しなければならないからである。そのための構成としては、ストリームデータを６４００パルスの処理期間中バッファに保持し、その処理期間中の可変クロック信号関連情報が決まった後、可変クロック信号関連情報、ストリームデータの順にファイルに記録するようにすればよい。
【０１２５】
また、処理期間及び単位パルス数はデータ記録送信装置毎に設定されるものであり、本実施形態では処理期間を６４００パルス、単位パルス数を４００パルスとしているが、これに限定されるものではない。
【図面の簡単な説明】
【図１】実施形態のデータ記録送信装置の概略構成を示すブロック図である。
【図２】実施形態のデータ記録送信装置のデータ保持回路の回路図である。
【図３】データ保持回路からのデータ記録処理を示すフローチャートである。
【図４】データ保持回路のマスタークロックジェネレータの概略構成を示すブロック図である。
【図５】データ保持回路のマスタークロックジェネレータに対する信号のタイムチャートである。
【図６】実施形態のデータ記録送信装置のデータ送信回路の回路図である。
【図７】ＣＰＵにおけるデータ記録回路へのデータ送信処理を示すフローチャートの前半部分である。
【図８】ＣＰＵにおけるデータ記録回路へのデータ送信処理を示すフローチャートの後半部分である。
【図９】ＣＰＵにおける可変クロック信号関連情報から可変クロック信号のパルス数を算出するパルス数算出処理を示すフローチャートである。
【図１０】可変クロック信号の記録及び送信を示すタイムチャートである。
【図１１】可変クロック信号及びストリームデータの記録及び送信を示すタイムチャートである。
【図１２】エンコーダから出力される信号を示すタイムチャートである。
【図１３】可変クロック信号をパルス単位で表現したタイムチャートである。
【図１４】可変クロック信号をランレングス符号化した状態を示すタイムチャートである。
【図１５】エンコーダからの出力信号を説明するタイムチャートである。
【図１６】可変クロック信号関連情報の記録フォーマットの説明図である。
【図１７】端末内のタイムテーブルの説明図である。
【符号の説明】
１…データ記録送信装置          １０…データ保持回路
２０…データ送信回路              ５０…制御部
５１…ＣＰＵ                      ５２…ＲＯＭ
５３…ＲＡＭ                      ６１…ディスクインターフェース
６２…入出力インターフェース      ７０…ハードディスクドライブ
８０…エンコーダ                  ８２…端末
８３…タイムテーブル              ８５…ビデオ装置
９０…再生装置                    ９１…バッファ
９２…デコーダ                    ９３…モニタ
９４…送信路
１０１…Ｔカウンタ                １０３…ｒカウンタ
１０４…ｈカウンタ                １０６…アドレスデコーダ
１０７…８ビットカウンタ          １０９…シフトレジスタ
１１１…マスタークロックジェネレータ
１１２…マスタークロックオシレータ
１１３…ＰＬＬ
１０２，１５０，１０８，１１０……ラッチ
１３２…シフトレジスタ            １３３…８ビットカウンタ
１３４…アドレスデコーダ          １３５…クロックジェネレータ
１３７…Ｔカウンタ                １３９…クロックカウンタ
１３１，１３６，１３８…ラッチ    １４０…クロックラッチ
１４１，１４２…２入力ＯＲ
【図１】
0003645979.tif 000002
【図２】
0003645979.tif 000003
【図３】
0003645979.tif 000004
【図４】
0003645979.tif 000005
【図５】
0003645979.tif 000006
【図６】
0003645979.tif 000007
【図７】
0003645979.tif 000008
【図８】
0003645979.tif 000009
【図９】
0003645979.tif 000010
【図１０】
0003645979.tif 000011
【図１１】
0003645979.tif 000012
【図１２】
0003645979.tif 000013
【図１３】
0003645979.tif 000014
【図１４】
0003645979.tif 000015
【図１５】
0003645979.tif 000016
【図１６】
0003645979.tif 000017
【図１７】
0003645979.tif 000018