iTunes管理の曲情報をwalkmanに同期/転送するツール
iTunesで管理している曲をwalkmanで聴くために、これまでMusicCenterForPCというソフトを利用しようとしてきました。
残念ながらこのMusicCenterForPCはバグも多く、転送失敗や楽曲重複、プレイリストがうまく取り込めないことがあるといった問題があります。
なによりiTunes上で変更があった場合反映させるのが大変です。
そこでiTunes->walkman転送専用ソフト(i2wSD)を自作しました。
i2wSDは最初にiTunesのライブラリ情報ファイルを読み込み情報を解析します。
ライブラリ情報はデフォルトでは「ミュージック/iTunes/iTunes Music Library.xml」が用いられます。
(「ファイル」⇒「ライブラリ」⇒「ライブラリのエクスポート」で生成したファイルでも構いません)
その情報から楽曲ファイルの保存フォルダを特定し、そのフォルダ全体、または楽曲ファイルごとにWalkman用のSDにデータを転送します。
プレイリストもこのライブラリ情報から取得し、walkman用に生成します。
SD上にファイルが既存の場合、更新時刻とサイズのチェックを行い、必要な場合のみ上書きを行います。
動かした結果の表示情報を示します。walkmanのSDに楽曲ファイルが転送され、問題なく再生できました。
-- 情報 --
iTunes MusicFolder = D:/iTunes/Music/
ライブラリ情報中の楽曲数 = 15467
見つからなかったファイル数 = 5
重複するファイル数 = 13
重複するため転送しないファイル数 = 13
有効な楽曲ファイル数 = 15449
.m4a AACオーディオファイル 44100hz/128bit : 14592
.m4a AACオーディオファイル 44100hz/256bit : 393
.m4a AACオーディオファイル 44100hz/320bit : 431
.m4a Appleロスレス・オーディオファイル 44100hz : 31
.m4a Appleロスレス・オーディオファイル 96000hz : 2
有効楽曲ファイルの総サイズ = 76198998280bytes (70.97GB)
有効楽曲ファイルの総演奏時間 = 50days 9:12:14
MusicFilder直下のフォルダ数 = 658
Playlist数 = 21
Playlistに入れられた楽曲数 = 2980
ライブラリ読み込み所要時間 0:05.002
======= 作業開始 2018/10/22 14:56:29
転送 D:/iTunes/Music/ -> G:/MUSIC
*** 楽曲フォルダ転送 開始時刻 2018/10/22 14:56:29
削除されたSD上の楽曲ファイル数 = 0
削除されたSD上のプレイリスト数 = 0
重複回避のため削除したSDファイル数 = 0
既存のためスキップした楽曲ファイル数 = 0
重複回避のためスキップしたファイル数 = 13
転送した楽曲ファイル数 = 15461
*** 楽曲フォルダ転送 完了 所要時間 = 2:52:20.967
*** プレイリスト(m3u8)生成 開示時刻 2018/10/22 17:48:50
生成したプレイリストの数 = 21
*** プレイリスト生成完了 所要時間 = 0:05.859
======= 作業完了 2018/10/22 17:48:56 所要時間 2:52:26.857
フォルダを単純に転送するだけではiTunse上管理からもれたゴミファイルも転送されるかも知れないと心配したのですが、
管理している楽曲ファイル数(15452)と転送した楽曲ファイル数+重複数(15439+13=15452)は一致しました。
iTunesライブラリ情報上の矛盾について
ライブラリ情報上にありながら、その実体がないものがあります。これはiTunesの何らかの障害のためだと思われます。
ファイルの位置が違うもの、重複のあるもの
ライブラリ情報(.xml)の<Location>タグ中にファイル名が書かれています。
このシステムでは昔"O:/iTunes/iTunes Music/"に保存していましたが、途中で"D:/iTunes/Music/"に変更しました。
これがうまく反映されていないものが7個存在し、そのうち2個は保存フォルダ名が異なるだけのものが見つかりました。
-- エラー/警告 情報 --
重複しています Mozart ピアノ協奏曲 5,6番 ;Brendel/Marriner/Academy of St.Martin Piano Concerto No.5 : I. Allegro
D:/iTunes/Music/Brendel_Marriner_Academy of St.Martin/ピアノ協奏曲 5,6番 _Brendel_Marriner_Academy of/01 Piano Concerto No.5 _ I. Allegro.m4a
(無視) D:/iTunes/Music/Brendel_Marriner_Academy of St.Martin_/ピアノ協奏曲 5,6番 _Brendel_Marriner_Academy of/01 Piano Concerto No.5 _ I. Allegro_.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. Piano Concerto No. 1, K. 37 I:Allegro
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/01 Piano Concerto No. 1, K. 37 I_All.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/01 Piano Concerto No. 1, K. 37 I_All.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No1, II:Andante
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/02 No1, II_Andante_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/02 No1, II_Andante.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No1, III:Allegro
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/03 No1, III_Allegro_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/03 No1, III_Allegro.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. Piano Concerto No. 2, K. 39 I:Allegro Spiritoso
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/04 Piano Concerto No. 2, K. 39 I_All.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/04 Piano Concerto No. 2, K. 39 I_All.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No2, II:Andante
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/05 No2, II_Andante_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/05 No2, II_Andante.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No2, III:Allegro molto
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/06 No2, III_Allegro molto_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/06 No2, III_Allegro molto.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. Piano Concerto No. 3, K. 40 I:Maestoso - Allegro
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/07 Piano Concerto No. 3, K. 40 I_Mae.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/07 Piano Concerto No. 3, K. 40 I_Mae.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No3, II:Andante
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/08 No3, II_Andante_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/08 No3, II_Andante.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No3, III:Presto
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/09 No3, III_Presto_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/09 No3, III_Presto.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. Piano Concerto No. 4, K. 41 I:Allegro
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/10 Piano Concerto No. 4, K. 41 I_All.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/10 Piano Concerto No. 4, K. 41 I_All.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No4, II:Andante
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/11 No4, II_Andante_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/11 No4, II_Andante.m4a
重複しています Mozart ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. No4, III:Allegro molto
D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc._/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/12 No4, III_Allegro molto_.m4a
(無視) D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/12 No4, III_Allegro molto.m4a
NOT EXISTS O:/iTunes/iTunes Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/26 舞台神聖祭典劇_パルジファル_第1幕への前奏曲 _Parsifal.m4a
but exists D:/iTunes/Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/26 舞台神聖祭典劇_パルジファル_第1幕への前奏曲 _Parsifal.m4a
NOT EXISTS O:/iTunes/iTunes Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/26 舞台神聖祭典劇_パルジファル_第1幕への前奏曲 _Parsifal.m4a
but exists D:/iTunes/Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/26 舞台神聖祭典劇_パルジファル_第1幕への前奏曲 _Parsifal.m4a
NOT EXISTS O:/iTunes/iTunes Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/27 舞台神聖祭典劇_パルジファル_聖金曜日の音楽 _Parsifal_.m4a
but exists D:/iTunes/Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/27 舞台神聖祭典劇_パルジファル_聖金曜日の音楽 _Parsifal_.m4a
NOT EXISTS O:/iTunes/iTunes Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/27 舞台神聖祭典劇_パルジファル_聖金曜日の音楽 _Parsifal_.m4a
but exists D:/iTunes/Music/オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団/ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他_ヨッフム、ロンドン、バ/27 舞台神聖祭典劇_パルジファル_聖金曜日の音楽 _Parsifal_.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/01 交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/01 交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a
NOT EXISTS D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/01 交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/01 交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/01 交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/02 交響曲第5番ハ短調 第2楽章 アンダンテ・コン・モート.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/02 交響曲第5番ハ短調 第2楽章 アンダンテ・コン・モート.m4a
NOT EXISTS D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/02 交響曲第5番ハ短調 第2楽章 アンダンテ・コン・モート.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/02 交響曲第5番ハ短調 第2楽章 アンダンテ・コン・モート.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/02 交響曲第5番ハ短調 第2楽章 アンダンテ・コン・モート.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/05 交響曲第6番ヘ長調 第1楽章 アレグロ・マ・ノン・トロッポ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/05 交響曲第6番ヘ長調 第1楽章 アレグロ・マ・ノン・トロッポ.m4a
NOT EXISTS D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/05 交響曲第6番ヘ長調 第1楽章 アレグロ・マ・ノン・トロッポ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/05 交響曲第6番ヘ長調 第1楽章 アレグロ・マ・ノン・トロッポ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/05 交響曲第6番ヘ長調 第1楽章 アレグロ・マ・ノン・トロッポ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/06 交響曲第6番ヘ長調 第2楽章 アンダンテ・モルト・モソ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/06 交響曲第6番ヘ長調 第2楽章 アンダンテ・モルト・モソ.m4a
NOT EXISTS D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/06 交響曲第6番ヘ長調 第2楽章 アンダンテ・モルト・モソ.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/06 交響曲第6番ヘ長調 第2楽章 アンダンテ・モルト・モソ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/06 交響曲第6番ヘ長調 第2楽章 アンダンテ・モルト・モソ.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/09 交響曲第6番ヘ長調 第5楽章 アレグレット.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/09 交響曲第6番ヘ長調 第5楽章 アレグレット.m4a
NOT EXISTS D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/09 交響曲第6番ヘ長調 第5楽章 アレグレット.m4a
but exists D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/09 交響曲第6番ヘ長調 第5楽章 アレグレット.m4a
NOT EXISTS O:/iTunes/iTunes Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 第5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/09 交響曲第6番ヘ長調 第5楽章 アレグレット.m4a
重複を防ぐためスキップ D:/iTunes/Music/Brendel_Marriner_Academy of St.Martin_/ピアノ協奏曲 5,6番 _Brendel_Marriner_Academy of/01 Piano Concerto No.5 _ I. Allegro_.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/01 Piano Concerto No. 1, K. 37 I_All.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/02 No1, II_Andante.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/03 No1, III_Allegro.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/04 Piano Concerto No. 2, K. 39 I_All.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/05 No2, II_Andante.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/06 No2, III_Allegro molto.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/07 Piano Concerto No. 3, K. 40 I_Mae.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/08 No3, II_Andante.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/09 No3, III_Presto.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/10 Piano Concerto No. 4, K. 41 I_All.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/11 No4, II_Andante.m4a
重複を防ぐためスキップ D:/iTunes/Music/Perahia(Pf,Cond)_English Chamber Orc_/ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis/12 No4, III_Allegro molto.m4a
見つからなかったファイルも微妙に異なる名称で存在していました。
D:/iTunes/Music/スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲 5番,6番_スクロヴァチェフスキー/ザールブリュッケン放送交響楽団/交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ.m4a¥
i2wSD画面の「フォルダを単純コピーする」指定し、この情報は使用せず、フォルダ上のファイルを単純にコピーしました。
iTunesのライブラリ情報
iTunesのライブラリ情報(エクスポートしたファイル)を見ると
同じ楽曲が微妙に異なる情報で2重に登録されていました。
iTunes画面で見ると一つしか出てきません。iTunesの重複チェックにもかかりません。
======== 同じタイトルの情報が2つある
ファイルも2つある
ただし、iTunesの画面では一つ
<dict>
<key>Track ID</key><integer>13328</integer>
<key>Name</key><string>Piano Concerto No. 1, K. 37 I:Allegro</string>
<key>Artist</key><string>Mozart</string>
<key>Album Artist</key><string>Perahia(Pf,Cond)/English Chamber Orc.</string>
<key>Composer</key><string>Mozart, Wolfgang Amadeus [墺] 1756~91</string>
<key>Album</key><string>ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc.</string>
<key>Genre</key><string>M-</string>
<key>Kind</key><string>AAC オーディオファイル</string>
<key>Size</key><integer>5228541</integer>
<key>Total Time</key><integer>322895</integer>
<key>Track Number</key><integer>1</integer>
<key>Track Count</key><integer>12</integer>
<key>Year</key><integer>1984</integer>
<key>Date Modified</key><date>2008-09-26T03:51:53Z</date>
<key>Date Added</key><date>2003-12-25T05:24:14Z</date>
<key>Bit Rate</key><integer>128</integer>
<key>Sample Rate</key><integer>44100</integer>
<key>Play Count</key><integer>2</integer>
<key>Play Date</key><integer>3240662852</integer>
<key>Play Date UTC</key><date>2006-09-09T07:07:32Z</date>
<key>Skip Count</key><integer>5</integer>
<key>Skip Date</key><date>2015-04-30T00:58:06Z</date>
<key>Normalization</key><integer>141</integer>
<key>Persistent ID</key><string>F140F77753086668</string>
<key>Track Type</key><string>File</string>
<key>Location</key><string>file://localhost/D:/iTunes/Music/Perahia(Pf,Cond)_English%20Chamber%20Orc_/%E3%83%94%E3%82%A2%E3%83%8E%E5%8D%94%E5%A5%8F%E6%9B%B2%E3%80%80%EF%BC%91%EF%BC%8C%EF%BC%92%EF%BC%8C%EF%BC%93%EF%BC%8C%EF%BC%94%E7%95%AA%20_Perahia(Pf,Cond)_Englis/01%20Piano%20Concerto%20No.%201,%20K.%2037%20I_All.m4a</string>
<key>File Folder Count</key><integer>5</integer>
<key>Library Folder Count</key><integer>1</integer>
</dict>
----
<dict>
<key>Track ID</key><integer>32634</integer>
<key>Name</key><string>Piano Concerto No. 1, K. 37 I:Allegro </string>
<key>Artist</key><string>Mozart </string>
<key>Album Artist</key><string>Perahia(Pf,Cond)/English Chamber Orc. </string>
<key>Composer</key><string>Mozart, Wolfgang Amadeus [墺] 1756~91 </string>
<key>Album</key><string>ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc. </string>
<key>Genre</key><string>M- </string>
<key>Kind</key><string>AACオーディオファイル</string>
<key>Size</key><integer>5437505</integer>
<key>Total Time</key><integer>322895</integer>
<key>Track Number</key><integer>1</integer>
<key>Track Count</key><integer>12</integer>
<key>Year</key><integer>1984</integer>
<key>Date Modified</key><date>2008-09-26T03:51:54Z</date>
<key>Date Added</key><date>2018-10-15T10:53:47Z</date>
<key>Bit Rate</key><integer>128</integer>
<key>Sample Rate</key><integer>44100</integer>
<key>Release Date</key><date>1984-01-01T12:00:00Z</date>
<key>Normalization</key><integer>141</integer>
<key>Sort Album</key><string>ピアノキョウソウキョク 1,2,3,4バン ;Perahia(Pf,Cond)/English Chamber Orc. </string>
<key>Sort Album Artist</key><string>Perahia(Pf,Cond)/English Chamber Orc. </string>
<key>Sort Artist</key><string>Mozart </string>
<key>Sort Name</key><string>Piano Concerto No. 1, K. 37 I:Allegro </string>
<key>Persistent ID</key><string>F368F8CF56FAE726</string>
<key>Track Type</key><string>File</string>
<key>Location</key><string>file://localhost/D:/iTunes/Music/Perahia(Pf,Cond)_English%20Chamber%20Orc._/%E3%83%94%E3%82%A2%E3%83%8E%E5%8D%94%E5%A5%8F%E6%9B%B2%E3%80%80%EF%BC%91%EF%BC%8C%EF%BC%92%EF%BC%8C%EF%BC%93%EF%BC%8C%EF%BC%94%E7%95%AA%20_Perahia(Pf,Cond)_Englis/01%20Piano%20Concerto%20No.%201,%20K.%2037%20I_All.m4a</string>
<key>File Folder Count</key><integer>5</integer>
<key>Library Folder Count</key><integer>1</integer>
</dict>
比べると、片方は文字列最後の空白が取り払われているのが分かります。ファイルも空白の有る無しの2種が存在していました。
他にも重複はありましたが、これはiTunesの重複チェックで検出し削除できました。
file://localhost/D:/iTunes/Music/アンサンブル SDR/クラシカル ビートルズ/01 Girl(ブリテン_シンプル・シンフォニー).m4a
---------
file://localhost/D:/iTunes/Music/アンサンブル SDR_/クラシカル ビートルズ_/01 Girl(ブリテン_シンプル・シンフォニー)_.m4a
iTunes上の楽曲修正と再転送
特に障害があるわけではないのですが、若干気持ち悪いiTunse上のデータ矛盾を無くすため、
重複やリンク情報(.xml上のLocation)の異常のあった5つのアルバムを置き換えました。
- A161 Mozart:ピアノ協奏曲 1,2,3,4番 ;Perahia(Pf,Cond)/English Chamber Orc.
- A159 Mozart:ピアノ協奏曲 5,6番 ;Brendel/Marriner/Academy of St.Martin
- E072 Beethoven:交響曲 5番,6番;スクロヴァチェフスキー/ザールブリュッケン放送交響楽団
- A207 Brahms:ブラームス:ハイドン変奏曲/エルガー:エニグマ変奏曲 他;ヨッフム、ロンドン、バイエルン
- C021 ビートルズ:クラシカル ビートルズ ;アンサンブル SDR
先頭の4文字は管理用にふってあるもので、楽曲データではありません。
次の結果が得られます
-- 情報 --
iTunes MusicFolder = D:/iTunes/Music/
ライブラリ情報中の楽曲数 = 15454
見つからなかったファイル数 = 0
重複するファイル数 = 0
重複するため転送しないファイル数 = 0
有効な楽曲ファイル数 = 15454
.m4a AACオーディオファイル 44100hz/128bit : 14533
.m4a AACオーディオファイル 44100hz/256bit : 393
.m4a AACオーディオファイル 44100hz/320bit : 431
.m4a Appleロスレス・オーディオファイル 44100hz : 95
.m4a Appleロスレス・オーディオファイル 96000hz : 2
有効楽曲ファイルの総サイズ = 77228069893bytes (71.92GB)
有効楽曲ファイルの総演奏時間 = 50days 10:4:35
MusicFilder直下のフォルダ数 = 657
Playlist数 = 21
Playlistに入れられた楽曲数 = 2936
ライブラリ読み込み所要時間 0:05.616
======= 作業開始 2018/10/22 23:44:17
転送 D:/iTunes/Music/ -> G:/MUSIC
*** 楽曲フォルダ転送 開始時刻 2018/10/22 23:44:17
削除されたSD上の楽曲ファイル数 = 8
削除されたSD上のプレイリスト数 = 21
重複回避のため削除したSDファイル数 = 0
既存のためスキップした楽曲ファイル数 = 15397
重複回避のためスキップしたファイル数 = 0
転送した楽曲ファイル数 = 64
*** 楽曲フォルダ転送 完了 所要時間 = 2:52.825
*** プレイリスト(m3u8)生成 開示時刻 2018/10/22 23:47:12
生成したプレイリストの数 = 21
*** プレイリスト生成完了 所要時間 = 0:05.589
======= 作業完了 2018/10/22 23:47:18 所要時間 3:01.040
置き換えは全てAppleロスレスにしましたので、ファイルサイズが大きくなっています。
変更ファイルのみの転送ですので、所要時間は大幅に短くなっています(3時間->3分)
アルバムアーティスト名の変更などに伴いSDカード上にある古い名前のフォルダは削除されました。
-- エラー/警告 情報 --
delete file/folder on sd "Brendel_Marriner_Academy of St.Martin_"
delete file/folder on sd "Perahia(Pf,Cond)_English Chamber Orc._"
delete file/folder on sd "アンサンブル SDR"
delete file/folder on sd "アンサンブル SDR_"
delete file/folder on sd "オイゲン・ヨッフム_ロンドン交響楽団(1-24)、バイエルン放送交響楽団"
delete file/folder on sd "スクロヴァチェフスキー/ザールブリュッケン放送交響楽団"
delete file/folder on sd "ピアノ協奏曲 5,6番 _Brendel_Marriner_Academy of"
delete file/folder on sd "not in iTunes folder ピアノ協奏曲 1,2,3,4番 _Perahia(Pf,Cond)_Englis"
iTunesの問題点
iTunesで見えない重複が有る場合、単純に削除しただけでは、見えなかったものが出てくるだけで、
削除がうまくできない場合があります。一旦削除した上でiTunesを起動しなおし、残っていれば再び削除します。
i2wSDを使い繰り返し[ライブラリ読み込み]を行い確認します。
iTunesのエクスポート情報は曲名によっては上手くいかない場合があるようです。
次の例ではLocation情報が欠落しています、曲名を日本語を使わないものに変更したところLocation情報が出るようになりました。
最初にAlbum名の日本語も外しましたが、Locationは欠落したままでした。
「交響曲第5番ハ短調 第1楽章 アレグロ・コン・ブリオ」の何が気に入らないのかは分かりません。
トラック名の再取得
トラック名をCDDBから取得する場合日本語は避けた方が良さそうです。
取り込んだ後で自分で日本語に置き換えるのが、面倒でも安全です。
CDDBで希望しないものを選択してしまった場合、iTunes12の場合
- タイトルを全部選択する
- 「ファイル」メニュー⇒「ライブラリ」⇒「トラック名を取得」
で選びなおすことができます。
MusicCenterForPCとの共存
MusicCenterForPCにはiTunesの楽曲は一切入れず、Moraからダウンロードする楽曲だけを管理させ、walkmanに転送するとう使い方が(僕の環境では)現実的だともいます。
i2wSDのダウンロードと使用法
i2wSDは次のアドレスからダウンロードできます。
i2w.zip
i2wSD.zipを展開し、
を起動すると、冒頭の画面が現れます。
Java8以上の環境が必要です。
XMLの解析のためDTD情報を取得します。
"http://www.apple.com/DTDs/PropertyList-1.0.dtd"
使用法は最初の画面に出ます。
使用法
-- iTunesで ライブラリをエクスポート
[編集]->[環境設定]->[詳細]
iTunesライブラリXMLをほかのアプリケーションと共有
[ファイル]->[ライブラリ]->[ライブラリを整理]
(ミュージック)/iTunes/iTunes Music Library.xmlにエクスポートされる
-- walkmanで SDカード初期化(一度だけでよい)
[設定]->[各種初期化]->[SDカード初期化]
-- 本プログラム
iTunesでエクスポートされたファイルを 「iTunesのライブラリ.xml」 にドラッグ、または[参照]で設定
SDを挿し、「sdのMUSICフォルダ」にSDのMUSICフォルダをドラッグ、または[参照]で設定
[ライブラリ読み込み]
[楽曲およびプレイリスト転送]
SDカードのMUSICフォルダ内を削除した上で楽曲を転送しプレイリストを作成します
[CANCEL]
転送作業を中断します。ファイルが中途半端になりますので注意してください
ファイルサイズをチェックしますので、再転送の場合は上書きされます
[表示]
進行表示⇒エラー/警告情報⇒情報⇒HELP順で表示を変更します
設定補足:
[SDのMUSICを一旦削除する] :onの場合SDのMUSICを一旦空にします
[楽曲情報を転送する] :offにすると転送しません
[Playlist(m3u8)を生成する]:offにすると生成しません
[フォルダを単純コピーする]:onにするとMusicフォルダ内のファイルを単純コピーします
offの場合はライブラリ情報に基づき楽曲ファイルを転送します
[iTunesにないファイルは..]:フォルダの単純コピーの場合、iTunesにないファイルはSDから削除します
[更新時間とサイズをチェ..]:onにすると転送先の同名ファイルがiTunesのものより新しく
かつサイズが同じ場合転送しません
offの場合同名ファイルは上書きします
[転送エラーが起こっても..]:onにすると場合画面にメッセージを出し、処理を続けます
offの場合エラーが発生すると処理を停止します
楽曲ファイルが存在しない場合
ライブラリ情報読み込み時に楽曲ファイルの有無をチェックします
ライブラリ情報上のファイルが見つからない場合、フォルダ名を変えて調べます
ファイルが存在しない場合、[ライブラリ情報によらず..]=off時の転送対象とはなりません
SD無しでiTunesのライブラリ情報のチェックだけを行うこともできます。
i2wSDのリビルド
i2wSDはA01_build.batでリビルドできます。
用意されているi2wSD.jarが万が一異常を起こすようであれば、ソースi2wSD.javaを修正することができます。
ただしi2wSD.javaは増改築、その場その場での必要機能の追加/削除を行ったものであり、あまり美しくはありません。
メモ
SDをwalkmanに挿すとデータベース生成が始まります。
計測したところ
9分41秒
かかりました。