Ficiaは写真/動画ストレージという事で現在対応している画像形式が.jpgだけなんですが、やっぱり「いっぱいのpngファイルをあげたい」という需要もあるわけで、なんかそういう需要も微妙に急襲する為にsave2jpgっての作ってみました。mac用です。多分snow leopardでしか動きません。perlとかそういうの使ってないので誰でも使えると思います。
つかいかたはREADME.txtに書いてあって
つかいかた 1. save2jpg を適当な所に置きます 2. 画像がいっぱい入ってるフォルダを save2jpg にドラッグ&ドロップします 3. さっきドラッグ&ドロップしたフォルダの中に save2jpg ってディレクトリが出来てます というか、変換成功したら勝手に save2jpg フォルダを開きます ちゅうい ドラッグ&ドロップしたフォルダの中に入ってるフォルダ全部から画像を探します。 自動的に変換する画像は .jpg ファイル以外全てです。 元の画像は変更しないので安心してね。変換した画像は全部 save2jpg に入ってるよ。って感じです。
ユースケースとしては、どっかのフォルダの画像をまとめてficiaにあげられる形式に変換して、その変換した画像をFicia.appのフォルダ丸ごとアップロードでアップロードするような時に使うのを想定してます。
それ以外のユースケースだったらもっと良いツールは一杯あるでしょう。
なんてったてオリジナルの.pngファイルをうpれるわけじゃないので満足のいく物でもないでしょうが、save2jpgで出来る程度でよい方には便利なんじゃないでしょうか。
FiciaがEye-Fiからのアップロードに対応したついでに、Eye-Fiからの受け口がGR2プロトコルなんで折角なんでGR2プロトコルしゃべってFiciaにアップロード出来るスクリプト書いてみたよ。
使い方は簡単なんですが、最初にFiciaからEye-Fiアップロード用のトークンを取る必要があるんですが、それは写真アップロードする所
の中に「Eye-Fiでアップロード」ってのが追加されてるので、そこクリックして「次へ」ってやってくと「パスワード」っていうハッシュっぽい文字列が出るので、これをコピーしときます。
そのパスワードをFICIA_EYEFI_PASSWORD環境変数にセットして
$ perl ./ficia-eyefi-uploader.pl アップロードしたい画像ファイル.jpgってするとアップロードされるはずです。
一点注意点としては、一度あげたファイルは二度とあげられないくらいです。
この辺は専用クライアントとかだと出来るんですがEye-Fi経由だと出来ないし、そもそもEye-Fiでは二度送信するユースケースが無いのでしょうがないです。
画像削除してもあげられないので注意してください。なんでかっていうといらない写真消したつもりなのにsyncしたら消した画像がまたuploadされてたらイラっとくるでしょ?
この例だと、画像一枚しかあげられないんですが肝心なのはOreOre::FiciaUploadByGR2に処理が入ってるんで、ディレクトリ丸ごとアップロードとか直ぐに作れると思うす。
もっとデーモン的なのがいいよーって人はhirose31さんのdoumekiとか使っとけば良いんじゃないのかなーと思います。
スクリプトは以下の通り。
元ネタはMySQL のおまとめINSERTはどれくらい速いか - bonar noteです。
トランザクションでまとめてInsertしてからcommitしたほうが速くなるので、元ネタのベンチマークをベースにして試してみました。
環境は macports で入れた mysql 5.1.44 です。
まぁnormalからbulk(100)くらいの差は出てなくても、トランザクション使ってまとめてコミットしても多少速くなっとりますね。
normal と txn の差よりも bulk(100) と bulk(100)_txn の差が小さいのは、 bulk insert で最初から効率的になってるぶん差が少なくなってるという感じでしょうか。
コードは以下の通り。
ふとしたきっかけでPHPのリファレンスマニュアルにある関数と同等の機能をPerlで実装するにはどうするか?といったリファレンスを作るプロジェクトを始めました。
PHP使いの人がPerlを弄る時に「PHPのこれPerlでどうやれば良いんだ!」といった要望や、ごく普通のPerl使いの人が「これどうやって書けば良いのかな?」って時に使うcookbook代わりに使える事を想定しています。
ドキュメント管理にはgithubhttp://github.com/yappo/docs-php-funcref-in-perlを使い、ドキュメントのビューワーとしてwikihubWikiHub :: php-funcref-in-perl :: READMEを使っています。
書いて欲しいと思った人にはあらかたコラボレータ入れてるので、ドキュメント充実させたいと思ったらすぐにprivate repoをcloneして書けると思います。「俺入って無いし書きたいよ!」って人が居たら言ってもらえればコラボレータ追加します。
別にforkしてpull requestでもいいんですが、面倒なんでコラボにぶっ込みたい所。
書き方などはREADMEを読んでください。
今のところ書いてる人はPerl側の人間が多いので、もしPHPな人で気になった人が居たら参加してもらったら嬉しいなーとは思う所。なんかそのほうが完成度高くなりそう。
この形に落ち着くまでcodereposにしたりnim+perl-usersとか色々やってたんですが、miyagawa伝説とwikihubでの見た目が奇麗とsyntax highlightした時の組み込み関数にphp.netやperldoc.perl.org等にリンクされて便利ってのがwikihub採用の決め手でした。
とりあえず環境もろもろはいつも通り僕が用意したんですが、4000を越えるPHPの関数群のテンプレートファイルをyusukebeが用意してくれました。
ってことでどうぞよろしくです。