リアルタイム 自然画プロセッサー 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
© Copyright 2024 Paperzz