読者です 読者をやめる 読者になる 読者になる

lond日記

思ったことを気まぐれに書きます。

iSyncr - Android と iTunesの楽曲を同期 (ガジェット)

iPod touch 4thでBluetoothがうまく使えない

これまで音楽はiPod Touch (4th)で聴いてたので音楽はiTunesで管理していたのですが、iPod Touch でBluetoothヘッドホンを使おうとすると、iPod側のBluetoothバージョンが古いためか、頻繁に音切れしたり接続が切れてしまったりしてしまいます。

そこで、スマホをiPhoneからAndroidに変えたこともあり余裕のあるmicroSDに音楽を入れてAndroidスマホとBluetoothヘッドホンで音楽を聴いてはどうかと考えました。

選択肢としては、

1. iTunesで取り込んだ音楽ファイルをPCのフォルダからAndroidのSDカードにコピーする

2. Media GOなどAndroid向けのiTunes的な統合アプリを使って同期する

3. iTunesのプレイリスト等をそのままAndoridスマホと同期できるiSyncrを使う

の3つがありました。

1が一番シンプルでよいのですが、iTunesが作ったPC内の音楽フォルダはアーティスト名やタイトルで細かく区切られており、音楽ファイルにこれらの情報が入っていない、もしくは間違っていると別フォルダに入れられるなど、ファイルを直接参照するのはかなり面倒です。私は深夜ラジオを録音してよく聴いているので、番組毎にフォルダが違うのをいちいち開いて毎日コピーする作業はかなり面倒です。

2のMedia GOは、SONY製のスマホや音楽プレイヤーで使うことを前提にしてあり、Androidスマホと同期して使うのも可能なのですが、音楽ファイルはiTunesで管理しているものをそのまま使いたい (iTunesからMedia GOに乗り換えたくない)ので、iTunesのフォルダをMedia GOで読み込ませ、同期だけを担当させたかったのですが、すぐに無理だと分かりました。

iTunesで変更した情報がMedia GOに反映されないのです。iTunesでファイルを削除、ディスクから消えてもMedia GOはその作業を認識できず画面上に表示が残った状態になります。(エラーマークが付く) また、iTunesで曲名等を変更してもMedia GOには反映されないなど、どうもMedia GOで操作した以外のディスク上の情報を反映させるのは考慮されていない気がしました。少し使ってみましたが疲れてしまうので諦めました。

結局、3のiSyncrを使うことにしました。少し問題がありますがiTunesで管理している情報をアンドロイド端末に反映させることができます。("同期" ではなく "反映" と言っているのは後述。)

iSyncrを使ってみる

私のPCはLAN接続なのでWi-Fi同期はできずUSBで繋げていますが、PC側にiSyncrが常駐していて、端末を接続するとiSyncrが立ち上がります。(正確にには接続した後、端末側で転送モードを「ファイル」に変える必要がある)

iSyncrが立ち上がると、対象となる端末側のストレージ(内蔵 or 外部)を選び、iTunesが裏で立ち上がり、iTunesのプレイリストの一覧がiSyncrのウィンドウで表示されます。

(表示後、操作できるようになるまで30秒位かかります。)

iSyncr windows 同期画面

転送したいプレイリストにチェックを入れ、下の同期ボタンを押すと、ファイルが転送されます。

転送されたファイルは端末のSyncrというフォルダ内にアーティスト名毎に分けられ保存され、音楽アプリで読み込むためのプレイリストファイルもSyncr直下に保存されている状態になります。

各音楽プレイヤーはこのプレイリストを読めるので、Syncrのフォルダを読み込みフォルダとして指定するだけで反映することができます。

という感じです。

端末を繋げて、転送、完了までの少し危なっかしい感じの動作だし、動作も決して速くはないのですが、代替手段としては十分かなと思って使っていました。

 

iSyncrでUSB同期する際の注意点

iSyncrでUSB同期する際、裏で負荷のかかる処理をしていたりすると、同期が全く進まずほぼ停止状態になります。また、同期中に裏でエクスプローラーでHDDを開こうとしたりするとエクスプローラ側が停止状態になります。

どうも、iSyncrは同期をする際、PCのIO周りを専有しようとするらしく、裏でHDDを読みに行ったり、HDDにアクセスする負荷がかかると影響が出るようです。動画エンコード等行っている場合はそれが終わってから同期するか、一時停止して同期を済ませる必要があります。でないといつまで経っても同期は終わりません。

 

iSyncrにだいたい満足? でも、問題点がでてくる

ただ、1週間も使うと転送した音楽ファイルをAndroid端末で使うのに問題が出てきました。

1. iTunesのプレイリスト上の曲の並びを反映させる

1つは、iTunesのプレイリスト上の並び替えが転送に反映されないので、転送しファイルを再読込みさせるたびに、アプリ上で並び替え操作が必要だということ。

こちらはプレイリストに曲を登録する際、マウスでドラックして並び順をひとつずつ並び替えればよいのですが、iTunesにある「再生順序にコピー」という機能を使えば、名前順等で並び替えた際などに「現在の並びで再生順を更新できる」と分かりました。iPodでは問題にならないので知らなかった機能です。

2. プレイリストが読み込めない、曲名表示、プレイリスト通りに曲が再生されない

もう1つは、プレイリストを上手く読み込めない、曲名の表示がおかしい、プレイリスト通りに再生されない、表示されるファイル数が少なくなってしまう等です。最初の頃は問題なかったのですが、転送を繰り返しファイル数が多くなって来た頃からおかしくなってきました。(音楽アプリはPowerampと使っていました。)

アプリの相性もあるのかなと思い、iSyncr開発元が出している音楽プレイヤーに変えてみたところ問題なさそうだったのですが、プレイリストではなくフォルダ内のファイルをそのまま指定して再生するタイプの音楽プレイヤーを使った際に変な事に気が付きました。

プレイリスト上の曲数よりも多いファイルがSDカードに存在する

あるプレイリストの曲が20曲だとすると、端末のSDカードの該当するフォルダにはもっと多い数のファイルが存在するのです。よく見てみると同じファイルなのに複数の名前で保存されているのが分かりました。

これは、iTunes上でタイトルを変更した際にiTunesがPC上の対象ファイルのファイル名を自動変更するのですがが、その前後のファイルがどちらもSDカード上に存在しているものでした。

iSyncrが行っているのは同期というより削除を伴わない端末へのコピー?

想像ですが、iSyncrが行っているのは、iPod TouchとiTunes間で行われる同期(追加・削除)ではなく、iTunesのプレイリスト情報を読み込み、Android端末側にファイルを流し込む (追加のみ) という仕様なのかなと思いました。

転送したプレイリストを殆ど変更することがない、追加のみという人は表立って問題を感じないでしょうが、私のように毎日プレイリスト内の曲が変わるような人にとっては、プレイリストから外した曲もAndoroid端末側では削除されずファイルとして残ったままという感じになってしまいます。(同期に伴い削除するという操作がない?)

アプリ側にはWi-Fi設定に「同期」の表記がある

ただ、iSyncrのAndoroid側アプリを見るとWi-Fiの設定には「同期」として「SDカード・未選択のものを消去(同期したプレイリストにない曲を全て自動削除)」といった選択肢があります。

iSyncr Androidアプリ Wi-Fi設定メニュー

USB経由の同期にはそういった項目がありません。Wi-Fiでの同期を使える環境がないのですが、「同期」というより「上書き転送」になっているのはUSB経由で転送している故の制限なのかもしれません。

取り敢えずの対処として

現状としては、時間がある時にSDカード内のSyncrフォルダ内のファイルを全て削除し、ゼロから転送させることにしました。時間はかかりますがSDカードを圧迫しなくて済むし、他の音楽アプリの動作も安定するかもしれません。

 

2016年12月20日追記: 端末側ファイルの上書き更新ができないので..

歌詞情報を登録しても反映するには削除して再コピーしかない

iTunesの曲は主にm4aを使っていてAndroidの各音楽プレイヤーでも再生できるのですが、例えばiTunesで歌詞情報を追加しm4aのタグにその情報が保存されても、iSyncrを介する限り追加した歌詞情報をAndroid側に反映することができません。(ファイルが上書きされないから。)

保存されている曲を削除して改めて転送させるしかありません。

プレイリストから削除しが楽曲の端末側にはファイルがのこったまま

また、プレイリストから削除された曲もファイルとしてはAndroid側に保存されたままで削除されません。

どんどん蓄積していくので手動で削除しないとストレージを圧迫します。

なんか面倒くさいですね。。