「IOS」の版間の差分
(同期) |
(同期) |
||
4行目: | 4行目: | ||
[[en:iPod]] |
[[en:iPod]] |
||
[[fr:iPod]] |
[[fr:iPod]] |
||
+ | [[zh-hans:IPod]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|オーディオブック}} |
{{Related|オーディオブック}} |
||
{{Related|iOS のアップグレード}} |
{{Related|iOS のアップグレード}} |
||
+ | {{Related|iPhone テザリング}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | この記事では Arch Linux で |
+ | この記事では Arch Linux で '''iPad''', '''iPod''', '''iPhone''' を使用する方法を説明します。 |
+ | == デバイスに接続する == |
||
− | == 必要なパッケージ == |
||
− | [[ |
+ | [[GVFS]] を使用するアプリケーション、ファイルマネージャ ([[GNOME Files]] や [[Thunar]]) あるいはメディアプレイヤー ([[Rhythmbox]]) は {{pkg|gvfs-afc}} パッケージを[[インストール]]することで iOS デバイスを扱えるようになります。パッケージをインストールしたらファイルマネージャやアプリケーションを再起動する必要があります。 |
− | |||
− | {{Note|全ての依存パッケージは gvfs-afc をインストールする際に同時にインストールされます。}} |
||
== iPod のマウントポイントの変更 == |
== iPod のマウントポイントの変更 == |
||
19行目: | 19行目: | ||
伝統的に iPod は vfat ファイルシステム (稀に {{ic|hfsplus}}) が入っている普通の USB ストレージデバイスと[[USB ストレージデバイス|同じようにアクセス]]することができます。詳しい説明は[[USB ストレージデバイス]]の記事を見て下さい。 |
伝統的に iPod は vfat ファイルシステム (稀に {{ic|hfsplus}}) が入っている普通の USB ストレージデバイスと[[USB ストレージデバイス|同じようにアクセス]]することができます。詳しい説明は[[USB ストレージデバイス]]の記事を見て下さい。 |
||
− | udisks2 が動作している場合、接続された iPod は {{ic|/run/media/''$USER''/''iPod name''}} にマウントされます |
+ | udisks2 が動作している場合、接続された iPod は {{ic|/run/media/''$USER''/''iPod name''}} にマウントされます。 |
iPod のボリュームラベルが長くて、空白や大文字・小文字が混じっていると、不便なことがあります。{{pkg|dosfstools}} パッケージの {{ic|dosfslabel}} を使うことでボリュームを簡単に好都合なように変更することが可能です: |
iPod のボリュームラベルが長くて、空白や大文字・小文字が混じっていると、不便なことがあります。{{pkg|dosfstools}} パッケージの {{ic|dosfslabel}} を使うことでボリュームを簡単に好都合なように変更することが可能です: |
||
41行目: | 41行目: | ||
ffmpeg2theora を使って MOV ファイルを OGV などの HTML5 動画フォーマットに変換したいということもあるでしょう。作成日のメタデータは変換された動画に含まれないので、以下のようなスクリプトを使う必要があります: |
ffmpeg2theora を使って MOV ファイルを OGV などの HTML5 動画フォーマットに変換したいということもあるでしょう。作成日のメタデータは変換された動画に含まれないので、以下のようなスクリプトを使う必要があります: |
||
+ | {{bc|<nowiki> |
||
− | find -name "*.MOV" | while read mov |
||
+ | #!/usr/bin/sh |
||
− | do |
||
+ | |||
− | d=$(gst-discoverer-0.10 -v $mov | awk '/datetime:/{print $2}' | tr -d \") |
||
+ | find -name "*.MOV" | while read mov |
||
− | base=${mov%.*} |
||
+ | do |
||
− | if test -f $base.ogv |
||
+ | d=$(gst-discoverer-1.0 -v $mov | awk '/datetime:/{print $2}' | tr -d \") |
||
− | then |
||
+ | base=${mov%.*} |
||
− | touch -d${d} $base.ogv |
||
− | + | if test -f $base.ogv |
|
− | + | then |
|
− | + | touch -d${d} $base.ogv |
|
− | + | ls -l $base.ogv |
|
− | + | else |
|
+ | echo $base.ogv missing |
||
+ | fi |
||
+ | done |
||
+ | </nowiki>}} |
||
ファイルの日付と時刻が変わらないように {{ic|cp -a}} あるいは {{ic|rsync -t}} を使ってください。 |
ファイルの日付と時刻が変わらないように {{ic|cp -a}} あるいは {{ic|rsync -t}} を使ってください。 |
||
60行目: | 64行目: | ||
{{ic|''<mountpoint>''/DCIM/100APPLE}} から写真や動画を移動することはできますが、古いデータベースを削除して "Camera Roll" データベースを再作成させる必要があります。 |
{{ic|''<mountpoint>''/DCIM/100APPLE}} から写真や動画を移動することはできますが、古いデータベースを削除して "Camera Roll" データベースを再作成させる必要があります。 |
||
− | + | # rm Photos* com.apple.photos.caches_metadata.plist |
|
− | == |
+ | == iOS 用に動画を変換 == |
− | |||
− | === 第 5/5.5 世代 === |
||
=== Handbrake === |
=== Handbrake === |
||
− | [http://handbrake.fr/ Handbrake] は様々なバージョンの iPod 用のプリセットが入っている気の利いたツールです。CLI と GTK 版がそれぞれ {{pkg|handbrake-cli}} と {{pkg|handbrake}} |
+ | [http://handbrake.fr/ Handbrake] は様々なバージョンの iPod 用のプリセットが入っている気の利いたツールです。CLI と GTK 版がそれぞれ {{pkg|handbrake-cli}} と {{pkg|handbrake}} パッケージでインストールできます。 |
CLI で使うときは、http://trac.handbrake.fr/wiki/CLIGuide にガイドがあります。 |
CLI で使うときは、http://trac.handbrake.fr/wiki/CLIGuide にガイドがあります。 |
||
− | + | === Avidemux === |
|
+ | {{Pkg|avidemux-qt}} パッケージをインストールしてください。 |
||
− | '''入手先:''' {{AUR|podencoder}}<br> |
||
− | '''依存:''' aur/gpac mplayer |
||
− | |||
− | 詳しいヘルプがついているので、簡単に使えます。 |
||
− | |||
− | もしくは [[光学ディスクドライブ#DVD|DVD リッピング]]に書かれている方法を使って、iPod が対応しているフォーマットに変換することもできます。 |
||
− | |||
− | ==== Video File to iPod ==== |
||
− | '''入手先:''' http://thomer.com/howtos/mp4ize<br> |
||
− | '''依存:''' {{pkg|mplayer}} |
||
− | |||
− | iPod や iPhone に対応する mp4 に動画ファイルを変換する Ruby スクリプトです。 |
||
− | |||
− | === 高度な方法 === |
||
− | |||
− | ==== Avidemux ==== |
||
− | 公式リポジトリから {{Pkg|avidemux-gtk}} または {{Pkg|avidemux-qt}} をインストールしてください。 |
||
Avidemux は mp4 ファイルに変換することができます。最大ビットレート @ 700 で動画サイズを 720x480 または 320x240 にすることで上手く動画ファイルを抽出できます。 |
Avidemux は mp4 ファイルに変換することができます。最大ビットレート @ 700 で動画サイズを 720x480 または 320x240 にすることで上手く動画ファイルを抽出できます。 |
||
− | + | === Mencoder === |
|
− | + | {{pkg|mplayer}} パッケージを[[インストール]]してください。 |
|
Mencoder の設定は色々あり、iPod で再生できる動画ファイルを作り上げることができます。{{ic|man mencoder}} を参照してください。MPlayer のオプションがエンコーディングにも影響します。 |
Mencoder の設定は色々あり、iPod で再生できる動画ファイルを作り上げることができます。{{ic|man mencoder}} を参照してください。MPlayer のオプションがエンコーディングにも影響します。 |
||
103行目: | 89行目: | ||
iPhone/iPod Touch に対応する動画をエンコードするコマンドの例: |
iPhone/iPod Touch に対応する動画をエンコードするコマンドの例: |
||
− | mencoder INPUT -o output.mp4 \ |
+ | $ mencoder INPUT -o output.mp4 \ |
-vf scale=480:-10,harddup \ |
-vf scale=480:-10,harddup \ |
||
-oac faac -faacopts mpeg=4:object=2:raw:br=128 \ |
-oac faac -faacopts mpeg=4:object=2:raw:br=128 \ |
||
109行目: | 95行目: | ||
-ovc x264 -x264encopts nocabac:level_idc=30:bframes=0 |
-ovc x264 -x264encopts nocabac:level_idc=30:bframes=0 |
||
− | + | === FFMpeg === |
|
公式リポジトリから {{pkg|ffmpeg}} パッケージを[[インストール]]してください。 |
公式リポジトリから {{pkg|ffmpeg}} パッケージを[[インストール]]してください。 |
||
115行目: | 101行目: | ||
様々な設定をサポートしているエンコーダーです。第5世代 iPod 用にエンコードするコマンドの例: |
様々な設定をサポートしているエンコーダーです。第5世代 iPod 用にエンコードするコマンドの例: |
||
− | ffmpeg -vcodec xvid -b 300 -qmin 3 -qmax 5 -bufsize 4096 \ |
+ | $ ffmpeg -vcodec xvid -b 300 -qmin 3 -qmax 5 -bufsize 4096 \ |
-g 300 -acodec aac -ab 96 -i INPUT -s 320x240 \ |
-g 300 -acodec aac -ab 96 -i INPUT -s 320x240 \ |
||
-aspect 4:3 output.mp4 |
-aspect 4:3 output.mp4 |
||
121行目: | 107行目: | ||
iPod Touch/iPhone 対応の動画を出力する例: |
iPod Touch/iPhone 対応の動画を出力する例: |
||
− | ffmpeg -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5\ |
+ | $ ffmpeg -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5\ |
-bufsize 4096 -g 300 -acodec aac -ab 192 -s 480×320 -aspect 4:3 -i INPUT output.mp4 |
-bufsize 4096 -g 300 -acodec aac -ab 192 -s 480×320 -aspect 4:3 -i INPUT output.mp4 |
||
== iPhone/iPod Touch == |
== iPhone/iPod Touch == |
||
+ | デフォルトでは、iPhone も iPod Touch も USB によるマスストレージ機能が存在しませんが、{{Pkg|ifuse}} という名前の FUSE ファイルシステムを使うことで、通常どおりに、USB でデバイスをマウントすることができるようになります。 |
||
− | === イントロダクション === |
||
− | デフォルトでは、iPhone も iPod Touch も USB によるマスストレージ機能が存在しませんが、ファイルにアクセスするための方法が2つ存在しています。 |
||
− | |||
− | 一つ目は FUSE ファイルシステム SSHFS でデバイスをマウントする方法です。jailbreak をする必要があります。最近の iOS バージョンなら [http://www.ijailbreak.com/how-to/how-to-jailbreak-iphone-4s-absinthe-linux/ Absinthe] などを使うことで jailbreak をすることが出来ます。jailbreak した後、デバイスに SSH サーバーをインストールする必要があります。SSH サーバーのインストールは Cydia プログラムによって行うことが可能で、Cydia は jailbreak するときにデバイスにインストールされます。 |
||
− | |||
− | もう一つの方法は {{Pkg|ifuse}} という名前の FUSE ファイルシステムを使う方法で、通常どおりに、USB でデバイスをマウントすることができるようになります。この方法はハックを必要とせず、大抵の場合は SSHFS による方法よりも簡単ですが、iFuse ソフトウェアはまだ開発初期段階であるということに注意する必要があります。ただし、最近は安定して使えるようになってきてはいます。 |
||
{{Note|最新リリースの {{pkg|libgpod}} や {{pkg|gtkpod}} は iPod Touch や iPhone OS 3.1.x から iOS 4.3.x までサポートしています。制限なく画像や音楽を転送することが可能です。}} |
{{Note|最新リリースの {{pkg|libgpod}} や {{pkg|gtkpod}} は iPod Touch や iPhone OS 3.1.x から iOS 4.3.x までサポートしています。制限なく画像や音楽を転送することが可能です。}} |
||
137行目: | 118行目: | ||
次のページを参照: [https://help.ubuntu.com/community/PortableDevices/iPhone] |
次のページを参照: [https://help.ubuntu.com/community/PortableDevices/iPhone] |
||
− | === |
+ | === iFuse === |
+ | {{Note|画面にパスワードをかけている場合、USB インターフェイスからアクセスするにはロックを解除する必要があります。}} |
||
+ | {{Pkg|ifuse}}, {{Pkg|usbmuxd}}, {{Pkg|libplist}} パッケージを[[インストール]]してください。 |
||
− | ==== SSHFS ==== |
||
+ | その後 {{ic|modprobe fuse}} を実行して fuse モジュールをロードしてください。{{ic|/etc/modules-load.d/}} から既にロードしている場合はロードは不要です。 |
||
− | After this the easiest way to properly initialise a few things on the device's side is with the [http://launchpad.net/ipod-convenience iPod convenience script]. This is available in the AUR as {{AUR|ipod-convenience}} |
||
+ | 以下のコマンドでデバイスがマウントできます (<mountpoint> はマウントしたいディレクトリに置き換えてください)。接続する前にロックを解除するようにしてください。ロックがかかっていると認識されません。 |
||
− | Next do {{ic|modprobe fuse}} to actually load the fuse module. You may also want to add it to your MODULES array in {{ic|/etc/rc.conf}} to have it loaded on boot. |
||
+ | # ifuse <mountpoint> |
||
+ | マウントしたら、適当な同期ソフトウェアを使ってマウントポイントを指定することでファイルを転送できるはずです。 |
||
+ | デバイスをアンマウントするには: |
||
− | A few things may need changing in the script, depending on your setup. If you do not use sudo, replace: |
||
+ | # umount <mountpoint> |
||
− | sudo lsusb -v -d 05ac: | grep iSerial | awk '{print $3}' | cut -b1-16 | xargs printf "FirewireGuid: 0x%s" >> $MOUNTPOINT/iTunes_Control/Device/SysInfo |
||
− | with: |
||
− | su -c "lsusb -v -d 05ac: | grep iSerial | awk '{print $3}' | cut -b1-16 | xargs printf \"FirewireGuid: 0x%s\" >> $MOUNTPOINT/iTunes_Control/Device/SysInfo" |
||
− | in the file /usr/share/ipod-convenience/mount-umount. You may also need to replace: |
||
− | PROCESS=`ssh root@$IPADDRESS ps x | grep MobileMusicPlayer | grep -v grep | awk '{print $1}'` |
||
− | with: |
||
− | PROCESS=`ssh root@$IPADDRESS ps ax | grep MobileMusicPlayer | grep -v grep | awk '{print $1}'` |
||
− | (I'm not sure under what circumstances this is necessary; it was on my iPod Touch running 2.2.1, and it will not have any adverse affect under other firmware version) |
||
+ | ==== iPhone OS 3.x と 4.x ==== |
||
− | After that, edit the {{ic|/etc/default/ipod-convenience}} file with details of your device's IP address, and create the mount point, which is {{ic|/media/ipod}} by default (make sure to set the permissions correctly if you want it accessible by a regular user) |
||
+ | {{Pkg|libplist}}, {{Pkg|libimobiledevice}}, {{Pkg|libgpod}}, {{Pkg|usbmuxd}}, {{Pkg|ifuse}} パッケージを[[インストール]]してください。 |
||
− | 実際にデバイスをマウントするには、{{ic|ipod-touch-mount}} か {{ic|iphone-mount}} を実行します (どちらも同じことをするのでどちらでもかまいません)。デバイスの root パスワードが二回要求されますが、ファームウェアバージョン 1.1 以上ではデフォルトのパスワードは 'alpine' となっています。同期をするために毎回入力する必要があります (SSH 鍵を使うことでパスワードの入力は省略することが可能です。詳しくは [[SSH 鍵]]を参照)。 |
||
+ | {{ic|modprobe fuse}} を実行して fuse モジュールがロードされていることを確認してください。そして、ユーザーを ''usbmux'' [[グループ]]に追加してください。 |
||
− | ==== iFuse ==== |
||
− | {{Note|iPad/iPad2 で画面にパスワードをかけている場合、USB インターフェイスからアクセスするにはロックを解除する必要があります。}} |
||
+ | root で以下のコマンドを実行: |
||
− | {{Pkg|usbmuxd}}, {{Pkg|libplist}}, {{Pkg|libimobiledevice}}, {{Pkg|ifuse}} をインストールする必要があります。libimobiledevice は ifuse と usbmuxd から依存されているので、次のコマンドで4つのパッケージがインストールできます: |
||
− | # |
+ | # usbmuxd |
+ | 以下のようなコマンドでデバイスをマウントできるはずです: |
||
− | {{ic|modprobe fuse}} を実行して fuse モジュールをロードしてください。{{ic|/etc/modules-load.d/}} から既にロードしている場合は要りません。 |
||
+ | $ ifuse ~/ipod |
||
+ | ディレクトリはあらかじめ作成してユーザーからアクセスできるようにしてください。 |
||
− | + | デバイスをマウントしたら {{ic|iTunes_Control/Device}} ディレクトリを作成してください。そして、UUID を取得してください。usbmuxd の syslog から確認するか、以下のコマンドで確認できます: |
|
+ | $ lsusb -v | egrep "iSerial.*[a-f0-9]{40}" |
||
− | # ifuse <mountpoint> |
||
+ | 40文字の UUID が表示されます。確認できたら、以下のコマンドを実行してください: |
||
− | マウントしたら、適当な同期ソフトウェアを使ってマウントポイントを指定することでファイルを転送できるはずです。 |
||
+ | $ ipod-read-sysinfo-extended <uuid> <mountpoint>. |
||
+ | 上記のコマンドで {{ic|iTunes_Control/Device/SysInfoExtended}} という名前のファイルが作成されます。 |
||
+ | 設定できたら、{{pkg|gtkpod}} などお好きなアプリを起動してください。 |
||
− | デバイスをアンマウントするには: |
||
+ | |||
− | # umount <mountpoint> |
||
+ | {{Note|gtkpod は root あるいは sudo でのみ動作します。起動画面で止まってしまう場合、{{ic|~/.gtkpod}} フォルダを削除してみてください。ただしフォルダを削除すると gtkpod の設定が消えるので注意してください。}} |
||
− | + | === HashInfo ファイルの生成 === |
|
iTunes を使ってデバイスを同期したことがある場合、HashInfo ファイルが存在しないというエラーメッセージが表示されます。MacOS か Windows の iTunes から HashInfo ファイルを作成 (iPod を接続) することで問題は解決できます。もしくは、自分でファイルを作成する方法もあります。手順は [http://ihash.marcansoft.com/ こちらのウェブサイト] に記載があります。 |
iTunes を使ってデバイスを同期したことがある場合、HashInfo ファイルが存在しないというエラーメッセージが表示されます。MacOS か Windows の iTunes から HashInfo ファイルを作成 (iPod を接続) することで問題は解決できます。もしくは、自分でファイルを作成する方法もあります。手順は [http://ihash.marcansoft.com/ こちらのウェブサイト] に記載があります。 |
||
196行目: | 177行目: | ||
iFuse を使用している場合は、次を入力するだけです: |
iFuse を使用している場合は、次を入力するだけです: |
||
# umount <mountpoint> |
# umount <mountpoint> |
||
+ | MobileMusicPlayer プロセスをリロードする必要があります。デバイスが jailbreak されていない場合、再起動でスタックします。 |
||
− | You will still need to reload the MobileMusicPlayer process. If your device is not jailbroken, then you are stuck restarting it. |
||
+ | == iPod Classic/Nano3g == |
||
− | === iFuse - iPhone OS 3.x と 4.x === |
||
− | {{Warning|このソフトウェアは不安定だとされており、本番環境で使うのは推奨されません。}} |
||
+ | iPod を設定して FireWire ID を libgpod から探知できるようにする必要があります。手動で FireWire ID を取得してください。 |
||
− | Make sure you already installed base-devel, which contains several programs needed to compile your new components. If you did not, just run: |
||
+ | * 読み書き可能なマウントポイントとして iPod をマウントしてください。以下の例では {{ic|/mnt/ipod}} を使います。 |
||
− | # pacman -S base-devel |
||
+ | * 以下のコマンドを実行してシリアル番号を確認してください: |
||
− | which will install everything you will need. |
||
+ | # lsusb -v | grep -i Serial |
||
− | You will need to install {{Pkg|libplist}}, {{Pkg|libimobiledevice}}, {{Pkg|libgpod}}, {{Pkg|usbmuxd}} and {{Pkg|ifuse}}. |
||
+ | 上記のコマンドで {{ic|00A1234567891231}} のような16文字の文字列が出力されます (コロンやハイフンは含まれません)。 |
||
− | Now make sure that you have the fuse module loaded by doing {{ic|modprobe fuse}}, assuming that you do not have it in /etc/rc.conf already. |
||
− | Check if the group "usbmux" has been created and add your user using |
||
− | # gpasswd -a <user> usbmux |
||
+ | * 番号をメモしたら {{ic|/mnt/ipod/iPod_Control/Device/SysInfo}} を作成・編集してください。ファイルに以下の行を追加します (ffffffffffffffff はメモした16桁の文字列に置き換えてください、最初の 0x は消してはいけません): |
||
− | To make sure the new rules apply, execute |
||
+ | |||
− | $ udevadm control --reload-rules |
||
+ | FirewireGuid: 0xffffffffffffffff |
||
− | and plug in your iPod/iPhone. |
||
+ | これで [[Amarok]] や gtkpod で iPod が管理できるようになります。 |
||
− | Run as ROOT: |
||
− | # usbmuxd |
||
− | Now you should the be able to mount your device by running |
||
− | $ ifuse ~/ipod |
||
− | or similar. Make sure the directory used exists and is accessible to your user. |
||
+ | == 第1・2世代 iPod Shuffle == |
||
− | Mount the device and create the iTunes_Control/Device directory. Then, get your UUID. It should be in the syslog from usbmuxd, or you can find it by running |
||
− | $ lsusb -v | egrep "iSerial.*[a-f0-9]{40}" |
||
− | It should be 40 characters long. Then, run |
||
− | $ ipod-read-sysinfo-extended <uuid> <mountpoint>. |
||
− | This should generate a file named {{ic|iTunes_Control/Device/SysInfoExtended}}. |
||
+ | ("巨大な" iPod に比べて) Shuffle の構造は単純なため、他の USB フラッシュ MP3 プレイヤーと同じように扱うことができます。iPod のルートディレクトリには [http://sourceforge.net/projects/shuffle-db/files/latest/download rebuild_db.py] ファイルを保存する必要があります。MP3 ファイルを iPod Shuffle にコピーしたら (サブフォルダも使えます)、以下のコマンドを実行してください [http://shuffle-db.sourceforge.net/]: |
||
− | Now, start up your favourite app, it should detect the device via libgpod. |
||
− | I recommend using gtkpod-git for the time being, as that is what the libgpod developers seem to be using for debugging purposes. |
||
− | |||
− | {{Note|If gtkpod/gtkpod-git seems to work only from root/sudo while your user only gets the slash screen, you can delete your {{ic|~/.gtkpod}} folder and retry. Note that gtkpod will forget your preferences.}} |
||
− | |||
− | === Rhythmbox === |
||
− | |||
− | Rhythmbox は Gnome Virtual File System を使ってモバイルデバイスを検出します。iFuse を使っている場合、{{Pkg|gvfs-afc}} をインストールする必要があります: |
||
− | # pacman -S gvfs-afc |
||
− | |||
− | == iPod Classic/Nano3g == |
||
− | |||
− | You need to set up the iPod to make libgpod able to find its FireWire ID. For this, you will need to get your FireWire ID manually |
||
− | |||
− | 1) Mount the iPod as a rw mount point. In the following example, I will use {{ic|/mnt/ipod}}. |
||
− | |||
− | 2 ) Find the serial number by typing |
||
− | |||
− | sudo lsusb -v | grep -i Serial |
||
− | |||
− | this should print a 16 character long string like 00A1234567891231 (it will have no colons or hyphens) |
||
− | |||
− | 3) Once you have that number, create or edit {{ic|/mnt/ipod/iPod_Control/Device/SysInfo}}. Add to that file the line below: |
||
− | |||
− | FirewireGuid: 0xffffffffffffffff |
||
+ | $ python2 /path/to/rebuild_db.py |
||
− | (replace ffffffffffffffff with the 16 digit string you obtained at the previous step and do not forget the leading 0x before the string) |
||
+ | == 第4世代 iPod Shuffle == |
||
− | Your iPod can now be managed with Amarok or gtkpod. |
||
+ | Linux で iPod Shuffle の第4世代を使うには Python ベースのコマンドラインツールである {{AUR|ipod-shuffle-4g}} を使用します。高度なボイスオーバーやプレイリストの(自動)作成なども対応しています。 |
||
== iPod 管理アプリ == |
== iPod 管理アプリ == |
||
− | *[ |
+ | *[[Rhythmbox]] |
**GTK インターフェイス ([[GNOME]])。 |
**GTK インターフェイス ([[GNOME]])。 |
||
**公式の GNOME プロジェクトに入っています。 |
**公式の GNOME プロジェクトに入っています。 |
2017年2月11日 (土) 21:41時点における版
この記事では Arch Linux で iPad, iPod, iPhone を使用する方法を説明します。
目次
デバイスに接続する
GVFS を使用するアプリケーション、ファイルマネージャ (GNOME Files や Thunar) あるいはメディアプレイヤー (Rhythmbox) は gvfs-afc パッケージをインストールすることで iOS デバイスを扱えるようになります。パッケージをインストールしたらファイルマネージャやアプリケーションを再起動する必要があります。
iPod のマウントポイントの変更
伝統的に iPod は vfat ファイルシステム (稀に hfsplus
) が入っている普通の USB ストレージデバイスと同じようにアクセスすることができます。詳しい説明はUSB ストレージデバイスの記事を見て下さい。
udisks2 が動作している場合、接続された iPod は /run/media/$USER/iPod name
にマウントされます。
iPod のボリュームラベルが長くて、空白や大文字・小文字が混じっていると、不便なことがあります。dosfstools パッケージの dosfslabel
を使うことでボリュームを簡単に好都合なように変更することが可能です:
- 現在のボリュームラベルを取得・確認:
# dosfslabel /dev/sdXY
- 新しいボリュームラベルを設定:
# dosfslabel /dev/sdXY ArchPod
- デバイスをアンマウント:
$ udisksctl unmount -b /dev/sdXY
- もう一度マウントしなおす:
$ udisksctl mount -b /dev/sdXY
/dev/sdxx
は iPod の現在のデバイスノードに置き換えてください。
動画や写真のインポート
通常は <mountpoint>/DCIM/100APPLE
で動画と写真の両方が見つかります。
HTML5 動画
ffmpeg2theora を使って MOV ファイルを OGV などの HTML5 動画フォーマットに変換したいということもあるでしょう。作成日のメタデータは変換された動画に含まれないので、以下のようなスクリプトを使う必要があります:
#!/usr/bin/sh find -name "*.MOV" | while read mov do d=$(gst-discoverer-1.0 -v $mov | awk '/datetime:/{print $2}' | tr -d \") base=${mov%.*} if test -f $base.ogv then touch -d${d} $base.ogv ls -l $base.ogv else echo $base.ogv missing fi done
ファイルの日付と時刻が変わらないように cp -a
あるいは rsync -t
を使ってください。
写真をインポートして削除する
<mountpoint>/DCIM/100APPLE
から写真や動画を移動することはできますが、古いデータベースを削除して "Camera Roll" データベースを再作成させる必要があります。
# rm Photos* com.apple.photos.caches_metadata.plist
iOS 用に動画を変換
Handbrake
Handbrake は様々なバージョンの iPod 用のプリセットが入っている気の利いたツールです。CLI と GTK 版がそれぞれ handbrake-cli と handbrake パッケージでインストールできます。
CLI で使うときは、http://trac.handbrake.fr/wiki/CLIGuide にガイドがあります。
Avidemux
avidemux-qt パッケージをインストールしてください。
Avidemux は mp4 ファイルに変換することができます。最大ビットレート @ 700 で動画サイズを 720x480 または 320x240 にすることで上手く動画ファイルを抽出できます。
Mencoder
Mencoder の設定は色々あり、iPod で再生できる動画ファイルを作り上げることができます。man mencoder
を参照してください。MPlayer のオプションがエンコーディングにも影響します。
基本的なガイドは MEncoder を見てください。
iPhone/iPod Touch に対応する動画をエンコードするコマンドの例:
$ mencoder INPUT -o output.mp4 \ -vf scale=480:-10,harddup \ -oac faac -faacopts mpeg=4:object=2:raw:br=128 \ -of lavf -lavfopts format=mp4 \ -ovc x264 -x264encopts nocabac:level_idc=30:bframes=0
FFMpeg
公式リポジトリから ffmpeg パッケージをインストールしてください。
様々な設定をサポートしているエンコーダーです。第5世代 iPod 用にエンコードするコマンドの例:
$ ffmpeg -vcodec xvid -b 300 -qmin 3 -qmax 5 -bufsize 4096 \ -g 300 -acodec aac -ab 96 -i INPUT -s 320x240 \ -aspect 4:3 output.mp4
iPod Touch/iPhone 対応の動画を出力する例:
$ ffmpeg -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5\ -bufsize 4096 -g 300 -acodec aac -ab 192 -s 480×320 -aspect 4:3 -i INPUT output.mp4
iPhone/iPod Touch
デフォルトでは、iPhone も iPod Touch も USB によるマスストレージ機能が存在しませんが、ifuse という名前の FUSE ファイルシステムを使うことで、通常どおりに、USB でデバイスをマウントすることができるようになります。
次のページを参照: [1]
iFuse
ifuse, usbmuxd, libplist パッケージをインストールしてください。
その後 modprobe fuse
を実行して fuse モジュールをロードしてください。/etc/modules-load.d/
から既にロードしている場合はロードは不要です。
以下のコマンドでデバイスがマウントできます (<mountpoint> はマウントしたいディレクトリに置き換えてください)。接続する前にロックを解除するようにしてください。ロックがかかっていると認識されません。
# ifuse <mountpoint>
マウントしたら、適当な同期ソフトウェアを使ってマウントポイントを指定することでファイルを転送できるはずです。
デバイスをアンマウントするには:
# umount <mountpoint>
iPhone OS 3.x と 4.x
libplist, libimobiledevice, libgpod, usbmuxd, ifuse パッケージをインストールしてください。
modprobe fuse
を実行して fuse モジュールがロードされていることを確認してください。そして、ユーザーを usbmux グループに追加してください。
root で以下のコマンドを実行:
# usbmuxd
以下のようなコマンドでデバイスをマウントできるはずです:
$ ifuse ~/ipod
ディレクトリはあらかじめ作成してユーザーからアクセスできるようにしてください。
デバイスをマウントしたら iTunes_Control/Device
ディレクトリを作成してください。そして、UUID を取得してください。usbmuxd の syslog から確認するか、以下のコマンドで確認できます:
$ lsusb -v | egrep "iSerial.*[a-f0-9]{40}"
40文字の UUID が表示されます。確認できたら、以下のコマンドを実行してください:
$ ipod-read-sysinfo-extended <uuid> <mountpoint>.
上記のコマンドで iTunes_Control/Device/SysInfoExtended
という名前のファイルが作成されます。
設定できたら、gtkpod などお好きなアプリを起動してください。
HashInfo ファイルの生成
iTunes を使ってデバイスを同期したことがある場合、HashInfo ファイルが存在しないというエラーメッセージが表示されます。MacOS か Windows の iTunes から HashInfo ファイルを作成 (iPod を接続) することで問題は解決できます。もしくは、自分でファイルを作成する方法もあります。手順は こちらのウェブサイト に記載があります。
データベースの難読化解除
ファームウェアバージョン 2.0 から、Apple は音楽データベースを難読化しています。最近のファームウェアを使っている場合、/System/Library/Lockdown/Checkpoint.xml
ファイルを修正することで、昔の、簡単に読むことができるデータベースを有効にできます。以下の行を:
<key>DBVersion</key> <integer>4</integer>
次のように置き換えてください:
<key>DBVersion</key> <integer>2</integer>
その後、デバイスを再起動してください。
"ERROR: Unsupported checksum type '0' in cbk file generation!" と表示されて同期が失敗する場合、上記の値を4にしておく必要があります。libgpod は ハッシュ化されたデータベースを使うようです 。
同期
iPod に対応しているお好きなプログラムを使って下さい。アプリケーションの設定はそれぞれ別ですが、大抵は、マウントポイントをプログラムに指定することで上手く動作するはずです。
同期後は、ipod-touch-umount
(または iphone-umount
) を実行して SSHFS ファイルシステムをアンマウントしてからデバイス上の MobileMusicPlayer
プロセスを再起動させることで、新しい音楽データベースが読み込まれます。
iFuse を使用している場合は、次を入力するだけです:
# umount <mountpoint>
MobileMusicPlayer プロセスをリロードする必要があります。デバイスが jailbreak されていない場合、再起動でスタックします。
iPod Classic/Nano3g
iPod を設定して FireWire ID を libgpod から探知できるようにする必要があります。手動で FireWire ID を取得してください。
- 読み書き可能なマウントポイントとして iPod をマウントしてください。以下の例では
/mnt/ipod
を使います。
- 以下のコマンドを実行してシリアル番号を確認してください:
# lsusb -v | grep -i Serial
上記のコマンドで 00A1234567891231
のような16文字の文字列が出力されます (コロンやハイフンは含まれません)。
- 番号をメモしたら
/mnt/ipod/iPod_Control/Device/SysInfo
を作成・編集してください。ファイルに以下の行を追加します (ffffffffffffffff はメモした16桁の文字列に置き換えてください、最初の 0x は消してはいけません):
FirewireGuid: 0xffffffffffffffff
これで Amarok や gtkpod で iPod が管理できるようになります。
第1・2世代 iPod Shuffle
("巨大な" iPod に比べて) Shuffle の構造は単純なため、他の USB フラッシュ MP3 プレイヤーと同じように扱うことができます。iPod のルートディレクトリには rebuild_db.py ファイルを保存する必要があります。MP3 ファイルを iPod Shuffle にコピーしたら (サブフォルダも使えます)、以下のコマンドを実行してください [2]:
$ python2 /path/to/rebuild_db.py
第4世代 iPod Shuffle
Linux で iPod Shuffle の第4世代を使うには Python ベースのコマンドラインツールである ipod-shuffle-4gAUR を使用します。高度なボイスオーバーやプレイリストの(自動)作成なども対応しています。
iPod 管理アプリ
- Rhythmbox
- GTK インターフェイス (GNOME)。
- 公式の GNOME プロジェクトに入っています。
- 高速で軽量なインターフェイス。
- コンピュータと iPod の音楽を管理。
- ポッドキャストやビデオキャプチャのダウンロードやストリーミング。
- 曲やポッドキャストの再生待ち。
- Last.fm の統合。
- インターネットラジオの視聴。
- Jamendo と Magnatune のサポート。
- 音楽 CD の書き込み。
- アルバムカバーの表示。
- 歌詞の表示。
- DAAP 共有。
- Banshee
- GTK インターフェイス (GNOME)。
- Mono を使っているため、やや重く、rhythmbox よりもリソースを消費します。
- デバイスの同期: 音楽や動画を Android, iPod などに同期、あるいはメディアをインポート。
- ポッドキャスト: ポッドキャストやビデオキャストをダウンロード・ストリーミング。
- プレイキュー: 曲や動画、ポッドキャストを再生待ちに追加して自動で DJ。
- シャッフルモード: アーティストやアルバム、レーティング、あるいは曲の雰囲気などでシャッフル (あるいは Auto DJ)。
- アルバムアート: 自動的にアートワークを取得。
- 強力な検索機能、スマートプレイリスト: 聞きたい曲をすぐに・正確に検索。
- 動画のサポート: Banshee の機能は全て動画でも活用できる。
- Yamipod
- GTK インターフェイス (GNOME)。
- iPod の音楽を管理するだけの超軽量なアプリケーション (コンピュータの音楽は管理できない)。
- 簡単なレーティングの編集。
- PC から iPod に同期。
- ニュース RSS やポッドキャストを iPod にアップロード。
- Last.fm サポート。
- playlist サポート。
- gtkpod
- GTK インターフェイス (GNOME)
- 既存の iTunesDB を読み込む (iPod の再生回数や評価、On-The-Go プレイリストなどをインポート)。
- MP3, WAV, M4A (保護されてない AAC), M4B (オーディオブック), ポッドキャスト, 動画ファイル (単体ファイル, ディレクトリ, プレイリスト) を iPod に追加。'bashpodder' や 'gpodder' などのポッドキャストをダウンロードするにはサードパーティの製品が必要です。
- カバーアートの表示・追加・修正。
- ローカルデータベースに曲を全て追加して、アルバムやアーティスト、あるいはジャンルでハードディスクの中身を閲覧。トラックは iPod/Shuffle に簡単にドラッグできます。
- プレイリストの作成・修正、スマートプレイリスト。
- ID3 タグのエンコーディング文字セットを選択できます。デフォルトではロケールの設定が使われます。
- テンプレートを指定することでファイル名からタグ情報を取得 (アーティスト, アルバム, 曲名...)。
- 曲を追加する際に重複を検出 (任意)。
- iPod からトラックを削除・エクスポート。
- ID3 タグの修正 -- 元のファイルでも変更されます (任意)。
- ファイルの ID3 タグを戻す (元のファイルのタグを変更した場合)。
- ディレクトリの同期。
- トラックの音量のノーマライゼーション (mp3gain や replay-gain タグを使用)。
- iTunesDB を更新して iPod に追加した曲を書き出す。
- オフラインでも動作し後から iPod とプレイリストや曲を同期できます。
- korganizer/kaddressbook/Thunderbird/evocalendar/evolution/webcalendar... などのデータを iPod にエクスポート (他のプログラムのスクリプトを追加できます)。
- Floola
- GTK インターフェイス (GNOME)。
- Amarok
- KDE/qt インターフェイス。
- qPod
- KDE/qt インターフェイス。
- GNUpod のフロントエンド。
- GNUpod
- コマンドラインのみ。