PCを使っていて、気付いたら空きが半分くらい(= 約16GB使用)になっており、ブラウザをFirefoxに換えたにも関わらず、想像以上に空きメモリが減るので調べたら、Spotifyやブラウザ(Vivaldi)の他にもメモリを大量に使っているアプリがあった。昨夜に分かったのは、NixNote2とdigiKam5である。まとめるため、以前から分かっていたものも合わせて、以下に示す。

  • ChromeとVivaldi: メモリをふんだんに使う作り。
  • Spotify: メモリリーク: 長時間動かすと数GBに増え続け、全く減らない。
  • NixNote2: メモリリーク: データベースのバックアップをすると1GB以上に増えて、減らない。
  • digiKam5: メモリリーク: タグでの検索(例: タグのタブを開いて、あるタグを選択する)をすると数GB程度に増えて、減らない。

対処の方針としては、別のアプリを使うか回避策を見つけるかである。

ブラウザについては、Firefoxに移ることで緩和・軽減した。Spotifyは使用量が一定以上になったら自動で再起動するようにした。

新しく見付かったNixNote2については、データベースのバックアップは頻繁には行わない(定期的なバックアップ時のみ)ので、バックアップ後に再起動するか、(NixNote2ではバックアップせず)Windows版のEvernoteでバックアップ(エクスポート)することを考えている。

同じくdigiKam5(以下、digiKam)については、(自動で再起動するために)外部からプロセスを停めると画像やDBが壊れる可能性があるので、別のアプリとして、以前検討して止めたXnViewMPを再度試した。あれから改良されたのか、今回は結構いい感じだったのだが、いくつか問題があったので以下に示す。

XnViewMPの問題(不満な点)

  1. [済] コメントなどに日本語が入力できない。
    • Qtのライブラリの問題だったので、AppImage版digiKamと同様に追加して入力できるようにした。
    • これは、今まで採用を見送っていた最大の理由である。
  2. [TODO] 画像の日付でのフィルタリングができない(日付などでの検索は可能)。
    • 元々、画像の格納ディレクトリを年月日で分けているので、この機能はほとんど使っていなかったので、大きな問題ではない。
    • 追って、改良できるか検討したい。
  3. [済] 画像内に設定されたカテゴリの反映が自動でない。
    • 新規追加したファイルのカテゴリは、それらのファイルをXnViewMPで読み込まないと反映されない。そのため、ファイルの格納場所が分からないと、カテゴリで検索できない。
    • アプリの作りの問題なので、どうするか検討中。 → 以下のようにして対応した。 (1/7 9:17) → 問題なく動作している。 (2019/1/26 15:40記)
      • 問題となっている、「格納場所が分からない新規追加したファイル」は、自作の取り込みプログラムでカメラなどから取り込んで日付のディレクトリに振り分けたものなので、取り込んだファイル一覧を作成し、それをXnViewMPに指定して起動することで反映されるようにした。なお、既存のファイルを外部プログラムでカテゴリを変更した場合の更新は、この方法ではできない。
      • 以下のような処理のスクリプトを作成し、XnViewMPのツールバーのコマンドに登録して、そのボタンを押せば自動で取り込んだ画像を反映できるようにした。その時使っているものとは別のXnViewMPのプロセスで画像DBを更新しても、ちゃんと反映された。
        1. (画像取り込みプログラム: 取り込んだファイル一覧を作成する。 → img-list.txt)
        2. XnViewMPに一覧を指定して起動する。: xnview -filelist img-list.txt
        3. 少し待ち(0.5秒程度)、XnViewMPを最小化する。
        4. XnViewMPのDBへの反映が終わるまで待ち(余裕をみて3秒程度)、XnViewMPを終了させる。
        5. ファイル一覧を削除する。
  4. [TODO] ファイル・ディレクトリ名での除外ができない。
    • 余計なファイルやディレクトリが表示されて使い勝手が悪いので、どうするか検討中。
    • なお、ファイル名の拡張子では除外可能。
  5. [済] コメントの格納フィールド(タグ)がdigiKamと違う。
    • digiKamで書いたコメントはXnViewMPの"Edit comment"では出ず、"Edit IPTC/XMP"の"Caption"に出る。
    • ただし、サムネイル一覧のラベル("Comment")には出せる。
    • 場所は違うが見られるので大きな問題ではないが、追ってどうするか検討する。
    • → XnViewMPの認識するタグにコピーして対応した。カテゴリも同様にした。 (→ 投稿: 2019/1/26 15:40記)
  6. [済] 画像内に格納された位置情報(GPS情報)で地図が表示されない(地図ペーンが空白になる)。
    • ライブラリのバージョンの問題だったので、対応した。
      • 新しいライブラリ(libssl1.1)では廃止されたと思われる、SSL2やSSL3を使っているようだ。(このままだと、将来はGoogle mapsに接続できなくなりそうだ)
      • なお、libssl1.1はPHPの7.3への更新時にインストールした。
    • なお、外部サイト(GeoHack)での表示機能は問題なく動作する。
  7. [済] 画像回転の処理・結果がdigiKamと違う?
    • (EXIF情報だけで回転させるモードの場合、)画像を(論理的に)回転させても埋め込みサムネイルは回転しないために誤解していた。 → 埋め込みサムネイルを使わない設定にして回避した。 (1/8 9:10追記) それでも駄目な場合があるので、EXIF情報だけで回転させるのは止めた。
  8. [保留] 類似画像検索や顔認識機能がない。
    • これらの機能は使っていなかったので、大きな問題ではない。
    • なお、若干機能が違うものの、類似画像検索はあった。

探すと結構多かったのだが、重要なものについては対処できた。そして、確かに問題は多いものの、XnViewMPには以下のようなメリットがあり、それがdigiKamでは実現できずずっと不満だったので、対処に手間を掛けても移行する価値は大きいと感じた。

  • 起動が高速で操作も軽い。
  • メモリ使用量がとても小さく(起動直後は300MB以下)、使用量の増加速度が小さい。
    • なお、増える場合も減る場合もあり、増減の条件はまだ分かっていない。
    • (1/8 9:10) サムネイルをキャッシュすると、表示した画像(サムネイル)数に応じてメモリ使用量が増え続けて減ることがないようだ。そのため、キャッシュを行わないようにした。
  • 良く使うディレクトリをFavorites(お気に入り)に登録できるのが、とても便利。
  • ESCキーで画像表示が閉じるなど、使い勝手がいい。
  • ウインドウのレイアウトを柔軟にカスタマイズできる。
  • マウスホイール加速への追従性はdigiKamより良い。

なお、日本語入力とGPSの地図表示の対応方法については別途投稿する予定である。

PS. XnViewMPの一番の問題は、ドキュメントやサポートがすごく貧弱なことだ。コマンドラインオプション一覧すら出ない・存在しないし、マニュアルもヘルプもなく、使い方は、想像するかwebやwikiの少ない記述やフォーラムを見るか検索するしかない。フォーラムのlibsslの件を見る限り、不具合を報告しても直ることは少なそうだ(言ってみれば、「悪魔対応」だw)。。。 まあ、それでも他のアプリ同様、自分で何とかできるから良しとしている。

ただ、これでは本当に、物好きとかプロしか使いこなせない。基本的にはいいアプリなのだから、サポートをちゃんとすればユーザーがもっと増えると思うのに、全くもったない。 (1/7 9:33)

(19:54 わずかに加筆; 1/7 9:34 加筆・修正, 15:55 わずかに加筆, 16:03 題に追加; 1/8 9:10加筆)

  •   0
  •   1

コメントを書く

名前    

メール 

URL