ubuntuソフトウェアを使ってubuntu20.04にSMPlayerをインストールしたのですが、メニューバーが文字化けしていました(文字の形からか豆腐と呼ばれているらしい)。SMPlayerは動画再生ソフトです。こんな感じです。
インストールした後に気付いたのですが、snap版のSMPlayerがインストールされたようです。このままでは使えないので直してみました。
snapアプリのフォントの設定ですが、ホームディレクトリ配下のfonts.confというファイルにあるようです。fonts.confはsnapアプリごとにあるようで、SMPlayerの場合は以下になります。
fonts.conf の場所
ホームディレクトリ/snap/smplayer/数字(リビジョン)/.config/fontconfig
fonts.confを見てみました。
文字化けの原因ですが、赤枠で囲ったディレクトリ配下にフォントが足りないためのようです。/usr/share/fonts 配下と比べてみると全然足りていません。
では、どうするか?
ですが、/snap ディレクトリ配下にREADMEがあり、これには以下のように記載されています。
難しいことはわからないのですが /snap/<snapname>/<revision> はマウントポイントになっているようです。ですので、/snap/smplayer/58/usr/share/fonts に /usr/share/fonts をマウントします。ただ /usr/share/fonts はデバイスではなくディレクトリですのでバインドマウントにします。且つ、読み取り専用とします。以下のコマンドです。
$ sudo mount -o ro,bind /usr/share/fonts /snap/smplayer/58/usr/share/fonts
これをしてからSMPlayerを再起動させると、無事、画面の文字化けが解消しました。動画の再生もできます。
なお、これだけだとubuntuを再起動する度にマウントが外れてしまうので、OS起動時に自動でマウントされるようにfstabファイルに設定を追加しておきます。以下を追記します。
fstabの場所
/etc の配下
追加する1文
/usr/share/fonts /snap/smplayer/58/usr/share/fonts none ro,bind 0 0
赤枠の部分です。これでubuntu起動時にマウントがされるようになります。
ここからは別の話題です。
文字化けは解消したのですが別のところで不都合がありました。DVDをSMPlayerが認識しません。通常の動画ファイルは再生できるのですが、DVDをドライブに入れて再生しようとしてもうまく再生されません。
DVDを再生するにはlibdvd-pkgのインストールが必要らしいのでインストールしてみたのですが解決しません。他にもlibdvdnav4を入れたりしてみたのですが状況は変わらずでした。
ここであることに気づきました。
SMPlayerはsnap版だからsnap版の(snapディレクトリの)ライブラリを追加しないと意味がないのでは?
どういうことかというと、libdvd-pkgをインストールすると /usr/lib/x86_64-linux-gnu 配下にlibdvdcss.soファイルが配置されます。これが /snap/smplayer/58/usr/lib/x86_64-linux-gnu 配下にあるかというと、、ありません。比べてみると以下です。
/usr/lib/x86_64-linux-gnu の下
/snap/smplayer/58/usr/lib/x86_64-linux-gnu の下
/snap・・配下にDVD関連のライブラリ(soファイル)を追加しないとDVDの再生が出来ないのではないかと思います。文字化けのときと同じようにマウントしてみたのですが、これができない。またダメ元でシンボリックリンク、ハードリンクをやってみましたが、やはりできませんでした。
ですので今はSMPlayerでのDVDの再生ができないままです(悲)。もともとのsnapパッケージにライブラリを追加する方法があるのかどうかわからないですが、やり方が不明なのでどうしようもないです。