Linux で Eye-Fi Card を設定・各種ストレージサービ
スに転送する
KenichiroMATOHATA(matoken)
http://hpv.cc/~maty/
Eye-Fi について
 Eye-Fi Card は、米国の E...
送され前もって設定しておいたストレージサービスに転送することが出来ます。Eye-fi
サーバには1週間の間は全ての画像が保存されていますのでその間は再転送したりダウ
ンロードしたりといった操作が可能です。
ジオタグ機能は周りにアクセスポイントが...
-エンドレスモードの設定
-Eye-fi Card の再起動
-MAC アドレスの表示
-ファームウェアバージョン表示
-ログレベル変更
-ログ表示
これで全ての機能が操作できるわけではなく、ファームウェアのアップデート、オンライン
サービスの...
-d level set debugging level (default: 1)
-k print card unique key
-l dump card log
-m print card mac
ここからは、Eye-fi Card を ...
Succeeded connecting to: 'WARPSTAR-xxxxxx-G'
interpreting passphrase as ASCII WPA key (32 bytes)
`-a ESSID' で Eye-fi で利用する...
して再度取り付けると有効になるようです。
-エンドレスモードの設定
$ eyefi-config --endless
located EyeFi card at: '/media/Eye-Fi'
endless: ENABLED, trigge...
fetching EyeFi card log part 3/4...done
fetching EyeFi card log part 4/4...done
...
[01:10] Done scanning for new media (d...
`-k' で 32 桁の英数字からなるユニークキーが表示されます。
-mac address の表示
$ eyefi-config -m
located EyeFi card at: '/media/Eye-Fi'
card mac addre...
導入
Github から source を貰ってきます。( https://github.com/hirose31/doumeki )
$ git clone https://github.com/hirose31/doumeki.git
$ ...
flickr_upload コマンドをさっき入手した API key と secret を指定して実行します。すると
以下のような表示になります。
$ flickr_upload -auth -key "xxxxxxxxxxxxxxxxxxxx...
Flickr: #以下は上でで取得した情報
key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
secret: xxxxxxxxxxxxxxxx
auth_token: xxxxxxxxxxxxxxxxx-xxxxxxx...
設定は Eye-fi の以下の FAQ ページに書かれています。
- Eye-Fi から Pixelpipe を利用するにはどうすれば良いですか?
http://www.eyefi.co.jp/support/faq/eye-fi_pixelp...
Upcoming SlideShare
Loading in...5
×

Linux で Eye-Fi Card を設定・各種ストレージサービ スに転送する

1,000

Published on

comicmarket80 の小江戸らぐLinuxUser に寄稿した記事

Published in: Engineering
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,000
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Linux で Eye-Fi Card を設定・各種ストレージサービ スに転送する"

  1. 1. Linux で Eye-Fi Card を設定・各種ストレージサービ スに転送する KenichiroMATOHATA(matoken) http://hpv.cc/~maty/ Eye-Fi について  Eye-Fi Card は、米国の Eye-fi 社が販売している SD Card で無線 LAN 機能が内蔵 されています。この無線 LAN 機能で周辺の無線 LAN スポットを利用して撮影した写真 や動画を自動的にアップロードすることが出来ます。カメラからは普通の SD Card として 認識するので SD Card を利用するカメラ※1 であれば特にカメラを選ばず利用できます。 Eye-Fi Card にはいくつかシリーズがあり容量や機能に差があります。日本で販売されて いる現行製品では 3 種類あります。購入される方は Eye-fi 社のウェブページ ( http://www.eyefi.co.jp/ )などで製品情報をよく見て製品を選んでください。以下は Eye-fi Card の機能の例です。 -写真、動画ファイル転送 -RAW ファイル転送 -ジオタグの付与(WPS(Wi-Fi Positioning System)を利用したジオタグ埋め込 み) -エンドレスモード(転送の終了した写真を自動削除) -ダイレクトモード(無線 LAN のアクセスポイントが無くても Eye-fi 自身がアクセス ポイントとなり iPhone,iPad,Android へ直接転送。対応アプリケーションが必要) ファイル転送撮影した写真は無線 LAN 経由で先ず Eye-fi サーバ(Eye-fi Center)に転 左)Eye-fi Share Video(旧製品) 右)Eye-fi Pro x2(現行品)
  2. 2. 送され前もって設定しておいたストレージサービスに転送することが出来ます。Eye-fi サーバには1週間の間は全ての画像が保存されていますのでその間は再転送したりダウ ンロードしたりといった操作が可能です。 ジオタグ機能は周りにアクセスポイントがないと利用できませんし精度もそれなりですが それを理解していれば便利な機能です。精度が必要な場合は別途 GPS レシーバと組み 合わせてそちらで上書きすると良いです。 この Eye-fi Caed を利用するには専用の設定ソフトが必要なのですが、Windows 用/Mac 用だけで Linux では設定が出来ません。基本的には一度設定してしまえば問題 ないのですが、出先で無線 LAN のアクセスポイントを登録するといったことが出来ませ ん。そこで、何時も持ち歩いている Linux マシンで設定できないかと探してみたら Eye-Fi Configuration Tool というものを見つけました。ここではこのツールの使い方と複数のスト レージサービスへ写真を転送する方法を説明したいと思います。 ※1 CF(コンパクトフラッシュ)カメラで CF-SD Card アダプタ経由での利用等は基本的 に保証対象外です。私が試したところでは SD Card としては問題なく利用できますが無 線 LAN の出力が弱くなってしまうようです。Eye-Fi Card で CF-SD Card アダプタを利 用する場合はドイツ製の DeLOCK 61796 というものが定評があるようです。 Eye-fi ライクな製品 CP+2011(カメラ関連の展示会)のレポートを見ていると、無線 LAN 内蔵の SD カード 「FluCard」というものが東芝とシンガポールの半導体メーカー TREK 2000 から出展さ れていたようです。( http://www.flu-card.com/ )Eye-fi と同じような製品ですが容量はこ ちらが 32GB まであって大容量、対応機器同士の画像転送なども可能だそうです。しかし クラウドサービスは 2GB まで、動画転送は今のところ未サポートとなっています。 FluCard は現在シンガポールで販売中で近いうちに東芝経由で日本でも発売されるよ うです。白地に水色の可愛い製品です。 東芝は次世代 SD カードの標準化にこの無線 LAN 機能を盛り込むよう働きかけているよ うです。そうなると SD Card で無線 LAN 搭載というのが普通になってまた色々な利用方 法が出てきそうです。#カメラから出さずにモニタで再生、印刷等…。 Linux 環境での Eye-fi Card 設定 Eye-Fi Configuration Tool を使うと Linux 環境で以下のような設定が可能になります。 -周辺の無線 LAN アクセスポイントのスキャン -無線 LAN 設定の追加、削除 -無線 LAN 設定一覧表示
  3. 3. -エンドレスモードの設定 -Eye-fi Card の再起動 -MAC アドレスの表示 -ファームウェアバージョン表示 -ログレベル変更 -ログ表示 これで全ての機能が操作できるわけではなく、ファームウェアのアップデート、オンライン サービスの設定等は出来ません。オンラインサービスの設定については前もって Windows, Mac 環境で設定しておくことで web 経由で設定の切り替えは可能です。 まずは導入です。Eye-Fi Configuration Tool のページ( http://sr71.net/projects/eyefi/ ) から最新版のソースを入手してビルドします。この原稿執筆時点では Version 011 が最 新でした。#開発中のソースを試したい人は git の物を利用しましょう。 ( git://git.sr71.net/eyefi-config.git ) $ wget http://sr71.net/projects/eyefi/eyefi-config-011.tar.gz $ tar tvzf eyefi-config-011.tar.gz $ tar xzf eyefi-config-011.tar.gz $ cd eyefi-config-011 $ make $ cp -p ./eyefi-config ~/usr/local/bin 出来上がったプログラムは適当なパスの通った場所にコピーしておきます。早速実行して みると usage が表示されます。 $ eyefi-config Usage: eyefitest [OPTIONS] -a ESSID add network (implies test unless –force) -t ESSID test network -p KEY set WPA key for add/test -r ESSID remove network -s scan for networks -c list configured networks -b reboot card -f print information about card firmware
  4. 4. -d level set debugging level (default: 1) -k print card unique key -l dump card log -m print card mac ここからは、Eye-fi Card を PC の SD Card Slot に挿した状態でコマンドを実行してくだ さい。Windows, Mac 環境では Eye-fi Card 付属の USB-SD Card アダプタ経由で設 定しますが、eyefi-config コマンドの場合本体 USB-SD Card アダプタ経由でも内蔵 SD card slot に直に接続しても利用できました。 -ネットワークの検索 $ eyefi-config -s located EyeFi card at: '/media/Eye-Fi' Scanned wireless networks: security: WEP, strength: 32 essid: 'FLETS-SPOT' security: none, strength: 32 essid: 'wifine' security: WEP, strength: 32 essid: 'docomo' security: WPA, strength: 19 essid: '0024A5E1864E' security: WPA2, strength: 11 essid: 'WARPSTAR-DA22F7-G' `-s' オプションで実行することで周辺の無線 LAN ネットワークを検索します。ネットワーク の確認や設定の参考に出来るでしょう。 -アクセスポイント登録 $ eyefi-config -a WARPSTAR-xxxxxx-G -p 'PASSPHRASE' located EyeFi card at: '/media/Eye-Fi' trying to connect to network: 'WARPSTAR-xxxxxx-G' with passphrase: 'PASSPHRASE' interpreting passphrase as ASCII WPA key (32 bytes) Testing connecion to 'WARPSTAR-xxxxxx-G' (2): verifying network key..... Testing connecion to 'WARPSTAR-xxxxxx-G' (3): waiting for DHCP. Testing connecion to 'WARPSTAR-xxxxxx-G' (4): testing connection to Eye- Fi server...... Testing connecion to 'WARPSTAR-xxxxxx-G' (5): success
  5. 5. Succeeded connecting to: 'WARPSTAR-xxxxxx-G' interpreting passphrase as ASCII WPA key (32 bytes) `-a ESSID' で Eye-fi で利用するアクセスポイントの設定を追加できます。`-p' オプション でアクセスポイントのパスフレーズも登録できます。コマンド実行時に接続テストを行いま す。アクセスポイントエリア外で設定を行う場合は接続テストに失敗して登録できないの で更に`—force'オプションも付けてテストをスキップして登録しましょう。 -登録済みアクセスポイントの削除 $ eyefi-config -r WARPSTAR-xxxxxx-G located EyeFi card at: '/media/Eye-Fi' `-r ESSID' で指定したアクセスポイントの設定を削除できます。Eye-fi には 32 個迄のア クセスポイントが設定できるようです。32 個あれば通常の利用には困らなさそうです。 -接続テスト $ eyefi-config -t WARPSTAR-xxxxxx-G `-t ESSID'で Eye-fi へ設定済みの設定への接続確認が出来ます。 -転送モードの設定 $ eyefi-config --transfer-mode located EyeFi card at: '/media/Eye-Fi' transfer mode is: AUTO `--transfer-mode'で転送モードを確認できます。`AUTO'の場合は全ての画像を PC, オ ンラインサービスに転送します。 `—transfer-mode=SELSHARE' と設定するとカメラでプロテクトをかけた写真のみオン ラインサービスに転送します。PC には全ての画像が転送されます。 `—transfer-mode=SELUPLOAD'と設定するとカメラでプロテクトをかけた写真のみ PC とオンラインサービスに転送します。 この設定はわかりにくいですね。 -無線 LAN 状態の確認、設定 $ eyefi-config --wifi-radio located EyeFi card at: '/media/Eye-Fi' wifi radio status: enabled ` --wifi-radio 'で Eye-fi Card の無線の状態が確認できます。`--wifi-radio=disabled'で 無線 LAN 機能の無効化、`--wifi-radio=enabled'で無効化が出来ます。設定を無効化す ると、Eye-fi Card の再起動(`-b')では無効のままですが、Eye-Fi Card を PC から取り外
  6. 6. して再度取り付けると有効になるようです。 -エンドレスモードの設定 $ eyefi-config --endless located EyeFi card at: '/media/Eye-Fi' endless: ENABLED, triggers at 80% full `--endless 'でエンドレスモードの確認が出来ます。`--endless=80'で Eye-fi 容量が 80% を超えると転送済み画像を削除します。転送されていない画像は削除されないので、利 用可能な無線 LAN ネットワークが無かったり、転送が追いつかない場合は DiskFull に なってしまいます。`--endless=enable'でエンドレスモードを有効に、`--endless=disable' でエンドレスモードを無効にします。なお、エンドレスモード非対応のカードに対して設定を 試みたところどう設定しても`endless: DISABLED, triggers at 0% full'となりました。 ハードウェアかファームウェアに制限があるようです。 無線の設定は enabled/disabled でエンドレスモードの設定は enable/disable なので間 違えやすいです。 -card 再起動 $ eyefi-config -b rebooting card...located EyeFi card at: '/media/Eye-Fi' done `-b'で Eye-fi Card の再起動が出来ます。再起動するのは無線 LAN 機能だけで再起動 中も SD Card としての機能は利用できるようです。 -debug level 設定 $ ./eyefi-config -d 5 set debug level to: 5 after arguments1 essid: '(null)' passwd: '(null)' $ ./eyefi-config -d 1 set debug level to: 1 数字が大きいほどログが詳細に、大きくなります。通常は 1 でいいでしょう。 -log 表示 $ eyefi-config -l located EyeFi card at: '/media/Eye-Fi' fetching EyeFi card log part 1/4...done fetching EyeFi card log part 2/4...done
  7. 7. fetching EyeFi card log part 3/4...done fetching EyeFi card log part 4/4...done ... [01:10] Done scanning for new media (detected 2131 MB in all media). Uploads pending. [01:10] Done scanning for all photos. Uploads pending. [01:10] None of the 0 configured wireless networks detected among the 0 within range. [01:11] Starting scan of media directories... [01:12] Done scanning for new media (detected 2131 MB in all media). Uploads pending. [01:12] Done scanning for all photos. Uploads pending. [01:12] None of the 0 configured wireless networks detected among the 0 within range. [01:12] ---------------- SCAN-P ----------------------- [01:14] Scan complete [00:00] Eye-Fi firmware 4.2172 Jan 31 2011 13:22:01 started (1), hardware revision 1, 7806/32 MB, 00-18-56-41-a6-92 [00:01] Marvell 8786 firmware version 12.55.6.p106 running, xtal offset 0/9. [00:06] Card is in online and desktop (0xc233) transfer mode (timestamp 1299259670), geo-tagging is enabled, hotspots are enabled. `-l' で eye-fi Card のログが確認できます。どういった動きをしているかが解るので問題解 決の助けになるでしょう。ログが大きくなると Segmentation fault してしまうようです。 -ファームウェアの確認 $ eyefi-config -f located EyeFi card at: '/media/Eye-Fi' card firmware (len: 27): '4.5022 Apr 18 2011 18:07:47' `-f'でファームウェアバージョン情報が確認できます。ファームウェアのアップデートは残念 ながらできないようです。 -Eye-fi card のユニークキー表示 $ eyefi-config -k located EyeFi card at: '/media/Eye-Fi' card key (len: 32): 'ffffffffffffffffffffffffffffffff'
  8. 8. `-k' で 32 桁の英数字からなるユニークキーが表示されます。 -mac address の表示 $ eyefi-config -m located EyeFi card at: '/media/Eye-Fi' card mac address: 00:18:56:xx:xx:xx Eye-fi Card の mac address が表示されます。 -Tips コマンドを実行してもおかしな値が帰ってきたり、`never saw card seq response' という ようなメッセージが表示されたり`Segmentation fault' してしまったりしてうまく操作でき ないことがあります。これは、写真を沢山転送したりしてログが大量になると起こるようで す。Eye-fi Card の再起動では治らないようなので抜き差しをしてから再度試してくださ い。 速度が遅かったり、PC で利用できている無線 LAN のアクセスポイントが見つからない場 合はアクセスポイントの近くで試してみてください。PC などに比べると電波強度が弱いの で距離に敏感です。 Doumeki を利用して同時に複数ストレージサービスに転送 Eye-fi はストレージサービスへのアップロードまで自動的にやってくれるので便利なので すが、自動でアップロードするストレージサービスは一度に一つしか選択できません。 そこで Doumeki というアップローダブリッジを使い複数の Storage Server にアップする 方法を説明します。Doumeki を起動したサーバのローカルにも保存できるので Windows, Mac でアプリケーションを立ち上げなくともローカルに保存することも出来ま す。
  9. 9. 導入 Github から source を貰ってきます。( https://github.com/hirose31/doumeki ) $ git clone https://github.com/hirose31/doumeki.git $ cd doumeki $ sudo cpan -i . $ ./bin/doumeki-server.pl 本来 cpan -i で関連モジュールも導入されるはずですが、うまく導入できなかったので cpan -i module という感じで必要なモジュールを導入して行きました。 Flickr に写真をアップロードするために API key と secret を入手します。 http://flickr.com/services/api/key.gne にアクセスします。[Get Another Key]を押します 自分用なので[APPLY FOR A NON-COMMERCIAL KEY]を選択します。[What's the name of your app?]にアプリケーション名を、[What are you building?]に利用目的を、 規約関連のチェックボックスにチェックを入れて[SUBMIT]ボタンを押します。私はアプリ ケーション名に`Doumeki'、利用目的には`photo upload'と書きました。表示された Key、Secret をメモします。 次に auth_token を入手します。先ず、libflickr-upload-perl というパッケージを導入しま す。 $ sudo apt-get install Libflickr-upload-perl
  10. 10. flickr_upload コマンドをさっき入手した API key と secret を指定して実行します。すると 以下のような表示になります。 $ flickr_upload -auth -key "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -secret "xxxxxxxxxxxxxxxx" 1. Enter the following URL into your browser http://www.flickr.com/services/auth/? api_sig=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&frob=xxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx&perms=write&api_key=xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxx 2. Follow the instructions on the web page 3. Hit <Enter> when finished. この URL をブラウザに入力してエンターキーを押します。ブラウザの画面上で[OK I’ll allow]を押します。その後、以下の様に auth_token が発行されるのでこれもメモします。 Your authentication token for this application is xxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxx 設定ファイをを作成します。config.yaml を編集します。以下設定例です。 server: port: 10808 # Doumeki 待ち受けポート番号 host: myserver # Doumeki サーバ名 receiver: GR2: user: user #Doumeki 待受ユーザ名 password: xxxxxxxxxx #Doumeki 認証パスワード prefix_shootdate: 1 store: Local: base_dir: /home/mk/photos #ローカルに写真を保存するときのパス
  11. 11. Flickr: #以下は上でで取得した情報 key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx secret: xxxxxxxxxxxxxxxx auth_token: xxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxx tags: #写真アプロード時のタグ - doumeki - eye-fi is_public: 0 #一般公開設定:0 は非公開/1 は公開 is_friend: 0 #friend 公開設定:0 は非公開/1 は公開 is_family: 0 #family 公開設定:0 は非公開/1 は公開 テンポラリ用のディレクトリを作成します。パーミッションは doumeki 実行ユーザがファイ ルを書き込めるようにしておくこと。 $ sudo mkdir /var/tmp/doumeki 以下のようにして Doumeki サーバを起動してみましょう。 $ ./bin/doumeki-server.pl --configfile ./config.yaml 起動した状態で Eye-fi Center から Doumeki へのアップロードの設定を行います。この 設定は残念ながら Windows、Mac の Eye-fi アプリケーションでしか出来なさそうです。 [Eye-fi Card の設定]から[写真]、[オンラインサービス]、[新しいオンラインサービスを追 加]を選びます。[オンラインサービスを選択]画面から[オンラインアルバム]カテゴリから [Gallery2]を選択します。ユーザ名、パスワード、URL に config.yaml に設定した内容を記 述して[送信先に Gallery2 を設定する]ボタンを押します。 この状態で Eye-fi Card で写真を撮影して動作を確認します。うまく行けば Doumeki サーバのローカルと Flickr に写真が転送されるはずです。 Doumeki の類似サービス Pixelpipe 実は Doumeki のように同時に複数のストレージサービスへ写真を転送するサービスが 存在します。Pixelpipe というサービスです。( http://pixelpipe.com/ )このサービスを使う と転送先に複数の(100 以上)ストレージサービスが指定できます。
  12. 12. 設定は Eye-fi の以下の FAQ ページに書かれています。 - Eye-Fi から Pixelpipe を利用するにはどうすれば良いですか? http://www.eyefi.co.jp/support/faq/eye-fi_pixelpipe/ こちらのほうがサーバが必要ない分お手軽に設定できます。転送は Doumeki と同じよう に Gallery2 にて転送します。 問題点  デジカメで撮影した写真は長辺 4672x3104 ピクセルなのですが、 Doumeki/Pixelpipe を経由してストレージサービスへアップロードすると長辺 1600 ピク セルに縮小されてしまうようです。Eye-fi Center へはオリジナルサイズでアップロードさ れていて手動で Flickr にアップロードするとオリジナルサイズでアップロードできます。恐 らく Eye-fi Center から Gallery2 を経由するときに縮小処理が実行されているように思 えます。この問題が解決しない場合、Eye-fi Center を使わずに手動でアップロードするし かなさそうです。 おわりに  ということで、Linux 環境でも Eye-fi Card が便利に利用できるようになってきました。 作者の blog などを見ていても Eye- fi に機能が追加されたら直ぐに対応したりと開発も 活発なようでこれからも期待できます。気になった方は是非試してみてください。

×