iTunes Exportのカスタマイズに成功

 前エントリで書いていた、「iTunesライブラリからm3uへ変換ツールで、パスのデリミタをバックスラッシュではなくスラッシュで書き出せるモノ」ですが、C#のソースが公開されているiTunes Exportを改造して実現できました。はじめてC#使ったけど、まぁこれくらいなら見よう見まねでなんとかなるもんですw。

 将来のバージョンに同じ変更をする時のために覚え書きしておきます。

 Export -> M3UPlaylistWriter.csの、 赤字部分を書き加えるだけです。 バックスラッシュが2つで間違いありません(エスケープのため)。

 public override void WriteTrack( string trackName, Track track )
        {
            writer.WriteLine( trackName.Replace(“\\”,”/”));
        }

 当然、m3u書き出しを指定した時のみ有効です。

 ついでに、このツールは設定を一切保存してくれないので、フォームなどもいじって自分用にカスタマイズ。

  • 書き出しパスを自分のマシン用にデフォルト設定
  • 「Include Unprotexted AAC Files (m4a)」チェックボックスをデフォルトでオンに
  • プレイリスト選択画面で「Export All Playlists」をデフォルトでオフに

 上の2つはフォームをいじるだけでOKでしたが、3つ目はコードをいじる必要がありました。

 iTunesExportForm.csの、showPanel()関数内にswitch文があり、その中の下記の部分を追記しました(コードデザイナー。

case Panels.SelectPlaylists:
                    selectPlaylistPanel.Visible = true;
                    exportAllPlaylistsCheckbox.Checked = false;
                    nextButon.Visible = true;
                    backButton.Enabled = true;
                    break;

 これでプレイリスト選択以外は「次へ」の連打で作業が完了できるようになりました。(゜д゜)ウマー!!

 いやぁ、オープンソースって本当に素晴らしいですね(水野晴朗調で)。

 このツールはコマンドライン版もあるので、頑張ればバッチ処理もできそうです。

P.S.

 再配布は条件を満たせばOKっぽいですが、まぁニッチすぎるので、リクエストがあった時に考えます。

iTunes Music Library.xmlからm3uに変換するツールを物色

 VGF-WA1を枕元に設置。ベッド枕側の棚は元々かなり奥行きがなくてコンポにせよスピーカーにせよ選択肢が狭められていたんですが、VGF-WA1はギリギリ載ってくれました。

 さて、早速寝る前に再生開始してみたんですが、途中で止まってしまう曲がある。条件は不明ですが、m3uファイルのパスのデリミタを\(バックスラッシュ)から/(スラッシュ)に書き換えたら解決しました。TVersityを使う場合でもこれは必須っぽいです。

 そうすると、\でしか書き出せない(というかiTunes Music Library内のパスをそのまま書き出すだけの)iTunes Exportだと毎回エディタなどで置換するのがめんどくさい。

 きっとiTunesライブラリからm3uで書き出すツールなんて世界中に色々ありそうなので物色。

iTuxxxListConverter

 XMLファイルを参照するのではなく、iTunesのスクリプティングAPI経由でデータを取得するようで、いちいちiTunesが起動する上に、取得に時間がかかりすぎるので断念。

以上。

 あれ?意外に見つからないな…

 iTunes Exportは.NETのソースも公開してるっぽいけど、中身C#だなぁ。\->/の全置換くらいならなんとかなるかなぁ。 (追記:←成功しました)。

 いっそ、VBで自作するのも手かも。起動したら全自動であらかじめ指定したプレイリストを書き出すようにしてスタートアップにでも入れておけば、iTunes側の更新を自動的に反映させられる、みたいな。

VGF-WA1 + TVersity + VPNで帰省時もiTunesライブラリ聴けそう

 元エントリをさきほど上げたばかりなので、追記でも良かったんですが、いい加減長いのと、ややマニアックな内容なので別エントリにしときます。

>なんとかVPN経由させて実家からも使えたら、庭で使ってみたいなと。実家マシンでTVersityを起動
>して、プレイリスト内のパスでネットワーク参照すればイケないかなぁ。

と書いたんですが、とりあえずUNC表記は認識しました。つまり、TVersityが走ってるマシンからみてネットワークフォルダになる場所(TeraStationで検証)であってもちゃんと参照できます。m3uプレイリスト内のパスの処理ってDLNAサーバーが受け持つんですね(SMBを解釈しないVGF-WA1が直接参照できるはずがない)。

 と、いうことはですよ。実家私室にあるマシンでPacketiXなりPPTPなりで自宅のiTunesフォルダが見られる状態になっていれば、プレイリストをコピーして中身をUNC表記に書き換えておけば、アクセスできるんじゃないでしょうか?帯域さえ充分ならイケそうです。次の帰省が楽しみになってきました!

 

 こうなると余計に無線LAN設定が1セットしか保持できないのが残念ですね。つーか、もう一台実家用に欲しいって話ですな。

iTunes Music Library.xmlを編集したい時の覚え書き

 前エントリのからみでiTunesライブラリの場所を移動しようとしてハマってしまいました。iTunes Music Library.xml内のパスをエディタで一括置換すれば解決できそうな問題だったんですが、ちょっとトリッキーだったので覚え書きしておきます。

 まず、iTunesのライブラリは、iTunes Library.itlというバイナリファイルが主です。これを元にサードパーティツールが連携しやすいようにiTunes Music Library.xmlが生成されています。なので、xmlファイルを書き換えてもiTunesを再起動すると元に戻ってしまいます。

 そこで、まずxmlを他のフォルダにバックアップした上で、.itlファイルを削除します。でiTunesを起動するとライブラリが空の状態で起動するので、ファイル->インポートから編集した.xmlファイルを取り込んでやればOKです。レートやスマートプレイリストも保持されてます。ただこの時点で、いくつか見つからないファイルがあってインポートできなかった旨が表示されるんですが、具体的にどのファイルが、いくつダメだったのかは教えてくれないので、何千曲もあるうちのどこかが歯抜けになってるかも知れない気持ち悪さがあります。

iTunes派なσ(^^)がWi-Fiオーディオ VGF-WA1を活用してみる


SONY VGF-WA1[ | ]

  一昨日価格改定されて\19,800になったVGF-WA1を購入してみました。

■寝室の音楽環境を改善したい

 事の発端は、寝室で寝る時にiTunes/iPodの音楽を聴くための環境を改善したいと思ったことです。今はiPodのドックにアクティブスピーカーをつないで使っているのですが、

  • iPodのスリープ設定がメニュー階層の深いところにあって面倒
  • さぁ、寝るかと思って布団に入ってからiPodが枕元にないことに気付く
  • スピーカーの電源は切れない
  • もうちょっと音質も改善したい

といった不満、問題点がありました。音質だけならミニコンポという手もあるんですが、CDやらMDやらチューナーやら使わないメカが載ってるのは甚だ無駄な気がするし、枕元にはあまり奥行き方向にスペースもないので却下。iPod用のドックスピーカーも物色してみました。時計付きでSLEEPボタンがついてるものなんかは、操作性は抜群っぽい。でもどれも試聴する限りでは音質がイマイチなのと、2番目のiPod置き忘れ問題に対応できない。

 そんな折、VGF-WA1値下げの方が飛び込んできた訳です。

■VGA-WA1概要

 ざっくり言うと、無線LANでパソコン上の音楽ファイルやインターネットラジオを再生できるプレーヤーです。内蔵メモリやバッテリも搭載していて、スタンドアローンでも鳴らすことが出来ます。無線LAN環境のない人向けにUSB無線LANアダプタも同梱(無駄なので別売りにして欲しかったですが…)

 すでに発売から半年ほどたってますが、正直あんまり視野に入ってませんでした。VAIOやNetwork WALKMANに特化した製品だと漠然と思ってたんです。ところが、値下げをきっかけに調べてみるとなんとDLNA実装だし、iTunesでエンコードしたAACの再生にも対応していることが発覚。しかもサーバーソフトとしてVAIO Media Server(以下VMS)が添付。VMSはDivXなどのトラコン機能もついたDLNAサーバー実装ですが、VAIOを買わないと手に入らないソフトなので悔しく思っていました。それが手に入るというのも個人的にはオイシイぞと。

 当然、スリープ/オンタイマーは搭載。2chの機種スレによると、スリープとオンとで音量や再生内容を独立に設定できるとのこと。音質的にもΔΣアンプでヨサゲ。

 さっそく買いに走りました。

■ハードは期待以上、ソフトは期待ハズレ

・ネットワーク接続設定

 「おまかせ設定CD-ROM」なるものがついてましたが、1度きりの設定にこういうツールを入れたくないので、とりあえず無しでチャレンジ。一応、本体からESS-IDやWEPキーなどを入力すれば大丈夫でした。たださすがに文字入力は面倒なのと、WEPキーが16進数のみの対応でした(どうせ英数字だし、桁数が増えるだけでかえって面倒な気が…)。

 また、最初ウチでつながらなかったんですが、これはステルス設定のアクセスポイントに非対応だったためらしく、最新のファームウェアに更新することで解決しました。

 ニッチなのは承知の上ですが、できればネットワーク設定は複数保持できると良かったですね。帰省する時に持って帰ったりして使いたかったかも。WEPが16進数入力なので、再設定は激しく憂鬱です。

・音質

 レビューではイケてないとの声が多かったんですが、個人的には充分でした。ΔΣアンプということでSHARPの1bitアンプ的な高音のクリアな音で好みです。エフェクトもいかにもライトユーザ受けしそうな感じで、商品コンセプト的には良いんじゃないでしょうか。いざとなればRCAと光の外部出力もあるのでこだわる人はそっち経由で聴けばよいかと(そういう人向けにコア部分のみの製品があっても良いとは思います)。

 VPTワイドステレオなる仮想的にステレオ感を広げるエフェクトがいい感じ。ただ寝るにはちょっとキラキラしすぎかも知れません(^^;)。6バンドイコライザもあるので追い込んでみたいと思います(ただし排他っぽい)。

・VAIO Media Integrated Serverが全く役に立たなかった件

 動画トラコンサーバーとしての期待はあるものの、できるだけ無駄なソフトは導入したくない。とは言え、マニュアルによるとAAC配信ができるのはVMSのみ、とのことなので早速導入(どうやらVMSがLPCMにトラコンして配信している模様)。ATRAC3エンコードとかもしないのに、VMSを入れるにはSonicStageも必須とのことで導入。なんだかなぁ。

 問題点が2つ。

 1つ目はネットワークフォルダを登録できない点。ドライブレターの割り当てをしてもダメ。もうこれだけで動画トラコン用途も消え失せたも同然orz。

 2つ目は、あくまでiTunesで作ったAACファイルを認識できるってだけで、プレイリストなどは対象外。アーティスト、アルバム名といったメタデータは認識できるので、普通の人はこれで良いのかも知れないですが、σ(^^)はプレイリスト主体の管理をしているし、寝る時用の静かな曲ばかり集めたプレイリストなども使えないのでは意味がない。

 マニュアルには書いてなかったですが、個人のブログでm3u形式のプレイリストを認識できるということを知り、早速iTunes Exportなるツールで主要なプレイリストを変換してみました。しかし認識されない。m3u形式は単に1行1ファイルでパスを記載したテキストファイル。

  • パス区切りをバックスラッシュからスラッシュへ
  • ファイル名を半角英数字に
  • プレイリストからの相対パスに
  • ドライブのルートに置いてみる

など色々したけどダメ。唯一プレイリストと同階層に音楽ファイルを置いた場合のみ(例えm3uにパスが記載されていても無視して)認識する。いちいちプレイリスト毎に音楽ファイルを重複して保持するのが現実的ではないです。

 これでは、iTunes環境主体の我が家にとっては全くの役立たず製品に…

・TVersityで解決!

 VMSがAACをトラコン配信しているとすると他のDLNA実装は絶望的かと思ったんですが、TVersityでアッサリ使えました。>m3uプレイリスト

 m3uプレイリストを集めたフォルダを作ってTVersityに登録。異なる絶対パスにあるファイルもOK。もちろん2バイト文字のファイル名もOK。どのみちアーティストやアルバム名での検索が機能する数ではないので、お気に入りのプレイリストだけm3uにしておけば充分そうです。iTunes側での変更が自動的に反映されないという問題はありますが、まぁ実用上は問題ないと思われます。

・その他のインターフェイス実装

 電源を入れると最後に再生していた曲の頭から鳴り出すのはGood。毎晩、電源入れれば就寝用プレイリストが勝手にかかるので、あとはスリープタイマー設定だけ。スリープ設定は残念ながらダイレクトボタンはないですが、まぁ許せる範囲です。

 残念なのは電源以外の操作ボタンはタッチ式で凹凸が全くない点。就寝時、枕元の本機を手探りで操作、とか絶対無理ですね。まぁリモコン使えってことでしょうか。

■3rdパーティ製品を組み合わせることで、とりあえず満足

 Sonic Stage + ATRAC3環境の人にはまた違うのでしょうけど、iTunesメインの我が家では残念ながら標準添付ツールだけでは使い物になりませんでした。ただハードとしてはDLNAという標準規格を採用していてくれたおかげで既存ツールを組み合わせてほぼ満足の行く環境を構築することができました。

 まぁ、ウチみたいに24時間稼働のWindowsマシンがある人以外は、DLNAサーバー搭載のNASが現実的ではないかと思います。CPUパワーの必要な動画ならまだしも、再生負担の軽い音楽ファイルごときにわざわざマシンを別途立ち上げるのは…という気がします。

 なんとかVPN経由させて実家からも使えたら、庭で使ってみたいなと。実家マシンでTVersityを起動して、プレイリスト内のパスでネットワーク参照すればイケないかなぁ。 (←追記:LANではUNC表記でイケました。これは期待!)

 せっかくバッテリ内蔵してるので、入浴時に(防水ではないので洗面所で)鳴らすなんてのも面白いかも知れません。

 当初発売時の価格だとやや割高感を感じてたと思いましたが、\19,800ならちょっとマシなiPod用スピーカー位なのでお得感がありますね。