MacとWindowsのiTunes共有


やりたかったのはWindowsでiTunesを利用していたのをMacでも同じようにしたいということ。
楽曲とプレイリストの移行だけおこなって、ライブラリの共有まではしない。楽曲本体はWindowsのファイルサーバ側に残しておいてMacからは共有フォルダ機能でネットワーク越しにアクセスする。

今までは
windows(iTunes) → windows(ファイルサーバ、楽曲はここにある)
となっていたのを
windows(iTunes) → windows(ファイルサーバ、楽曲はここにある) ← Mac(iTunes)
とMacから外部の共有フォルダにある楽曲を再生出来るようにする。

1.MacでiTunesディレクトリの作成

optionキーを押しながらiTunesを起動するとライブラリの選択画面が出る。ここでwindowsファイルサーバにライブラリを作成した。デフォルトではiTunesディレクトリになっている。
スクリーンショット 2013-03-20 13.49.13
このとき環境設定で
詳細->ライブラリへの追加時にファイルを”iTunes Media”フォルダにコピーする
のチェックを外しておく。
スクリーンショット 2013-03-20 14.19.29

2.iTunes/iTunes Mediaディレクトリのコピー

楽曲の大半はwindowsファイルサーバにあるのだが、購入した楽曲とかはwindows(iTunes)のローカルのiTunes/iTunes Mediaディレクトリに保存されている。それを1で作成したライブラリのiTunes/iTunes Mediaディレクトリへコピーしておく。

3.windowsのiTunesのプレイリストをエクスポート

まず全曲のプレイリストをメニューから(ファイル->ライブラリ->プレイリストを書き出し…)
を選択して、XML形式で書き出して保存する。ファイル名はデフォルトでは”ミュージック.xml”となる。個別のプレイリストも同様にXMLで書き出して保存する。

ここで書き出されたXML内のファイルのパス(file://で始まる文字列)はwindows形式なのでMac側で認識できるパスへ修正する。修正する点はiTunes/iTunes Mediaディレクトリを1で作成したライブラリのパスへ置換するのと各楽曲がサーバ上にあるのでそれにあわせて修正をおこなう。

例)
windowsだとリモートサーバ名が//付きでファイルパスに入っている。
file://localhost//server-name/archive/MP3/music.mp3
Macだと共有フォルダはローカルにマウントされる形になるので以下のようになる。
file://localhost/Volumes/archive/MP3/music.mp3

なので
file://localhost//server-name

file://localhost/Volumes
に置換すればよい。

4.MacのiTunesへプレイリストをインポート

3で作成した”ミュージック.xml”のプレイリストをメニューから(ファイル->ライブラリ->プレイリストを読み込み…)で選択して読み込ませる。
曲数が多いとかなり時間(数時間単位)がかかる。終わったら残りの個別のプレイリストを読み込ませて終了。

5.(おまけ)Macログイン時に自動的に共有サーバをマウントする

iTunesを起動時に共有フォルダがマウントされていないといけない。
Finderで開けば接続されるがいちいちやるのは面倒なのでログイン時にマウントするようにする。

Automaterを起動しワークフローを選択する。
スクリーンショット 2013-03-20 13.36.29
アクションで”ファイルとフォルダ”を選択して、右側へ
“指定されたサーバを取得”
“サーバへ接続”
をドラッグする。
スクリーンショット 2013-03-20 13.35.50
サーバはwindowsサーバに接続するのでsmb://から始まる文字列になる。
smb://user@server/共有フォルダ

右上の実行ボタンで動作を確認しておき、application形式で保存する。
保存したappファイルを
システム環境設定->ユーザとグループ->ログイン項目
を開き+ボタンで先ほど作成したappファイルを指定する。
後はMacを再起動してみて自動的にマウントされているか確認しておく。