分12本連載74回でRAW画像の現像について紹介したのでご存知の方もいるかもしれませんが,筆者の趣味のひとつにカメラがあります。言うと驚かれるのですが,筆者はカメラは好きなものの写真にはそれほど興味がなく(注1⁠)⁠,デジタルカメラで撮影した写真はファイルサーバにまとめて保存してそれっきりだったりします。過去の写真を参照する必要が出てきます。ファイルサーバにはカメラのSDカードの中身をそのままバックアップしているのですが,はっきり言って検索不能です(注2⁠)⁠。筆者のファイルサーバには現在約3,000枚ほどの写真が整理されないまま溜めこまれていますが,このままではいけないと一念発起し,Shotwellでアルバム管理をすることにしました。そこで今週のレシピは筆者のShotwell導入話を交えつつ,Ubuntuの標準写真管理ソフトであるShotwellを紹介します。「⁠どうしてこんなになるまで放置してたんだ!」と言いたくなるほど,ひどい状態な筆者のファイルサーバ(の一部⁠)⁠。Lennyで動作している注1筆者は構図を決めたり露出を計算したりして「絵を作る」のが楽しいので,シャッターを切った時点で興味が尽きてしまうようです。注2筆者が主に使用しているのはPENTAXのK20Dという機種です。この機種はSDカードにXXX_MMDDという名前のサブフォルダを作成し,その中に画像を保存します。MMDDが撮影した日付になるので,これを手がかりに写真を探せないこともないのですが,現実的ではないのはお察しの通りです。10.10で標準採用されている写真管理ソフトウェアです。Shotwellは従来のF-Spotを置き換える形で採用されました。イベント単位での写真の分類,写真のサムネイル表示,写真の簡易編集,Webアルバムへのアップロードなどの機能が搭載されています。機能的には従来のF-Spotとほぼ同等ですが,F-Spotよりも高速に動作するのが特徴です。これはF-SpotがC#とMonoを利用していたのに対し,ShotwellがValaで実装されていることに由来します(注3⁠)⁠。注3ValaはC#によく似た言語で,GLibのオブジェクトシステムであるGObjectを簡単に扱えるように設計されています。Valaのコンパイラであるvalacは,Vala言語のソースを「GObjectを使ったC言語のソース」に変換し,この中間コードは最終的にgccを用いてコンパイルが行なわれるという特徴があります。そのためValaはGObjectベースのプログラミングが簡単な新言語でありながら,C言語で書かれたプログラムと同じように扱えるというメリットがあります。写真をインポートするShotwellで写真を管理するためには,まず写真をカメラからインポートし,Shotwellの管理下に置くという作業が必要です。デジタルカメラや写真を保存したSDカードなどをUbuntuに接続して,Shotwellを起動しましょう。Shotwellがカメラやカードといったデバイスを認識すると,左ペインにデバイスが表示されます。右ペインには撮影済の写真のサムネイルが表示されます。Selected」をクリックしてください。All」をクリックしても構いません。インポート済みの写真がデバイス内に残っている場合は,「⁠既にインポートした写真を隠す」にチェックを入れておくことで,サムネイル一覧から重複する写真を隠蔽することができます。ちなみにインポート済みの写真を再度インポートしてしまったとしても,自動的にスキップされるので特に問題はありません(注4⁠)⁠。インポートを行うと,ホームの「画像」フォルダ以下に「撮影年/月/日」という名前のサブフォルダが作成され,その中にファイルがコピーされます。Shotwellのカメラの認識や写真のインポートにはgPhoto2という,USBマスストレージやPTPのようなプロトコルを利用して,デジタルカメラへアクセスするためのライブラリが使用されています。gPhoto2は現在約1300種類ほどのデジタルカメラに対応しており,これらのカメラであればShotwellから直接写真のインポートが可能というわけです。手持ちのカメラがgPhotoでサポートされていない場合は,SDカードリーダなどを別途利用する必要があるでしょう。カメラを接続して写真をインポートする。インポート先は「編集⁠」⁠->「設定」で変更することもできる注4ただし,インポートに余計な時間がかかるかもしれません。Shotwellが使用するデータベースと画像のキャッシュが作成されます。フォルダのサブフォルダには次の表のようなものがあります。ShotwellのデータdataShotwellの管理している画像,タグなどの情報が格納されたSQLite3形式のデータベース,photo.dbが保存されるmimicsRAWデータから作成したフルサイズのJPG画像が保存される(注5)thumbs右ペインに表示するために,サムネイルの画像ファイルが保存される注5RAWデータからJPEGのような可視画像を得るには,数秒程度の時間がかかります。RAWデータを表示する際に毎回画像を生成するのは効率が悪いため,RAW形式のファイルはフルサイズのJPGイメージが別途キャッシュされています。理想のフリーデスクトップ環境を求めて東へ西へ......のはずが,気がついたら北の大地で就職していたインフラ寄りのエンジニア。最近レンズ沼にハマる。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。