CX−355 - テレフォース

リアルタイム
自然画プロセッサー
PC/AT互換
シリーズ
CX−355
取扱説明書
(Version 1.0)
テレフォース
TELEFORCE
T
TE
EL
LE
EF
FO
OR
RC
CE
E I
IN
NC
C.
.
2000/10/2 初版作成
2001/8/21
第 2 版改正
2001/8/28
改正
は
じ
め
に
この度は弊社の自然画プロセッサーCX−355をお買い上げいただき誠に有難うございます。
本製品は、パーソナルコンピュータPC/AT互換機の拡張スロットに取り付けて、使用することが出来ます。
この取扱説明書をよくお読みいただき、本機の機能を十分活用されますよう正しい取扱をお願い致します。
御
注
意
1.本製品を動作させるためには次の装置が必要です。
(1)
PC/AT互換のパーソナルコンピュータ。
(2)
標準 NTSC/PAL ビデオ信号を出力することのできるカメラ、ビデオ等の機器。
(画像入力時のみ必要)
(3)
ユーティリティソフトの動作には Windows3.1以降が必要です。
2. 本書の一部または全部を無断転載することは禁止されています。
3. 本書の内容に関して将来予告なく変更することがあります。なお変更した場合はホームページ
のユーザーサポートにて随時、記載致します。
ホームページアドレス http://www.teleforce.co.jp
4. 本書を運用した結果の影響に付いては責任を負いかねますので、あらかじめご了承下さい。ま
たお気づきの点がございましたら、お買い求めの販売店または、直接弊社にご連絡下さい。
5.本機の使用に付いてハード上の制約がありますので、次の点に十分ご注意下さい。
6. ビデオ器の信号グランドとパソコン本体のグランドが、同電位になるように接続して下さい。
(最悪の場合、基板が破損する事があります。)
本機は5V−1.0A、12V−0.1Aを消費しますので、他の拡張基板と併用する場合、合計電流が規
定値を越えないよう十分ご注意ください。
目
第Ⅰ部
次
CX- 355の操作について
1.自然画プロセッサー基板の取り付け . . . . . . . . . . . . . . . . . . . . . Ⅰ- 1
1−1
パッケージの内容........................................... Ⅰ−1
1−2
基板各部の名所と役割 ....................................... Ⅰ−4
1−3
基板を取り付ける前に ....................................... Ⅰ−5
1−4
基板の取り付け ............................................ Ⅰ−5
1−5
ケーブルの接続 ............................................ Ⅰ−6
1−6
コネクタ仕様詳細........................................... Ⅰ−7
2.ハードウェア . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ⅰ- 8
2−1
ハード仕様 ................................................ Ⅰ−8
3.ユーティリティソフト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ⅰ- 1 0
3−1
ユーティリティソフトの使用方法.............................. Ⅰ−10
3−2
添付ユーティリティソフトの内容.............................. Ⅰ−10
3−3
インストールの仕方......................................... Ⅰ−12
3−4
インポーズ位置の調整 ....................................... Ⅰ−13
3−5
初期設定ファイル........................................... Ⅰ−15
3−6
DOSコマンドユーティリティの使用方法 ...................... Ⅰ−17
3−7
Windows
サンプルユーティリティの使用方法 ............. Ⅰ−19
第Ⅱ部
1.
ライブラリ・リファレンス( 1 )
コントロール機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ⅱ- 1
cx_portset
CX−355の初期化..........................Ⅱ−1
cx_portchg
ボードの制御移動..............................Ⅱ−1
cx_vdbswset
cx_dspswset
CX−355のモードスイッチの設定............Ⅱ−2
CX−355の表示モードスイッチの設定........Ⅱ−3
cx_tvinswset
CX−355の取り込みモードスイッチの設定..Ⅱ−4
cx_vdbswget
cx_tvinswget
スイッチ内容の読み出し........................Ⅱ−5
スイッチ内容の読み出し......................Ⅱ−5
cx_stil
2.
ビデオ信号からの画像取り込み....................Ⅱ−6
フレームメモリアクセス . . . . . . . . . . . . . . . . . . . . . . . . Ⅱ- 7
cx_xy_set
フレームメモリアクセスの座標位置をセット........Ⅱ−7
cx_point_set
cx_point_get
色データを指定位置へ書き込み.................Ⅱ−7
指定位置の色データを読み出し.................Ⅱ−8
cx_rgb_put
CPUメモリにあるRGB順のデータを
cx_rgb_get
CX−355に転送..............Ⅱ−8
RGBの順でCX−355にある
画像データをメモリに転送........Ⅱ−9
cx_vdbcls
cx_vdbmove
cx_box
cx_line
cx_circle
cx_bw
cx_ganma
cx_chr
3.
CX−355の画面を消去........................Ⅱ−9
CX−355フレームメモリ画像の転送...........Ⅱ−10
箱を表示...........................................Ⅱ−10
線を表示.........................................Ⅱ−11
楕円を表示.....................................Ⅱ−11
カラー画像を白黒表示に変換..........................Ⅱ−12
ガンマ補正........................................Ⅱ−12
文字を表示 .......................................Ⅱ−13
ファイル編集機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ⅱ- 1 4
cx_load
画像データの読み込み .............................Ⅱ−14
cx_save
画像データの保存 .................................Ⅱ−15
第Ⅲ部
ライブラリ・リファレンス( 2 )
1.CX355−1による圧縮・復元機能
cx_dctload
画像データの読み込み ............................ Ⅲ−1
cx_dctsave
画像データの圧縮保存.............................Ⅲ−1
cx_jpeg_load_start
cx_jpeg_save_start
復元のためのファイルオープン ...................Ⅲ−2
圧縮のためのファイルオープン....................Ⅲ−2
cx_jpeg_head_load
圧縮データのヘッダの読み込み ...................Ⅲ−2
cx_jpeg_head_save
cx_jpeg_data_load
圧縮データのヘッダの書き込み....................Ⅲ−3
圧縮データの画像データの読み込み ...............Ⅲ−3
cx_jpeg_data_save
圧縮データの画像データの書き込み ...............Ⅲ−3
cx_jpeg_load_end
cx_jpeg_save_end
ファイルの読み込み終了 ..........................Ⅲ−4
ファイルの書き込み終了..........................Ⅲ−4
cx_get_jpeg_length
高速連続圧縮ファイルのヘッダにある
cx_jpeg_record
1 フレームデータの長さ情報を取得します....Ⅲ−4
高速圧縮画像データの書き込み ....................Ⅲ−5
cx_jpeg_play
高速圧縮画像データの読み込み....................Ⅲ−5
cx_jpeg_play_load
高速連続圧縮データの画像データの
指定位置での読出し表示 .....Ⅲ−6
cx_jpeg_play_get
高速連続圧縮ファイルの圧縮データが始まる
cx_jpeg_play_put
ファイルポインタを読出し .......Ⅲ−6
高速連続圧縮データの画像データの
指定位置での読出し表示 .....Ⅲ−7
cx_jpeg_play_put1
高速連続圧縮データの画像データの
指定位置での読出し表示 .....Ⅲ−7
cx_decomp_small
縮小モードの設定................................Ⅲ−8
cx_initcomp
cx_makeq
圧縮準備 ........................................Ⅲ−8
Q ファクタテーブルの計算 ........................Ⅲ−9
cx_setq
Q ファクタテーブルの設定 ........................Ⅲ−9
cx_compQ
cx_decQ
圧縮用 Q ファクタテーブルの設定 ..................Ⅲ−9
伸張用 Q ファクタテーブルの設定..................Ⅲ−9
cx_set_jpegcomment
...............................................Ⅲ−10
cx_get_jpegcomment
cx_dct_h_length
...............................................Ⅲ−10
圧縮ファイルの読出し横サイズを取得 ..............Ⅲ−10
cx_dct_v_length
圧縮ファイルの読出し縦サイズを取得 ..............Ⅲ−10
cx_set_q_tbl
cx_write_mem_sw
cx_read_mem_sw
...............................................Ⅲ−11
ボード内のメモリーに書き込み....................Ⅲ−12
ボード内のメモリーを読出し ...................Ⅲ−12
APPENDIX
APPENDIX
取込位置の設定方法. . . . . . . . . . . . . . . . . . .
PAL信号の取込 . . . . . . . . . . . . . . . . . . . .
Ⅲ−13
Ⅲ−14
第Ⅰ部
CX−355の操作について
1.自然画プロセッサー基板の取り付け
1 -1 パッケージの内容
CX−355パッケージには、以下のものが含まれます。
( 1 ) CX−355ボード
自然画プロセッサー基板”CX-355”本体です。
(2)VGAケーブル(1 本)
本体のディスプレイ接続端子とCX−355のD−SUB 9pinを接続する
ケーブルです。
D−SUB
9pin
シュリンク
Ⅰ‐1
SD−SUB
15pin
(3)コンポジット入力用コネクタ
SD−SUB 15pin
RCAコネクタ
(4)ユーティリティディスク(1枚)
CX−355を利用するシステムが収められています。
(5)取扱説明書 (1冊)
本説明書です。
355
Ⅰ‐2
(6)ユーザー登録及び保証カード
①必要事項をご記入の上、必ずご返送くださる及び保証書カードようお願い致します。
②保証書は大切に保管してください。
Ⅰ‐3
1- 2 基板各部の名所と役割
(1)RGB信号、コンポジット信号、Y/C分離信号入力コネクタ
画像入力時にカメラ、ビデオ等の機器を接続します。
(2)VGA信号入力コネクタ
コンピュータのVGA出力信号端子に付属のケーブルで接続します。
(3)VGA信号出力コネクタ
RGB入力端子を持つディスプレイに接続します。
※コネクタのピン配置は第Ⅰ部 1−6入出力コネクタを参照してください。
Ⅰ‐4
1- 3 基板を取り付ける前に
①本ポードはPCの表示からの信号と本ボードの信号をオーバレイし、自然画を表示
しますが、解像度の基準として1024×768までの信号を表示できます。さらに
1280×1024も表示可能ですが、リフレッシュレートが60Hzを超えますと
表示が乱れる場合がありますので、この場合リフレッシュレートを変更して下さい。
1- 4 基板の取り付け
(1)作業を行う前に必ず コンピュータ本体の電源プラグをコンセントから抜いて下さい。
(2)
本体のキャビネットをはずします。
(3)
CX−355ボードを取り付けるスロットを選びます。
バスにはISAバス・PCIバスが有りますが、CX−355の場合はPCIバ
スを選んでください。
(4)
(5)
選んだスロットのカバーをドライバ等を使用し、取り外します。
CX−355ボートをスロットへ差し込み、カバーを固定していたネジで、
CX−355ボードを固定します。
(6)
キャビネットを取り付けます。
注意
コンピュータにより取り付け場所、方向は異なりますので、詳しくは各コンピュー
タ付属のマニュアルに記載されている、拡張ボートの取り付けを参照してください。
Ⅰ‐5
1- 5 ケーブルの接続
注意
入力コネクタ部と接続するビデオ機器の電位が同電位になるようにして(アースをと
る)
、接続してください。
同電位になっていない場合、基板の故障の原因になりますのでご注意ください。
より安全にご使用いただくため、別売の”アイソレー ションアンプ(IA400等)
”
のご使用をお奨めします。
Ⅰ‐6
1- 6コネクタ仕様詳細
次に示すCX−355 15ピン D-SUB コネクターの説明と、お手持ちのディス
プレイコネクターにおける説明書を参照して、ケーブルを用意してください。
( 1 ) ビデオ信号入出力コネクタ仕様
コネクタ名称…………SD−SUB15pin
ピン番号
ビデオ入力コネクタ信号名
ビデオ出力コネクタ信号名
①
映像信号
赤
映像信号
赤
出力
②
映像信号
緑
映像信号
緑
出力
③
映像信号
青
映像信号
青
出力
④
グランド
⑤
グランド
コンポジットビデオ・Y
グランド
⑥
グランド
赤
グランド
赤
⑦
グランド
緑
グランド
緑
⑧
グランド
青
グランド
青
⑨
外部接点入力
0
⑩
外部接点入力
1
⑪
⑫
Y/C入力 C信号
DDC
⑬
水平同期信号
水平同期信号
出力
⑭
垂直同期信号
垂直同期信号
出力
⑮
CVBS・CS・Y信号
入力
Ⅰ‐7
DDC
DATA
CLK
2. ハードウェア
2- 1 ハード仕様
(1)適用機種
:IBM PC/AT互換コンピュータ・NEC NXシリーズ
(PCIスロット搭載機種)
(2)画像入力
・ 入力解像度
:640×480画素 (プログラマブル)
・入力ソース
:Y/C、コンポジットカラー信号(NTSC/PAL)
、
モノクロ信号、RGB−CS
・ 入力時間
:1/30s (1フレーム)
・ 入力端子
:SD−SUB 15ピン(RGB、コンポジット、Y/
C)
・ 入力信号レベル
:CVBS
Sync
Video
Sync
Video
:Y/C
0.3Vp-p
0.7Vp-p
0.3Vp-p
0.7Vp-p
Sync 0.5∼2Vp-p
Video 0.7Vp-p
:RGB−CS
・ 量子化レベル
:RGB
・ サンプリングクロック
:12.27MHz
・ ビデオ解像度
:水平解像度
各256階調 (8bit)
約450本(Y/C時)
(3)画像出力
(4)
・ オーバーレイ解像度
:最大1280×1024画素
・ 表示解像度
:最大1024×1024画素
・ 表示色
:1670万色 (RGB 各8bit)
・ 画像メモリ
:2048×1024×3×8bit
・ 出力端子
:SD―SUB
・ 出力信号
:アナログRGB信号 (出力レベル 0.7Vpp,75Ω)
1画面
15ピン(RGB−HV)
画像圧縮・復元(CX−355)(CX−355−1のみ)
(5)外形
・圧縮方式
:JPEG−R9準拠
・圧縮プロセッサ
:ZR36060
・処理速度
:max
42MByte/S(RGBデータ)
:W202×H122
Ⅰ‐8
(6)消費電流
:5V−2.0A 12V−0.1A −12V−0.1A
Ⅰ‐9
3.
ユーティリティソフト
3- 1 ユーテリティソフトの使用方法
フロッピーディスク内のファイルをハードディスク等にインストールする前に必ずバッ
クアップをとり、オリジナルは保管しておいてください。最新ファイルは www.teleforce.
co.jp のユーザーサポート・ダウンロードにて用意しています。又実行に伴いMicro
softのDLLが必要な場合が発生しますが、添付フロッピー以外のファイルもここに
用意しています。
3- 2 添付ユーティリティソフトの内容
CX355.PDF
本ファイルです。
DOS.EXE
下記のファイルをLHAにて自己解凍ファイルにした物です。
CX5.EXE
動作テストプログラム
CX355.LIB
DOSレベルラージモデルのライブラリ
CX355L.H
CX355.LIBの宣言ファイル
CX355.INI
環境ファイル
Win31.EXE
下記のファイルをLHAにて自己解凍ファイルにした物です
CX355WL.DLL
Windows¥systemへコピーして下さい。
CX355WL.LIB
DLLコンパイルライブラリ
C X355WL.H
DLLインクルードファイル
CX355W31.BAS
CX355WL.DLLのVB4(16)用インクルードファイル
C X 3 55.EXE
サンプルユーティリティ
CX355W31.VBP,AP355.FRM,CRT.FRM
CX355.EXEのソース
CX355.INI
環境ファイル
Ⅰ‐10
Win98.EXE
下記のファイルをLHAにて自己解凍ファイルにした物です。
CX355W98.DLL
関数DLLファイルWindows¥systemへコピーして下さい。
CX355W98.LIB
DLLのコンパイルライブラリ
CX355W32.H
DLLのインクルードファイル
CX355W98.BAS
DLLのVB用インクルードファイル
CX355W98.EXE
サンプルユーティリテイ
CX355W98.VBP,AP355.FRM,CRT.FRM
CX355W98.EXEのソース
CX355.INI
WINNT.EXE
環境ファイル
下記のファイルをLHAにて自己解凍ファイルにした物です
CX355NT.DLL
DLL
CX355NT.LIB
DLLのコンパイルライブラリ
CX355W32.H
DLLのインクルードファイル
CX355NT.BAS
サンプルユーティリティ
CX355NT.EXE
サンプルユーティリテイ
CX355NT.VBP,AP355.FRM,CRT.FRM
CX355NT.EXEのソース
CX355.INI
環境ファイル
C X 3 5 5 d e v . S Y S (cx355dev.ini)NT用ドライバ
INST.BAT
ボードポートアドレス設定プログラム
REGINI.EXE
INSTで使用するファイル
VBDLL.LZH
CX355xxx.EXE実行に必要なVB4のDLLです。
Ⅰ‐11
3- 3 インストールの仕方
※CX−355ボードがPCに取り付けられた状態で行って下さい。
「1」 DOSモード
1.CX−355実行環境のディレクトリ(フォルダー)を作成します
2.添付フロッピーのDOS.EXEを先程のディレクトリにコピーします。
3.CX−355実行環境のディレクトリにてDOS.exeを実行します。
「2」 Windows3.1モード
1.CX−355実行環境のディレクトリ(フォルダー)を作成します
2.添付フロッピーのWIN31.EXEを先程のディレクトリにコピーします。
3.CX−355実行環境のディレクトリにてWIN31.exeを実行します。
4.ADJ.exeを実行し表示位置の設定を行いします。
注意:ADJ.exe,CX355.exeは Visual BASIC 2 を使用しお
り VBRJP200.DLL が 必 要 で す 。 こ の フ ァ イ ル が 存 在 し な い 場 合 は 、
www.teleforce.co.jp のサポート・ダウンロードに VB2DLL として用意して
います。
「3」 Windows98モード
1.Windows起動時に新しくCX−355が挿された事をOSが判断し、
ドライバーを登録するかどうかを聞いてきますので、ドライバー登録無しの
状態で、ボードを認識させて下さい。
2.CX−355実行環境のフォルダーを作成します
3.添付フロッピーのWIN98.EXEを先程のフォルダーにコピーします。
4.添付フロッピーのVBDLL.EXEを先程のフォルダーにコピーします。
5.CX−355実行環境のフォルダーにてWIN98.exeとVBDLL.ex
eを実行します。
6.ADJw98.exeを実行し表示位置の設定を行います。
「4」 WindowsNTモード
1.CX−355実行環境のフォルダーを作成します
2.添付フロッピーのWINNT.EXEを先程のフォルダーにコピーします。
3.添付フロッピーのVBDLL.EXEを先程のフォルダーにコピーします。
4.CX−355実行環境のフォルダーにてWINNT.exeとVBDLL.ex
eを実行します。
5.INST.batを実行します。
7.WindowsNTを再起動します。
8.ADJNT.exeを実行し表示位置の設定を行います。
Ⅰ‐12
3- 4 インポーズ位置の調整
本ボードは640*480のVGA画面から1024*768の画面に於いてインポーズにより自
然画を表示します。そのため任意の表示モードにて正常なインポーズを行う為には調整が必要です。
ADJxxx.EXEを用意しました。
(1)Windows3.1,Windows98,WindowsNT4使用するOSの
DOS窓にてCX−355用のディレクトリを用意しフロッピーのWINxxx.
EXEをコピーします。
(2)WINxxx.EXEを実行しますと必要なファイルが作成されます。
VBをお持ちでない場合はVBで必要とするDLLを用意して下さい。
DLLファイルをWindows¥systemへコピーして下さい。
OSによりコピー先のディレクトリ名は異なります。
WindowsNTの場合は Windows¥system32 になります。
(3)ADJxxx.EXEを実行します。
画面にテストパターンがWindowsの画面とCX−355のフレームメモリー
画面に表示されます。最初は大きくずれて表示されますが、スクロールバーおよび
設定スイッチにて位置を決めます。
設定スイッチにては
クロックの切り替えスイッチ
1から7までのオプションボタンの中から下記の解像度リスト
内で選択します。
1:640×480
(20-36MHz) type 25.175MHz
3 :800×600
(25-60MHz)
35MHz
5 :1024×768 (50-80MHz)
70MHz
7 :1280×1024 (70-120MHz)
110MHz
(注意)ここでの設定は弊社CX−255ボードとの互換用
と し て 用 意 し て い ま す の で”7 ” 固 定 で 使 用 し て く だ さ い 。
スクロールバー
アスペクト
縦・横補正
adjust
ovdown1
円の縦・横比が変わります。
フレーム表示のクロスマークがWindows 表示のクロス
マークと平行になるようにあわせて下さい。
クロスマークのセンターが合うように調整して下さ
い。正常に設定できれば設定終了を押して下さい。
全体のにじみが少ない所を選択してください
画面したの赤とグレーの境がセンタ付近に来る所を
選択してください。
Ⅰ‐13
(4)任意のアプリケーションを作成する場合、ここで作られたCX355.INIのパ
スをcx_portset関数で呼ぶように作成して下さい。またCX355.I
NIを任意のパスにコピーして使用されてもかまいません。
注意
本プログラムはVB2(4)を使用して作成している為にVBRJP200.DLL(VB40032.DLL)が必要です。
Ⅰ‐14
3- 5 初期設定ファイル
環境ファイル CX355.INIファイルと、DOSでの環境設定にて表示モード、
表示位置等の設定を行います。
付属のユーティリティシステムは、MS−DOSのSETコマンドでCX355.IN
Iのファイルの位置を知らせます。
例)SET CX5=c:¥CX355¥CX355.INI
CX355.INIの内容
[ntsc]
vsw20=1463
;CVBS,Y/C PLL
vsw27=777
;RGB PLL(NTSC)
tvinsw60=155
vsw24=0x7d3
tvinsw0=640
tvinsw1=480
tvinsw13=0
tvinsw14=640
tvinsw15=480
tvinsw16=320
tvinsw17=-100
tvinsw18=-60
tvinsw20=0xc3
tvinsw25=0x10
tvinsw27=0x22
;取り込み横長さ
;取り込み縦長さ
;PAL mode 0:NTSC
;取り込み横長さ
;取り込み縦長さ
;取り込み横長さ
;RGB gain offset
;RGB setup offset
;7662
;7662
;7662
tvinsw48=660
tvinsw49=500
;取り込み横長さ(IP711) Hdisp+20
;取り込み縦長さ(IP711) Vdisp+20
tvinsw50=800;1000
;HTOTAL
tvinsw51=111;140
;HSTART
tvinsw52=758;919;HEND
tvinsw53=262;315;VTOTAL
tvinsw54=17;19 ;VSTART
tvinsw55=254;305;280;VEND
tvinsw80=1000
;DCT wrk
tvinsw81=108
tvinsw82=920
tvinsw83=796
tvinsw84=4
tvinsw85=586
tvinsw90=1000
tvinsw91=108
tvinsw92=920
tvinsw93=796
tvinsw94=4
tvinsw95=586
;IDCT wrk
vsw50=10;cVstart
vsw52=122
;cHstart
vsw55=10;iVstart
Ⅰ‐15
vsw57=104
;iHstart
[swset]
vsw0=1
;表示モード
vsw1=3
;インポーズカラー
vsw2=1
;0:No Zoom,1:Zoom
vsw3=2
;表示開始X座標
vsw4=2
;表示開始Y座標
vsw5=1024 ;表示横長
vsw6=512 ;表示横長
vsw10=0
;同期選択 0:外部,1:内部
vsw12=3
vsw19=0
;67
;logsw
vsw39=8
vsw30=44
vsw31=690
vsw33=15
vsw34=255
vsw45=100
;圧縮モード
;Play 用
;Play 用
;Play 用
8=Hard 1=Soft(4:2:2)
;Play 用
;Play 用
[dspswset]
dsw0=0 ;設定ード
dsw1= 672 ;設定
dsw2=6 ;画面モード設定2
dsw3= 243 ;画面表示オフセットX
dsw4= 33 ;画面表示オフセットY
adjust=0 ;adjust
ovdown1=35
ovdown2=64 ;adjust
dsw16=9
[tvinswset]
tvinsw_0=640
;取り込み横長さ
tvinsw_1=480
;取り込み縦長さ
tvinsw2=3 ;取り込み先X位置
tvinsw3=0 ;取り込み先Y位置
tvinsw4=2 ;入力ソース
tvinsw5=128;gain
tvinsw6=128;setup
tvinsw7=128;color
tvinsw8=128;Tint
tvinsw9=0 ;ビデオ取り込みタイミング
tvinsw10=0 ;画質
tvinsw11=0 ;フィールド反転sw
tvinsw19=0
[jpeg]
dctlevel=6
Ⅰ‐16
3- 6 DOSコマンドユーティリティの使用方法
WindowsNTを除いたOSで使用できます。
( 1 ) コマンドユーティリティの使用方法
【使用方法】
【機能】
CX5[オプション]
CX−355の初期化, 取込, 画像データの保存/読込,画像データの圧
縮/伸張等を行います。
【オプション】
なし・・・・・・ オプションのHELP画面がでます。
/I・・・・・・・・
CX−355ボ−ドを初期化します。電源を入れた
後は必ず1回実行して下さい。Iの後に1から4の
値を入れますと1:640*480,2:800*600,3:1024*768,
4:1280*1024の固定された状態で表示モードが起動
します。ただしここでの設定は簡易設定で、ディス
プレイカードにより内容は大きくかわります。
/V・・・・・・・・
ビデオ信号が入力されている時、画像を取込ディス
プレイに表示します。ビデオ信号の無いときは、実
行しないで下さい。
/M・・・・・・・・
ビデオ信号が入力されている時、動画表示します。
/F[<n>]・・・・・・
画像メモリ−の内容を初期化します。(画面消去)
<n>:0∼FFFFFF
RGB各8bit として計算した16進値をセットする
と任意の色で塗りつぶしできます。
Ⅰ‐17
/W<filename>・・・・
画像をディスクへ保存します。
<filename>に保存するファイル名をセットして下
さい。拡張子にBMP,TIFを使用しますと、B
MP、
TIFFのフォーマットのファイルがで
きます。
/R<filename>・・・・
画像をディスクから読み込みます。<filename>に読
み出すファイル名をセットして下さい。
/Q<n>・・・・・・・
圧縮レベルの値をセットします。
<n>:0∼9
/S<sw>,<dd>・・・・
cx_vdbswsetの各スイッチの状態をセットします。
<sw>:スイッチ番号
<dd>:セット値
セット内容はcx_vdbswsetを参照
/D<sw>,<dd>・・・・
cx_dspswsetの各スイッチの状態をセットします。
<sw>:スイッチ番号
<dd>:セット値
セット内容はcx_dspswsetを参照
/T<sw>,<dd>・・・・
cx_tvinswsetの各スイッチの状態をセットします。
<sw>:スイッチ番号
<dd>:セット値
セット内容はcx_tvinswsetを参照
/E・・・・・・・・
※
自然画の表示を終了します。
尚、これらのオプションを組み合わせてセットしても動作します。
動作順は前から順次に行なわれます。
Ⅰ‐18
3- 7 Windows
サンプルユ−ティリティの使用方法
CX355xxx.EXEをWindowsのDOS窓にて実行して下さい。
画面には各機能設定窓と自然画表示窓が表示されます。
自然画表示窓(”CRT”ウインドウ)は任意の位置・大きさが変更できます。
ビデオ取り込み
(1)映像信号の選択、取り込信号の調整、モニター状態の切り替えを行います。
(2)オプションボタン、チエックボックス、スクロールバーを使用して目的の映像をキ
ャプチャーします。
(3)入力信号の選択は、CVBS,Y/C,RGBから選びます。
(4)
画像取り込みは、
”Moniter”のチェックボックスをクリックする度に、
モニター状態がON,OFFします。
(5)
“STILL”ボタンを押しますと、取り込みをおこないます。
(6)Gain,Setup,Color,Tintの調整はモニタースイッチをONに
した状態でスクロールバーを使用してください。
Ⅰ‐19
ファイル操作
(1)画像の保存・圧縮、読込み・伸張を行う場合は、下図の”SAVE_FileName”、
”LOAD_FileName”の所で予め入力しておきます。
※保存、読込みを BMP にて処理する再にはファイル名の拡張子を BMP にして下さい。
(2) 保存・圧縮を行うには、
”SAVE_FileName”の下枠をクリックし、キーボードにて
パス名、ファイル名を入力した後”SAVE”ボタンをクリックして下さい。
(3) 読込み・伸長を行うには、”LOAD_FileName”の下枠をクリックし、キーボードにて
パス名、ファイル名を入力した後”LOAD”ボタンをクリックして下さい。
(4)圧縮準備として圧縮画質を“DQT Level”の”0”から”8”の範囲で選択します。
設定値”0”から”8”の内容は、1章ユーティリティソフトの使用方法・初期設定の
圧縮レベル設定を参照してください。
(5)圧縮画素を640*480、320*240のどちらかを選択します。
Ⅰ‐20
SAVE
静止画保存、静止画圧縮を行う場合は、このボタンを押します。
LOAD
静止画読込み、静止画伸長を行う場合はこのボタンを押します。
Samples
関数のサンプルとして下記のボタンを用意しました。
CRT Erase
CX−355の表示画面を黒くします
TEST Pattern
CX−355にテストパターンを表示します。
SumNail
画像取込み、圧縮を連続して行い、結果を縮小表示して1枚の画像として表示します。
B/W
現在表示されている画像を白黒表示に変換します。
END
終了する場合は終了ボタンを押して下さい。
注意
本プログラムはVB2(4)を使用して作成している為にVBRJP200.DLL(VB40032.DLL)が必要です。
Ⅰ‐21
第Ⅱ部
1.
ライブラリ・リファレンス( 1 )
コントロール機能
cx−portset
CX−355の初期化
【呼出形式】 int cx_portset(char *IniFileName)
IniFileName;
【機能】
/* CX355.INIの存在するパス・ファイル名*/
ポ−ト番号を獲得し、CX−355の初期化処理を行います。
【パラメータ】 IniFileName
CX355.INIを置いている、ドライブ名・パ
ス名・ファイル名を指定します。DOSの場合指定
したファイルが存在しない時は環境設定でしていし
たパスにあるCX355.INIが選択されます。
【戻り値】
関数呼出しが正常終了するとポート番号を返し、エラー(基板無し)
が発生すると−3を返します。
WindowsNTの場合ドライバーが開始されていない場合−1が
ボード未実装時に0が戻ります。
cx_portchg
ボードの制御移動
CX−355を1枚以上使用してのカスケード接続を行った場合は本関数を実行して下さい。
【呼出形式】 int cx_portchg (portnumber)
int portnumber; /* 次に実行するボードのI/O番号 */
【パラメータ】 portnumber
【戻り値】
0∼7までのボード選択番号を指定
制御されるボードのI /O ポート番号
Ⅱ‐1
cx_vdbswset
CX−355のモードスイッチの設定
【呼出形式】 int cx_vdbswset (Swno,Swdata)
int Swno;
/* スイッチ番号 */
int Swdata;
/* セット値
*/
【機能】
各モードスイッチの設定処理を行います。
【パラメータ】 Swno
Swdata
【戻り値】
関数呼出しが正常終了すると −99以外の数を返し、エラー( 規定外設
定)が発生すると−99を返します。
SW
0
セットするスイッチ番号を指定します。
セット値を指定します。
機能
dd(セット値)
初期値
表示モード
インポーズカラー
0:非表示,1:表示
0:黒、1:赤、2:青、3:マゼンタ、
4:緑、5:黄、6:シアン、7:白
0
0
2
Zoom表示モード
0:Zoom無し,1:Zoom
1
3
表示開始X座標
0∼1279
0
4
表示開始Y座標
0∼1023
0
5
表示横長
0∼1024
1024
6
表示縦長
0∼1024
1024
7
表示転送スイッチ
7:表示、4:非表示
7
8
JPEG伸張縮小設定
0:無し,1:1/2,2:1/4,3:1/8
0
9
同期モード
0:外部、1:内部
0:標準、1:D−Scan
動きの激しい画像の場合
0
フレームスイッチ
0:インターレス、1:フレーム
2:フィールドODD,3:フィールドEVEN
0
最大表示エリア
0:640,1:800,2:1280,3:2048
3
追い越し制御
0
1
10
11
12
スキャン表示モード
19
Logフラグ
0:制御無し
1:有り 表示間隔はcx_tvinswset(67,x)
にて設定
0:ログ記録無し,67:”C:¥”に記録
39
圧縮モードフラグ
1:Soft,8:Hard
13
SW=20 から 27 はPLL設定用
SW=30 から 37 は Mjpeg 再生用作業用
SW=40 から 59 はINIファイルのみで設定可能
SW17 は cx_save 時の縮小フラグ(0:std,1:1/4,2:1/16,3:1/64)
Ⅱ‐2
0
cx_dspswset
CX−355の表示モードスイッチの設定
【呼出形式】 void cx_dspswset (Swno,Swdata)
【機能】
int Swno;
/* スイッチ番号 */
int Swdata;
/* セット値
各モードスイッチの設定処理を行います。
【パラメータ】 Swno
Swdata
SW
セットするスイッチ番号を指定します。
セット値を指定します。
機能
画面モード
0
1
2
3
4
11
14
15
*/
画面モード設定1 PLL
画面モード設定2 CLOCK
画面表示オフセットX
画面表示オフセットY
ADJUST
OVDown1
OVDown2
dd(セット値)
0:スイッチ 1 から 6 の内容
1:640×480
2:800×600
3:1024×768
4:1280×1024
0∼1024
0∼7(ノンインターレス)
、
0∼512
0∼256
0∼15
0∼63
0∼63
INI はINIファイルに依存を示します
Ⅱ‐3
初期化
0
INI
INI
INI
INI
INI
INI
INI
cx_tvinswset
CX−355の取り込みモードスイッチの設定
【呼出形式】 void cx_tvinswset (Swno,Swdata)
int Swno;
/* スイッチ番号 */
int Swdata;
/* セット値
*/
【機能】
各モードスイッチの設定処理を行います。
【パラメータ】
Swno
Swdata
SW
セットするスイッチ番号を指定します。
セット値を指定します。
機能
dd(セット値)
初期値
0
1
2
取り込み横長さ(転送サイズ) 10∼640
取り込み縦長さ(転送サイズ) 10∼480
取り込み先X位置
−27∼1023
640
480
0
3
取り込み先Y位置
−4∼1023
0
4
入力ソース
0:NTSC、1:Y/C、
2:RGB_CS
0
NTSC、Y
RGB
5
コントラスト
コントラス
0∼255
128
6
明るさ
明るさ
0∼255
128
7
Color
0∼255
128
8
Tint
0∼255
0:1/30、1:1/15、
2:1/7.5、3:1/3.75
128
9
10
ビデオ取り込みタイミング
画質
0∼3
11
13
14∼16
19
フィールド反転SW
0:非反転、1:反転
NTSC/PAL SW
0:NTSC,1:PAL
取込サイズの作業用
初期値:640,480,320(NTSC)
CVBS,Y/CキャプチャーICの初期化
SW20∼40 は CVBS,Y/C キャプチャー IC(MSM7662)の個別設定
0
0
0
0
SW41∼69 は特有レジスターの個別設定、特に 67 は表示間隔で cx_vdbswset13 に依存
SW80∼85 は圧縮作業に使用
取り込み位置の変更は頻繁に信号が変化しない場合はCX355.INIにて
APIにて変更する場合は cx_tvinswset にて変更可能です。この場合SW番号は
26,27又は51,52,54,55を使用します。
CVBS,Y/Cの場合
tvinsw26=0x77
tvinsw27=0x22
RGB−CSの場合
tvinsw51=118
tvinsw52=758
tvinsw54=16
tvinsw55=256
;横位置変更(0x00,0x11・・・0x77 の範囲で設定)
;縦位置変更(0x00,0x11・・・0x77 の範囲で設定)
;横開始位置
;横終了位置(必ず横開始位置+640の値を設定)
;縦開始位置
;縦終了位置(必ず縦開始位置+240の値を設定)
Ⅱ‐4
cx_vdbswget
スイッチ内容の読み出し
【呼出形式】 int cx_vdbswget (Swno)
int Swno;
【機能】
cx_vdbswsetで設定した内容の読み出し処理を行います。
【パラメータ】 Swno
【戻り値】
/* スイッチ番号*/
読み出すスイッチ番号を指定します。
関数呼出しが終了するとスイッチセット値を返します。
ボードの初期化が正常に行われていない場合は−99を戻します。
cx−tvinswget
スイッチ内容の読み出し
【呼出形式】 int cx_tvinswget (Swno)
int Swno;
【機能】
cx_tvinswsetで設定した内容の読み出し処理を行います。
【パラメータ】 Swno
【戻り値】
/* スイッチ番号*/
読み出すスイッチ番号を指定します。
関数呼出しが終了するとスイッチセット値を返します。
ボードの初期化が正常に行われていない場合は−99を戻します。
Ⅱ‐5
cx_stil
ビデオ信号からの画像取込み
【呼出形式】 int cx_stil (Stilflg)
int Stilflg;
【機能】
/* 取り込みフラグ */
画像信号の取り込み処理を行います。
【パラメータ】Stilflg
取り込みフラグを指定します。
0=取込み 1=モニター
4=取り込中止モード
【戻り値】
ボードの初期化が正常に行われていない場合は−99を戻します。
関数呼出しが正常終了すると−1以外の数を返し、エラー(画像信号無
し)が発生すると−1を返します。
Ⅱ‐6
2. フレームメモリアクセス
cx_xy_set
フレームメモリアクセスの座標位置をセット
【呼出形式】 void cx_x_set(Xpos,Ypos);
int Xpos;
/* Xの位置 */
int Ypos;
/* Yの位置 */
【機能】
フレームメモリのアクセス関数cx_r(g,b)_set,cx_r(gb)_getの前に実
行し、メモリ位置を指定します。
【パラメータ】
cx_point_set
Xpos
Ypos
0から2048の値
0から1023の値
色データを指定位置へ書き込み
【呼出形式】 void cx_point_set(DspColor,Xpos,Xpos)
【機能】
long intDspColor;
/* 表示色
*/
int
Xpos;
/* 転送X座標 */
int
Ypos;
/* 転送Y座標 */
CX−355の色データを指定位置へ書き込みます
【パラメータ】Dspcolor
RGBデータを指定します。
Red(8bit)+Green(8bit)+Blue(8bit)のデータを書
き込みます。
Xpos
転送X座標を指定します。
Ypos
転送Y座標を指定します。
Ⅱ‐7
cx_point_get指定位置の色データを読み出し
【呼出形式】 long int cx_point_get(Xpos,Ypos)
【機能】
int
Xpos;
/* 転送X座標 */
int
Ypos;
/* 転送Y座標 */
CX−355の指定位置の色データを読みだします
【パラメータ】
【戻り値】
Xpos
転送X座標を指定します。
Ypos
転送Y座標を指定します。
Red(8bit)+Green(8bit)+Blue(8bit)のデータが戻ります。
ボードの初期化が正常に行われていない場合は−99を戻します。
cx_rgb_put
CPU メモリーにある RGB 順のデータを C X −355 に転送
【呼出形式】 void cx_rgb_put(Buffer,Xpos,Ypos,Xlen,Ylen)
unsighed char
*Buffer;
/* RGBデータのポインタ
int
Xpos;
/* 転送X座標
*/
int
Ypos;
/* 転送Y座標
*/
int
Xlen;
/* 横ライン数
*/
int
Ylen;
/* 縦ライン数
*/
【パラメータ】Buffer
*/
RGBデータのメモリーポインタを指定します。
Xpos
転送X座標を指定します。
Ypos
転送Y座標を指定します。
Xlen
横ライン数を指定します。(0<Xlen<2048)
Ylen
縦ライン数を指定します。(0<Ylen<1024)
Ⅱ‐8
cx_rgb_get
R G B の順でC X −3 5 5 にある画像データをメモリーに転送
【呼出形式】 void cx_rgb_get(Buffer,Xpos,Ypos,Xlen,Ylen)
unsighed char
*BlueBuffer;
/* RGBデータのポインタ */
int
Xpos;
/* 転送X座標
*/
int
Ypos;
/* 転送Y座標
*/
int
Xlen;
/* 横ライン数
*/
int
Ylen;
/* 縦ライン数
*/
【パラメータ】RedBuffer
Xpos
Ypos
Xlen
Ylen
cx_vdbcls
RGBデータのメモリーポインタを指定します。
転送X座標を指定します。
転送Y座標を指定します。
横ライン数を指定します。(0<Xlen<2048)
縦ライン数を指定します。(0<Ylen<1024)
CX−355の画面を消去
【呼出形式】 void cx_vdbcls (Wdata,Xstart,Ystart,Xlength,Ylength)
long int
Wdata;
/* 書き込みデータ
*/
int
Xstart;
/* X軸の消去開始位置 */
int
Ystart;
/* Y軸の消去開始位置 */
int
Xlength;
/* X軸の消去長さ
*/
int
Ylength;
/* Y軸の消去長さ
*/
【機能】
ディスプレイに表示中の画像データの埋込処理を行います。
【パラメータ】Wdata
Xstart
Ystart
Xlength
Ylength
書き込みデータを指定します。
Red(8bit)+green(8bit)+Blue(8bit)で構成されます。
(0∼ffffffH <RGB>)
X軸の消去開始位置を指定します。
(0∼2047)
Y軸の消去開始位置を指定します。
(0∼1023)
X軸の消去長さを指定します。
(1∼2048)
Y軸の消去長さを指定します。
(1∼1024)
Xlength=Ylength=1024を指定しますと高速に画面が消えます。
Ⅱ‐9
cx_vdbmove
CX−355フレームメモリ画像の転送
【呼出形式】 void cx_vdbmove(Xstart1,Ystart1,Xlength,Ylength,Xstart2,Ystart2)
int
Xstart1;
/* X軸の転送元位置
*/
int
Ystart1;
/* Y軸の転送元位置
*/
int
Xlength;
/* X軸の転送エリアの長さ */
int
Ylength;
/* Y軸の転送エリアの長さ */
int
Xstart2;
/* X軸の転送先位置
*/
int
Ystart2;
/* Y軸の転送先位置
*/
【機能】
表示中の画像データの一部を他の位置に転送を行います。
【パラメータ】Xstart1
Ystart1
Xlength
Ylength
Xstart2
Ystart2
cx_box
X軸の転送元位置を指定します。(0∼2047)
Y軸の転送元位置を指定します。(0∼1023)
X軸の転送エリアの長さを指定します。(1∼2048)
Y軸の転送エリアの長さを指定します。(1∼1024)
X軸の転送先位置を指定します。(0∼2047)
Y軸の転送先位置を指定します。(0∼1023)
箱を表示
【呼出形式】 void cx_box (Xstart,Ystart,Xlength,Ylength,HABA,Wdata)
int
Xstart;
/* X軸の消去開始位置 */
int
Ystart;
/* Y軸の消去開始位置 */
int
Xlength;
/* X軸の消去長さ
*/
int
Ylength;
/* Y軸の消去長さ
*/
int
HABA;
/* 書き込む線の幅
*/
long int
Wdata;
/* 書き込みデータ
*/
【機能】
表示中の画像データに箱を描画します
【パラメータ】Xstart
Ystart
Xlength
Ylength
HABA
Wdata
X軸の開始位置を指定します。(0∼2047)
Y軸の開始位置を指定します。(0∼1023)
X軸の長さを指定します。(1∼2048)
Y軸の長さを指定します。(1∼1024)
書き込む線の幅を指定します。(1∼256)
書き込みデータを指定します。
Red(8bit)+green(8bit)+Blue(8bit)で構成されます。
Ⅱ‐10
cx_line
線を表示
【呼出形式】 void cx_line (Xstart,Ystart,Xend,Yend,Wdata)
int
Xstart;
/* X軸の消去開始位置 */
int
Ystart;
/* Y軸の消去開始位置 */
int
Xend;
/* X軸の消去長さ
*/
int
Yend;
/* Y軸の消去長さ
*/
/* 書き込みデータ
*/
long int Wdata;
【機能】
表示中の画像データに線を描画します
【パラメータ】Xstart
X軸の始点を指定します。(0∼2047)
Ystart
Y軸の始点を指定します。(0∼1023)
Xend
X軸の終点を指定します。(1∼2048)
Yend
Y軸の終点を指定します。(1∼1024)
Wdata
書き込みデータを指定します。
red(8bit)+green(8bit)+blue(8bit)で構成されます。
cx_circle
楕円を表示
【呼出形式】 void cx_circle (Xcenter,Ycenter,Xradius,Yradius,Wdata)
int
Xcenter;
/* X軸の中心位置 */
int
Ycenter;
/* Y軸の中心位置 */
int
Xradius;
/* X軸の半径
*/
int
Yradius;
/* Y軸の半径
*/
/* 書き込みデータ
*/
long int
【機能】
Wdata;
表示中の画像データに楕円を描画します
【パラメータ】Xcenter
X軸の中心位置を指定します。(0∼2047)
Ycenter
Y軸の中心位置を指定します。(0∼1023)
Xradius
X軸の半径を指定します。
(1∼1024)
Yradius
Y軸の半径を指定します。
(1∼512)
Wdata
書き込みデータを指定します。
red(8bit)+green(8bit)+blue(8bit)で構成されます。
Ⅱ‐11
cx_bw
カラー画像を白黒表示に変換
【呼出形式】 void cx_bw (Xstart,Ystart,Xlength,Ylength)
【機能】
int
Xstart;
/* X軸の開始位置 */
int
Ystart;
/* Y軸の開始位置 */
int
Xlength;
/* X軸の長さ
*/
int
Ylength;
/* Y軸の長さ
*/
カラー画像を白黒表示に変換します
【パラメータ】Xstart
X軸の開始位置を指定します。(0∼2047)
Ystart
Y軸の開始位置を指定します。(0∼1023)
Xlength
X軸の長さを指定します。(1∼2048)
Ylength
Y軸の長さを指定します。(1∼1024)
cx_ganma
ガンマ補正
【呼出形式】 void cx_ganma (Xstart,Ystart,Xlength,Ylength)
【機能】
int
Xstart;
/* X軸の開始位置 */
int
Ystart;
/* Y軸の開始位置 */
int
Xlength;
/* X軸の長さ
*/
int
Ylength;
/* Y軸の長さ
*/
表示中の画像データをガンマ補正します
【パラメータ】Xstart
X軸の開始位置を指定します。(0∼2047)
Ystart
Y軸の開始位置を指定します。(0∼1023)
Xlength
X軸の長さを指定します。(1∼2048)
Ylength
Y軸の長さを指定します。(1∼1024)
Ⅱ‐12
cx_chr
文字を表示
【呼出形式】 int cx_char(Xpos,Ypos,fontheight,fcolor,Fontname,chrstring)
int
Xpos;
/* 横の保存開始位置
*/
int
Ypos;
/* 縦の保存開始位置
*/
/* フォントサイズ
*/
/* フォントの色
*/
int
fontheight;
int
fcolor;
unsighed char
unsighed char
【機能】
【戻り値】
*Fontname;
*chrstring;
/* フォント名のポインタ */
/* 出力文字列のポインタ */
指定フォント・サイズ・色にて文字を表示します。
関数呼出しが正常終了すると0を返し、エラーが発生すると負の値を返
します
Ⅱ‐13
3.ファイル編集機能
cx_load
画像データの読み込み
【呼出形式】 int cx_load(FileBuffer,Xstart,Ystart)
unsighed char
【機能】
/* ファイル名のポインタ
*/
int
Xstart;
/* X軸の開始位置 */
int
start;
/* Y軸の開始位置 */
CX−355のデータを、BMP,TIFF,JPG画像モードで読み込みを行います。
【パラメータ】 FileBuffer
【戻り値】
*FileBuffer;
ファイル名のポインタを指定します。
関数呼出しが正常終了すると正数を返し、
ファイルがBMPの時0x4D42
JPEGの場合 読み出しファイルサイズ
エラーが発生すると負数を返します。
−99:cx_portsetが成功していない
−1:読み出すファイルが存在しない
−2:作業用メモリー確保失敗
Ⅱ‐14
cx_save
画像データの保存
【呼出形式】 int cx_save(FileBuffer,Xstart,Ystart,Xlength,Ylength,qlevel)
【機能】
unsighed char *FileBuffer;
/* ファイル名のポインタ */
int
Xstart;
/* X軸の開始位置 */
int
Ystart;
/* Y軸の開始位置 */
int
Xlength;
/* X軸の長さ
*/
int
Ylength;
/* Y軸の長さ
*/
int
qlevel;
/* Qファクタの値
*/
CX−355 に表示されている画像データを指定したファイルへの保
存を行います。CX−355-2の場合は圧縮なしで保存を行います。
拡張子として、JPG,BMP,TIFを指定します。
【パラメータ】 FileBuffer
【戻り値】
ファイル名のポインタを指定します。
関数呼出しが正常終了すると0
ボードの初期化が正常に行われていない場合は−99を戻します。
Jpegの場合:
正常時には保存サイズの情報が戻ります。
ysize*0x10000+xsizeの値
-2:作業メモリーが確保できない
BMPの場合:
0:正常時
−1:ファイルが書けない
-2:作業メモリーが確保できない
Ⅱ‐15
第Ⅲ部
ライブラリ・リファレンス( 2 )
1.CX355−1による圧縮・復元機能
注意:下記からの機能は CX−355−2では実行できません。
cx_dctload
画像データの読込み
【呼出形式】 int cx_dctload(FileBuffer,Xpos,Ypos)
unsighed char
*FileBuffer;
/* ファイル名のポインタ */
int
Xpos;
/* 横の表示開始位置 */
int
Ypos;
/* 縦の表示開始位置 */
【機能】
指定したファイルから画像データの表示を行います。
【パラメータ】パラメータ
FileBuffer
Xpos
Ypos
【戻り値】
説明
ファイル名のポインタを指定します。
横の表示開始位置を指定します。
縦の表示開始位置を指定します。
関数呼出しが正常終了するとEOIコードを返し、エラーが発生すると−1
を返します。
cx_dctsave
画像データの圧縮保存
【呼出形式】 int cx_dctsave(FileBuffer,Xpos,Ypos,Xqsize,Yqsize,Qlevel,dctmode)
unsighed char
*FileBuffer;
/* ファイル名のポインタ
*/
int
Xpos;
/* 横の圧縮開始位置 */
int
Ypos;
/* 縦の圧縮開始位置 */
int
Xqsize;
/* 横の圧縮サイズ
*/
int
Yqsize;
/* 縦の圧縮サイズ
*/
int
Qlevel;
/* 圧縮レベル
*/
int
dctmode;
/* 圧縮モード
*/
【機能】
表示中の画像データを指定圧縮レベルでの圧縮保存を行います。
【パラメータ】パラメータ
FileBuffer
Xpos
Ypos
Xqsize
Yqsize
Qlevel
dctmode
【戻り値】
説明
ファイル名のポインタを指定します。
横の圧縮開始位置を指定します。
縦の圧縮開始位置を指定します。
横の圧縮サイズを指定します。
縦の圧縮サイズを指定します。
圧縮レベルを指定します。(0∼9)
0:yuv
常に0を使用
関数呼出しが正常終了するとCL560Bフラグ値を返し、エラーが発生す
ると−1を返します。
Ⅲ‐1
cx_jpeg_load_start
復元の為のファイルオープン
【呼出形式】 int cx_jpeg_load_start(FileBuffer)
unsighed char
*FileBuffer;
/* ファイル名のポインタ */
【パラメータ】パラメータ
FileBuffer
【戻り値】
説明
ファイル名のポインタを指定します。
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_save_start圧縮の為のファイルオープン
【呼出形式】 int cx_jpeg_save_start(FileBuffer)
unsighed char
*FileBuffer;
/* ファイル名のポインタ */
【機能】
指定したファイルを圧縮の為のファイルオープン処理を行います。
【パラメータ】パラメータ
FileBuffer
【戻り値】
説明
ファイル名のポインタを指定します。
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_head_load圧縮データのヘッダの読み込み
【呼出形式】 int cx_jpeg_head_load(Xpos,Ypos,QtblBuffer)
int
Xpos;
/* 横の表示開始位置 */
int
Ypos;
/* 縦の表示開始位置 */
unsighed char
*QtblBuffer;
/* Qファクタテーブルのポインタ */
【機能】
圧縮データのヘッダのみを読み込みます。
【パラメータ】パラメータ
Xpos
Ypos
QtblBuffer
【戻り値】
説明
横の表示開始位置を指定します。
縦の表示開始位置を指定します。
Qファクタテーブルの読み込みアドレスポインタを指定し
ます。
関数呼出しが正常終了すると圧縮レベル値を返し、エラーが発生すると−2を返
します。
Ⅲ‐2
cx_jpeg_head_save圧縮データのヘッダの書き込み
【呼出形式】 int cx_jpeg_head_save(Xpos,Ypos,Xqsize,Yqsize,Qlevel)
int
Xpos;
/* 横の圧縮開始位置 */
int
Ypos;
/* 縦の圧縮開始位置 */
int
Xqsize;
/* 横の圧縮サイズ */
int
Yqsize;
/* 縦の圧縮サイズ */
int
Qlevel;
/* 圧縮レベル
*/
【機能】
圧縮データのヘッダのみを書き込みます。
【パラメータ】パラメータ
Xpos
Ypos
Xqsize
Yqsize
Qlevel
【戻り値】
説明
横の圧縮開始位置を指定します。
縦の圧縮開始位置を指定します。
横の圧縮サイズを指定します。
縦の圧縮サイズを指定します。
圧縮レベルを指定します。(0∼9)
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_data_load
圧縮データの画像データの読み込み
【呼出形式】 int cx_jpeg_data_load(void)
【機能】
圧縮データの画像データのみの読み込み処理を行います。
【パラメータ】ありません
【戻り値】
関数呼出しが終了するとEOIコードを返します。
cx_jpeg_data_save
圧縮データの画像データの書き込み
【呼出形式】 int cx_jpeg_data_save(EoiCode)
int
EoiCode;
/* EOIコード */
【機能】
圧縮データの画像データのみの書き込み処理を行います。
【パラメータ】
パラメータ
EoiCode
【戻り値】
説明
EOIコードを指定します。
関数呼出しが終了するとCL560Bフラグ値を返します。
Ⅲ‐3
cx_jpeg_load_end
ファイルの読み込み終了
【呼出形式】 int cx_jpeg_load_end(void)
【機能】
ファイルの読み込み終了処理を行います。
【パラメータ】ありません
【戻り値】
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_save_end
ファイルの書き込み終了
【呼出形式】 int cx_jpeg_save_end(void)
【機能】
ファイルの読み込み終了処理を行います。
【パラメータ】ありません
【戻り値】
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_get_jpeg_length高速連続圧縮ファイルのヘッダにある1フレームデ
ータの長さ情報を取得
【呼出形式】 int cx_get_jpeg_length();
【機能】
高速連続圧縮ファイルにはヘッダ部に1フレーム圧縮データの長さが在り、
それが存在すれば高速連続圧縮ファイルである事の判断ができます、
cx_jpeg_head_loadの実行後に呼びます。
【戻り値】
高速連続圧縮ファイルの1フレーム圧縮データ長が戻ります。これ以外のフ
ァイルでは0が戻ります。
Ⅲ‐4
cx_jpeg_record高速圧縮画像データの書き込み
【呼出形式】 int cx_jpeg_record(FilePointer,Flame)
long int
FilePointer;
/* 読み込みポインタ */
int
Flame;
/* 書き込み時間
*/
【機能】
高速圧縮画像データのみの書き込み処理を行います。
【パラメータ】
FilePointer
Flame
【戻り値】
ポインタ値が0の場合は現在のポインタ位置から書き込みま
す。
書き込み時間を設定します。0以上のフレーム枚数を指定
します。
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_play高速圧縮画像データの読み込み
【呼出形式】 int cx_jpeg_play(FilePointer,Flame)
long int
FilePointer;
/* 読み込みポインタ */
int
Flame;
/* 読みだし枚数
*/
【機能】
高速圧縮画像データのみの読み込み処理を行います。
【パラメータ】
lePointer
Flame
【戻り値】
ポインタ値が0の場合は現在のポインタ位置から読み込みます。
読みだし枚数を設定します。0を指定しますとファイルの終了ま
で読みだします。
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
Ⅲ‐5
cx_jpeg_play_load高 速 連 続 圧 縮 デ ー タ の 画 像 デ ー タ の 指 定 位
置での読み出し表示
【呼出形式】 int cx_jpeg_play_load(FilePointer,Flame)
long intFilePointer;
/* 読みだし開始位置ポインタ */
int
Flame;
/* 書き込み枚数
*/
【機能】
高速連続圧縮されたデータの指定位置の画像を読みだします。
cx_jpeg_playとの違いは、指定位置までの画像を表示しません。
【パラメータ】
FilePointer
Flame
【戻り値】
読みだしポインタ
ポインタ値が0の場合は現在のポインタ位置から書き込み
ます。
0以上のフレーム枚数を指定
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
但しフレーム枚数の値を実質の枚数以上に指定しますと−1が戻ります。
cx_jpeg_play_get
高速連続圧縮ファイルの圧縮データが始まるファイル
ポインターを読み出し
【呼出形式】 int cx_jpeg_play_get(Buffer,FilePointer,Flame)
unsigned char
*Buffer;
/* 取得したポインタ情報格納エリア */
long int
FilePointer;
/* 読みだし開始位置ポインタ
*/
int
Flame;
/* 読みだし枚数
*/
【機能】
高速連続圧縮されたデータの圧縮データが始まる位置のポインタを読みだします。
cx_jpeg_playとの違いは、指定位置までの画像を表示しません。
【パラメータ】
Buffer
FilePointer
Flame
【戻り値】
ポインタ情報をしまうワークエリアフレーム数×8のメモ
リが必要。64kを越えての指定はできない。
内容:1フレーム8バイトで構成
ファイルポインタ
long int
圧縮サイズ
int
作業
int
圧縮サイズは実質の1/4の値
読みだし開始位置ポインタ
ポインタ値が0の場合は現在のポインタ位置から書き込み
ます。
0以上のフレーム枚数を指定
フレーム枚数がわからない場合は用意したBufferエリア
内の最大数を指定します
最後に読み出したフレーム番号(連続枚数)が戻ります。
Ⅲ‐6
cx_jpeg_play_put高 速 連 続 圧 縮 デ ー タ の 画 像 デ ー タ の 指 定 位 置 で の 読 み 出
し表示
【呼出形式】 int cx_jpeg_play_put(SW,FilePointer,FlameLen,FlmaeMrk)
int
SW;
/* 処理の状態設定スイッチ
*/
long int
FilePointer;
/* 読みだし開始位置ポインタ */
int
FlameLen;
/* 読みだし圧縮サイズ
*/
int
FlameMrk;
/* 未使用
*/
【機能】
高速連続圧縮されたデータのファイル指定位置の画像を読みだし表示します
【パラメータ】
SW
FilePointer;
FlameLen;
FlameMrk;
【戻り値】
0:開始で呼び出し
1:表示で呼び出し
-1:終了で呼び出し
これらは1個のループで使用します。
cx_jpeg_play_getで得たファイルポインタ
cx_jpeg_play_getで得た圧縮サイズ
未使用
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
cx_jpeg_play_put1高 速 連 続 圧 縮 デ ー タ の 画 像 デ ー タ の 指 定 位 置 で の 読 み
出し表示
【呼出形式】 int cx_jpeg_play_put1(Buffer,IndexNum,maisuu,Frame)
unsigned char
*Buffer;
/*取得したポインタ情報読みだしエリア */
int
IndexNum;
/* 表示フィールド番号 */
int
maisuu;
/* 表示フィールド数
*/
int
Frame;
/* frame SW
*/
【機能】
高速連続圧縮されたデータのファイル指定位置の画像を読みだし表示します。
【パラメータ】
Buffer
IndexNum
maisuu
【戻り値】
cx_jpeg_play_getで取得した情報のエリア
表示するフィールド番号を指定します。
0からファイルのフィールド数迄を指定Bufferのエリア
外の値を指定しますと、動作は停止する場合があります。
関数呼び出し後に表示するフィールド数を指定します。逆再生
の場合は負の値を指定します。
関数呼出しが正常終了すると0を返し、エラーが発生すると−1を返します。
Ⅲ‐7
cx_decomp_small
縮小モードの設定
【呼出形式】 void cx_decomp_small(sw)
int
sw;
/* 縮小スイッチ */
【機能】
圧縮ファイル読み込み表示にて、縮小率を指定します。
本関数指定後、cx_dctload,cx_jpeg_data_load等を実行しますと縮小表示され
ます。注)解除・等倍指定するまで設定は維持されます。
【パラメータ】
SW
cx_initcomp
0:等倍
1:面積1/4
2:面積1/16
3:面積1/64
圧縮準備
【呼出形式】 void cx_initcomp(Xlen,Ylen,Xpos,Ypos,mode)
int
Xlen;
/* 横幅
*/
int
Ylen;
/* 縦幅
*/
int
Xpos;
/* 圧縮開始X座標 */
int
Ypos;
/* 圧縮開始Y座標 */
int
dmode;
/* 圧縮モード
*/
【機能】
圧縮準備処理を行います。
【パラメータ】
Xlen
Ylen
Xpos
Ypos
横幅を指定します。
縦幅を指定します。
圧縮開始X座標を指定します。
圧縮開始Y座標を指定します。
Ⅲ‐8
cx_makeq
Qファクタテーブルの計算
【呼出形式】 void cx_makeq(Glevel,QtblBuffer)
int
Glevel;
/* 画質レベル
*/
unsighed char
*QtblBuffer;
/* Qファクタテーブルのポインタ */
【機能】
設定値を元にQファクタテーブルの計算処理を行います。
【パラメータ】
Glevel
QtblBuffer
cx_setq
画質レベルを指定します。(6∼255)
Qファクタテーブルのアドレスポインタを指定します。
Qファクタテーブルの設定
【呼出形式】 void cx_setq(QtblBuffer)
unsighed char
*QtblBuffer;
【機能】
CL560BへQファクタテーブルの内容をセットする。
(cx_makeqで作られたデータを変換したデータをセットします。 変換法は
comp.cのcx_chipqを参照)
【パラメータ】
QtblBuffer
cx_compQ
Qファクタテーブルのアドレスポインタを指定します。
圧縮用Qファクタテーブルの設定
【呼出形式】 void cx_compQ(Qlevel)
int
Qlevel;
【機能】
/* 圧縮レベル */
圧縮用にCL560BのQファクタテーブルをセットする。
【パラメータ】
Qlevel
cx_d e c Q
圧縮レベルを指定します。(0∼9)
伸張用Qファクタテーブルの設定
【呼出形式】 void cx_decQ(Qlevel)
int
Qlevel;
【機能】
/* Qファクタテーブルのポインタ*/
/* 圧縮レベル */
伸張用にCL560BのQファクタテーブルをセットする。
【パラメータ】
Qlevel
圧縮レベルを指定します。(0∼9)
Ⅲ‐9
cx_set_jpegcomment
【呼出形式】 void cx_set_jpegcomment (length,comment)
int
length;
/*256までのコメントの長さを指定*/
unsighed char
*comment;
/*コメント文章のポインタ
*/
【機能】
圧縮データのヘッダに任意のコメントを書き込みます。
関数cx_jpeg_save_satrt と cx_jpeg_head_save の間にて実行します。
cx_get_jpegcomment
【呼出形式】 int cx_get_jpegcomment (comment)
unsighed char
*comment;
/*コメント文章のポインタ */
【機能】
圧縮データのヘッダにあるコメントを読み込みます。
コメントの長さが256を越えたものは読み出せません。
【戻り値】
コメント文章の長さが戻ります。コメントの無いファイルは0が戻ります。
cx_dct_h_length圧縮ファイルの読み出し横サイズを取得
【呼出形式】 void cx_dct_h_length(void);
【戻値】
cx_jpeg_head_loadの実行後に呼びますと、そのファイルの横サイズが戻ります。
cx_dct_v_length圧縮ファイルの読み出し縦サイズを取得
【呼出形式】 void cx_dct_v_length(void);
【戻値】
cx_jpeg_head_loadの実行後に呼びますと、そのファイルの縦サイズが戻りま
す。
Ⅲ‐10
cx_set_q_tbl圧縮量子化テーブルの設定
【呼出形式】 void cx_set_q_tbl(QTablePointer);
unsighed char
*QTablePointer; /* 量子化テーブルポインタ */
【機能】
圧縮の時にディフォルトで設定されている量子化テーブルを使用せずに任意
のテーブルを設定して圧縮する時に使用します。cx_jpeg_save_startを実行
した後に実行します。なお本関数を実行しないと、jpeg勧告の値が選択
されます。
【パラメータ】
QtablePointer
読み込みポインタ
【参考】
/* Luminance Componant Matrix
*/
static char visibility[128]={
16, 11, 10, 16, 24, 40, 51, 61,
12, 12, 14, 19, 26, 58, 60, 55,
14, 13, 16, 24, 40, 57, 69, 56,
14, 17, 22, 29, 51, 87, 80, 62,
18, 22, 37, 56, 68,109,103, 77,
24, 35, 55, 64, 81,104,113, 92,
49, 64, 78, 87,103,121,120,101,
72, 92, 95, 98,112,100,103, 99,
/* Chrominance Componant Matrix */
17, 18, 24, 47, 99, 99, 99, 99,
18, 21, 26, 66, 99, 99, 99, 99,
24, 26, 56, 99, 99, 99, 99, 99,
47, 66, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99};
if (cx_jpeg_save_start(argv[1],0) == 0 ) {
cx_set_q_tbl(visibility,0);
Ⅲ‐11
cx_write_mem_sw
ボード内のメモリーに書き込み
【呼出形式】 void cx_write_mem_sw(int writedta);
【機能】
cx_jpeg_record,cx_jpeg_play 関数では、動作開始時に1を書き込み、終了時
に0を書き込んでいます。外部スレッドより、これらの関数実行中に本関数
にて0を書き込みますと、cx_jpeg_record,cx_jpeg_play 関数は中断されます。
サンプルとしてSTOPxx.exeを用意しています。Stop.frm を参照し
て下さい。サンプルユーティリティではSTOPxx.exeを起動してい
ません。
[注意]
16ビットモードでは使用できません
cx_read_mem_sw
ボード内のメモリーを読み出し
【呼出形式】 int cx_read_mem_sw(void);
【戻値】
読み出し値が戻ります。0から15の範囲です
注意:JPEGファイルの伸張用に使用していますCL560チップにバグがあり当社設
定の
圧縮レベル
画質レベル
0
1
で作成したファイルを伸張した時、黒い部分が白に化ける症状があります。関数c
x_dctloadとcx_loadはこのファイルの場合、チップを使用せずに
伸張するようにしていますが、動画ファイルの再生、及びcx_jpeg_dat
a_loadでの伸張はチップで伸張しますので、化ける事があります。
Ⅲ‐12
APPENDIX
取込位置の設定方法
CVBS,Y/Cの入力位置
取込X置は移動できません。
Y方向の変更は tvinsw27 に 0x00,0x11,…………0xff をセット
RGBモードでの入力位置
Xstart,Ystart の値を変更し、下記を実行するか、
cx_tvinswset (51,Xstart);
cx_tvinswset(52,Xstart+640);
cx_tvinswset(54,Ystart);
cx_tvinswset(55,Ystart+240);
CX355.iniにて
tvinsw51,tvinsw52,tvinsw54,tvinsw55,
の設定値を追加変更して下さい。
CX355−1圧縮・伸張をハードで行う場合
キャプチャー位置変更に伴い、ハードにて圧縮・伸張を行った時、異なった位置での
表示又は保存される場合がありますこの場合CX355.iniにて下記の設定を追加
後、設定値を変更してみて下さい。
圧縮位置を移動
vsw50=5
;Vstart
vsw52=120
;Hstart
伸張位置を移動
vsw55=14
;Vstart
vsw57=45
;Hstart
Ⅲ‐13
APPENDIX
PAL信号の取込
CX355の環境は標準ではNTSC仕様になっています。PAL仕様の信号を取り込む場合
下記の行をCX355.iniに追加して下さい。
[PAL]
vsw20=1691
vsw27=941
vsw24=0x7d3
tvinsw60=307
vsw12=2
;CVBS,Y/C PLL
;RGB PLL(NTSC)
;PLL VCO
tvinsw0=768
tvinsw1=576
tvinsw13=1
tvinsw14=768
tvinsw15=576
tvinsw16=384
tvinsw20=0xcb
tvinsw25=0x30
tvinsw27=0x00
tvinsw28=0xc0
;取り込み横長さ
;取り込み縦長さ
;PAL mode 0:NTSC
;取り込み横長さ
;取り込み縦長さ
;取り込み横長さ
;7662
;7662
;7662
tvinsw48=768
tvinsw49=577
;取り込み横長さ(IP711) Hdisp+20
;取り込み縦長さ(IP711) Vdisp+20
tvinsw50=1000
tvinsw51=140
tvinsw52=919
tvinsw53=315
tvinsw54=19
tvinsw55=305
;HTOTAL
;HSTART
;HEND
;VTOTAL
;VSTART
;VEND
更に注意としてINIファイルに
tvinsw0=768
tvinsw1=576
;取り込み横長さ
;取り込み縦長さ
を追加しましたが、ファイルの後半にも tvinsw0,1 の設定がありますが、
その行は削除して下さい。
Ⅲ‐14
その他 微調整
RGBビデオキャプチャー用設定
Htotal
tvinsw50
Hstart
tvinsw51
Hend
tvinsw52
Vtotal
tvinsw53
Vstart
tvinsw54
Vend
tvinsw55
圧縮用設定
Htotal
Hstart
Hend
Vtotal
Vstart
Vend
Vstart
Vend補正
Hstart
Hend補正
伸張用設定
Htotal
Hstart
Hend
Vtotal
Vstart
Vend
Vstart
Vend補正
Hstart
Hend補正
PLL設定
RGB
CVBS/YC
tvinsw80
tvinsw81
tvinsw82
tvinsw83
tvinsw84
tvinsw85
vsw50
vsw51
vsw52
vsw53
tvinsw90
tvinsw91
tvinsw92
tvinsw93
tvinsw94
tvinsw95
vsw55
vsw56
vsw57
vsw58
vsw27
vsw20
SetUP,GainのRGB補正
Gain補正
tvinsw17(−128から128)
Setup補正
tvinsw18(−128から128)
Ⅲ‐15