文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

audirvana plus2.2をiTunes連携に頼らずにiTunesっぽく使う

audirvana plus v2.2になって、どうもiTunes連携が無くなり、iTunesのライブラリをaudirvanaで使用する機能しか無くなってしまったようなので、標準のaudirvanaの残念プレイリストを少しでもiTunesのように使えるようにしたいと思います。

f:id:treeapps:20150810225208p:plain

audirvanaとは

Audirvana Plus | The Sound of your Dreams

macの音楽再生プレーヤーで、mp3やflacを再生する事ができます。個人的にmacの音楽プレーヤーで最も音質がいいプレーヤーだと思っています。ちなみに私のDACではDSD128までいけるようです。
f:id:treeapps:20150810225634p:plain

無料版もありますが、有料版と比較して音質が劣ります。有料版は$74です。私は無料版を2年ほど使用した後、我慢できずに有料版を購入しました。

バージョン等

f:id:treeapps:20150810225526p:plain
現在v2.2です。

audirvanaをiTunesっぽく使う

音楽ファイル

今回使う音楽ファイルはこれです。昔購入したOSTが未だに手元にあるので、こいつらをリッピングして使用します。
f:id:treeapps:20150810230130p:plain
_人人人人人人人_
>PERSONA !!! <
 ̄Y^Y^Y^Y^Y^Y^ ̄

リッピングについて

なんか最近著作権法が結構騒がしいようなので一応補足ですが、自分が所有しているCDをリッピングする事は現状違法ではないとのことです。(間違っていたら教えて下さい)

なお、一般的に音楽CDはコピー防止機能が施されていませんので、個人的な利用の目的であれば、音楽CDを自分のパソコンや携帯音楽プレーヤーなどに複製することは、違法ではありません。

http://www.gov-online.go.jp/useful/article/200908/2.html#anc04

一方DVDについては例え自分で購入したDVDだとしても、コピー技術を回避してリッピングする事がついに違法になったようです。どうもリッピングというより、リッピングの過程でコピー技術を回避する事が違法扱いになるそうですね。怖い怖い。

フォルダ構成

音楽ファイルがあるフォルダの構成を確認します。

f:id:treeapps:20150810231239p:plain

こんな感じに、「music」を親フォルダとして、「[ゲーム] persona」をまとめフォルダ、その配下に各シリーズのフォルダを切りました。なお、今回は全てflacでリッピングしています。

Libraryフォルダを登録する

+ボタンをクリックして、musicフォルダを選択します。例えば [ゲーム] PERSONA3 Burn My Dread フォルダを登録してもいいんですが、親フォルダを登録しておくと子フォルダ全て登録されるので、親を登録した方が楽です。
f:id:treeapps:20150810232250p:plain

なお、musicフォルダの実体は

/Volumes/IODATA-3TB/music/flac/music

にあります。

フォルダ名を綺麗に揃える

当記事では、基本的にフォルダ名が綺麗に整えられている前提とします。

具体的には「フォルダ名の頭に[ゲーム]や[アニメ]をつける」ようにします。
f:id:treeapps:20150812082538p:plain
ファイル名を以下のように綺麗に揃える必要はありません。揃えるのはフォルダ名のみで大丈夫です。
f:id:treeapps:20150812092510p:plain

綺麗に整えるのは、後述するスマートプレイリストを上手く機能させるためです。

Libraryを見てみる

プレーヤーの左サイドバーにある「Library」に、先ほど登録したフォルダの中身、音楽ファイルがフラットにダーっと並びます。フォルダ構造が無くなるので、沢山ファイルがあると何がなんだか解らなくなります。
f:id:treeapps:20150810232728p:plain

iTunesの場合はスマートプレイリストを使って、このようにフラットに並んだファイル群をフィルタリングして、沢山並んだファイルの中から必要なファイルのみを検索・抽出するような使い方をしますね。これをaudirvanaでもやってみましょう。

スマートプレイリストを作成する

まずはスマートプレイリストを作成します。
f:id:treeapps:20150810233032p:plain

作成すると、↓こんな感じにフィルタ条件の入力を求められます。
f:id:treeapps:20150810233145p:plain

今回私がやりたいのは、フォルダ毎にプレイリストを作りたいという、恐ろしくシンプルな事を目標としています。さて、フィルタ条件に何を入力すれば、単純にフォルダごとに分けられるか。

答えはFile Locationです。しかしこのFile Locationはちょっと癖があるので、「あれ?入力してるのに動かないんだけど」みたいな事になりがちなので、解説します。

File Location

これは、「どのフォルダにあるか」という条件です。

このFile Locationはちょっと入力のさせ方が特殊なので、ここではcontainsで中間一致させると、簡単にフォルダの絞込ができるようになります
例えばcontainsで

[ゲーム] persona

と入力すれば、ペルソナフォルダを簡単に絞り込む事ができます。もっと具体的にシリーズを絞りこみたければ、

[ゲーム] PERSONA4 OST

等と入力すれば、ペルソナ4に限定したプレイリストを作る事ができます。New Folderで「ペルソナ」というフォルダを作り、その中に「ペルソナ3」「ペルソナ4」のスマートプレイリストを作る、という手もありますね。

フィルタ条件は、とりあえず中間一致を指定しておくと、フォルダの場所が変わったりした場合等の変更にも強いと思います。プログラムが書ける人はmatchesの正規表現を使うと、色々な事ができると思います。

さて、ここでもう一つ注意があります。containsに入力するパスの値についてです。

File Locationに入力するフォルダ名に濁点・半濁点を含む場合

Finder -> [ゲーム] PERSONA3 Burn My Dreadフォルダを右クリック -> 情報を見る -> 「場所」の部分をコピーすると、ファイルの絶対パスがコピーできます。

f:id:treeapps:20150810235747p:plain

しかしここで実際にコピーできる値は以下です。
f:id:treeapps:20150811000157p:plain
なにやら濁点部分が「ケ」と「゙」が分離していますね。恐らくこれはMac OSXのHFS+におけるNFDの濁点・半濁点の問題であると思われますが、ここではそんな面倒な事はほっときましょう。

話を戻し、File Locationに入力するのは、この濁点が分離している方を入力しないと、ヒットしてくれません。
f:id:treeapps:20150811000638p:plain
具体的には、以下のように入力すると、フォルダでの絞込ができるようになります。
f:id:treeapps:20150811010449p:plain

File Locationで前方一致させるには

ここからは補足説明ですが、一応説明しておくと、このFile Locationで前方一致させる場合、なんと絶対パスを入力するものではなく、Libraryフォルダを起点としたパスを入力しないといけないのです。これは非常に解りにくい仕様なので、前述のようにcontainsで中間一致させる事をおすすめします。


しかし、どうしても前方一致でマッチさせたい!という方向けに前方一致させる場合の設定について説明します。さて、前述でLibraryフォルダを以下に設定しましたね。この場合File Locationに何を入れればヒットするでしょうか?

/Volumes/IODATA-3TB/music/flac/music
誤った入力方法
/Volumes/IODATA-3TB/music/flac/[ゲーム] persona

これだとFile Locationでは絶対にヒットしません。

正しい入力方法
music/flac/music/[ゲーム] persona

これが正解です。

FIle Location に何を設定したらいいかは、実は以下を見ると解ります。まあ中間一致させればこんな確認も不要なのですが。
f:id:treeapps:20150810234822p:plain

最終的に、以下のようにbegins withで「music/flac/music/[ゲーム] persona」を入力すると前方一致させる事ができます。
f:id:treeapps:20150811001415p:plain

ちなみにFile Locationコンボボックスの右にある条件ですが、日本語が問題なのかフォルダ中の半角スペースが問題なのか、以下しかまともに動作しません。。。

  • contains(指定した単語を含む。中間一致)
  • begins with(指定した単語から始まる。前方一致)
  • ends with(指定した単語で終わる。後方一致)
  • matches(正規表現)


以上で基本的なフォルダの絞り込みができたので、後は更にフィルタをand条件で繋げば、iTunesのように使う事ができます。

TIPS

フォルダを使う場合の構成

New Folderでシリーズをまとめたフォルダを作成し、その下にシリーズ毎のスマートプレイリストを作成するといい感じになります。具体的には以下のような感じです。

PERSONA(フォルダ)
  ┣━ PERSONA3 Burn My Dread(スマートプレイリスト)
  ┣━ PERSONA3 FES OST(スマートプレイリスト)
  ┣━ PERSONA3 OST(スマートプレイリスト)
  ┗━ PERSONA4 OST(スマートプレイリスト)

フォルダを作ると、フォルダ配下の全てのプレイリスト、スマートプレイリスト、フォルダの曲が表示されます。

つまり、「今はPERSONAの全シリーズの曲をランダムに聴きたい!」という時は「PERSONA」フォルダ上で音楽を再生すれば、PERSONA全シリーズが一覧表示・再生する事ができます。
f:id:treeapps:20150812070519p:plain

DISC1, DISC2とディスクが別れてしまう場合

よくありそうなのが、DISC1、DISC2、というようにディスクが別れるケースです。

「DISC1とDISC2を分けてリッピングしてしまった。気分でDISC1のみの曲に限定して聴きたい時もあるし、DISC1と2の曲の両方をランダムに再生したい時がある」という時は以下のようにしましょう。以下は、PERSONA4が「PERSONA4 OST DISC1」「PERSONA4 OST DISC2」フォルダに分けて音楽フォルダを作ってしまった場合のオススメ構成です。

PERSONA(フォルダ)
  ┣━ PERSONA3 Burn My Dread(スマートプレイリスト)
  ┣━ PERSONA3 FES OST(スマートプレイリスト)
  ┣━ PERSONA3 OST(スマートプレイリスト)
  ┗━ PERSONA4 OST(スマートプレイリスト)

ここでPERSONA4 OSTのフィルタ条件ですが、「File Location」「contains(中間一致)」「PERSONA4 OST DISC」とすれば、DISC1もDISC2も抽出対象になり、1つのスマートプレイリストに複数のDISCを収める事ができます。中間一致大活躍ですね。
f:id:treeapps:20150812072824p:plain

フォルダ多段構成時の失敗

フォルダの下にフォルダを作る事ができるのですが、陥りがちな失敗があります。

例えば前述のPERSONA4がDISC1と2に分かれている時、以下のような構成にしてしまうのは失敗です。

PERSONA(フォルダ)
  ┣━ PERSONA3 Burn My Dread(スマートプレイリスト)
  ┣━ PERSONA3 FES OST(スマートプレイリスト)
  ┣━ PERSONA3 OST(スマートプレイリスト)
  ┗━ PERSONA4 OST(フォルダ)
      ┣━ PERSONA4 OST DISC1(スマートプレイリスト)
      ┗━ PERSONA4 OST DISC2(スマートプレイリスト)

この構成では「PERSONA4 OST」フォルダは確かにDISC1と2の両方を表示する事ができます。しかし、最上位にある「PERSONA4」フォルダを選択した時、リストに表示される曲は何が表示されるでしょう?答えは「PERSONA4 OST DISC1とDISC2の曲が2個づつ表示されてしまう」です。
f:id:treeapps:20150812073629p:plain

audirvanaのフォルダは、フォルダ配下にある「全ての」プレイリスト・スマートプレイリスト・フォルダの内容を表示するので、当然「PERSONA4 OST」フォルダの曲と、PERSONA4 OST DISC1とDISC2のスマートプレイリストの曲が両方表示対象となってしまうので、重複して曲が表示されてしまうわけです。

複数のカテゴリが必要な場合

例えば「アニメ」「ゲーム」という大きなくくりが欲しい場合です。以下のようにするのはどうでしょうか。

[ゲーム] (スマートプレイリスト)
[ゲーム] PERSONAシリーズ(スマートプレイリスト)
[ゲーム] PERSONA3 Burn My Dread(スマートプレイリスト)
[ゲーム] PERSONA3 FES OST(スマートプレイリスト)
[ゲーム] PERSONA3 OST(スマートプレイリスト)
[ゲーム] PERSONA4 OST(スマートプレイリスト)
[アニメ] (スマートプレイリスト)
[アニメ] シングル(スマートプレイリスト)
[アニメ] アルバム(スマートプレイリスト)

前提条件として、以下のようにフォルダ名が[ゲーム]または[アニメ]から始まっている必要があります。File Locationはフォルダ名のみで判定されるのでファイル名は綺麗に揃えなくても大丈夫です。
f:id:treeapps:20150812082538p:plain

ちなみに、もしフォルダを作って親・子でアニメ・ゲームの曲を管理しようとすると前述のように曲の重複が発生してしまうので、全てスマートプレイリストのみで構成しています。スマートプレイリストの名前に[ゲーム]とつけたのは、自動的に並びかえが働いてしまい、アニメとゲームのフォルダの順番がバラバラになってしまうためです。

上記の「[ゲーム]」は、全てのゲーム曲を対象にしたプレイリストです。フィルタ条件は、「FIle Location」「contains」「[ゲーム]」です。

上記の「[ゲーム] PERSONAシリーズ」は、全PERSONAシリーズ曲を対象にしたプレイリストです。フィルタ条件は、「FIle Location」「contains」「[ゲーム] PERSONA」です。

もしゲームとアニメの全曲を対象にしたプレイリストを作りたい場合は、フィルタ条件は、以下のように[ゲーム]と[アニメ]をany(or、または)で作成すると、全アニメ・全ゲームを集約したプレイリストが作成できます。
f:id:treeapps:20150812081912p:plain

treeの個人的なおすすめ構成まとめ

フォルダ名は規則的に命名する

例えば以下のようにフォルダ名を綺麗に揃えます。

  • [ゲーム] PERSONA3 Burn My Dread
  • [ゲーム] PERSONA3 FES OST
  • [ゲーム] PERSONA3 OST
  • [ゲーム] PERSONA4 OST

ファイル名は綺麗にしなくても大丈夫です

最終的にフォルダ構成は以下のようにするといいと思います。

[ゲーム] アルバム
  ┗━ [ゲーム] PERSONA
      ┣━ [ゲーム] PERSONA3 Burn My Dread
      ┃ ┗━ [ゲーム] PERSONA3 Burn My Dread 01-Burn My Dread.flac
      ┗━ [ゲーム] PERSONA4 OST
[アニメ] シングル
    ┗━ [アニメ] xxxxx.flac
[アニメ] アルバム
    ┗━ [アニメ] xxxxx
      ┗━ [アニメ] xxxxx.flac
ファイル名リネームソフト

ファイル名まで綺麗に揃えたい場合は、手動でファイル名を揃えるのは大変なので、私はこれを使って機械的に一括でリネームしています。
Sunskysoft - Shupapan|Shupapan

audirvanaのLibraryに登録するのは親フォルダ

今回用意した音楽ファイルはゲームのアルバムのみですが、例えばアニメのシングル・アルバム、ゲームのシングル・アルバムがある時は以下のようにLibraryに登録しましょう。
f:id:treeapps:20150812093742p:plain

audirvanaは定期的にフォルダをsync、所謂同期を行っており、Finderでフォルダに曲ファイルを追加すると、自動的にaudirvanaのLibraryに曲が追加されます。なので、極力親フォルダのみをLibraryに登録しておくと、子フォルダにアルバムを追加したり、フォルダの位置を変更しても、自動的にaudirvanaがそれを検知してリロードしてくれます。

スマートプレイリストのみで構成する

フォルダ、プレイリストは使いません。

フォルダを使うと、前述のようにフォルダの多段構成時に曲が重複してしまって嫌ですね。

プレイリストも使いません。プレイリストは基本的に手動管理になってしまうため、新しい曲を追加したい時に手動でプレイリストにドラッグ&ドロップしなくてはならないからです。スマートプレイリストであれば、Finderでフォルダに新しい曲を追加すれば、前述のようにaudirvanaが自動的にスキャンしてLibraryに曲が追加され、その曲はスマートプレイリストのフィルタ条件によって自動的に対象のスマートプレイリストに表示されるので、ほぼ自動化する事ができます。

File Locationとcontainsを駆使する

フォルダ名が綺麗に[ゲーム]等と揃っていれば、File Locationとcontainsで綺麗にスマートプレイリストを作る事ができます。

スマートプレイリストで中間一致構成にしておくと、Finder上でフォルダの場所を変えた時に、スマートプレイリストのフィルタ条件を変更しなくてよくなります。中間一致なのでフォルダの場所は関係無く、フォルダ名のみ関係ある状態になるため、フォルダの場所変更等に強くなります。

雑感

できればaudirvanaはNFDではなくNFCで扱うようにして欲しいですね。。。正直NFDのあの濁点、キモいんですよ。

ともあれこれでaudirvanaに標準搭載されている残念過ぎるプレイリストも一応使う事ができるので、多少ストレスから開放されると思います。多少・・