pictkura
ダウンロード

pictkura  /  アプリ仕様

アプリ仕様

できること、できないこと、対応しているファイル形式、動作環境、データの置き場所。導入を検討する際に必要な事実のみを、実際に確認した範囲で記載しています。

バージョン  0.3 最終更新  2026-10-18 ライセンス  MIT

1動作環境

項目内容
WindowsWindows 10 / 11(x64)。WebView2 ランタイムが必要です(Windows 11 および更新済みの Windows 10 には標準で導入されています)
macOSmacOS 11 以降(Apple Silicon)。Intel 版はありません
Linuxビルドを配布していません(Tauri v2 のため、技術的には対象です)
追加の部品HEIC / HEVC の復号には OS の拡張機能を使用します。Windows では「HEIF 画像拡張機能」(無償)と「HEVC ビデオ拡張機能」(有償)が必要です
言語英語 / ドイツ語 / スペイン語(本国・中南米)/ 簡体字中国語 / 繁体字中国語 / 日本語——7つの表示言語から選べます。OS の言語設定に従います。設定画面で変更できます

2できること

USB / SD カードからの取り込み

撮影日ごとのフォルダに振り分けます。9 種類の定型、または独自に指定した構成を選択できます

フォルダをそのまま登録

写真を独自の保管領域へ移動しません。元の場所のまま一覧に表示します

撮影日ごとの一覧とカレンダー

年のスクラバーにより、数万枚の中を一度に移動できます

検索・絞り込み

ファイル名・フォルダ・カメラ・撮影年月日・種類(画像 / RAW / 動画)・★・⚑。条件はすべて AND で結合します

ビューアと選別

⚑ で選別、✕ で除外、★ でお気に入りを付けます。ファイルの情報と撮影情報(カメラ・レンズ・絞り・シャッター速度・ISO・焦点距離・GPS)も表示します

いま見ている画像を取り出す

ビューアの 📋 でクリップボードへ、💾 でファイルに保存します(Ctrl+C / Ctrl+S)。説明書に詳しく書いています

まとめて操作

選択した写真への ★・⚑ の付与、フォルダへのコピー・移動、印刷(1ページに最大9枚)、ごみ箱への移動

右クリックの操作

JPEG の回転(元の向きに戻せます)、印刷、クリップボードへのコピー、ファイルの情報。Windows ではエクスプローラーのメニューも開けます

スライドショーと動画再生

アプリ内で再生できないコンテナは、既定のプレイヤーで開きます

送り出し

取り込みのたびに、写真サービスへ出していくものを送り出しフォルダに並べます。RAW と JPEG の組は JPEG だけを置きます。既定では無効です。解説

自動再生への登録(Windows)

インストーラー版と Microsoft Store 版は、カード挿入時の候補に表示されます(持ち歩き版は出しません)。自動では起動しません

Ctrl+K でカメラを選び、続けて年を足したところ。条件は AND で積まれ、3 万件が 1,200 件まで減ります。

3できないこと

意図的に実装していないものと、未実装のものを区別して記載します。

できないこと理由・現状
RAW 現像実装していません。カメラが埋め込んだ表示用 JPEG を使用します
写真の編集切り抜き・現像は実装していません。閲覧と選別のための道具です(いま見ている絵の保存、フォルダへのコピー/移動はできます)。JPEG は回転できます(カメラのカードの中の写真、クラウドにしかない写真、向きの情報を持たない JPEG は回せません。ほかにも回せないときは理由を出します)
AI による選別・顔認識実装していません。選別は利用者が行う設計です
タグ・キーワード付け実装していません。印は ★ と ⚑ の 2 種類のみです
並び順の変更撮影日の新しい順に固定しており、変更する手段はありません
取り込みの中断開始後は完了まで中断できません
動画のサムネイル(macOS・一部のコンテナ)macOS の AVFoundation が開けたものだけ表示します。mp4 と mov は H.264 と HEVC(hvc1)の見本で表示、.avi は枠だけになることを確認済みで、他のコンテナは未検証です。Windows はシェルから借りますが、そちらにも限界はあります——.m2ts は未確認で、OS にコーデックが無いコンテナは枠だけになります
長さ・寸法(macOS・mp4 m4v mov 3gp 以外)この 4 つはコンテナのヘッダから読み取ります。他のコンテナは Windows のシェルに依存するため、macOS では長さも寸法も表示されず、撮影日時はファイル名か更新日時に落ちます
.m2ts / .avi のアプリ内再生WebView が該当するコンテナに対応していません。一覧には表示されます
どこにも寸法を申告していないRAWの寸法寸法は、ファイル自身の申告か、Panasonic系のRAW(rw2 raw rwl)に入っているセンサーの縁か、埋め込みプレビューから決まります。そのどれも無いRAW(確かめたものでは Blackmagic の CinemaDNG)は寸法が出ません。例外はWindowsでクラウドにしか実体が無いファイルで、そちらは実体を落とさずにシェルが寸法を返します
索引の作り直し(画面から)設定フォルダの pictkura.db を削除すると再作成します(★・⚑、回転を元に戻すための控え、送り出しフォルダに置いたものと、置き直しを待っているものの記録は消えます)
右から左に書く言語の配置未対応です

4対応しているファイル形式

一覧・拡大とも可 制限あり — 非対応

4.1  写真

拡張子一覧拡大備考
jpg  jpeg縮小しながら復号するため、大きな写真でも負荷が増えません
png  webp
avifデコーダ(rav1d)を同梱しており、OS の拡張機能は不要です
heic  heif  hifiPhone の既定形式です。画素の復号は OS が行います
bmp  gif  tif  tifftiff は WebView が描画できないため、JPEG に変換して表示します
svg原本から描画するため、拡大しても劣化しません

4.2  RAW  — 現像はしません

取り出せる表示用JPEGがあるかどうかを決めているのはカメラで、しかも同じ拡張子でも機種で割れます。だから記号ではなく、実物の件数を出します。原寸はプレビューの長辺が1600pxに届くという意味で、そこが全画面で眠く見えなくなる境目です。絵なしは枠だけが出るという意味ですが、寸法と撮影日時は絵とは別に読むので、日付順の並びにもカメラの絞り込みにも出ます。同じ測定を機種ごとに割った一覧はこちら——メーカー56社・923機種です。

拡張子実物絵が出る原寸小さい絵なし備考
rw2363363363——Panasonic と、同じ作りのLeica
cr3110110110——Canon
pef404040——Pentax
srw242424——Samsung
rwl202020——Leica
x3f141414——Sigma
nrw888——Nikon のコンパクト機
ori191919——OM System。ハイレゾ撮影が書く3本(.ORF・.ORI・.JPG)の2本目
arw1971971934—Sony
nef2732732649—Nikon
raf1431431367—Fujifilm
orf8585778—Olympus・OM System
kdc5541—Kodak
cr213413112743Canon
3fr9954—Hasselblad。5枚が原寸、4枚が小さい
iiq3535233—Phase One。全35枚から絵は出るが、33枚が1600px未満
erf33—3—Epson。3枚とも160px
mos33—3—Leaf。3枚とも330px前後
srf11—1—Sony の第1世代。640px
sr211—1—Sony の第2世代。640px
arq111——Sony。カメラは書かない——Imaging Edge が4枚か16枚のARWからPC上で作る
dng257166759191いちばん割れている形式。Apple ProRAW は DNG で原寸が出るが、Blackmagic の CinemaDNG も DNG でプレビューを持たない。絵の出ない91枚のうち50枚はスマートフォン。91枚のうち1枚は Light L16(383MB)で、こちらは「無かった」ではなく「探し尽くしていない」。小さい91枚のうち38枚は Canon のコンパクト機の128pxのサムネイル
fff117164Hasselblad。11枚中4枚から絵が出ず、残りで原寸に届くのは1枚だけ。絵が出ない4枚のうち1枚(H6D-100c、134MB)は128MBを超えるので総なめの走査が先頭16MBまでで、「持っていない」とは言えない
crw33127521CR2 より前の Canon。33枚中21枚がプレビューを持たない
mrw82—26Minolta。8枚中6枚がプレビューを持たない
raw2975222RW2 より前の Panasonic。29枚中22枚がプレビューを持たない
dcr51—14Kodak。5枚中4枚がプレビューを持たない
ptx0————Pentax。拡張子は認識するが、確かめる実物を入手できなかった——CC0の一覧に無く、その外でも見つけられなかった

2026-09-04 に、実ファイル1,870枚——raw.pixls.us のCC0サンプル全件——で測りました。macOSで816枚・Windowsで1,054枚、落ちた件数は0です。上の表の1,831枚は、RAWとして探索する拡張子を持つものです(残る39枚はそうではありません)。数えた絵はすべて実際に展開しています——JPEGのヘッダから寸法を読んだだけの数ではありません。上の ori と arq は、RAW扱いを強制して測った値です——走査する拡張子に入ったのは 0.2.7 で、この掃引より後だからです。

Canon・Nikon・Sony・富士フイルム・Panasonic の RAW を 5 枚続けて開いたところ(cr3 / nef / arw / raf / rw2)。現像は回していません。

4.3  動画

拡張子一覧アプリ内再生備考
mp4  m4v  mov  webmコーデックは OS のものを使用します(HEVC は上記の拡張機能が必要です)
avi mts m2ts mkv 3gp wmv mpg mpeg—再生は既定のプレイヤーで行います

一覧に並ぶこと自体はどのOSでも同じで、変わるのは絵が付くかどうかです。上の表の「一覧」欄は Windows で確認した範囲です。さらにその絵は、pictkura が作るものではなく、OS から取得できたものに限られます。動画のサムネイルは OS から取得するため、そのOSがコンテナを開ける範囲までが上限になります。Windows はシェル経由(.avi と HEVC の .mov は確認済み、.m2ts は未確認、OS にコーデックが無いものは枠だけ)、macOS は AVFoundation が開けたものだけ(mp4・mov は H.264 と HEVC(hvc1)の見本で表示、.avi は枠だけ、他は未検証)です。再生時間・寸法・撮影日時は mp4・m4v・mov・3gp の 4 つをコンテナのヘッダから読み取り(画素の復号は行いません)、他のコンテナは Windows のシェルに依存します。

5通信とプライバシー

項目内容
自分から出す通信起動時の更新確認のみです(自動確認は 1 日 1 回まで)。送信するのは pictkura のバージョン番号のみです
送らないもの写真・ファイル名・フォルダの場所・利用状況。解析および計測の仕組みは実装していません
通信を止める設定 →「このアプリについて」→「起動時に新しいバージョンを確認する」を無効にすると、通信は発生しません
クラウドのファイルクラウドにのみ存在するファイルを自動では取得しません。実際に表示した時点、フォルダへコピー・移動した時点、クリップボードへコピー・印刷した時点で取得します
削除必ずごみ箱を経由します。直接の削除は行いません(送り出しフォルダに置いたものを除く)
記録(ログ)うまくいかなかったこと、送り出しフォルダでしたこと(フォルダを作った・外した・置けなかったものを置き直した)、pictkura が自分で直したこと(回転の途中で止まったファイルを戻した、前の版の自動再生の登録を片付けた、画面の外に出た窓を戻した、画面に収まらない窓を縮めた)を pictkura.log に書き足します(ファイル名やフォルダのパスを含みます)。送信する仕組みはありません——設定から開いて確認でき、削除もできます

プライバシーポリシーにも同じ内容を文書として掲載しています。

6データの置き場所

中身場所
設定(Windows)%APPDATA%\dev.harusame.pictkura\pictkura.toml
設定(macOS)~/Library/Application Support/dev.harusame.pictkura/
索引pictkura.db(同じフォルダ)
サムネイルthumbs\(同じフォルダ)
記録(ログ)pictkura.log(同じフォルダ。書くのは5章の「記録(ログ)」に挙げたことだけで、送信はしません)
Microsoft Store 版この Windows のアカウントでほかの版を使っていたなら、上と同じ場所を使います。Store 版だけを使っている場合は %LOCALAPPDATA%\Packages\<パッケージ名>\LocalCache\Roaming\dev.harusame.pictkura\ に置き、アンインストールすると消えます
写真そのもの登録したフォルダに保存されたままです。書き換えるのは右クリックの回転だけで、JPEG の向きの情報と更新日時が変わります(「向きを元に戻す」で元に戻ります)

設定ファイルは直接編集できます。画面に表示していない項目(走査から除外するフォルダのパターン、写真と併せて移動するファイルの拡張子など)は、マニュアルに記載しています。

7実測値

以下はすべて下記の環境で計測した値です。所要時間の大きい項目も同じ表に記載しています。

項目内容
CPUAMD Ryzen 7 5700X(8 コア / 16 スレッド)
メモリ32GB
対象ファイルの所在NVMe SSD(KIOXIA EXCERIA G2)
OSWindows 11 Home
計測方法release ビルド。他の処理を停止した状態で、OS のファイルキャッシュが有効な 2 回目の値を採用

7.1  原寸画像の生成

ビューアで開いた際に、pictkura が原寸の画像を用意するまでの時間です。描画はその後に WebView が行います(24MP の JPEG で 130ms、先読み済みの場合は 0.0〜0.5ms)。

形式時間中身
JPEG6ms再エンコードが不要なため、そのまま送出します
RAW・横位置(Canon EOS R8・CR3・24MP)17.1ms現像は行いません。カメラが埋め込んだ表示用 JPEG を取り出します
RAW・縦位置(Nikon Df・NEF・16MP)218.5msプレビューを回転させたうえで再エンコードするため、横位置の約 13 倍を要します。画素数は横位置の例より少なく、差の大半は回転と再エンコードによるものです
AVIF(4032×3024)40〜53ms同梱のデコーダ(rav1d)で復号します。縮小と色変換を統合して +1〜2ms
TIFF約 300msWebView が描画できないため、JPEG に変換して送出します
HEIC(iPhone・24.5MP)0.6〜1 秒本項で最も所要時間が大きい形式です。内訳は下表のとおりです

RAW は、横位置に Canon EOS R8 の実ファイル、縦位置に raw.pixls.us の CC0 サンプル(Nikon Df、4928×3280 のプレビューを 3280×4928 へ回転)を使用しました。縦位置は 2 点で 216.3ms / 220.7ms です。

HEIC 1 枚あたりの内訳(20 枚の平均):

段時間中身
Windows のデコーダで復号522msOS が行う処理のため、短縮できません
透過部分を白で塗りつぶす10ms
JPEG へ再エンコード79ms純 Rust の実装では 496ms を要したため、mozjpeg に変更しました

再エンコードを 496ms から 79ms に短縮しても、復号が支配的なため 1 枚あたり 1 秒前後のままです。このためビューアでは、先読みを隣接する 1 枚に限定し、原寸が到着するまで一覧のサムネイルを下層に表示します。

7.2  ライブラリの構築

計測項目時間中身
クラウドにのみ存在する写真 3,166 件の索引20 秒通信は発生しません。撮影日時と寸法は Windows が保持する情報を使用します
JPEG からのサムネイル生成(19MP・40 枚の平均)92ms → 40ms原寸での復号をやめ、1/8 に間引いて復号する方式へ変更しました
RAW からのプレビュー抽出100〜350ms形式によっては、ファイル全体の読み込みが必要です
HEIF の寸法の読み取り0.2msヘッダのみ読み取り、画像の復号は行いません

2026-08-17 の計測。2 通りの実装を比較し、左の方式を採用しました。

操作採用した方式採用しなかった方式
範囲選択(151 枚)6.7ms636.8ms
範囲選択(全域)9.2ms26.1 秒
選択の確認(500 枚)8.4ms529.1ms
選択の確認(1.5 万枚)295.5ms26.7 秒

実行計画のうえでは右の方式が単純ですが、実測では桁違いに遅いため左を採用しました。再度比較できるよう、右の方式もコードに残しています。

7.4  一括操作

やったこと時間中身
500 枚のごみ箱への移動(1 枚 2MB)約 4.9 秒Windows のごみ箱 API の呼び出しに、1 件あたり中央値 20ms、最大 215ms を要します
同じ 500 枚を分割した場合(1 枚 1MB)分割なし 3,675ms
5 分割 4,848ms
10 分割 5,406ms
分割するほど所要時間は増えますが、実行直後から進捗を表示できます

2026-08-19 の計測。事前の見積もりは 2.3 秒でしたが、実機では 4.9 秒を要しました。待機時間としては長いため、分割して進捗を表示しています。分割による増加は全体で約 1 秒であり、最初の分割のみ小さくし、以降を倍増させることで抑えています。25 枚以下は分割しません。

いずれも開発中に計測した値であり、環境・対象ファイル・バージョンにより変動します。計測に使用したツールはリポジトリに含まれています(cargo run --release --bin bench。配布するアプリには含まれません)。