JP3861453B2 - Movie data compression device - Google Patents

Movie data compression device Download PDF

Info

Publication number
JP3861453B2
JP3861453B2 JP11942798A JP11942798A JP3861453B2 JP 3861453 B2 JP3861453 B2 JP 3861453B2 JP 11942798 A JP11942798 A JP 11942798A JP 11942798 A JP11942798 A JP 11942798A JP 3861453 B2 JP3861453 B2 JP 3861453B2
Authority
JP
Japan
Prior art keywords
real time
compression
real
data
synchronization signal
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
JP11942798A
Other languages
Japanese (ja)
Other versions
JPH11313286A (en
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
Original Assignee
Brother Industries Ltd
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 filed Critical Brother Industries Ltd
Priority to JP11942798A priority Critical patent/JP3861453B2/en
Priority to US09/300,484 priority patent/US6731809B1/en
Publication of JPH11313286A publication Critical patent/JPH11313286A/en
Application granted granted Critical
Publication of JP3861453B2 publication Critical patent/JP3861453B2/en
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 )等の方式が知られている。
【0003】
一方、動画データを記録しておく記録媒体としては、従来から使用されているビデオテープ,レーザディスク等に加えて、近年、ハードディスクやビデオファイル(例えば、ITU−R656フォーマットビデオファイル)等も使用することが考えられている。ビデオテープやレーザディスクは、動画データが時間の経過に沿って順次読み取り可能に記録されたいわゆる実時間記録媒体であり、ハードディスクやビデオファイルは、動画データが時間の経過とは無関係に読み取り可能に記録されたいわゆる非実時間記録媒体である。また、非実時間記録媒体から読み取った動画データ(以下、非実時間データともいう)を、実時間記録媒体に記録可能な動画データ(以下、実時間データともいう)に変換することも考えられている。
【0004】
【発明が解決しようとする課題】
ところが、従来の動画データ圧縮装置では、実時間記録媒体から読み取られた動画データしか圧縮することができなかった。これは、従来の動画データ圧縮装置が、一定間隔で発生される同期信号に合わせて動画データを圧縮しているためである。このため、従来は、非実時間データを実時間データに変換した後、ビデオテープ等の実時間記録媒体に一旦記録し、その記録された実時間データをプレーヤ等で再生することによって、初めて動画データ圧縮装置による圧縮が可能となっていた。従って、非実時間データの圧縮には非常に手間がかかっていた。
【0005】
そこで、本発明は、実時間記録媒体から読み取った動画データ(実時間データ)のみならず、非実時間記録媒体から読み取った動画データ(非実時間データ)をも容易に圧縮することのできる動画データ圧縮装置を提供することを目的としてなされた。
【0006】
【課題を解決するための手段及び発明の効果】
上記目的を達するためになされた請求項1記載の発明は、動画データが記録された記録媒体から読み取られた動画データを圧縮する動画データ圧縮装置であって、動画データが時間の経過に沿って順次読み取り可能に記録された実時間記録媒体から、上記動画データを読み取る実時間読み取り手段の動作を制御する実時間読み取り制御手段と、上記実時間読み取り手段による上記動画データの読み取りに合わせて同期信号を発生する第1の同期信号発生手段と、動画データが時間の経過とは無関係に読み取り可能に記録された非実時間記録媒体から、上記動画データを読み取る非実時間読み取り手段の動作を制御する非実時間読み取り制御手段と、上記非実時間読み取り手段が読み取った動画データに基づいて同期信号を発生する第2の同期信号発生手段と、上記第1の同期信号発生手段が発生した同期信号に応じて、上記実時間読み取り手段が読み取った動画データを圧縮する実時間圧縮動作と、上記第2の同期信号発生手段が発生した同期信号に応じて、上記非実時間読み取り手段が読み取った動画データを圧縮する非実時間圧縮動作とを、選択的に実行する圧縮手段と、を備えたことを特徴とする。
【0007】
このように構成された本発明では、実時間読み取り制御手段は、実時間記録媒体から動画データ(実時間データ)を読み取る実時間読み取り手段の動作を制御し、第1の同期信号発生手段は、その実時間読み取り手段による動画データの読み取りに合わせて同期信号を発生する。圧縮手段は実時間圧縮動作と非実時間圧縮動作とを選択的に実行可能に構成され、実時間圧縮動作を実行した場合、第1の同期信号発生手段が発生した同期信号に応じて、上記実時間読み取り手段が読み取った動画データを圧縮することができる。このため、実時間データを容易に圧縮することができる。
【0008】
また、本発明は非実時間読み取り制御手段と、第2の同期信号発生手段とを備えている。そして、非実時間読み取り制御手段は、非実時間記録媒体から動画データ(非実時間データ)を読み取る非実時間読み取り手段の動作を制御し、第2の同期信号発生手段は、その非実時間読み取り手段が読み取った動画データに基づいて同期信号を発生する。この同期信号は必ずしも一定間隔であるとは限らないが、圧縮手段が非実時間圧縮動作を実行した場合、その第2の同期信号発生手段が発生した同期信号に応じて、上記非実時間読み取り手段が読み取った動画データを圧縮することができる。このため、本発明では、実時間データのみならず、非実時間データをも容易に圧縮することができる。従って、種々の記録媒体に記録された動画データを容易に圧縮して、通信等、種々の用途に提供することができるといった、きわめて優れた効果が生じる。
【0009】
なお、本発明は、実時間読み取り手段及び非実時間読み取り手段を必ずしも一体に備えている必要はなく、少なくとも、その実時間読み取り手段及び非実時間読み取り手段の動作を制御する実時間読み取り制御手段及び非実時間読み取り制御手段を備えていればよい。例えば、市販のプレーヤ等(実時間読み取り手段)を接続可能に構成されて、そのプレーヤ等によるビデオテープ等(実時間記録媒体)の読み取り動作を制御することができればよい。
【0010】
請求項2記載の発明は、請求項1記載の構成に加え、上記圧縮手段に、上記実時間圧縮動作または上記非実時間圧縮動作のいずれを実行させるかを、所望に応じて切り換える切換手段を、更に備えたことを特徴とする。
本発明では、切換手段により、圧縮手段に実時間圧縮動作または非実時間圧縮動作のいずれを実行させるかを、所望に応じて切り換えることができる。このため、本発明では、実時間データと非実時間データとが同時に入力されている場合でも、所望の側のデータのみを圧縮することができる。このため、所望の側のデータのみを、確実に圧縮することができる。また、実時間データと非実時間データとが同時に入力されている場合、圧縮するデータを任意に切り換えて後からつなぎ合わせることもできる。従って、編集等のバリエーションも増大する。
【0011】
従って、本発明では、請求項1記載の発明の効果に加えて、所望のデータを確実に圧縮することができると共に、編集等のバリエーションを増大させることができるといった効果が生じる。
請求項3記載の発明は、請求項1または2記載の構成に加え、上記第2の同期信号発生手段が上記同期信号を発生する間隔が、上記圧縮手段の上記非実時間圧縮動作に要する時間よりも長いとき、上記圧縮手段による上記非実時間圧縮動作を遅延する遅延手段を、更に備えたことを特徴とする。
【0012】
本発明では、第2の同期信号発生手段が同期信号を発生する間隔が、圧縮手段の非実時間圧縮動作に要する時間よりも長いとき、遅延手段が圧縮手段による非実時間圧縮動作を遅延する。前述のように、第2の同期信号発生手段が発生する同期信号は必ずしも一定間隔であるとは限らない。そこで、本発明では、その同期信号の発生間隔が圧縮手段の非実時間圧縮動作に要する時間よりも長いとき、その圧縮手段による非実時間圧縮動作を遅延できるようにしたのである。このため、圧縮手段による非実時間圧縮動作を、きわめて正確かつ確実に実行することができる。
【0013】
従って、本発明では、請求項1または2記載の発明の効果に加えて、非実時間データの圧縮を一層正確かつ確実に実行することできるといった効果が生じる。
請求項4記載の発明は、請求項3記載の構成に加え、上記圧縮手段が、少なくとも上記非実時間圧縮動作を、前後の動画データの差分を利用して実行すると共に、上記遅延手段が、上記圧縮手段による上記差分の検出に関わる動作を一時停止させることによって、上記非実時間圧縮動作を遅延することを特徴とする。
【0014】
本発明では、圧縮手段が、非実時間圧縮動作を前後の動画データの差分を利用して実行する。この種の圧縮方法は、MPEG等に観られるように比較的一般的な圧縮方法であるが、きわめて良好に動画データを圧縮することができる。そして、本発明では、上記遅延手段が、圧縮手段による上記差分の検出に関わる動作を一時停止させることによって、非実時間圧縮動作を遅延する。上記差分の検出は、ソフトウェア,ハードウェアを問わず、一般的に閉ループによるフィードバック処理によってなされる。このため、圧縮手段の動作が全体的には一時停止していても、上記差分の検出に関わる動作が停止していなければデータが徐々に変化する可能性がある。また、差分を検出するための新たな動画データが入力されなくなると、エラーが発生する可能性もある。本発明では、上記差分の検出に関わる動作を一時停止させることによって非実時間圧縮動作を遅延しているので、その非実時間圧縮動作を一層正確かつ確実に実行することができる。
【0015】
従って、本発明では、請求項3記載の発明の効果に加えて、非実時間データの圧縮をより一層正確かつ確実に実行することできるといった効果が生じる。
【0016】
【発明の実施の形態】
次に、本発明の実施の形態を、図面と共に説明する。図1は、本発明が適用された動画データ圧縮装置1の構成を概略的に表すブロック図である。図1に示すように、動画データ圧縮装置1は、パソコン(パーソナルコンピュータ)3から入力される使用者による各種指示(例えば、後述の実時間/非実時間切換割り込み,圧縮開始指示割り込み,圧縮終了指示割り込み等)に基づいて制御され、ビデオテープ5やビデオファイル7(例えば、ITU−R656フォーマットビデオファイル)から読み取られた動画データを圧縮してストリーム9として出力する装置である。
【0017】
実時間記録媒体としてのビデオテープ5から読み取られた実時間データ(この場合ビデオ信号)は、同期信号生成器10に入力され、非実時間記録媒体としてのビデオファイル7から読み取られた非実時間データは、制御器20に入力される。同期信号生成器10は、ビデオテープ5から読み取られた実時間データを実時間映像信号として同期信号と共に出力するもので、その実時間映像信号は切換器30に、同期信号は切換器40に、それぞれ入力される。また、制御器20は、ビデオファイル7から読み取られた非実時間データに基づいて非実時間映像信号及び同期信号を発生し、実時間データの場合と同様に、非実時間映像信号は切換器30に、同期信号は切換器40に、それぞれ入力される。
【0018】
切換器30に入力された各映像信号は、バッファ50を介して圧縮器60に入力され、切換器40に入力された各同期信号は圧縮器60に直接入力される。そして、圧縮器60は、上記入力に基づいて映像信号を後述のMPEG方式で圧縮し、ストリーム9として出力する。なお、切換器30,40は、制御器20から実時間/非実時間切換信号を入力され、同期信号生成器10から入力された実時間映像信号及び同期信号、または、制御器20から入力された非実時間映像信号及び同期信号の内、いずれを圧縮器60に入力するかを切り換えるものである。また、制御器20、切換器30,40、バッファ50、及び圧縮器60の間には、上記実時間/非実時間切換信号の他にも種々の信号が入出力されるが、詳細については後述する。
【0019】
図2は制御器20の構成を表すブロック図である。図2に示すように、ビデオファイル7から読み取られた非実時間データは、制御器20に設けられたファイルデータ入力スイッチ21を介してフィールド終了コード分離器22に入力される。また、ファイルデータ入力スイッチ21及びフィールド終了コード分離器22は、CPU,ROM,RAM等を備えたマイクロコンピュータとしての中央演算処理器23に接続され、次のように信号の入出力を行っている。
【0020】
先ず、ファイルデータ入力スイッチ21は、中央演算処理器23からのファイルデータ入力開始指示及びファイルデータ入力停止指示に基づき、ビデオファイル7からの非実時間データの入力可否を切り換える。フィールド終了コード分離器22は、非実時間データを次のように分離している。すなわち、一般のビデオ映像は、トップフィールド,ボトムフィールドと呼ばれる走査線の位置を異ならせた2種類の映像(両者一組で1フレームを形成する)を交互に撮像することによって形成される。このため、図3に例示するように、非実時間データのファイル200には、トップフィールド101の映像を撮像するためのトップフィールド映像データ201と、ボトムフィールド103の映像を撮像するためのボトムフィールド映像データ203とが交互に配設され、各映像データ201,203の先頭には、その映像データの開始を示すトップフィールド開始コード205,ボトムフィールド開始コード207が配設されている。
【0021】
そこで、図2に示すフィールド終了コード分離器22は、ファイルデータ入力スイッチ21を介して入力された非実時間データを、トップフィールド映像データ201及びボトムフィールド映像データ203(以下、両者を非実時間映像信号もという)と、トップフィールド開始コード205及びボトムフィールド開始コード207とに分離する。そして、フィールド終了コード分離器22は、上記非実時間映像信号を切換器30に出力すると共に、ボトムフィールド映像データ203またはトップフィールド映像データ201に続くトップフィールド開始コード205またはボトムフィールド開始コード207の先頭を検出したとき、フィールド終了コード検出割り込みを中央演算処理器23に出力する。
【0022】
制御器20は、この他、中央演算処理器23から同期信号生成指示が入力されたとき、同期信号を生成して切換器40に出力する同期信号生成器24等を備えている。中央演算処理器23には、上記信号の他、パソコン3から実時間/非実時間切換割り込み、圧縮開始指示割り込み、及び圧縮終了指示割り込みが入力されると共に、圧縮器60から後述の1フィールド読込終了割り込みが入力され、更に、前述の実時間/非実時間切換信号を切換器30,40に出力する。
【0023】
次に、圧縮器60の構成を、図4を用いて説明する。図4に示すように、圧縮器60は、切換器40から入力される同期信号等に応じてバッファ50に読出指示を出力する読み出し制御器61と、その読出指示に応じてバッファ50から読み込まれた映像信号と後述の参照データとの減算処理を行う減算器62と、直交変換の一種であるDCT(離散コサイン変換)処理を行う直交変換手段としてのDCT変換器63と、そのDCT変換器63から出力されたDCT係数データを量子化する量子化手段としての量子化器64と、その量子化器64において量子化されたDCT係数データに対して可変長符号化を行う可変長符号化手段としての可変長符号化器65と、前述の量子化器64にて量子化されたDCT係数データを逆量子化する逆量子化器66と、その逆量子化器66にて逆量子化されたDCT係数データに対して逆DCT(逆離散コサイン変換)処理を行う逆DCT変換器67と、その逆DCT変換器67によりDCT処理される前の映像信号に戻されたデータに動き補償を加算するための加算器68と、動き補償予測のために加算器68からの出力を記憶しておくメモリ69と、そのメモリ69に記憶されたデータに基づき動き補償予測を行い、参照データとして出力する動き補償器71と、この圧縮器60全体の動作を制御する圧縮制御器73と、を備えている。
【0024】
この圧縮器60では、バッファ50に蓄えられた映像信号を次のように圧縮して、ストリーム9として出力することができる。先ず、バッファ50には圧縮対象の映像信号(動画データ)が一時的に蓄えられる。読み出し制御器61は、切換器40から同期信号が入力される毎にバッファ50に読出指示を入力し、バッファ50に蓄えられた映像信号を減算器62に読み出させる。減算器62には、動き補償器71からの参照データ(予測値データ)も入力され、上記映像信号と参照データとの差分データ(予測誤差)をDCT変換器63へ出力する。
【0025】
このDCT変換器63では、減算器62から入力された差分データに対してDCT(離散コサイン変換)処理を行う。この処理の演算単位は所定のブロック単位で行われ、そのブロック単位に応じた個数の係数(以下、DCT係数ともいう)が算出される。DCT変換器63は、この係数を周波数成分の順に並べて量子化器64へ出力する。量子化器64では、予め設定されたステップサイズでDCT変換器63から入力されたDCT係数を量子化し、この量子化した値を可変長符号化器65へ出力する。可変長符号化器65では、有意ブロックの判定等を行い、量子化されたDCT係数を可変長符号化し、ストリーム9として出力する。
【0026】
なお、この可変長符号化については、例えば、量子化器64の出力をランレングス変換した後で、その係数を可変長符号に変換して出力することが考えられる。ランレングス変換によってゼロ係数の数と次の非ゼロ係数の値との組である2個の係数になるのであるが、量子化器64の出力はゼロ係数が多く続く傾向があるので、ランレングス変換することによってデータ量は削減される。次に、ランレングス変換の結果得られた2個の係数をまとめ、一つの可変長符号を割り当てて出力することで圧縮データが得られることとなる。
【0027】
一方、逆量子化器66には、量子化器64から出力された量子化後のDCT係数が入力されるため、量子化器64で使用されたステップサイズを用いて逆量子化を行い、DCT係数を算出して逆DCT変換器67へ出力する。なお、このDCT係数は量子化による誤差を含んだ値となる。逆DCT変換器67では、このDCT係数に対して逆DCT(逆離散コサイン変換)処理を施し、加算器68へ出力する。この加算器68は、逆DCT変換器67からの出力と動き補償器71からの出力とを加算して、メモリ69に入力する。
【0028】
メモリ69は、動き補償予測のためのフレームメモリであり、少なくとも2フレーム分のフレームメモリで構成される。そして、加算器68からのデータを蓄積すると同時に、動き補償予測のための前回フレームのデータを動き補償器71へ出力する。動き補償器71では、メモリ69から入力された前回フレームのデータに動きベクトル等を用いた周知の動き補償予測を行い、予測値データとして減算器62へ出力する。これがデータ圧縮に関わる概略動作であり、このように、映像信号(動画データ)の差分を利用すると共にランレングス変換及び可変長符号を採用することにより、データの効率的な圧縮を実現することができる。
【0029】
また、圧縮制御器73は、少なくとも非実時間データの圧縮に関わる処理時には、1フィールド分の圧縮動作が終了したとき減算器62から動き補償器71に至る圧縮器60の各部の動作を一時停止し、その状態を、読み出し制御器61に次の同期信号が入力されるまで保持する。また、読み出し制御器61は、前述のように、切換器40から同期信号が入力される毎にバッファ50に読出指示を入力し、バッファ50に蓄えられたデータを減算器62に読み込ませると共に、バッファ50内のデータが減算器62に全て読み込まれたとき、制御器20の中央演算処理器23に1フィールド読込終了割り込みを入力する。
【0030】
次に、このように構成された動画データ圧縮装置1における制御について説明する。図5〜図9は、制御器20の中央演算処理器23が実行する処理を表すフローチャートであり、図5はそのメインルーチンを表している。なお、中央演算処理器23は、電源投入時にこの処理を開始する。
【0031】
図5に示すように、中央演算処理器23が処理を開始すると、先ず、S1(Sはステップを表す:以下同様)にて全ての割り込みを禁止し、続くS2では、映像入力手段を実時間とする。ここで、映像入力手段とは、切換器30,40の状態に応じて中央演算処理器23が記憶する一種のフラグで構成される。電源投入時には、切換器30,40は共に同期信号生成器10側、すなわち実時間データに対応した側にセットされるので、映像入力手段を実時間とするのである。
【0032】
続くS3,S4では、パソコン3からの実時間/非実時間切換割り込み及び圧縮開始指示割り込みを許可し、続くS5では、なんらかの割り込みがあったか否かを判断する。割り込みがない場合は(S5:NO)、そのままS5にて待機し、割り込みがあった場合は(S5:YES)、S6にてその割り込みに対応する処理を実行した後、S5へ移行する。すなわち、中央演算処理器23は、電源投入後、S1〜S4の初期化処理を実行した後、S5の無限ループによって割り込みがあるまで待機するのである。また、この無限ループ実行中に、所定の終了指示が割り込みとして入力された場合は処理を終了し、所定のリセット指示が割り込みとして入力された場合は処理をS1からやり直す。
【0033】
図6は、実時間/非実時間切換割り込みが入力されたとき(S5:YES)、その割り込みに対応する処理(S6)として実行される実時間/非実時間切換割り込み処理を表している。図6に示すように、この処理を開始すると、先ず、現在の映像入力手段の状態を判断し(S11)、それが実時間である場合はS13へ移行する。S13では、映像入力手段を非実時間とし、続くS15では、実時間/非実時間切換信号を切換器30,40へ出力する。すると、切換器30,40は共に制御器20側、すなわち非実時間データに対応した側にセットされる。先のS13では、これに応じて映像入力手段を非実時間としたのである。
【0034】
映像入力手段が非実時間である場合は、S11からS17へ移行する。S17では、映像入力手段を実時間とした後、前述のS15へ移行して、実時間/非実時間切換信号を切換器30,40へ出力する。すると、切換器30,40は共に同期信号生成器10側、すなわち実時間データに対応した側にセットされる。先のS17では、これに応じて映像入力手段を実時間としたのである。このように、パソコン3から実時間/非実時間切換割り込みを入力することにより、切換器30,40の状態を切り換えて、実時間データまたは非実時間データのいずれを圧縮するかを切り換えることができる。なお、S15の処理を終了して本ルーチンが終了したときは、図5の無限ループ(S5)へ復帰する。
【0035】
圧縮開始指示割り込みが入力されたときは(S5:YES)、図7〜図9に示すように、その割り込みに対応する圧縮開始指示割り込み処理をS6として実行する。図7に示すように、処理を開始すると、先ず、S21,S23にて、圧縮開始指示割り込み及び実時間/非実時間切換割り込みを禁止する。続くS25では、後述のようにフィールド数を計数するための変数Fを1にセットし、更に続くS27では、圧縮終了指示割り込みを許可する。続いて、S29へ移行して現在の映像入力手段の状態を判断し、映像入力手段が実時間である場合はS31へ移行する。S31では、圧縮器60による圧縮動作が終了したか否かを判断し、その圧縮動作が終了するまで待機する。すなわち、上記説明したように、動画データ圧縮装置1では、実時間データは従来の動画データ圧縮装置とほぼ同様に圧縮することができる。このため、その圧縮に当たって、制御器20は特にこれといった制御をする必要がない。そこで、S31では圧縮器60の状態を検出し、圧縮動作が終了するまで待機するのである。また、実時間データの圧縮中にパソコン3から圧縮終了指示割り込みが入力されたとき、圧縮器60の圧縮動作を強制的に終了してもよい。但し、この場合、その圧縮動作を円滑に終了させるための所定の終了処理が必要となる。
【0036】
圧縮処理が終了すると(S31:YES)、S32へ移行して全ての割り込みを禁止する。続くS33,S34では、圧縮開始指示割り込み及び実時間/非実時間切換割り込みを許可して上記無限ループ(S5)へ復帰する。すなわち、S32〜S34の処理を実行することにより、電源投入直後に上記無限ループ(S5)へ移行した場合と同様の状態となる。
【0037】
一方、図7に示す圧縮開始指示割り込み処理の実行時に、映像入力手段が非実時間となっていた場合、S29に続いてS36及びS37へ順次移行し、フィールド終了コード検出割り込み及び1フィールド読込終了割り込みを許可する。続いて、ファイルデータ入力スイッチ21にファイルデータ入力開始指示を出力した後(S38)、フィールド終了コード検出割り込みが発生したか否か(S41)、1フィールド読込終了割り込みが発生したか否か(S43)、圧縮終了指示割り込みが発生したか否か(S45)を順次判断する。そしていずれの割り込みも発生していない場合は(S41:NO,S43:NO,S45:NO)、S41〜S45の処理を繰り返し実行し、いずれかの割り込みがあるまで待機する。
【0038】
S38にてファイルデータ入力開始指示が出力されると、フィールド終了コード分離器22には、ファイルデータ入力スイッチ21を介してビデオファイル7からの非実時間データが入力されるようになる。すると、フィールド終了コード分離器22は、1フィールド分の非実時間映像信号を切換器30へ出力した後、フィールド終了コード検出割り込みを中央演算処理器23へ出力する。
【0039】
このため、通常は、先ずS41にて肯定判断がなされる。すると、処理はS51,S53へ順次移行し、ファイルデータ入力停止指示をファイルデータ入力スイッチ21に入力した後(S51)、同期信号生成器24に同期信号生成指示を出力して(S53)、S41〜S45のループ処理へ移行する。
【0040】
この処理により、1フィールド分の非実時間映像信号が切換器30へ出力された後、ファイルデータ入力スイッチ21を介した非実時間データの入力が停止される(S51)。続いて、同期信号生成器24が上記同期信号生成指示に応じて同期信号を出力すると(S53)、それが切換器40を介して圧縮器60に入力される。すると、圧縮器60の読み出し制御器61は、バッファ50に記憶された上記1フィールド分の映像信号の読み出しを指示し、減算器62以降の構成による圧縮動作に提供する。そして、1フィールド分の映像信号が圧縮器60に全て読み込まれると、前述のように1フィールド読込終了割り込みを発生する。
【0041】
この1フィールド読込終了割り込みが中央演算処理器23に入力されると(S43:YES)、処理はS55へ移行し、変数Fを一つインクリメントする。続くS57では、ファイルデータ入力開始指示をファイルデータ入力スイッチ21へ出力した後、S41〜S45のループ処理へ移行する。すると、前述のS38からこのループ処理へ移行した場合と同様に、非実時間データの入力が再開される。通常は、このS41〜S57の処理を繰り返し実行することにより、非実時間データの入力(S57)と、それに応じた映像信号の圧縮器60への読み込み(S53)とが、1フィールド分ずつ順次実行され、非実時間データの圧縮が実行される。
【0042】
また、パソコン3から圧縮終了指示割り込みが入力されると、S45にて肯定判断し、S61へ移行する。S61では、フィールド終了コード検出割り込みが発生したか否かを判断し、発生していない場合は(S61:NO)、S63へ移行する。S63では、1フィールド読込終了割り込みが発生したか否かを判断し、発生していない場合は(S63:NO)、再びS61へ移行する。
【0043】
非実時間データの入力中に圧縮終了指示割り込みが発生した場合は、このS61,S63のループ処理を繰り返す間に、先にS61にて肯定判断する。すると、前述のS51,S53と同様に、ファイルデータ入力停止指示の出力(S65)、及び、同期信号生成指示の出力(S67)を実行して上記ループ処理へ復帰する。これにより、映像信号の圧縮器60への読み込みが開始される。
【0044】
このように、映像信号の読み込みを開始した後(S67)、または、映像信号の読み込み中に圧縮終了指示割り込みが発生した場合は、やがて1フィールド読込終了割り込みが発生する(S63:YES)。すると、S71へ移行し、変数Fが偶数であるか否かを判断する。前述のように、非実時間データのファイル200は、トップフィールド映像データ201とボトムフィールド映像データ203との対によって構成されている。このため、Fが奇数である場合は、対になる映像データの片方が読み込まれていないことが判る。
【0045】
そこで、Fが奇数の場合(S71:NO)、Fのインクリメント(S73)及びファイルデータ入力開始指示の出力(S75)を行った後、S61,S63のループ処理へ移行する。そして、1フィールド分の非実時間データが入力されると(S61:YES)、圧縮器60への映像信号の読み込みを開始し(S67)、その読み込みが終了すると(S63:YES)、再びS71へ移行する。このときは、Fは偶数となっているので(S71:YES)、次のS77へ移行する。また、S71へ初めて移行したときからFが偶数であれば、そのままS77へ移行する。S77では全ての割り込みを禁止し、続くS78及びS79では圧縮開始指示割り込み及び実時間/非実時間切換割り込みを許可した後、S5の無限ループへ移行する。以上の処理により、電源投入直後と同様の割り込みを許可した上で、S5における待機状態に移行することができる。
【0046】
なお、ビデオファイル7に記録された非実時間データが短い場合には、図8に示した処理を実行する間に非実時間データのデータエンドを検出することも考えられるが、この場合、圧縮器60から1フィールド読込終了割り込みが入力されたときに(S43:YES)、直接S77へ移行すればよい。
【0047】
このように、本実施の形態の動画データ圧縮装置1では、パソコン3から実時間/非実時間切換割り込みを入力すれば、制御器20が切換器30,40に実時間/非実時間切換信号を入力し、ビデオテープ5に記録された実時間データを圧縮するか、ビデオファイル7に記録された非実時間データを圧縮するかを任意に切り換えることができる。このため、所望の側のデータのみを、確実に圧縮することができる。また、実時間データと非実時間データとが同時に入力されている場合、圧縮するデータを任意に切り換えて後からつなぎ合わせることもできる。従って、編集等のバリエーションも増大する。但し、圧縮するデータの切り換え時には、圧縮終了指示割り込みを入力して一旦圧縮動作を終了する必要がある。
【0048】
また、非実時間データの圧縮時には、制御器20は、1フィールド分の映像信号をバッファ50に入力した後、同期信号を圧縮器60に送ってそのデータを読み込ませ、その読み込みの終了を表す1フィールド読込終了割り込みが発生すると次のフィールドのデータをバッファ50に入力する。一方、実時間データの圧縮は従来とほぼ同様に実行できる。このため、本実施の形態では、実時間データのみならず、非実時間データをも確実かつ容易に圧縮して、通信等、種々の用途に提供することができる。
【0049】
更に、圧縮器60では、圧縮制御器73を設けたことにより、1フィールド分の圧縮動作を終了した後、次の同期信号が入力されるまで各部を一時停止させることができる。非実時間データに基づいて発生される同期信号は、必ずしも一定間隔で発生されるとは限らないが、本実施の形態では、上記構成を採用したことによってきわめて正確な圧縮動作を実現することができる。すなわち、前後の動画データの差分を検出する動作を一時停止させることにより、同期信号が遅れる間にデータが変化したり、減算器62による差分の検出対象がないためにエラーが発生したりするのを防止することができる。従って、非実時間データの圧縮動作を一層確実かつ正確に実行することができる。
【0050】
なお、上記実施の形態において、同期信号生成器10が実時間読み取り制御手段及び第1の同期信号発生手段に、制御器20のファイルデータ入力スイッチ21が非実時間読み取り制御手段に、制御器20の同期信号生成器24が第2の同期信号発生手段に、圧縮器60が圧縮手段に、切換器30,40が切換手段に、圧縮制御器73が遅延手段に、それぞれ相当する。
【0051】
また、本発明は上記実施の形態になんら限定されるものではなく、本発明の要旨を逸脱しない範囲で、種々の形態で実施することができる。例えば、ビデオテープ5から実時間データを読み取る実時間読み取り手段(レコーダ等)や、ビデオファイル7から非実時間データを読み取る非実時間読み取り手段(ドライバ等)は、同期信号生成器10や制御器20の処理状態に応じて駆動状態を制御されるのであるが、これらの読み取り手段は、動画データ圧縮装置1と一体に設けても別体に設けてもよい。また、上記実施の形態では、トップフィールド開始コード205及びボトムフィールド開始コード207に基づいてフィールド終了コード検出割り込みを発生し、1フィールド毎の処理を実行しているが、1フィールドのデータ長が一定している場合は、データ長に基づいて1フィールド毎の処理を実行してもよい。また、1フレーム毎に処理を実行してもよい。更に、MPEG以外の他の規格に基づいて動画データの圧縮動作を行ってもよい。また更に、上記実施の形態では、圧縮制御器73による前述の処理によって圧縮器60の圧縮動作を遅延しているが、圧縮動作を遅延する構成は他にも種々考えられる。
【図面の簡単な説明】
【図1】 実施の形態の動画データ圧縮装置の構成を表すブロック図である。
【図2】 その動画データ圧縮装置の制御器の構成を表すブロック図である。
【図3】 非実時間データの構成を表す説明図である。
【図4】 上記動画データ圧縮装置の圧縮器の構成を表すブロック図である。
【図5】 上記制御器が実行するメインルーチンを表すフローチャートである。
【図6】 実時間/非実時間切換割り込み処理を表すフローチャートである。
【図7】 圧縮開始指示割り込み処理を表すフローチャートである。
【図8】 圧縮開始指示割り込み処理の続きを表すフローチャートである。
【図9】 圧縮開始指示割り込み処理の更に続きを表すフローチャートである。
【符号の説明】
1…動画データ圧縮装置 5…ビデオテープ 7…ビデオファイル
10…同期信号生成器 20…制御器 21…ファイルデータ入力スイッチ
22…フィールド終了コード分離器 23…中央演算処理器
24…同期信号生成器 30,40…切換器 60…圧縮器
61…読み出し制御器 62…減算器 73…圧縮制御器
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a moving image data compression apparatus that compresses moving image data read from a recording medium on which moving image data is recorded. More specifically, the present invention relates to a real-time recording medium on which moving image data is recorded so as to be sequentially readable over time. The present invention also relates to a moving image data compression apparatus capable of compressing both moving image data read from a non-real time recording medium in which the moving image data is recorded so as to be readable regardless of the passage of time.
[0002]
[Prior art]
In recent years, with the diversification of communication devices and the like, a technique for compressing moving image data and reducing the amount of data and using it for communication has been proposed. As a method of compressing the moving image data, for example, a method such as MPEG (Moving Picture Image Coding Experts Group) is known.
[0003]
On the other hand, as a recording medium for recording moving image data, in addition to conventionally used video tapes, laser disks, and the like, in recent years, hard disks and video files (for example, ITU-R656 format video files) are also used. It is considered. Video tapes and laser discs are so-called real-time recording media in which moving image data is recorded so that they can be read sequentially over time, and hard disk and video files can be read regardless of the passage of time. It is a recorded non-real time recording medium. It is also conceivable to convert moving image data (hereinafter also referred to as non-real time data) read from a non-real time recording medium into moving image data (hereinafter also referred to as real time data) that can be recorded on a real time recording medium. ing.
[0004]
[Problems to be solved by the invention]
However, the conventional moving image data compression apparatus can compress only moving image data read from a real-time recording medium. This is because the conventional moving image data compression apparatus compresses moving image data in accordance with a synchronization signal generated at regular intervals. For this reason, conventionally, after converting non-real time data into real time data, it is first recorded on a real time recording medium such as a video tape, and the recorded real time data is reproduced by a player or the like for the first time. Compression by a data compression device was possible. Therefore, it takes a lot of time to compress the non-real time data.
[0005]
Therefore, the present invention can easily compress not only moving image data (real time data) read from a real time recording medium but also moving image data (non real time data) read from a non-real time recording medium. The purpose was to provide a data compression device.
[0006]
[Means for Solving the Problems and Effects of the Invention]
In order to achieve the above object, the invention according to claim 1 is a moving image data compression apparatus for compressing moving image data read from a recording medium on which moving image data is recorded. Real-time reading control means for controlling the operation of the real-time reading means for reading the moving picture data from the real-time recording medium recorded so as to be sequentially readable, and a synchronization signal in accordance with the reading of the moving picture data by the real-time reading means And a non-real time reading means for reading the moving image data from a non-real time recording medium in which the moving image data is recorded so as to be readable regardless of the passage of time. Non-real time reading control means and second synchronization for generating a synchronizing signal based on the moving image data read by the non-real time reading means A real-time compression operation for compressing the moving image data read by the real-time reading means in accordance with a synchronization signal generated by the signal generation means and the first synchronization signal generating means; and the second synchronization signal generating means Compression means for selectively executing non-real time compression operation for compressing moving image data read by the non-real time reading means in accordance with the generated synchronization signal.
[0007]
In the present invention configured as described above, the real time reading control means controls the operation of the real time reading means for reading moving image data (real time data) from the real time recording medium, and the first synchronization signal generating means is A synchronization signal is generated in accordance with the reading of the moving image data by the real time reading means. The compression means is configured to be able to selectively execute a real-time compression operation and a non-real-time compression operation. When the real-time compression operation is executed, the above-described compression means corresponds to the synchronization signal generated by the first synchronization signal generation means. The moving image data read by the real time reading means can be compressed. For this reason, real-time data can be easily compressed.
[0008]
The present invention also includes non-real time reading control means and second synchronization signal generating means. The non-real time reading control means controls the operation of the non-real time reading means for reading moving image data (non-real time data) from the non-real time recording medium, and the second synchronization signal generating means is the non-real time reading means. A synchronization signal is generated based on the moving image data read by the reading means. Although this synchronization signal is not necessarily at a constant interval, when the compression means performs a non-real time compression operation, the non-real time reading is performed according to the synchronization signal generated by the second synchronization signal generation means. The moving image data read by the means can be compressed. For this reason, in the present invention, not only real-time data but also non-real-time data can be easily compressed. Therefore, an extremely excellent effect is produced in that moving image data recorded on various recording media can be easily compressed and provided for various uses such as communication.
[0009]
The present invention does not necessarily include the real time reading means and the non-real time reading means, and at least the real time reading control means for controlling the operations of the real time reading means and the non-real time reading means, and Any non-real time reading control means may be provided. For example, it is only necessary that a commercially available player or the like (real time reading means) can be connected to control the reading operation of the video tape or the like (real time recording medium) by the player or the like.
[0010]
According to a second aspect of the present invention, in addition to the configuration of the first aspect, a switching means for switching the compression means to perform the real time compression operation or the non-real time compression operation as desired is provided. , Further provided.
In the present invention, the switching means can switch between the real time compression operation and the non-real time compression operation as required by the compression means. For this reason, in the present invention, even when real-time data and non-real-time data are input at the same time, only the data on the desired side can be compressed. For this reason, only the data on the desired side can be reliably compressed. In addition, when real-time data and non-real-time data are input at the same time, the data to be compressed can be arbitrarily switched and connected later. Therefore, variations such as editing increase.
[0011]
Therefore, in the present invention, in addition to the effect of the first aspect of the invention, desired data can be reliably compressed and variations such as editing can be increased.
According to a third aspect of the present invention, in addition to the configuration of the first or second aspect, an interval at which the second synchronization signal generating unit generates the synchronization signal is a time required for the non-real time compression operation of the compression unit. And a delay means for delaying the non-real-time compression operation by the compression means when longer than that.
[0012]
In the present invention, when the interval at which the second synchronization signal generating means generates the synchronization signal is longer than the time required for the non-real time compression operation of the compression means, the delay means delays the non-real time compression operation by the compression means. . As described above, the synchronization signal generated by the second synchronization signal generating means is not necessarily at a constant interval. Therefore, in the present invention, when the generation interval of the synchronization signal is longer than the time required for the non-real time compression operation of the compression means, the non-real time compression operation by the compression means can be delayed. For this reason, the non-real-time compression operation by the compression means can be executed very accurately and reliably.
[0013]
Therefore, in the present invention, in addition to the effect of the first or second aspect of the invention, the effect that the compression of the non-real time data can be executed more accurately and reliably occurs.
According to a fourth aspect of the present invention, in addition to the configuration of the third aspect, the compression unit executes at least the non-real time compression operation using a difference between the preceding and subsequent moving image data, and the delay unit includes: The non-real-time compression operation is delayed by temporarily stopping the operation related to the detection of the difference by the compression means.
[0014]
In the present invention, the compression means executes the non-real time compression operation using the difference between the previous and next moving image data. This type of compression method is a relatively common compression method as seen in MPEG and the like, but can compress moving image data very well. In the present invention, the delay means delays the non-real-time compression operation by temporarily stopping the operation related to the detection of the difference by the compression means. The detection of the difference is generally performed by a closed loop feedback process regardless of software or hardware. For this reason, even if the operation of the compression unit is temporarily stopped, there is a possibility that the data gradually changes unless the operation related to the detection of the difference is stopped. Further, if new moving image data for detecting a difference is not input, an error may occur. In the present invention, since the non-real time compression operation is delayed by temporarily stopping the operation related to the detection of the difference, the non-real time compression operation can be executed more accurately and reliably.
[0015]
Therefore, in the present invention, in addition to the effect of the invention described in claim 3, the effect that the compression of the non-real time data can be executed more accurately and reliably is produced.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram schematically showing the configuration of a moving image data compression apparatus 1 to which the present invention is applied. As shown in FIG. 1, the moving image data compression apparatus 1 includes various instructions (for example, real time / non-real time switching interrupt, compression start instruction interrupt, and compression end, which will be described later) input from a personal computer 3. This is a device that is controlled based on an instruction interruption or the like, and compresses moving image data read from a video tape 5 or a video file 7 (for example, an ITU-R656 format video file) and outputs it as a stream 9.
[0017]
Real-time data (in this case, a video signal) read from the video tape 5 as a real-time recording medium is input to the synchronization signal generator 10 and is read from the video file 7 as a non-real-time recording medium. Data is input to the controller 20. The synchronization signal generator 10 outputs the real-time data read from the video tape 5 together with the synchronization signal as a real-time video signal. The real-time video signal is sent to the switch 30 and the synchronization signal is sent to the switch 40. Entered. Further, the controller 20 generates a non-real time video signal and a synchronization signal based on the non-real time data read from the video file 7, and the non-real time video signal is switched by the switch as in the case of the real time data. The synchronization signal is input to the switch 40 at 30.
[0018]
Each video signal input to the switch 30 is input to the compressor 60 via the buffer 50, and each synchronization signal input to the switch 40 is directly input to the compressor 60. Then, the compressor 60 compresses the video signal based on the above-mentioned input by the MPEG method described later, and outputs it as a stream 9. The switching units 30 and 40 receive a real-time / non-real-time switching signal from the controller 20 and receive a real-time video signal and synchronization signal input from the synchronization signal generator 10 or from the controller 20. The non-real time video signal and the synchronization signal are switched to be input to the compressor 60. In addition to the real time / non-real time switching signal, various signals are input / output between the controller 20, the switching devices 30 and 40, the buffer 50, and the compressor 60. It will be described later.
[0019]
FIG. 2 is a block diagram showing the configuration of the controller 20. As shown in FIG. 2, the non-real time data read from the video file 7 is input to the field end code separator 22 via the file data input switch 21 provided in the controller 20. The file data input switch 21 and the field end code separator 22 are connected to a central processing unit 23 as a microcomputer having a CPU, a ROM, a RAM, etc., and input / output signals as follows. .
[0020]
First, the file data input switch 21 switches whether to input non-real time data from the video file 7 based on the file data input start instruction and the file data input stop instruction from the central processing unit 23. The field end code separator 22 separates non-real time data as follows. That is, a general video image is formed by alternately capturing two types of images (a set of both forms a frame) called a top field and a bottom field with different scanning line positions. Therefore, as illustrated in FIG. 3, the non-real-time data file 200 includes top field video data 201 for capturing the top field 101 image and bottom field for capturing the bottom field 103 image. Video data 203 is alternately arranged, and a top field start code 205 and a bottom field start code 207 indicating the start of the video data are arranged at the head of each video data 201 and 203.
[0021]
Therefore, the field end code separator 22 shown in FIG. 2 converts the non-real time data input via the file data input switch 21 into the top field video data 201 and the bottom field video data 203 (hereinafter referred to as non-real time). And a top field start code 205 and a bottom field start code 207. Then, the field end code separator 22 outputs the non-real time video signal to the switcher 30 and also displays the top field start code 205 or the bottom field start code 207 following the bottom field video data 203 or the top field video data 201. When the head is detected, a field end code detection interrupt is output to the central processing unit 23.
[0022]
In addition, the controller 20 includes a synchronization signal generator 24 that generates a synchronization signal and outputs it to the switch 40 when a synchronization signal generation instruction is input from the central processing unit 23. In addition to the above signals, the central processing unit 23 receives a real-time / non-real-time switching interrupt, a compression start instruction interrupt, and a compression end instruction interrupt from the personal computer 3, and reads one field described later from the compressor 60. An end interrupt is input, and the above-described real time / non-real time switching signal is output to the switching devices 30 and 40.
[0023]
Next, the configuration of the compressor 60 will be described with reference to FIG. As shown in FIG. 4, the compressor 60 is read from the buffer 50 in response to the read controller 61 that outputs a read instruction to the buffer 50 in response to a synchronization signal or the like input from the switch 40. A subtractor 62 that performs a subtraction process between the video signal and reference data described later, a DCT converter 63 as an orthogonal transform unit that performs a DCT (discrete cosine transform) process, which is a kind of orthogonal transform, and the DCT converter 63. A quantizer 64 as a quantizing means for quantizing the DCT coefficient data output from, and variable length encoding means for performing variable length coding on the DCT coefficient data quantized by the quantizer 64 The variable length encoder 65, the inverse quantizer 66 for inversely quantizing the DCT coefficient data quantized by the quantizer 64, and the inverse quantizer 66 for inverse quantization. An inverse DCT converter 67 that performs inverse DCT (Inverse Discrete Cosine Transform) processing on the DCT coefficient data, and motion compensation is added to the data returned to the video signal before DCT processing by the inverse DCT converter 67. For the motion compensation prediction, motion compensation prediction based on the data stored in the memory 69 and output as reference data A compensator 71 and a compression controller 73 for controlling the operation of the entire compressor 60 are provided.
[0024]
In the compressor 60, the video signal stored in the buffer 50 can be compressed as follows and output as the stream 9. First, a video signal (moving image data) to be compressed is temporarily stored in the buffer 50. The read controller 61 inputs a read instruction to the buffer 50 every time a synchronization signal is input from the switch 40 and causes the subtractor 62 to read the video signal stored in the buffer 50. Reference data (predicted value data) from the motion compensator 71 is also input to the subtractor 62, and difference data (prediction error) between the video signal and reference data is output to the DCT converter 63.
[0025]
The DCT transformer 63 performs DCT (discrete cosine transform) processing on the difference data input from the subtractor 62. The calculation unit of this processing is performed in a predetermined block unit, and the number of coefficients (hereinafter also referred to as DCT coefficients) corresponding to the block unit is calculated. The DCT converter 63 arranges these coefficients in the order of frequency components and outputs them to the quantizer 64. The quantizer 64 quantizes the DCT coefficient input from the DCT converter 63 with a preset step size, and outputs the quantized value to the variable length encoder 65. The variable length encoder 65 determines a significant block and the like, variable length codes the quantized DCT coefficients, and outputs the result as a stream 9.
[0026]
As for this variable-length coding, for example, it is conceivable that after the output of the quantizer 64 is run-length converted, the coefficient is converted into a variable-length code and output. The run-length transform results in two coefficients that are a set of the number of zero coefficients and the value of the next non-zero coefficient, but the output of the quantizer 64 tends to continue with many zero coefficients. By converting, the amount of data is reduced. Next, two coefficients obtained as a result of the run-length conversion are put together, one variable length code is assigned and output, and compressed data is obtained.
[0027]
On the other hand, since the quantized DCT coefficient output from the quantizer 64 is input to the inverse quantizer 66, inverse quantization is performed using the step size used in the quantizer 64, and the DCT is performed. The coefficient is calculated and output to the inverse DCT converter 67. This DCT coefficient is a value including an error due to quantization. The inverse DCT transformer 67 performs an inverse DCT (inverse discrete cosine transform) process on the DCT coefficient and outputs the result to the adder 68. The adder 68 adds the output from the inverse DCT converter 67 and the output from the motion compensator 71 and inputs the result to the memory 69.
[0028]
The memory 69 is a frame memory for motion compensation prediction, and is composed of a frame memory for at least two frames. Then, the data from the adder 68 is accumulated, and at the same time, the previous frame data for motion compensation prediction is output to the motion compensator 71. The motion compensator 71 performs well-known motion compensation prediction using a motion vector or the like on the previous frame data input from the memory 69 and outputs the prediction value data to the subtractor 62. This is a schematic operation related to data compression. In this way, efficient use of data can be realized by using the difference between video signals (moving image data) and employing run-length conversion and variable length codes. it can.
[0029]
In addition, the compression controller 73 temporarily stops the operation of each part of the compressor 60 from the subtractor 62 to the motion compensator 71 when the compression operation for one field is completed at least during processing related to compression of non-real time data. This state is held until the next synchronization signal is input to the read controller 61. Further, as described above, the read controller 61 inputs a read instruction to the buffer 50 each time a synchronization signal is input from the switch 40, causes the subtractor 62 to read the data stored in the buffer 50, and When all the data in the buffer 50 has been read by the subtractor 62, a one-field read end interrupt is input to the central processing unit 23 of the controller 20.
[0030]
Next, control in the moving picture data compression apparatus 1 configured as described above will be described. 5 to 9 are flowcharts showing processing executed by the central processing unit 23 of the controller 20, and FIG. 5 shows its main routine. The central processing unit 23 starts this processing when the power is turned on.
[0031]
As shown in FIG. 5, when the central processing unit 23 starts processing, first, all interrupts are prohibited in S1 (S represents a step: the same applies hereinafter), and in S2, the video input means is set in real time. And Here, the video input means is constituted by a kind of flag stored in the central processing unit 23 according to the state of the switching units 30 and 40. When the power is turned on, both the switches 30 and 40 are set on the synchronization signal generator 10 side, that is, the side corresponding to the real time data, so that the video input means is set to the real time.
[0032]
In subsequent S3 and S4, real-time / non-real-time switching interrupt and compression start instruction interrupt from the personal computer 3 are permitted, and in subsequent S5, it is determined whether or not there is any interrupt. If there is no interrupt (S5: NO), the process waits in S5 as it is. If there is an interrupt (S5: YES), the process corresponding to the interrupt is executed in S6, and then the process proceeds to S5. That is, after the power is turned on, the central processing unit 23 executes the initialization processing of S1 to S4, and then waits for an interruption by the infinite loop of S5. In addition, during execution of the infinite loop, if a predetermined end instruction is input as an interrupt, the process ends. If a predetermined reset instruction is input as an interrupt, the process is restarted from S1.
[0033]
FIG. 6 shows a real time / non-real time switching interrupt process executed as a process (S6) corresponding to the interrupt when a real time / non-real time switching interrupt is input (S5: YES). As shown in FIG. 6, when this process is started, first, the current state of the video input means is determined (S11). If it is real time, the process proceeds to S13. In S13, the video input means is set to the non-real time, and in the subsequent S15, a real time / non-real time switching signal is output to the switching devices 30 and 40. Then, both the switches 30 and 40 are set to the controller 20 side, that is, the side corresponding to the non-real time data. In the previous S13, the video input means is set to non-real time accordingly.
[0034]
If the video input means is in non-real time, the process proceeds from S11 to S17. In S17, after the video input means is set to the real time, the process proceeds to S15 described above, and the real time / non-real time switching signal is output to the switching devices 30 and 40. Then, both the switches 30 and 40 are set to the synchronization signal generator 10 side, that is, the side corresponding to the real time data. In the previous S17, the video input means is set in real time accordingly. In this way, by inputting a real time / non-real time switching interrupt from the personal computer 3, it is possible to switch between the real-time data and the non-real time data by switching the states of the switchers 30 and 40. it can. When the process of S15 is finished and this routine is finished, the process returns to the infinite loop (S5) in FIG.
[0035]
When the compression start instruction interrupt is input (S5: YES), as shown in FIGS. 7 to 9, the compression start instruction interrupt process corresponding to the interrupt is executed as S6. As shown in FIG. 7, when the process is started, first, in S21 and S23, the compression start instruction interrupt and the real time / non-real time switching interrupt are prohibited. In subsequent S25, a variable F for counting the number of fields is set to 1 as will be described later, and in the subsequent S27, a compression end instruction interrupt is permitted. Subsequently, the process proceeds to S29 to determine the current state of the video input means. If the video input means is in real time, the process proceeds to S31. In S31, it is determined whether or not the compression operation by the compressor 60 is finished, and the process waits until the compression operation is finished. That is, as described above, the moving image data compression apparatus 1 can compress real-time data in substantially the same manner as a conventional moving image data compression apparatus. For this reason, in the compression, the controller 20 does not need to perform such control. Therefore, in S31, the state of the compressor 60 is detected, and the process waits until the compression operation is completed. Further, when the compression end instruction interrupt is input from the personal computer 3 during the compression of the real time data, the compression operation of the compressor 60 may be forcibly ended. In this case, however, a predetermined end process is required to smoothly end the compression operation.
[0036]
When the compression process ends (S31: YES), the process proceeds to S32 and all interrupts are prohibited. In subsequent S33 and S34, the compression start instruction interrupt and the real time / non-real time switching interrupt are permitted, and the process returns to the infinite loop (S5). That is, by executing the processing of S32 to S34, a state similar to the case where the process proceeds to the infinite loop (S5) immediately after the power is turned on is obtained.
[0037]
On the other hand, if the video input means is in non-real time during the execution of the compression start instruction interrupt process shown in FIG. 7, the process proceeds to S36 and S37 sequentially after S29, the field end code detection interrupt and one field read end. Enable interrupts. Subsequently, after outputting a file data input start instruction to the file data input switch 21 (S38), whether or not a field end code detection interrupt has occurred (S41), whether or not a 1 field read end interrupt has occurred (S43). ), It is sequentially determined whether or not a compression end instruction interrupt has occurred (S45). If no interrupt has occurred (S41: NO, S43: NO, S45: NO), the processes of S41 to S45 are repeatedly executed, and the process waits until any interrupt occurs.
[0038]
When the file data input start instruction is output in S38, the non-real time data from the video file 7 is input to the field end code separator 22 via the file data input switch 21. Then, the field end code separator 22 outputs a non-real time video signal for one field to the switch 30 and then outputs a field end code detection interrupt to the central processor 23.
[0039]
For this reason, normally, a positive determination is first made in S41. Then, the process proceeds to S51 and S53 in sequence, and after a file data input stop instruction is input to the file data input switch 21 (S51), a synchronization signal generation instruction is output to the synchronization signal generator 24 (S53), and S41. Shifts to the loop processing of S45.
[0040]
By this processing, after the non-real time video signal for one field is output to the switch 30, the input of non-real time data through the file data input switch 21 is stopped (S51). Subsequently, when the sync signal generator 24 outputs a sync signal in response to the sync signal generation instruction (S53), it is input to the compressor 60 via the switch 40. Then, the read controller 61 of the compressor 60 instructs the video signal for one field stored in the buffer 50 to be read, and provides it to the compression operation by the configuration after the subtractor 62. When all the video signals for one field are read into the compressor 60, a one-field reading end interrupt is generated as described above.
[0041]
When this one-field read end interrupt is input to the central processing unit 23 (S43: YES), the process proceeds to S55, and the variable F is incremented by one. In subsequent S57, after a file data input start instruction is output to the file data input switch 21, the process proceeds to a loop process of S41 to S45. Then, the input of non-real time data is resumed as in the case where the process proceeds from S38 to this loop process. Normally, by repeatedly executing the processing of S41 to S57, the input of non-real time data (S57) and the reading of the video signal to the compressor 60 according to the input (S53) are sequentially performed one field at a time. And non-real time data compression is performed.
[0042]
When a compression end instruction interrupt is input from the personal computer 3, an affirmative determination is made in S45, and the process proceeds to S61. In S61, it is determined whether or not a field end code detection interrupt has occurred. If not (S61: NO), the process proceeds to S63. In S63, it is determined whether or not a one-field reading end interrupt has occurred. If not (S63: NO), the process proceeds to S61 again.
[0043]
If a compression end instruction interrupt occurs during the input of non-real time data, an affirmative determination is made in S61 first while repeating the loop processing of S61 and S63. Then, similarly to S51 and S53 described above, the output of the file data input stop instruction (S65) and the output of the synchronization signal generation instruction (S67) are executed, and the process returns to the loop process. Thereby, reading of the video signal into the compressor 60 is started.
[0044]
In this manner, after starting the reading of the video signal (S67) or when a compression end instruction interrupt occurs during the reading of the video signal, a one-field reading end interrupt is eventually generated (S63: YES). Then, the process proceeds to S71, and it is determined whether or not the variable F is an even number. As described above, the non-real time data file 200 is composed of a pair of top field video data 201 and bottom field video data 203. For this reason, when F is an odd number, it can be seen that one of the paired video data is not read.
[0045]
Therefore, when F is an odd number (S71: NO), after incrementing F (S73) and outputting a file data input start instruction (S75), the process proceeds to a loop process of S61 and S63. When non-real time data for one field is input (S61: YES), reading of the video signal to the compressor 60 is started (S67). When the reading is completed (S63: YES), S71 is again performed. Migrate to At this time, since F is an even number (S71: YES), the process proceeds to the next S77. If F is an even number from the time when the process first moves to S71, the process moves to S77 as it is. In S77, all interrupts are prohibited. In subsequent S78 and S79, after allowing the compression start instruction interrupt and the real time / non-real time switching interrupt, the process proceeds to the infinite loop of S5. With the above processing, it is possible to shift to the standby state in S5 after permitting the same interrupt as that immediately after power-on.
[0046]
If the non-real time data recorded in the video file 7 is short, it may be possible to detect the data end of the non-real time data while executing the processing shown in FIG. When a one-field read end interrupt is input from the device 60 (S43: YES), the process may go directly to S77.
[0047]
As described above, in the moving image data compression apparatus 1 according to the present embodiment, when the real time / non-real time switching interrupt is input from the personal computer 3, the controller 20 sends the real time / non-real time switching signal to the switching units 30 and 40. Can be arbitrarily switched between compressing the real-time data recorded on the video tape 5 and compressing the non-real-time data recorded on the video file 7. For this reason, only the data on the desired side can be reliably compressed. In addition, when real-time data and non-real-time data are input at the same time, the data to be compressed can be arbitrarily switched and connected later. Therefore, variations such as editing increase. However, at the time of switching the data to be compressed, it is necessary to input a compression end instruction interrupt to end the compression operation once.
[0048]
When compressing non-real time data, the controller 20 inputs a video signal for one field to the buffer 50, and then sends a synchronization signal to the compressor 60 to read the data, indicating the end of the reading. When a one-field read end interrupt occurs, the next field data is input to the buffer 50. On the other hand, the compression of real-time data can be executed almost in the same manner as before. For this reason, in this embodiment, not only real-time data but also non-real-time data can be reliably and easily compressed and provided for various uses such as communication.
[0049]
Furthermore, in the compressor 60, by providing the compression controller 73, after the compression operation for one field is completed, each unit can be temporarily stopped until the next synchronization signal is input. Although the synchronization signal generated based on the non-real time data is not necessarily generated at a constant interval, in the present embodiment, the above configuration can be used to realize a very accurate compression operation. it can. That is, by temporarily stopping the operation for detecting the difference between the preceding and subsequent moving image data, the data changes while the synchronization signal is delayed, or an error occurs because there is no difference detection target by the subtractor 62. Can be prevented. Therefore, the compression operation of non-real time data can be executed more reliably and accurately.
[0050]
In the above embodiment, the synchronization signal generator 10 is used as the real time reading control means and the first synchronization signal generating means, the file data input switch 21 of the controller 20 is used as the non-real time reading control means, and the controller 20 The synchronizing signal generator 24 corresponds to the second synchronizing signal generating means, the compressor 60 corresponds to the compressing means, the switchers 30 and 40 correspond to the switching means, and the compression controller 73 corresponds to the delay means.
[0051]
In addition, the present invention is not limited to the above embodiment, and can be implemented in various forms without departing from the gist of the present invention. For example, real-time reading means (such as a recorder) for reading real-time data from the video tape 5 and non-real-time reading means (such as a driver) for reading non-real time data from the video file 7 are the synchronization signal generator 10 and the controller. Although the driving state is controlled according to the 20 processing states, these reading means may be provided integrally with the moving image data compression apparatus 1 or provided separately. In the above embodiment, a field end code detection interrupt is generated based on the top field start code 205 and the bottom field start code 207, and processing for each field is executed. However, the data length of one field is constant. In this case, processing for each field may be executed based on the data length. Moreover, you may perform a process for every frame. Further, the moving image data may be compressed based on a standard other than MPEG. Furthermore, in the above embodiment, the compression operation of the compressor 60 is delayed by the above-described processing by the compression controller 73, but various other configurations for delaying the compression operation are conceivable.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a moving image data compression apparatus according to an embodiment.
FIG. 2 is a block diagram showing a configuration of a controller of the moving image data compression apparatus.
FIG. 3 is an explanatory diagram showing a configuration of non-real time data.
FIG. 4 is a block diagram showing a configuration of a compressor of the moving image data compression apparatus.
FIG. 5 is a flowchart showing a main routine executed by the controller.
FIG. 6 is a flowchart showing real-time / non-real-time switching interrupt processing.
FIG. 7 is a flowchart showing compression start instruction interrupt processing.
FIG. 8 is a flowchart showing a continuation of compression start instruction interrupt processing.
FIG. 9 is a flowchart showing a further continuation of the compression start instruction interrupt process.
[Explanation of symbols]
1 ... Video data compression device 5 ... Video tape 7 ... Video file
10 ... Sync signal generator 20 ... Controller 21 ... File data input switch
22 ... Field end code separator 23 ... Central processing unit
24 ... Synchronization signal generator 30, 40 ... Switch 60 ... Compressor
61 ... Reading controller 62 ... Subtractor 73 ... Compression controller

Claims (4)

動画データが記録された記録媒体から読み取られた動画データを圧縮する動画データ圧縮装置であって、
動画データが時間の経過に沿って順次読み取り可能に記録された実時間記録媒体から、上記動画データを読み取る実時間読み取り手段の動作を制御する実時間読み取り制御手段と、
上記実時間読み取り手段による上記動画データの読み取りに合わせて同期信号を発生する第1の同期信号発生手段と、
動画データが時間の経過とは無関係に読み取り可能に記録された非実時間記録媒体から、上記動画データを読み取る非実時間読み取り手段の動作を制御する非実時間読み取り制御手段と、
上記非実時間読み取り手段が読み取った動画データに基づいて同期信号を発生する第2の同期信号発生手段と、
上記第1の同期信号発生手段が発生した同期信号に応じて、上記実時間読み取り手段が読み取った動画データを圧縮する実時間圧縮動作と、上記第2の同期信号発生手段が発生した同期信号に応じて、上記非実時間読み取り手段が読み取った動画データを圧縮する非実時間圧縮動作とを、選択的に実行する圧縮手段と、
を備えたことを特徴とする動画データ圧縮装置。
A video data compression device that compresses video data read from a recording medium on which video data is recorded,
Real-time reading control means for controlling the operation of the real-time reading means for reading the moving picture data from a real-time recording medium in which the moving picture data is recorded so as to be sequentially readable along with the passage of time;
First synchronization signal generating means for generating a synchronization signal in accordance with the reading of the moving image data by the real time reading means;
A non-real time reading control means for controlling the operation of the non-real time reading means for reading the moving picture data from a non-real time recording medium in which the moving picture data is recorded so as to be readable regardless of the passage of time;
Second synchronization signal generating means for generating a synchronization signal based on the moving image data read by the non-real time reading means;
In response to the synchronization signal generated by the first synchronization signal generation means, the real time compression operation for compressing the moving image data read by the real time reading means, and the synchronization signal generated by the second synchronization signal generation means In response, compression means for selectively executing non-real time compression operation for compressing moving image data read by the non-real time reading means;
An apparatus for compressing moving image data, comprising:
上記圧縮手段に、上記実時間圧縮動作または上記非実時間圧縮動作のいずれを実行させるかを、所望に応じて切り換える切換手段を、
更に備えたことを特徴とする請求項1記載の動画データ圧縮装置。
Switching means for switching, as desired, whether the compression means performs the real-time compression operation or the non-real-time compression operation;
The moving image data compression apparatus according to claim 1, further comprising:
上記第2の同期信号発生手段が上記同期信号を発生する間隔が、上記圧縮手段の上記非実時間圧縮動作に要する時間よりも長いとき、上記圧縮手段による上記非実時間圧縮動作を遅延する遅延手段を、
更に備えたことを特徴とする請求項1または2記載の動画データ圧縮装置。
A delay for delaying the non-real time compression operation by the compression means when the interval at which the second synchronization signal generating means generates the synchronization signal is longer than the time required for the non-real time compression operation of the compression means. Means
The moving image data compression apparatus according to claim 1 or 2, further comprising:
上記圧縮手段が、少なくとも上記非実時間圧縮動作を、前後の動画データの差分を利用して実行すると共に、
上記遅延手段が、上記圧縮手段による上記差分の検出に関わる動作を一時停止させることによって、上記非実時間圧縮動作を遅延することを特徴とする請求項3記載の動画データ圧縮装置。
The compression means performs at least the non-real time compression operation using the difference between the preceding and subsequent moving image data,
4. The moving image data compression apparatus according to claim 3, wherein the delay unit delays the non-real time compression operation by temporarily stopping an operation related to the detection of the difference by the compression unit.
JP11942798A 1998-04-28 1998-04-28 Movie data compression device Expired - Fee Related JP3861453B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP11942798A JP3861453B2 (en) 1998-04-28 1998-04-28 Movie data compression device
US09/300,484 US6731809B1 (en) 1998-04-28 1999-04-28 Moving picture data compression device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11942798A JP3861453B2 (en) 1998-04-28 1998-04-28 Movie data compression device

Publications (2)

Publication Number Publication Date
JPH11313286A JPH11313286A (en) 1999-11-09
JP3861453B2 true JP3861453B2 (en) 2006-12-20

Family

ID=14761182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11942798A Expired - Fee Related JP3861453B2 (en) 1998-04-28 1998-04-28 Movie data compression device

Country Status (1)

Country Link
JP (1) JP3861453B2 (en)

Also Published As

Publication number Publication date
JPH11313286A (en) 1999-11-09

Similar Documents

Publication Publication Date Title
JPH08214260A (en) Specific reproducing method and device for encoded data
JP2001346216A (en) Moving picture compression method and information processor
US5787225A (en) Optical disk apparatus for the reproduction of compressed data
JP4981275B2 (en) Image recording device
US20020113898A1 (en) Picture processing apparatus and method, and recording medium
US6271774B1 (en) Picture data processor, picture data decoder and picture data encoder, and methods thereof
JP3861453B2 (en) Movie data compression device
JP3861454B2 (en) Movie data compression device
JP2000078531A (en) Method and system for editing audio data
JP2001268575A (en) Image change detector, image change detecting method, image encoder and information recording medium in which program for detecting image change is computer readably recorded
JP2010166386A (en) Motion picture playback apparatus and program
JP2001292372A (en) Image change detector, image change detecting method, image encoder and information recording medium in which program for detecting image change is computer- readably recorded
US6731809B1 (en) Moving picture data compression device
JPH06253331A (en) Editing device corresponding to variable-length encoded signal
JP2006311366A (en) Image recorder and method for driving image recorder
JP2007142809A (en) Video recording apparatus
JP2009033604A (en) Video signal coding apparatus and method
JPH11328937A (en) Device and method for recording signal
JP2010050616A (en) Recording device and recording method, reproduction device and reproduction method, program, and recording/reproducing device
JPH1198514A (en) Image coder and its method
JP2004180345A (en) Photographed image recording apparatus
JPH0888854A (en) Moving picture encoding system
JP2000023090A (en) Compressed moving image editing device and storage medium
JP2002238030A (en) Slow motion image detecting method and device
JP2004179683A (en) Picture recording system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060804

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: 20060905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060918

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: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees