走行記録掲示板作成中
Lacoocanのレンタル掲示板、容量限度が100MB、、、ということで、画像掲示板の移転を計画中。
この掲示板は、そのまま利用するとして、走行記録保管庫は自分専用なんで、自分しかアップロード出来ない構造で良かろう。
なお、サーバーに負担を掛けないように表示はHTML表示が理想。アップロードファイルは極力圧縮すること。保存ファイル上限は150KB程度とするけど、画像サイズが大きなモノは最大でもVGA解像度以下で保存。リサイズの際にはJPEG品質を落として保存、、、
これをCGIで駆動する掲示板を作成。
但し、、、ニフティの@Homepageでは、CGIに標準のPerlも揃ってないのが実情であり、当然、ImageMagickとかGDといったモノは利用出来ない。
その為には、サーバーの仕様を調べて、そのサーバーで運用可能な画像処理プログラムをアップロードして、それを利用して動かすという方法だろう。素直に@Homepageから移行すれば良いのだろうけど、、、ココはタダだから、、、暫くこれで運用する予定。
色々調べると、画像ファイルを任意のサイズのJPEGファイルに変換するプログラムがある。
repng2jpegって名前のソフト。これは、サーバー、OSに合わせた実行モジュールが提供されており、これをアップロードさせることで機能させる。
つまり、各種画像ソフトをアップロードし、それを条件指定してrepng2jpegで縮小したJPEGに変換する。そして、変換元の各種画像ファイルに合わせてJPEG化したファイルを元のファイル形式に戻せば良い訳だ。
で、実際にCGIを組んで試験的に動かしてみると、各種ファイルサイズ、画像サイズのデータの変換を行っていると、、、、CGIのスクリプトが上手く動かない事が、、、
更に調べると、、、このrepng2jpegって実行ファイルがピクセル数の大きな画像データを処理するとcore dumpする。そうすると、大きな画像データがサーバー側に残ってしまう訳だ。
つまり、repne2jpegってモジュールが動作の際のメモリ領域の確保辺りで落ちるんだろう。
UNIXのCだったら、ソースを見ないと判らないけど、ポインタ変数を使って長大なデータを読み込んだりすると結構多発する。ワークステーション等でCADデータの要素変換プログラムを手がけたりしていた時に、ポインタ変数を多用したりすると、core dumpすることあったから、、、大量のデータを取り込むなら、取り込む領域を最初に確保して、その領域の初期化等の処置が必要。そういうデバッグの上に再コンパイルしないと厳しいか、、、
調べると、このモジュールは画素数で170万画素辺りが上限っぽい。
取り敢えず、それ以上のピクセル数のデータは受け付けない事とするけど、、、やはり、理想は、取り込み段階ではデータに制限は設けず、保管時には容量節約して保管するのが理想だから、更に改造が必要だ。
| 固定リンク
コメント