2017.01.07何をするのかAmpacheは便利なのですが、そのままだと日本語のSJISのタグが付いたmp3などを突っ込むと文字化けしまくる。WindowsはSJIS以外だとエクスプローラで文字化けするため、意識してないとSJISで管理しちゃうことが多い。タグを別の文字コードに変換するのは面倒なため、Ampache側をいじることとする。注意:かなり雑な方法なので、通常だと問題ない文字コードや特殊な文字などを処理したときに文字化けするかも。1.9.11)「mb_detect_encoding」関数を使うので、php-mbstringパッケージをインストールして有効化もう入っていれば飛ばして問題なし。}対応方法についてのメモ何か問題が起こったときに確認するためのメモ。getID3について以下で公開されてる。https://github.com/JamesHeinrich/getID3Ampacheではこれを使ってmp3などのタグを処理してるのですが、getID3は本記事時点で最新のv1.9.13でもSJISに対応していない。いえプルリクエストしてどうにかなるものではなさそう。文字コードに何を使っているのか文字列から判定する必要があるのですが、その対応がとても難しいです。少なくともPHPの関数だけでは世界中の文字コードを間違いなく判定することはできないと思われる。対応する文字列を無難な中から取捨選択するしかなさそう。そもそもSJISなんて使ってるMicrosoftが諸悪の根源に違いない。getID3に追記した内容について文字列の判定と変換を、通常では以下の順番でやってる。オープンソースで開発されてるPHP製のWebアプリケーションです。コメントをキャンセルメールアドレスが公開されることはありません。雑文メタ情報ログイン投稿フィードコメントフィードWordPress.orgTwitter@YasuoSaikiさんのツイートタイトルとURLをコピーしました。