JP3645974B2 - データ記録送信方法及びデータ記録送信装置 - Google Patents

データ記録送信方法及びデータ記録送信装置 Download PDF

Info

Publication number
JP3645974B2
JP3645974B2 JP32303696A JP32303696A JP3645974B2 JP 3645974 B2 JP3645974 B2 JP 3645974B2 JP 32303696 A JP32303696 A JP 32303696A JP 32303696 A JP32303696 A JP 32303696A JP 3645974 B2 JP3645974 B2 JP 3645974B2
Authority
JP
Japan
Prior art keywords
period
strobe signal
stream data
data
strobe
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP32303696A
Other languages
English (en)
Other versions
JPH10164509A (ja
Inventor
典生 田川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Xing Inc
Original Assignee
Brother Industries Ltd
Xing Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd, Xing Inc filed Critical Brother Industries Ltd
Priority to JP32303696A priority Critical patent/JP3645974B2/ja
Publication of JPH10164509A publication Critical patent/JPH10164509A/ja
Application granted granted Critical
Publication of JP3645974B2 publication Critical patent/JP3645974B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Television Signal Processing For Recording (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、デジタルデータの送信に関し、より詳細には、デジタル圧縮画像の可変ビットレートによるデータ記録・送信の技術に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】
従来、MPEG(Moving Picture Image Coding Experts Group)に代表される画像圧縮方式で可変ビットレート(VBR)符号化と呼ばれる手法がある。可変ビットレート符号化では、例えば、再生される画像データに対して、ある画像から次の画像への差分が大きい場合は高レートで、一方、差分が小さい場合は低レートで符号化する。これにより、画質を落とすことなく平均的なビットレートを下げることができ、結果として固定ビットレート(CBR)符号化と呼ばれる手法に比べて高画質となる。
【0003】
ところで、MPEGに代表される画像圧縮方式は、一般的に蓄積系及び通信系の2つに応用される。もちろん、上述の可変ビットレート符号化の手法も主として蓄積系及び通信系の2つに応用されている。蓄積系への応用としては、例えばハードディスクやCD−ROM等の媒体に画像データを記録するということが考えられる。一方、通信系への応用としては、例えば、画像データを無線又は有線の送信路を介して送信し、送信先でリアルタイムにその画像データを再生するということが考えられる。
【0004】
しかし、蓄積系への応用で、ハードディスク等に記録した画像データを再度通信系へ応用しようとした場合、後述の問題が生じる。この問題点を説明するために、まず可変ビットレート符号化が可能なエンコーダからの出力を詳しく説明する。
【0005】
画像データを圧縮し、可変ビットレート符号化が可能なエンコーダでは、元の画像のタイムコードによりビットレートを変化させながら符号化を行う。このようなエンコーダは、一般的に、一定周期のクロック信号と、そのクロック信号に同期して出力されるビット単位で符号化されたストリームデータと、そのストリームデータの有効期間を示すストローブ信号との3つの信号を出力する。そして、このストローブ信号のデューティー比によって可変ビットレートを実現している。3つの信号の中でクロック信号及びストローブ信号は実質的に画像に関連したデータではない。
【0006】
この3つの信号を図10に基づいて説明する。図10は、クロック信号、ストリームデータ及びストローブ信号を示している。図10において、ストローブ信号がhighレベルである期間(図10中の期間T1及びT2)が有効なストリームデータが出力されている期間である。また、ストローブ信号の有効期間(図10中では期間T1及びT2)の長さによってビットレートが変化することになる。例えば、図10中での一定期間T3及びT4(T3=T4)を考えると、期間T3における期間T1は、期間T4における期間T2よりも長くなっている。つまり、期間T3は期間T4に対してビットレートが高い。
【0007】
後述の問題点を説明するため、次に、蓄積系へ可変ビットレート符号化が応用される場合のエンコーダからの信号の記録方法を説明する。例えばハードディスクやCD−ROM等の媒体へエンコーダからの出力を記録することを考える。このとき、エンコーダから出力される上述の3つの信号、すなわちクロック信号、ストリームデータ及びストローブ信号の中でストリームデータのみが記録される。その理由は、ストリームデータを解析することでビットレートの変化を認識できるためである。従って、可変ビットレートの変化を示すストローブ信号を記録しなくてもよい。つまり、再生の際には、デコーダがストリームデータを解析し、そのストリームデータのビットレートの変化を認識し、適当なタイミングでCD−ROM等の媒体からストリームデータを読み出すのである。なお、記録するストリームデータは、ストリームデータの有効分のみ(図10中では期間T1及びT2)を記録すれば十分である。
【0008】
上述のように、従来は、例えばハードディスクやCD−ROM等の媒体へエンコーダからの出力を記録する場合、ストリームデータのみが記録され、ストローブ信号は記録されない。
以下、ハードディスク等に記録した画像データを再度通信系へ応用した場合の問題点を説明する。例えば、媒体へ一旦記憶したストリームデータを送信して、送信先でリアルタイムに画像を再生するような場合を例に挙げる。この場合、送信先ではデコーダを用いて再生するのであるから、送信されたストリームデータのビットレートの変化は認識できる。しかし、送信元ではストローブ信号がないため、ストリームデータの送信タイミングが分からない。このため、デコーダがストリームデータを読み出す際に、該当するストリームデータが送信先のバッファに送信されてきていないという状況が起こる可能性がある。逆に、デコーダが必要とするタイミング以上の速度でストリームデータが送信され、送信先のバッファが飽和してしまうという可能性もある。
【0009】
このような問題点を解決する方法として次の2つの方法が考えられる。
第1番目の方法としては、送信元にもデコーダを設けることにより、ストリームデータ内部を解析し、ビットレートの変化を認識してストリームデータを送信する方法である。しかし、この方法によると、送信元の送信装置の構成が複雑になるという問題がある。
【0010】
第2の方法としては、エンコーダから出力されるストローブ信号を記録するという方法である。しかし、ストローブ信号をそのまま記録しようとすれば、記憶容量が膨大となってしまうためあまり実用的ではなかった。ここで、記憶容量が膨大となってしまう理由を、図11,図12に基づいて説明する。
【0011】
ストローブ信号をそのまま記録する場合、ストローブ信号は、ストローブ信号の有効期間と無効期間との比が送信タイミングを示すものとなるため、図11中に期間T6,T8で示される有効ストローブ信号と共に、図11中に期間T5,T7,T9で示される無効ストローブ信号も記録しなければならない。従って、ストリームデータの有効分よりも大きなストローブ信号を記録することになる。それに加えて、ストローブ信号をそのまま記録することを考えると、ストローブ信号の出力ビット数だけの記憶容量が必要となる。
【0012】
そこで、ランレングス符号化と呼ばれる方法を用いて記録する方法がある。この場合には同じストローブ信号が連続する長さを記録する。図12に示すように、ストローブ信号の無効期間が長さ2、ストローブ信号の有効期間が長さ9、ストローブ信号の無効期間が長さ11、ストローブ信号の有効期間が長さ5、ストローブ信号の無効期間が長さ5という具合いである。この方法によれば、ストローブ信号の有効期間が200ビット続く場合、そのまま記録すれば200ビットの記憶容量が必要であるが、長さ200を記録するため、8ビットの2進数(0〜255を表現できる)を利用すれば事足りることになる。しかし、例えば、ストローブ信号が短いビット数で有効期間・無効期間を繰り返し反転すると、記憶容量が増大してしまう。
【0013】
本発明は、上述の第2の方法を工夫するものであり、蓄積系への応用として記録したデータを再度通信系へ利用することを目的とする。
【0014】
【課題を解決するための手段及び発明の効果】
上述の目的を達成するためになされた請求項1に記載のデータ記録送信方法は、データを可変ビットレートで符号化することが可能なエンコーダからクロック信号に同期して出力されるストローブ信号に基づいて、所定の処理期間におけるストローブ信号の有効期間の合計を所定の単位期間で除して算出された商をストローブ信号関連情報として所定の処理期間毎に記録し、所定の処理期間を計時しながら、記録したストローブ信号関連情報に所定の単位期間を乗じて算出される期間を有効期間として、かつその有効期間の後に無効期間が連続するように所定の処理期間に送信すべきストローブ信号を作成して送信すると共に、エンコーダからストローブ信号と共にクロック信号に同期して出力されたストリームデータを記録し、その記録したストリームデータをストローブ信号の送信に対応させて送信することを特徴としている。
【0015】
上述の従来技術に示したように、ストローブ信号は、ストリームデータの送信タイミングを知るためのものであり、データを可変ビットレートで符号化することが可能なエンコーダからクロック信号に同期して、ストリームデータと共に出力される。ところが、ストローブ信号をそのまま記録しようとすると記憶容量が膨大となってしまうため、従来はストリームデータのみを記録していた。そのため、一旦、ハードディスク等の記録媒体に記録されたストリームデータは、デコーダによる解析を行わなければ、送信タイミングがわからなくなってしまっていた。
【0016】
そこで、本発明のデータ記録送信方法では、ストローブ信号をストローブ信号関連情報に変換することによって少ない記憶容量で記録し、送信の際には、記録したストローブ信号関連情報に基づき新たにストローブ信号を作成して送信するのである。また、それと共にストリームデータを記録し、ストローブ信号の送信に対応させて送信するのである。
【0017】
ここで、ストローブ信号に係る作用について詳しく説明する。
本発明のデータ記録送信方法では、ストローブ信号の有効期間を所定の処理期間毎に合計し、それを所定の単位期間で割った商をストローブ信号関連情報として所定の処理期間毎に記録する。
【0018】
そして、送信の際には、ストローブ信号関連情報に所定の単位期間を掛けた期間を有効期間とするストローブ信号を作成する。もちろん、このストローブ信号は所定の処理期間毎に送信するものである。但し、エンコーダからのストローブ信号の有効期間が所定の処理期間中のどの期間であったかは、ストローブ信号関連情報からは判断できない。そこで、所定処理期間の開始時点から有効期間が連続し、その後、その所定処理期間の終了時点まで無効期間が連続するようなストローブ信号を作成する。そして、所定の処理期間を計時しながらストローブ信号を送信する。なお、ここでいう「期間」は、クロック信号に基づく時間で判断してもよいし、便宜上ストローブ信号のビット数で判断してもよい。
【0019】
以上説明した作用により発揮される効果を、以下▲1▼〜▲4▼で詳しく説明する。
▲1▼ストローブ信号関連情報を所定の処理期間毎に記録することによって、有効期間に関する情報のみを記録すればよく、無効期間に関する情報を記録する必要がなくなる。なぜなら、ある処理期間の有効期間がわかれば無効期間は自ずとわかるからである。
【0020】
これによって、上述の図11,図12の例に示したようなストローブ信号の無効期間に関する情報を記録する方法に比べて、ストローブ信号の無効期間分の記憶容量が削減できる。
▲2▼所定の処理期間のストローブ信号の有効期間を合計したことによって、ストローブ信号が、有効期間、無効期間を何度も繰り返し反転するような場合であっても、記憶容量が変わらない。
【0021】
例えば、上述の図11に示したような方法では有効期間、無効期間をストローブ信号が反転する毎に記録することになるために、ストローブ信号の反転によって記憶容量が増える結果となっていた。それに対して、この場合は、ストローブ信号の有効期間を合計しており、ストローブ信号が反転する回数によって記憶容量が増えるようなことがなくなる。
【0022】
▲3▼所定の処理期間におけるストローブ信号の有効期間の合計を、所定の単位期間で割ることによって、ストローブ信号の出力期間に比例する記憶容量の増大は生じない。ここでは、説明上「期間」をエンコーダから出力されるストローブ信号のビット数で説明する。例えば、図8(b)に示すようにエンコーダからのストローブ信号の有効期間の合計が300ビット、200ビット、100ビットのとき、そのまま記録すれば、それぞれ300ビット、200ビット、100ビットという有効期間に比例する記憶容量が必要になる。ところが、所定の単位期間を100ビットとすれば、「3」、「2」、「1」という数値で記憶されることになり、その数値を記録するだけの記憶容量でよくなる。例えば、ランレングス符号化は、所定の単位期間を1ビットとしたものと考えられる。
【0023】
▲4▼所定の処理期間で見れば、送信されるストローブ信号の有効期間は、エンコーダから出力されたストローブ信号の有効期間の合計と変わらない。例えば、図8(b)に示すように、送信されるストローブ信号は、所定の処理期間Eに300ビット、所定の処理期間Fに200ビット、所定の処理期間Gに100ビットとなる。
【0024】
これによって、所定の処理期間に対する有効期間の割合は変わらない。すなわち、各処理期間でのビットレートは同じとなる。但し、E〜Gの各処理期間に送信するストローブ信号(図8(b)参照)の有効期間は、エンコーダから出力されたストローブ信号(図8(a)参照)の有効期間と比べてずれが生じる。しかし、送信先のデコーダで再生する上で問題は生じない。その理由は、送信先のデコーダが読み出すタイミングで該当するストリームデータが送信先のバッファに送信されておればよいからである。
【0025】
以上、▲1▼〜▲3▼に示したように、極めて少ない記憶容量で送信タイミングを維持するためのストローブ信号関連情報が記録できると共に、▲4▼に示したように、送信するデータを送信先でリアルタイムに再生することができる。すなわち、蓄積系への応用としてハードディスク等に一旦記録されたストリームデータを再度通信系へ利用することが可能となる。
【0026】
ところで、本発明では、所定の処理期間に出力されるストローブ信号の有効期間を所定の単位期間で割った商は整数でもよいし、あるいは、条件によっては小数でもよい。条件というのは、ある桁数以下の切捨てや切上げ等の処理である。なぜなら、小数点以下の桁数が多くなると記憶容量が大きくなるからである。しかし、切捨てや切上げ等の処理を行うと誤差が発生することになる。従って、商は整数で扱うことが望ましい。
【0027】
整数で扱うことを考えると、余りが出ることが考えられる。そこで、請求項2に示すように、所定の処理期間におけるストローブ信号の有効期間の合計を所定の単位期間で除した場合、ストローブ信号の有効期間の一部期間が余りとして算出された場合には、その一部期間を次の処理期間におけるストローブ信号の有効期間に加算してもよい。例えば、図8における処理期間Eでストローブ信号の有効期間が350ビットであるとすると、所定単位期間100ビットで割った余りとしての50ビットは処理期間Fで出力されるストローブ信号の有効期間200ビットに加算して、処理期間Fで出力されるストローブ信号の有効期間を250ビットとしてもよい。
【0028】
また、ストローブ信号の全出力期間が所定の処理期間の整数倍となっていない場合が考えられる。このときは、所定の処理期間で区切ることのできない最後の処理期間が存在する。ストローブ信号の全出力期間が所定の処理期間の整数倍となっている場合であっても、最後の所定の処理期間に余りとなった有効ストローブ信号が出て、次の処理期間に出力されることも考えられる。そこで、請求項3に示すように、ストローブ信号の全出力期間を所定の処理期間に区切っていくと、区切ることが可能な最後の所定処理期間の後に出力されるストローブ信号の有効期間については、当該有効期間を示す値を直接記録してもよい。
【0029】
例えば、図8に示した例で考えると、ストローブ信号が1900ビット出力された場合、所定期間Cの後に100ビットの所定期間に満たない期間ができる。このとき、この100ビットの期間中70ビットの有効期間であったとすると、「70」という数値を記録してもよい。また、図8中の所定期間Gでストローブ信号の有効期間が150ビットのときには、端数50ビットの有効期間は最後の所定期間Gの後に出力されたものとして考えることができる。このとき、その50ビットのストローブ信号の有効期間を「50」で記録してもよい。
【0030】
ところで、請求項4に示すように、所定の処理期間は、所定の単位期間の整数倍とするとよい。その理由は、例えば、制御する上で端数のビット数が出てくることがなくなり、この制御を例えば回路で構成する場合にはその回路構成が簡単になる。例えば、図8に示した例で、所定単位期間を80ビットとした場合、600ビットの所定の処理期間を計時するのに、80ビットずつ7回計時(560ビット)した後に40ビットの端数を計時しなければならないというようなことがなくなる。
【0031】
以上説明したデータ記録送信方法をデータ記録送信装置として構成した場合、請求項5に示すような構成が考えられる。すなわち、データを可変ビットレートで符号化することが可能なエンコーダからクロック信号に同期して出力されるストリームデータを記録するストリームデータ記録手段と、クロック信号に基づいて所定の単位期間の整数倍である所定の処理期間を計時する計時手段と、エンコーダからストリームデータと共にクロック信号に同期して出力されるストローブ信号の有効期間を順に加算し、その和が所定の単位期間となる毎に、その単位期間となった時点を判断し、その判断の回数を計数する計数手段と、計時手段による所定の処理期間の計時の終了時点で、計数手段によって計数された判断回数を記録し、その判断回数を初期化する記録初期化手段と、クロック信号を出力するクロック信号出力手段と、クロック信号出力手段によって出力されるクロック信号に基づいて所定の処理期間を計時する所定処理期間計時手段と、記録初期化手段によって記録された判断回数を読み出し、その読み出した判断回数に所定の単位期間を乗じて算出される期間を有効期間として算出する有効期間算出手段と、所定処理期間計時手段により計時される所定の処理期間に送信すべきストローブ信号で、有効期間算出手段によって算出された有効期間と、その有効期間に続く無効期間で構成されるストローブ信号を作成して送信するストローブ信号送信手段と、ストローブ信号送信手段によって送信されるストローブ信号に対応して、ストリームデータ記録手段によって記録されたストリームデータを送信するストリームデータ送信手段とを備えたことを特徴とするデータ記録送信装置である。
【0032】
本発明のデータ記録送信装置によれば、可変ビットレートで符号化されたデータを記録し、記録されたデータを送信する。以下、(1)でデータ記録における作用を説明し、(2)でデータ送信における作用を説明する。
(1)最初にデータ記録における作用を説明する。まず、ストリームデータ記録手段は、エンコーダから出力されるクロック信号に同期して出力されるストリームデータを記録する。エンコーダから出力されるストリームデータには、上述のように有効なストリームデータと無効なストリームデータとがあるが、有効なストリームデータだけを記録するのが望ましい。なぜなら、記憶容量が小さくなり、例えばCD−ROM等の一定サイズの媒体へ記録する場合等、より多くのデータを記憶できるからである。なお、有効なストリームデータと無効なストリームデータとの両方を記録することも考えられる。
【0033】
計時手段は、エンコーダから出力されるクロック信号に基づいて所定の単位期間の整数倍である所定の処理期間を計時する。計数手段は、エンコーダからストリームデータと共にクロック信号に同期して出力されるストローブ信号の有効期間を順に加算する。そして、その加算による和が所定の単位期間となる毎に、その時点を判断し、その判断の回数を計数する。そして、記録初期化手段が、計時手段により所定処理期間の計時が終了した時点で判断回数を記録して初期化する。なお、ここでいう「初期化」とは、次に有効ストローブ信号が所定の単位期間出力されたと判断された時に、判断回数が「1」となるようにするということである。
【0034】
ここで、図9(a)に示すタイムチャートに基づいて上述のデータ記録における作用を詳しく説明し、その結果としてストローブ信号の記憶に要する容量が少なくなることを説明する。なお、図9(a)では、所定の単位期間を400ビット、所定の処理期間を6400ビットとする。この場合、便宜上、「期間」をストローブ信号のビット数で扱うものとする。
【0035】
図9(a)には、エンコーダから出力されるストローブ信号及びストリームデータが示されている。図9(a)では、期間[t0〜t4]、期間[t5〜t7]及び期間[t9〜t11]がストローブ信号の有効期間である。対応するストリームデータもこれらの期間で有効となっている。
【0036】
ここで、ストリームデータ記録手段は、有効なストリームデータを記録するものとする。すなわち、上述の期間[t0〜t4],[t5〜t7],[t9〜t11]で出力されるストリームデータを記録する。
このとき、計時手段は6400ビットの所定の処理期間をクロック信号に基づいて計時する。図9(a)中では、期間[t0〜t8]及び期間[t8〜t12]が所定の処理期間である。
【0037】
そして、計数手段は、ストローブ信号の有効期間を順に加算して、400ビットとなる毎に、その時点を判断し、判断回数を計数する。ところで、図9(a)では、期間[t0〜t1],[t1〜t2],[t2〜t3],[t10〜t11]がそれぞれ400ビット、期間[t3〜t4],[t5〜t6],[t6〜t7],[t9〜t10]がそれぞれ200ビットである。従って、400ビット出力されたという判断が行われる時点は、時刻t1,t2,t3,t6,t10,t11となる。
【0038】
このとき、記録初期化手段は計時手段による所定期間の計時の終了時点で判断回数を記録して初期化する。つまり、図9(a)では、時刻t8及びt12で判断回数を記録して初期化する。時刻t8における判断回数は、時刻t1,t2,t3,t6の4回となるので「4」が記録される。ここで、一旦初期化されるため、時刻t10で新たに判断回数は「1」となり、t12で記録される判断回数は「2」となる。つまり、400ビットのストローブ信号をひとかたまりとして、6400ビット毎にそれがいくつあるかを記録するのである。
【0039】
この方法によれば、例えば6400ビットのストローブ信号が出力される間、全てのストローブ信号が有効であった場合、最大値「16」(6400÷400)が記録され、全てのストローブ信号が無効であった場合、最小値「0」が記録される。すなわち、6400ビット毎に「0」〜「16」を表現できる2進数、例えば5ビットの2進数を記録できる記憶容量が必要となるのみである。すなわち、そのまま記録すれば6400ビット必要となる記憶容量が、この例では5ビットもあれば十分となる。また、6400ビットの間にストローブ信号が有効・無効を何度変化しても関係ない。すなわち、上述のランレングス符号化の方法のようにストローブ信号の影響を受けない。
【0040】
(2)次に、データ送信における作用を説明する。クロック信号出力手段は、ストリームデータ及びストローブ信号を送信するためのクロック信号を出力する。そして、所定処理期間計時手段はクロック信号に基づき上述の所定処理期間を計時する。
【0041】
有効期間算出手段は、記録された上述の判断回数を読み出し、その読み出した判断回数と前記所定の単位期間とを掛け合わせ、有効期間を算出する。そして、ストローブ信号送信手段は、所定の処理期間に送信すべきストローブ信号で、かつ、算出した有効期間と、その有効期間に続く無効期間で構成されるようなストローブ信号を作成して送信する。ストリームデータ送信手段は、送信されるストローブ信号に対応して記録されたストリームデータを送信する。
【0042】
ここで、図9(b)に示すタイムチャートに基づいて上述のデータ送信における作用を詳しく説明し、通信系への応用として送信先へ記録したデータを送信し、再生することが可能であることを説明する。図9(b)は、送信されるストローブ信号及びそのストローブ信号に対応して送信されるストリームデータを示している。
【0043】
所定処理期間計時手段は、クロック信号出力手段により出力されたクロック信号に基づいて所定の処理期間を計時する。上述の図9(a)の例に対応させて所定の単位期間を400ビット、所定の処理期間を6400ビットとすると、図9(b)中の期間[t13〜t15]及び期間[t15〜t17]が所定の処理期間となる。
【0044】
有効期間算出手段は、記録された判断回数と所定の単位期間である400ビットとを掛け合わせ有効期間を算出する。つまり、図9(a)では、最初の所定処理期間で判断回数「4」が記録され、次の所定処理期間で判断回数「2」が記録された。そこで、400ビット×4=1600ビット、400ビット×2=800ビットを有効期間として算出する。
【0045】
そして、図9(b)に示すように、ストローブ信号送信手段は、所定の処理期間に送信すべきストローブ信号を、この場合、1600ビットの有効期間、それに続く4800ビットの無効期間という構成で1つ作成し、800ビットの有効期間、それに続く5600ビットの無効期間という構成で1つ作成して、時刻t13から最初のストローブ信号を送信し、時刻t15から次のストローブ信号を送信する。
【0046】
ストリームデータ送信手段は、有効ストローブ信号の送信に対応させて記録した有効分のストリームデータを送信する。図9(b)中では期間[t13〜t14],[t15〜t16]で記録した有効分のストリームデータを送信する。
これによれば、ストリームデータの送信タイミングは、エンコーダからの出力タイミングと比べてずれが生じることになる。例えば、図9(a)の期間[t5〜t6]で出力されたストリームデータBは、図9(b)ではストリームデータAの送信に連続して送信されることになる。また、図9(a)の期間[t6〜t7]で出力されたストリームデータCは、図9(b)では時刻t15より送信されることになる。さらに、図9(a)の期間[t9〜t11]で送信されたストリームデータDは、図9(b)ではストリームデータCの送信に連続して送信されることになる。
【0047】
ところが、データを再生する上で問題は生じない。その理由を説明する。
従来、ストローブ信号が記録されることはなかったために、送信タイミングがわからず、送信先のデコーダが読み出そうとするタイミングで送信先のバッファへ、該当するストリームデータを送信できないことが再生のできない理由であった。つまり、エンコーダの出力と全く同じタイミングで送信する必要はなく、送信先のデコーダが読み出そうとするタイミングで送信先のバッファへ該当するストリームデータを送信できていればよいのである。このようなずれの許容範囲は、送信先のバッファの記憶容量に依存することになる。
【0048】
以上、(1)及び(2)で説明したように、本発明のデータ記録送信装置によれば、ストローブ信号を小さな記憶容量で記憶でき、それに基づいてストリームデータを送信することによって、一旦記憶したストリームデータであっても、データを送信し、その送信先においてリアルタイムに再生することができる。一旦蓄積系への応用として記録したデータを、再び通信系へ応用することが可能となる。
【0049】
【発明の実施の形態】
以下、本発明の一実施形態について図面を参照して説明する。
図1は、本実施形態のデータ記録送信装置1の概略構成を示すブロック図である。
【0050】
データ記録送信装置1は、データ保持回路10と、データ送信回路20と、データ記録送信装置1全体を制御する制御部50と、データ記録送信装置1にハードディスクドライブ(以下「HDD」と記載する)70を接続するためのディスクインターフェース61と、データ記録送信装置1に、例えばCD−ROMライタ等を接続する入出力インターフェース62とを備えている。
【0051】
制御部50は、制御手段としてのCPU51と、プログラム記憶手段としてのROM52と、一時記憶手段としてのRAM53とを備えている。CPU51は、ROM52に予め記憶されているプログラムに基づいて後述するようなデータの記録及び読出処理を行う。このデータ記録及び読出処理を実行する際、RAM53はワークエリアとして機能する。
【0052】
データ保持回路10は、データを可変ビットレートで符号化可能なエンコーダ80と接続されている。エンコーダ80には、端末82及びビデオ装置85が接続されており、エンコーダ80は、ビデオ装置85から出力される映像データをエンコードしてクロック信号、ストローブ信号及びストリームデータを出力する。このときのビットレートは端末82によって指示される。例えば、図14に示すようなタイムコードとビットレートの対応を示すタイムテーブル83が端末82内に用意されており、ビデオ装置85の映像データのタイムコードに対応するビットレートが指示されることになる。
【0053】
データ保持回路10は、エンコーダ80からのクロック信号、ストローブ信号及びストリームデータの3つのデータに基づいて、ストローブ信号関連情報及び有効なストリームデータを取り出し保持する。なお、ストローブ信号及びストリームデータは、クロック信号に同期して出力される。有効なストリームデータはストローブ信号の有効期間に対応して出力される。
【0054】
制御部50は、データ保持回路10によるストローブ信号関連情報及び有効なストリームデータの取り出しに並行して、保持されたストローブ信号関連情報及び有効なストリームデータをデータ保持回路10より読み出し、HDD70に記録する。また、HDD70に記録されたストローブ信号関連情報及び有効なストリームデータを読み出し、ストローブ信号関連情報からストローブ信号の有効期間を算出して、算出したストローブ信号の有効期間及びストリームデータをデータ送信回路20へ順次転送する。
【0055】
データ送信回路20は、制御部50によって転送されてくるストローブ信号の有効期間に基づき新たにストローブ信号を作成し、送信路94を介して再生装置90へ送信すると共に、制御部50によって転送されてくるストリームデータをそのストローブ信号に対応させ、送信路94を介して再生装置90へ送信する。
【0056】
再生装置90は、データ送信回路20から送信されたデータを一時的に記録するバッファ91と、バッファ91に送信されてきたストリームデータを解析して再生するデコーダ92と、再生映像を映し出すモニタ93とを備えている。
このように本実施形態のデータ記録送信装置1は、エンコーダ80からの可変ビットレートで出力されるデータを、一旦HDD70へ記録し、後に再び送信先の再生装置90でリアルタイムに再生できるように、記録したデータを送信するものである。また、本実施形態のデータ記録送信装置1は、入出力インターフェース62を介して、従来通りCD−ROM等の記憶媒体に有効なストリームデータのみを記録することもできる。
【0057】
次に、本実施形態のデータ記録送信装置1の特徴であるデータ保持回路10、データ送信回路20及び制御部50に関して詳しく説明する。なお、(イ)でデータ保持回路10の構成及び機能、(ロ)で制御部50によるデータ保持回路10からのデータ記録処理と、それに伴うデータ保持回路10の動作、(ハ)でデータ送信回路20の構成及び機能、(ニ)で制御部50によるデータ送信回路20へのデータ転送処理とそれに伴うデータ送信回路20の動作を説明する。また、以下の説明では「所定の処理期間」として6400ビット、「所定の単位期間」として400ビットという具体的数値を用いることとする。
【0058】
(イ)図2に示す回路図に基づいてデータ保持回路10の構成及び機能を説明する。
データ保持回路10は、エンコーダ80からのクロック信号に基づき6400ビットの処理期間を計測する「計時手段」としてのTカウンタ101と、ストローブ信号がイネーブル端子に入力され、クロック信号に基づきストローブ信号の有効期間をカウントするrカウンタ103と、rカウンタ103から400ビット毎に出力されるアクティブな信号によりカウントアップするhカウンタ104と、Tカウンタ101から6400ビット毎に出力されるアクティブな信号を保持するラッチ102と、Tカウンタからアクティブな信号が出力されると、hカウンタ104の値を保持するラッチ105とを備えている。
【0059】
rカウンタ103は、ストローブ信号の有効期間を計時し、400ビット毎にhカウンタ104に対してアクティブな信号を出力する。hカウンタ104の計数値はTカウンタ101が6400ビット毎に出力するアクティブな信号によってラッチ105に保持される。これによって、6400ビットの所定期間におけるストローブ信号の有効期間の合計を400ビットの単位期間で割った整数商がラッチ105に保持されることになる。すなわち、ラッチ105に保持されるhカウンタ104の値が「ストローブ信号関連情報」となる。hカウンタ104の計数値がラッチ105に保持されると、その直後にhカウンタ104はクリアされて0となる。rカウンタ103及びhカウンタ104は「計数手段」に相当する。なお、ラッチ102にアクティブな信号が保持されるとラッチ105に保持されたストローブ信号関連情報を読み出せるよう構成されており、ラッチ105に保持されたストローブ信号関連情報が制御部50により読み出されるとクリアされる。
【0060】
また、データ保持回路10は、制御部50からのアクセスを管理するアドレスデコーダ106と、ストリームデータを8ビット単位にするシフトレジスタ109と、クロック信号に基づき8ビット毎にアクティブな信号を出力する8ビットカウンタ107と、8ビットカウンタ107から8ビット毎に出力されるアクティブな信号を保持するためのラッチ108と、8ビットカウンタからアクティブな信号が出力されると、シフトレジスタ109に入力されたストリームデータを保持するラッチ110とを備えている。
【0061】
アドレスデコーダ106は、アドレスバスに接続されており、制御部50からアクセスがあると対応するデータがデータバス上に出力されるよう構成されている。ラッチ108は、ラッチ110に保持されたストリームデータが制御部50により読み出されるとクリアされる。
【0062】
8ビットカウンタ107及びシフトレジスタ109のイネーブル端子には、ストローブ信号が入力されておりストローブ信号の有効期間に対応して動作するよう構成されている。これによって、シフトレジスタ109に入力されるストリームデータは有効なストリームデータのみとなる。
【0063】
(ロ)次に制御部50によるデータ保持回路10からのデータ記録処理と、それに伴うデータ保持回路10の動作を説明する。なお、制御部50によるデータ記録処理は図3のフローチャートに基づいて説明し、データ保持回路10の動作は図2の回路図に基づいて説明する。
【0064】
まず、最初のステップS1000において、ストリームデータを記録するためのファイルをオープンする。続くS1010では、ストローブ信号関連情報を記録するためのファイルをオープンする。なお、ストリームデータを記録するためのファイル及びストローブ信号関連情報を記録するためのファイルは、HDD70に用意されている。
次に、S1020では図2中のラッチ108にアクティブな信号が保持されているか否かを判断する。この処理は、ストリームデータが図2中のラッチ110に保持されているか否かを判断するための処理である。クロック信号に同期して8ビット分のストリームデータがシフトレジスタ109に入力され、8ビットカウンタ107からのアクティブな信号により、ラッチ110にその8ビットのストリームデータが保持され、8ビットカウンタ107からのアクティブな信号がラッチ108に保持される。
【0065】
S1020で肯定判断された場合、すなわちラッチ108にアクティブな信号が保持されている場合には、S1030にてラッチ110に保持されている8ビット分のストリームデータを読み出して、S1040にてHDD70中のストリームデータを記録するためのファイルに記録する。そして、S1050へ移行する。一方、S1020で否定判断された場合、すなわちラッチ108にアクティブな信号が保持されていない場合には、S1030及びS1040の処理を実行せずS1050へ移行する。なお、S1040の読み出し処理と同時にラッチ108はクリアされる。
【0066】
S1050では、ラッチ102にTカウンタ101からのアクティブな信号が保持されているか否かを判断する。この処理は、ラッチ105に6400ビットの処理期間に対応するストローブ信号関連情報が保持されているか否かを判断する処理である。Tカウンタ101が6400ビットの処理期間を計時してアクティブな信号を出力することにより、ラッチ105にストローブ信号関連情報としてhカウンタ104の計数値が保持され、Tカウンタ101からのアクティブな信号がラッチ102に保持される。その直後にhカウンタ104はクリアされて0となる。
【0067】
S1050で肯定判断された場合、すなわちラッチ102にアクティブな信号が保持されている場合には、S1060にてラッチ105に保持されているストローブ信号関連情報を読み出し、S1070にてストローブ信号関連情報を記録するためのHDD70中のファイルに記録する。そして、S1080へ移行する。一方、S1050で否定判断された場合、すなわちラッチ102にアクティブな信号が保持されていない場合には、S1060及びS1070の処理を実行せずS1080へ移行する。
【0068】
なお、S1060の読み出し処理と同時に、ラッチ102はクリアされる。また、S1070では、ストローブ信号関連情報がHDD70中のファイルに、図13に示すようなフォーマットで記録される。つまり、1つのストローブ信号関連情報の記憶領域として8ビットの記録領域が割り当てられており、最上位ビットに0が記録され、下位7ビットにストローブ信号関連情報が記録される。図13では、最初の処理期間のストローブ信号関連情報が4であり、次の処理期間でのストローブ信号関連情報が2である。このように、最上位ビットを0として順にストローブ信号関連情報が記憶されていき、最後の列にrカウンタ103に残った400ビット未満のストローブ信号の有効期間が記録される。このとき、400ビット単位で記録されたストローブ信号関連情報と区別するために最上位ビットを1として記録する。
【0069】
S1080では、エンコーダ80からのデータ出力が終了したか否かを判断する。この判断はエンコーダからのクロック信号に基づいて行われる。S1080で否定判断された場合、すなわちエンコーダ80からのデータ出力が終了していない場合には、S1020へ移行し、それ以降の処理を繰り返す。一方、S1080で肯定判断された場合、すなわちエンコーダ80からのデータ出力が終了した場合にはS1090へ移行する。
【0070】
S1090では、エンコーダ80からの出力の終了時点でrカウンタ103に残った400ビット未満のストローブ信号の有効期間を読み出し、そのストローブ信号の有効期間を直接記録する。繁雑になるため、図2では省略したが、上述の有効期間を取り出すために、rカウンタ103の計数値を読み出す回路が用意されている。rカウンタ103に残った400ビット未満のストローブ信号の有効期間は、上述のように、図13に示すフォーマットの最後の列に記録され、この場合は、最上位ビットを1として下位の7ビットにrカウンタの計数値が記録される。
【0071】
続くS1100では、ストリームデータを記録するためのファイルをクローズする。そして、S1110では、ストローブ信号関連情報を記録するためのファイルをクローズして処理を終了する。
なお、ストリームデータを記録したファイルには、ストリームデータの有効分のみが記録されているので、例えばCD−ROM等に記録する場合には、それを読み出して入出力インターフェース62を介して記録すればよい。また、制御部50は「記録初期化手段」及び「ストリームデータ記録手段」に相当し、制御部50が実行する処理の内、ステップS1060及びS1070が記録初期化手段としての処理に相当し、ステップS1030がストリームデータ記録手段としての処理に相当する。
【0072】
(ハ)図4は、データ送信回路20の回路構成を示す回路図である。次に図4に示す回路図に基づきデータ送信回路20の構成及び機能を説明する。
データ送信回路20は、クロック信号を出力する「クロック信号出力手段」としてのクロックジェネレータ135と、クロックジェネレータ135からのクロック信号に基づいて6400ビットの処理期間を計時するための「所定処理期間計時手段」としてのTカウンタ137と、アドレスバスに接続され図1に示す制御部50からデータ送信回路20に対するアクセスを管理するアドレスデコーダ134と、制御部50によって図1に示すHDD70からストローブ信号関連情報が読み出され、そのストローブ信号関連情報から算出されたストローブ信号の有効期間を保持するストローブラッチ140と、ストローブラッチ140から転送される有効期間のストローブ信号に基づき、クロックジェネレータ135からのクロック信号に基づいてストローブ信号を生成し送信する「ストローブ信号送信手段」としてのストローブカウンタ139とを備えている。
【0073】
なお、クロックジェネレータ135から出力されるクロック信号の周波数はエンコーダ80から出力されたクロック信号の周波数と同じである。アドレスデコーダ134からは信号H〜Mが制御部50のアクセスに対応して出力される。
また、データ送信回路20は、制御部50によってHDD70から8ビット単位で読み出されたストリームデータを保持するラッチ131と、ラッチ131から転送される8ビット単位のストリームデータを1ビット単位(シリアル)にし、クロックジェネレータ135からのクロック信号に基づいてバッファ91に送信するシフトレジスタ132と、クロックジェネレータ135からのクロック信号に基づいて8ビットの期間を計時する8ビットカウンタ133とを備えている。
【0074】
シフトレジスタ132及び8ビットカウンタ133のイネーブル端子には、ストローブカウンタ139から出力されるストローブ信号が入力されており、ストローブ信号の有効期間のみ動作するよう構成されている。これによって、ストリームデータはストローブ信号に対応して送信されることになる。なお、シフトレジスタ132は「ストリームデータ送信手段」に相当する。
【0075】
さらにまた、データ送信回路20は、8ビットカウンタ133が8ビットの期間を計時する毎に出力するアクティブな信号を保持するためのラッチ136と、Tカウンタ137が6400ビット毎に出力するアクティブな信号を保持するためのラッチ138とを備えている。ラッチ136は、制御部50がストリームデータをラッチ131に書き出すタイミングを判断するためのものであり、ラッチ138は制御部50がストローブ信号の有効期間をストローブラッチ140に書き出すタイミングを判断するためのものである。ラッチ136及びラッチ138は、制御部50による書き出しが行われると同時にアドレスデコーダ134から出力される信号I及びKによってそれぞれクリアされる。
【0076】
また、データ送信回路20は、8ビットカウンタ133からの出力とアドレスデコーダ134からの信号Hとが入力される2入力OR142と、Tカウンタ137の出力とアドレスデコーダ134からの信号Jとが入力される2入力OR141とを備えている。2入力OR142の出力はシフトレジスタ132のLD端子に入力され、2入力OR141の出力はストローブカウンタ139のLD端子に入力されている。
【0077】
これによって、アドレスデコーダ134からの信号Hがアクティブになったとき又は8ビットカウンタ133からの出力がアクティブになったときには、シフトレジスタ132にラッチ131に保持されているストリームデータが転送される。同様にアドレスデコーダからの信号Jがアクティブになったとき又はTカウンタからの出力がアクティブになったときには、ストローブラッチ140に保持されているストローブ信号の有効期間が、ストローブカウンタ139に転送される。
【0078】
ストローブカウンタ139及びTカウンタ137のイネーブル端子には、アドレスデコーダ134の信号Lが入力されており、この信号Lがアクティブになるとデータの送信が開始される。
(ニ)次に、制御部50によるデータ送信回路20へのデータ転送処理と、それに伴うデータ送信回路20の動作を説明する。なお、制御部50によるデータ転送処理は図5、図6及び図7のフローチャートに基づいて説明し、データ送信回路20の動作については図4の回路図に基づいて説明する。
【0079】
図5中の最初のステップS1200において、制御部50はストローブ信号関連情報を記録したファイル及びストリームデータを記録したファイルをオープンする。続くS1210では、ストリームデータを記録したHDD70中のファイルから8ビット単位でストリームデータを読み出す。そして、S1220にて、読み出したストリームデータを図4中のラッチ131に書き出す。この処理でラッチ136はクリアされる。
【0080】
S1230では、図4中のラッチ131に保持された8ビットのストリームデータをシフトレジスタ132へ転送する。これは、シフトレジスタ132のLD端子への入力信号であるアドレスデコーダ134からの信号Hをアクティブにすることによって行われる。
【0081】
S1240及びS1250は、上述のS1210及びS1220と同様の処理が行われる。すなわち、ストリームデータを記録したファイルから8ビット単位でストリームデータを読み出し(S1240)、読み出したストリームデータをラッチ131に書き出す(S1250)。
【0082】
S1210〜S1250の処理によって、シフトレジスタ132に8ビットのストリームデータが保持され、ラッチ131にはそれに続く8ビットのストリームデータが保持されていることになる。
S1260では、ストローブ信号関連情報を記録したHDD70中のファイルからストローブ信号関連情報を読み出す。続くS1261では、読み出したストローブ信号関連情報に基づき6400ビットの処理期間に対するストローブ信号の有効期間を算出する。この有効期間算出処理については後述する。そして、S1262では、算出したストローブ信号の有効期間を図4中のストローブラッチ140に書き出す。
【0083】
S1263では、ストローブラッチ140に保持されたストローブ信号の有効期間をストローブカウンタ139へ転送する。これは、ストローブカウンタ139のLD端子への入力信号であるアドレスデコーダ134からの信号Kをアクティブにすることによって行われる。
【0084】
S1264〜S1266では、S1260〜S1262と同様の処理を行う。すなわち、ストローブ信号関連情報を記録したHDD70中のファイルからストローブ信号関連情報を読み出し(S1264)、ストローブ信号の有効期間を算出し(S1265)、ストローブラッチ140に書き出す(S1266)。
【0085】
S1260〜S1266の処理によって、図4中のストローブカウンタ139には最初の6400ビットの処理期間に対応するストローブ信号の有効期間がセットされ、ストローブラッチ140には次の6400ビットの処理期間に対応するストローブ信号の有効期間が保持される。
【0086】
そして、図6中のS1267で送信の開始を指示する。この処理は、ストローブカウンタ139及びTカウンタ137のイネーブル端子への入力信号であるアドレスデコーダ134からの信号Lをアクティブとする処理である。これによって、図4中のストローブカウンタ139及びTカウンタ137がクロックジェネレータ135からのクロック信号に同期して動作を開始する。
【0087】
図4中のストローブカウンタ139は、セットされた有効期間をカウントしている間は有効なストローブ信号を出力し続け、有効期間のカウントが終了すると無効なストローブ信号を出力する。Tカウンタ137は6400ビットの処理期間をカウントするとアクティブな信号を出力する。この信号はラッチ138に保持されると同時にストローブカウンタ139のLD端子へ入力される。LD端子へアクティブな信号が入力されることで、ストローブカウンタ139にストローブラッチ140から次の処理期間におけるストローブ信号の有効期間が転送される。
【0088】
そして、ストローブカウンタ139が有効なストローブ信号を出力している間は8ビットカウンタ133及びシフトレジスタ132のイネーブル端子にアクティブな信号が入力されることになるため、有効なストローブ信号の出力期間に対応して、8ビットカウンタ133及びシフトレジスタ132が動作する。
【0089】
シフトレジスタ132はセットされている8ビット単位のストリームデータを1ビット単位(ビットシリアル)で送信する。8ビットカウンタは8ビット毎にアクティブな信号を出力する。この信号はラッチ136に保持されると共に、2入力OR142を介してシフトレジスタ132のLD端子へ入力される。シフトレジスタ132はアクティブな信号がLD端子に入力されると、ラッチ131から次の8ビットのストリームデータを転送する。
【0090】
このように、ストローブカウンタは6400ビット毎にストローブ信号の有効期間をストローブラッチ140からTカウンタ137に基づき転送し、シフトレジスタ132は、ストローブカウンタが有効なストローブ信号を出力している間、8ビット毎にラッチ131よりストリームデータを転送する。
【0091】
これらのデータ送信の動作に対応して以下に説明するように、制御部50がストローブラッチ140及びラッチ131へのデータの書き出しを行う。
S1270では、ラッチ136にアクティブな信号が保持されているか否かを判断する。この処理は、ラッチ136に保持される8ビット単位のストリームデータが既にシフトレジスタ132に転送されているか否かを判断するための処理である。8ビットの期間が8ビットカウンタ133により計時されシフトレジスタ132にラッチ136に保持されたストリームデータが転送されている場合、ラッチ131には8ビットの期間を計時したカウンタ133から出力されたアクティブな信号が保持されている。
【0092】
S1270で肯定判断された場合、すなわちラッチ136にアクティブな信号が保持されている場合には、S1280にてストリームデータを記録したHDD70中のファイルから8ビット単位でストリームデータを読み出し、S1290にて、読み出したストリームデータラッチ131へ書き出す。このとき、アドレスデコーダ134からはラッチ136に対する信号Iがアクティブで出力されラッチ136がクリアされる。一方、S1270で否定判断された場合、すなわちラッチ136にアクティブな信号が保持されていない場合には、S1280及びS1290の処理を実行せずS1300へ移行する。
【0093】
S1300では、ラッチ138にアクティブな信号が保持されているか否かを判断する。この処理は、ストローブラッチ140に保持されるストローブ信号の有効期間が既にストローブカウンタ139に転送されているか否かを判断するための処理である。6400ビットの処理期間が計時され、ストローブカウンタ139にストローブラッチ140に保持されたストローブ信号の有効期間が転送されている場合、ラッチ138には、6400ビットの処理期間を計時したTカウンタ137からのアクティブな信号が保持されている。
【0094】
S1300で肯定判断された場合、すなわちラッチ138にアクティブな信号が保持されている場合には、S1310にてストローブ信号関連情報の記録されたHDD70中のファイルからストローブ信号関連情報を読み出し、S1315でストローブ信号関連情報からストローブ信号の有効期間を算出し、S1320にてストローブラッチ140へ算出した有効期間を書き出して1330へ移行する。なお、S1320の書き出し処理では、アドレスデコーダ134からの信号Kがアクティブとなり、ラッチ138はクリアされる。一方、S1300で否定判断された場合、すなわちラッチ138にアクティブな信号が保持されていない場合には、S1310〜S1320の処理を実行せずS1330へ移行する。
【0095】
S1330では、ストリームデータを全て読み出したか否かを判断する。ストリームデータを全て読み出している場合(S1330:YES)、S1340にてストリームデータを記録したファイル及びストローブ信号関連情報を記録したファイルをそれぞれクローズして処理を終了する。一方、ストリームデータを全て読み出していない場合(S1330:NO)、S1270へ移行して以降の処理を繰り返す。
【0096】
なお、制御部50が「有効期間算出手段」に相当し、制御部50が実行する処理の内、ステップS1260,S1261,S1264,S1265,S1310,S1315が有効期間算出手段としての処理に相当する。
次にS1261,S1265,S1315に示した有効期間算出処理を図7のフローチャートに基づいて説明する。
【0097】
まず、最初のステップS1400において、読み出したストローブ信号関連情報の最上位ビットが0であるか否かを判断する。最上位ビットが0である場合(S1400:YES)、ストローブ信号関連情報を400倍する。一方、最上位ビットが0でない場合(S1400:NO)、S1410の処理を実行せず本有効期間算出処理を終了する。つまり、最上位ビットを0として通常記録されるストローブ信号関連情報は、有効期間を400ビットの単位期間で割った商であるため、400倍して有効期間を算出するのである。最後に図2中のrカウンタ103に残ったストローブ信号の有効期間については上述したように最上位ビットを1として記録されている。この場合、有効期間を記録しているため読み出したストローブ信号関連情報がそのままストローブ信号の有効期間になるのである。
【0098】
以上説明した本実施形態のデータ記録送信装置1の動作を図9のタイミングチャートに基づいて具体的に説明する。
まず、図9(a)に基づきデータ記録の動作を説明する。
図9(a)には、エンコーダ80から出力されるストローブ信号及びストリームデータが示されている。図9(a)では、期間[t0〜t4]、期間[t5〜t7]及び期間[t9〜t11]がストローブ信号の有効期間である。対応するストリームデータもこれらの期間で有効となっている。
【0099】
ここで、図2に示したようにストリームデータを取り出すシフトレジスタ109及び8ビット単位でストリームデータを取り出すための8ビットカウンタ107のイネーブル端子にはストローブ信号が入力されており、ストローブ信号の有効期間でのみ動作するよう構成されているので、ストリームデータの有効分のみがラッチ110に保持される。すなわち、上述の期間[t0〜t4],[t5〜t7],[t9〜t11]で出力されるストリームデータが制御部50によって記録される。
【0100】
このとき、図2中のTカウンタ101は6400ビットの処理期間をエンコーダ80からのクロック信号に基づいて計時し、6400ビット毎にアクティブな信号を出力する。図9(a)中では、期間[t0〜t8]及び期間[t8〜t12]が6400ビットであるため、時刻t8及びt12でTカウンタ101からアクティブな信号が出力される。
【0101】
そして、図2中のrカウンタ103は、ストローブ信号の有効期間を順に加算して、有効期間が400ビットとなる毎にアクティブな信号をhカウンタ104へ出力する。hカウンタ104はrカウンタ103からアクティブな信号が出力されるとカウントアップする。ところで、図9(a)では、期間[t0〜t1],[t1〜t2],[t2〜t3],[t10〜t11]がそれぞれ400ビット、期間[t3〜t4],[t5〜t6],[t6〜t7],[t9〜t10]がそれぞれ200ビットである。従って、rカウンタ103からアクティブな信号が出力される時刻は、時刻t1,t2,t3,t6,t10,t11となる。
【0102】
制御部50は図2中のラッチ102にTカウンタ101からのアクティブな信号が保持されている場合、ラッチ105に保持されているストローブ信号関連情報であるhカウンタ104の計数値をHDD70へ記録する。そして、ラッチ105の値を読み出すと同時にラッチ102をクリアする。つまり、図9(a)では、時刻t8及びt12でラッチ102にアクティブな信号が保持されるため、そのすぐ後にラッチ105に保持されたストローブ信号関連情報が記録される。時刻t8におけるラッチ105の値は、時刻t1,t2,t3,t6でhカウンタ104がカウントアップされるため「4」となる。ここで、hカウンタ104はクリアされて0となるため、時刻t10で新たにhカウンタ104の値は「1」となり、t12でのhカウンタ104の値は「2」、従ってt12でのラッチ105の値は「2」となる。
【0103】
これによって、6400ビットの処理期間の全てのストローブ信号が有効であった場合、ラッチ105には最大値「16」が保持され、全てのストローブ信号が無効であった場合、ラッチ105には最小値「0」が保持される。従って、本実施形態では6400ビット毎の処理期間に対してストローブ信号関連情報を記録するための記憶容量を6400ビットの処理期間毎に8ビット用意している。また、図2中のrカウンタ103は、ストローブ信号の有効期間を順に加算していくため、6400ビットの間にストローブ信号が有効・無効を何度変化しても関係ない。すなわち、上述の従来技術に示したランレングス符号化の方法のようにストローブ信号の影響を受けない。
【0104】
次に、図9(b)に基づきデータ送信の動作を説明する。
図9(b)は、送信されるストローブ信号及びそのストローブ信号に対応して送信されるストリームデータを示している。
図4中のTカウンタ137はクロックジェネレータ135から出力されたクロック信号に基づいて6400ビットの処理期間を計時する。図9(b)中の期間[t13〜t15]及び[t15〜t17]が6400ビットの処理期間であり、Tカウンタ137は時刻t15及びt17でアクティブな信号を出力する。
【0105】
制御部50は、ストローブ信号関連情報をHDD70より読み出し、ストローブ信号の有効期間を算出する。つまり、図9(a)では、最初の処理期間でラッチ105の値「4」がストローブ関連情報として記録され、次の処理期間でラッチ105の値「2」が記録された。そこで、制御部50は、400ビット×4=1600ビット、400ビット×2=800ビットを有効期間として算出する。
【0106】
そして、ストローブカウンタ139はストローブラッチ140から転送されセットされた有効期間をカウントしながら有効なストローブ信号を図9(b)中の時刻t14まで送信する。そして、セットされた有効期間が0となると、Tカウンタ137がアクティブな信号を出力する時刻t15まで無効なストローブ信号を送信する。
【0107】
図4中のシフトレジスタ132及び8ビットカウンタ133のイネーブル端子にはストローブカウンタ139から送信されるストローブ信号が入力されており、ストローブ信号の送信に対応してストリームデータの有効分を送信する。図9(b)中では期間[t13〜t14],[t15〜t16]で、有効分のストリームデータを送信する。
【0108】
これによれば、ストリームデータの送信タイミングは、エンコーダ80からの出力タイミングと比べてずれが生じることになる。例えば、図9(a)の期間[t5〜t6]で出力されたストリームデータBは、図9(b)ではストリームデータAの送信に連続して送信されることになる。また、図9(a)の期間[t6〜t7]で出力されたストリームデータCは、図9(b)では時刻t15より送信されることになる。さらに、図9(a)の期間[t9〜t11]で送信されたストリームデータDは、図9(b)ではストリームデータCの送信に連続して送信されることになる。
【0109】
以上説明してきた本実施形態のデータ記録送信装置1により発揮される効果を詳しく説明する。
本実施形態のデータ記録送信装置1においては、図2に示したデータ保持回路10のTカウンタ101が6400ビットの処理期間を計時し、この処理期間毎にラッチ105に保持されるストローブ信号関連情報を記録することにより、ストローブ信号の無効期間に関する情報を記録する必要がなくなる。なぜなら、6400ビットの処理期間中の有効期間に対応する情報がストローブ信号関連情報であり、ストローブ信号関連情報を記録することによって、ストローブ信号の無効期間は自ずとわかるからである。
【0110】
これによって、上述の図11,図12の例に示したようなストローブ信号の無効期間に関する情報を記録する方法に比べて、ストローブ信号の無効期間分の記憶容量が削減できる。
一方、図2中のストローブ信号の有効期間を計時するrカウンタ103は、ストローブ信号の有効期間を順に加算していくため、ストローブ信号が有効期間、無効期間を何度も繰り返し反転しても影響されない。これによって、ストローブ信号関連情報は、6400ビットの処理期間中のストローブ信号の有効期間の合計に関する情報となり、6400ビットの処理期間毎に一定の記憶容量となる。
【0111】
例えば、上述の図11に示したような方法では有効期間、無効期間をストローブ信号が反転する毎に記録することになるために、ストローブ信号の反転によって記憶容量が増える結果となっていた。それに対して、この場合は、ストローブ信号が反転する回数によって記憶容量が増えるようなことがなくなる。
【0112】
さらに、6400ビットの処理期間におけるストローブ信号の有効期間の合計を、400ビットの単位期間で割った整数商を記録することによって、ストローブ信号の出力期間に比例する記憶容量の増大は生じない。例えば、ストローブ信号の有効期間が1200ビット、1600ビット、6000ビットであった場合、そのまま記録すれば1200ビット、1600ビット、6000ビットという有効期間に比例する記憶容量が必要となる。ところが、400ビットの単位期間でわった整数商を記録するようにしたことによって、この場合はそれぞれ「3」、「4」、「15」を記録すればよいことになる。
【0113】
これらによって、本データ記録送信装置1では、ストローブ信号関連情報を極めて小さな記憶容量で記録することができる。例えば、クロック信号が15MHz、平均ビットレート5Mbpsの画像データを10分間記録する場合を考える。このとき、ストローブ信号をそのまま記録すると、2250Mバイトもの記憶容量となってしまう。それに対して、データ記録送信装置1で記録すると、6400ビットに8ビットの記憶容量となるため、84.4Mバイトとなる。
【0114】
また、本実施形態のデータ記録送信装置1においては、図4に示したデータ送信回路20のTカウンタ137が6400ビットの処理期間を計時し、Tカウンタ137から6400ビット毎に出力されるアクティブな信号に基づいて制御部50がストローブ信号関連情報を読み出し、そのストローブ信号関連情報に基づくストローブ信号をストローブカウンタ139が送信する。これによって、6400ビットの処理期間で見れば、送信されるストローブ信号の有効期間は、エンコーダ80から出力されたストローブ信号の有効期間の合計と変わらない。これによって、送信先の再生装置90でリアルタイムにストリームデータを再生することができる。
【0115】
但し、6400ビットの処理期間単位でのビットレートは、エンコーダ80から出力されたときのビットレートとほぼ等しくなるが、上述したように、6400ビットの処理期間よりも小さな期間でのビットレートは、エンコーダ80から出力されたときのビットレートとは一般的に一致しない。ところが、再生装置90での再生に影響はない。この理由を説明する。従来、ストローブ信号が記録されることはなかったために、送信タイミングがわからず、送信先の再生装置90のデコーダ92がバッファ91から読み出そうとするタイミングで送信先のバッファ91へ、該当するストリームデータを送信できないことが再生のできない理由であった。つまり、エンコーダ80の出力と全く同じタイミング(ビット単位で同期させて)送信する必要はなく、再生装置90のデコーダ92が読み出そうとするタイミングで再生装置90のバッファ91へ該当するストリームデータを送信できていればよいのである。このようなずれの許容範囲は、再生装置90のバッファ91の記憶容量に依存することになる。
【0116】
また、本実施形態のデータ記録送信装置1は、400ビット毎にストローブ信号の有効期間を示すrカウンタ103を利用しており、6400ビットの処理期間をTカウンタ101が計時した時点でrカウンタ103はストローブ信号の有効期間の端数を保持している。これによって、ある処理期間におけるストローブ信号の有効期間を400ビットの単位期間で割った余りとしての期間は、次の処理期間におけるストローブ信号の有効期間に加算されることになる。つまり、6400ビット毎に記録されるストローブ信号関連情報は整数として扱うことができ、端数のストローブ信号の有効期間も欠落しない。
【0117】
さらにまた、本実施形態のデータ記録送信装置1は、制御部50の読み出し処理において、最後の処理期間のストローブ信号をrカウンタ103から直接読み出して記録している。これによって、最後にrカウンタ103に残ったストローブ信号の有効期間も欠落しない。
【0118】
なお、本実施形態のデータ記録送信装置1では、図2中の400ビットのrカウンタ103に対して、その整数倍の期間である6400ビットを計時するTカウンタ101を利用していることにより、回路構成が簡潔になるという効果もある。
【0119】
以上、本発明はこのような実施形態に何等限定されるものではなく、本発明の主旨を逸脱しない範囲において種々なる形態で実施し得る。
例えば、上記実施の形態においては、8ビット単位で制御部50によりデータを転送していたが、バッファを持たせ複数バイトを一度に転送しても良い。さらにデータの転送において割り込みやDMAを用いる事も有用である。
【0120】
ファイルの形式も上記実施形態のように二つのファイルにするのではなく、一つのファイルにまとめる事もできる。この場合にはストローブ信号関連情報を先に記録する必要がある。なぜなら、送信時データ長をストローブ信号関連情報により認識しなければならないからである。そのための構成としては、ストリームデータを6400ビットの処理期間の間メモリ上のバッファに保持し、その処理期間中のストローブ信号関連情報が決まった後、ストローブ信号関連情報、ストリームデータの順にファイルに記録するようにすればよい。
【0121】
また、処理期間を6400ビット、単位期間を400ビットとすることも限定されるものではない。
【図面の簡単な説明】
【図1】実施形態のデータ記録送信装置の概略構成を示すブロック図である。
【図2】実施形態のデータ記録送信装置のデータ保持回路の回路図である。
【図3】データ保持回路からのデータ記録処理を示すフローチャートである。
【図4】実施形態のデータ記録送信装置のデータ送信回路の回路図である。
【図5】CPUにおけるデータ記録回路へのデータ送信処理を示すフローチャートの前半部分である。
【図6】CPUにおけるデータ記録回路へのデータ送信処理を示すフローチャートの後半部分である。
【図7】CPUにおけるストローブ信号関連情報からストローブ信号の有効期間を算出する有効期間算出処理を示すフローチャートである。
【図8】ストローブ信号の記録及び送信を示すタイムチャートである。
【図9】ストローブ信号及びストリームデータの記録及び送信を示すタイムチャートである。
【図10】エンコーダから出力される信号を示すタイムチャートである。
【図11】エンコーダから出力される信号をビット単位で表現したタイムチャートである。
【図12】ストローブ信号をランレングス符号化したタイムチャートである。
【図13】ストローブ信号関連情報の記録フォーマットを示す説明図である。
【図14】端末内のタイムテーブルの説明図である。
【符号の説明】
1…データ記録送信装置 10…データ保持回路
20…データ送信回路 50…制御部
51…CPU 52…ROM
53…RAM 61…ディスクインターフェース
62…入出力インターフェース 70…ハードディスクドライブ
80…エンコーダ 82…端末
83…タイムテーブル 85…ビデオ装置
90…再生装置 91…バッファ
92…デコーダ 93…モニタ
94…送信路
101…Tカウンタ 103…rカウンタ
104…hカウンタ 106…アドレスデコーダ
107…8ビットカウンタ 109…シフトレジスタ
102,150,108,110……ラッチ
132…シフトレジスタ 133…8ビットカウンタ
134…アドレスデコーダ 135…クロックジェネレータ
137…Tカウンタ 139…ストローブカウンタ
131,136,138…ラッチ 140…ストローブラッチ
141,142…2入力OR

Claims (5)

  1. データを可変ビットレートで符号化可能なエンコーダからクロック信号に同期して出力されるストローブ信号に基づき、所定の処理期間における前記ストローブ信号の有効期間の合計を所定の単位期間で除して算出された商をストローブ信号関連情報として前記所定の処理期間毎に記録し、
    前記所定の処理期間を計時しながら、前記記録したストローブ信号関連情報に前記所定の単位期間を乗じて算出される期間を有効期間として、かつ当該有効期間の後に無効期間が連続するように前記所定の処理期間に送信すべきストローブ信号を作成して送信すると共に、
    前記エンコーダからストローブ信号と共に前記クロック信号に同期して出力されたストリームデータを記録し、
    当該記録したストリームデータを前記ストローブ信号の送信に対応させて送信することを特徴とするデータ記録送信方法。
  2. 前記所定の処理期間におけるストローブ信号の有効期間の合計を前記所定の単位期間で除した場合、前記ストローブ信号の有効期間の一部期間が余りとして算出された場合には、当該一部期間を次の処理期間におけるストローブ信号の有効期間に加算することを特徴とする請求項1に記載のデータ記録送信方法。
  3. 前記ストローブ信号の全出力期間を前記所定の処理期間に区切った場合に区切ることが可能な最後の処理期間の後に出力されるストローブ信号の有効期間については、当該有効期間を示す値を直接記録することを特徴とする請求項1又は2に記載のデータ記録送信方法。
  4. 前記所定の処理期間は、前記所定の単位期間の整数倍とすることを特徴とする請求項1〜3のいずれかに記載のデータ記録送信方法。
  5. データを可変ビットレートで符号化可能なエンコーダからクロック信号に同期して出力されるストリームデータを記録するストリームデータ記録手段と、
    前記クロック信号に基づいて所定の単位期間の整数倍である所定の処理期間を計時する計時手段と、
    前記エンコーダから前記ストリームデータと共に前記クロック信号に同期して出力される前記ストローブ信号の有効期間を順に加算し、その和が所定の単位期間となる毎に、当該単位期間となったことを判断し、当該判断の回数を計数する計数手段と、
    前記計時手段による前記所定の処理期間の計時の終了時点で、前記計数手段によって計数された前記判断回数を記録して初期化する記録初期化手段と、
    クロック信号を出力するクロック信号出力手段と、
    前記クロック信号出力手段によって出力されるクロック信号に基づいて前記所定の処理期間を計時する所定処理期間計時手段と、
    前記記録初期化手段によって記録された判断回数を読み出し、当該読み出した判断回数に前記所定の単位期間を乗じて算出される期間を有効期間として算出する有効期間算出手段と、
    前記所定処理期間計時手段により計時される前記所定の処理期間に送信すべきストローブ信号であって、前記有効期間算出手段によって算出された有効期間及び当該有効期間に続く無効期間で構成されるストローブ信号を作成して送信するストローブ信号送信手段と、
    前記ストローブ信号送信手段によって送信されるストローブ信号に対応して、前記ストリームデータ記録手段によって記録されたストリームデータを送信するストリームデータ送信手段と、
    を備えたことを特徴とするデータ記録送信装置。
JP32303696A 1996-12-03 1996-12-03 データ記録送信方法及びデータ記録送信装置 Expired - Fee Related JP3645974B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32303696A JP3645974B2 (ja) 1996-12-03 1996-12-03 データ記録送信方法及びデータ記録送信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32303696A JP3645974B2 (ja) 1996-12-03 1996-12-03 データ記録送信方法及びデータ記録送信装置

Publications (2)

Publication Number Publication Date
JPH10164509A JPH10164509A (ja) 1998-06-19
JP3645974B2 true JP3645974B2 (ja) 2005-05-11

Family

ID=18150403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32303696A Expired - Fee Related JP3645974B2 (ja) 1996-12-03 1996-12-03 データ記録送信方法及びデータ記録送信装置

Country Status (1)

Country Link
JP (1) JP3645974B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003235023A (ja) * 2002-02-12 2003-08-22 Lsi Systems:Kk データ供給装置、データ供給方法およびその方法をコンピュータに実行させるプログラム
JP4356651B2 (ja) * 2005-05-23 2009-11-04 ソニー株式会社 画像処理装置、撮像装置、および画像処理方法

Also Published As

Publication number Publication date
JPH10164509A (ja) 1998-06-19

Similar Documents

Publication Publication Date Title
JP3148200B2 (ja) 無損失符号化及び復号化システム
JP3348741B2 (ja) ディジタル信号復号装置及び方法
US7805062B2 (en) Transmitting and recording method, reproducing method, and reproducing apparatus of information and its recording medium
EP0595268A2 (en) Variable transfer rate control coding apparatus, reproducing apparatus and recording medium
JPH0815263B2 (ja) データ圧縮復元方法
JP3794803B2 (ja) 高密度データの記録/再生のための符号化/復号化方法及びその装置
JP3645974B2 (ja) データ記録送信方法及びデータ記録送信装置
JPH1091393A (ja) データバッファリング装置
JPH04359315A (ja) データ圧縮制御装置及びデータ復元制御装置
JP3645979B2 (ja) データ記録送信方法及びデータ記録送信装置
JP3610608B2 (ja) ディスク記録方法、および、ディスク記録装置
RU2219655C2 (ru) Устройство и способ для передачи цифрового информационного сигнала, носитель записи и устройство для приема сигнала
US6069865A (en) Method and apparatus for cutting apart of a main signal and recording it as a synchronous signal
JP3514038B2 (ja) データ伝送方法とデータ記録方法
JP2887227B2 (ja) (4,20)ラン・レングスリミテッドコード生成方法および装置
JP3293514B2 (ja) 記録再生装置
EP0982727A1 (en) Digital signal processing method and device, digital signal generating method and device, and signal recording medium and program recording medium
JPH0414529B2 (ja)
JP3458398B2 (ja) ディジタル画像信号の伝送装置
JP3458388B2 (ja) ディジタル画像信号の伝送装置
JPH07210989A (ja) 信号記録再生装置
JPH10133700A (ja) 圧縮符号化データの記録方法
JPH0428064A (ja) ディジタルデータ記録再生装置
JP2987895B2 (ja) ディジタル画像信号の記録・再生装置
JP3875746B2 (ja) ディジタル記録装置

Legal Events

Date Code Title Description
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: 20050118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050207

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080210

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090210

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110210

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees