iPod

提供: ArchWiki
ナビゲーションに移動 検索に移動

関連記事

この記事では Arch Linux で iPad, iPod, iPhone を使用する方法を説明します。

デバイスに接続する

GVFS を使用するアプリケーション、ファイルマネージャ (GNOME FilesThunar) あるいはメディアプレイヤー (Rhythmbox) は gvfs-afc パッケージをインストールすることで iOS デバイスを扱えるようになります。パッケージをインストールしたらファイルマネージャやアプリケーションを再起動する必要があります。また、ファイルマネージャやアプリケーションからデバイスが認識されない場合はバックグラウンドで usbmuxd が動作しているか確認してください。

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-clihandbrake パッケージでインストールできます。

CLI で使うときは、http://trac.handbrake.fr/wiki/CLIGuide にガイドがあります。

Avidemux

avidemux-qt パッケージをインストールしてください。

Avidemux は mp4 ファイルに変換することができます。最大ビットレート @ 700 で動画サイズを 720x480 または 320x240 にすることで上手く動画ファイルを抽出できます。

Mencoder

mplayer パッケージをインストールしてください。

Mencoder の設定は色々あり、iPod で再生できる動画ファイルを作り上げることができます。mencoder(1) を参照してください。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

HashInfo ファイルの生成

iTunes を使用してデバイスを同期したことがない場合は、HashInfo ファイルが見つからないというエラー メッセージが表示されます。これは、作成するために iTunes と一度同期することで修正できます。 または、サイト http://ihash.marcansoft.com/ を使用してこのファイルを作成することもできます。 Web サイトで iPod のシリアル番号を入力します。 /mnt/ipod/iPod_Control/Device/ ディレクトリの下に配置する HashInfo という名前のファイルが生成されます。 iPod デバイスを取り外し、再度接続します。

Unobfuscating the Database

この記事またはセクションは情報が古くなっています。
理由: iOS version 2.0 is from 2008, and libgpod is already able to read the database without jailbreaking the device and editing system files. (Discuss)

Since firmware version 2.0, Apple has obfuscated the music database. If you are using recent firmware, the file /System/Library/Lockdown/Checkpoint.xml can be modified to enable use of the older, non-obfuscated database. If that file does not exist then try to copy from /System/Library/CoreServices/Checkpoint.xml to /System/Library/Lockdown/Checkpoint.xml then replace:

<key>DBVersion</key>
<integer>4</integer>

with:

<key>DBVersion</key>
<integer>2</integer>

Then reboot your device.

If syncing fails with "ERROR: Unsupported checksum type '0' in cbk file generation!", you may need to leave this at 4. libgpod seems to expect a hashed database.[リンク切れ 2022-09-18]

iPod Classic/Nano (第3世代)

iPod を設定して FireWire ID を libgpod から探知できるようにする必要があります。手動で FireWire ID を取得してください。

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) 読み書き可能なマウントポイントとして iPod をマウントしてください。以下の例では /mnt/ipod を使います。

2) 以下のコマンドを実行してシリアル番号を確認してください:

# lsusb -v | grep -i Serial 

上記のコマンドで 00A1234567891231 のような16文字の文字列が出力されます (コロンやハイフンは含まれません)。

3) 番号をメモしたら /mnt/ipod/iPod_Control/Device/SysInfo を作成・編集してください。ファイルに以下の行を追加します。

(ffffffffffffffff はメモした16桁の文字列に置き換えてください、最初の 0x は消してはいけません)

これで Amarok や gtkpod で iPod が管理できるようになります。

iPod Nano 5th generation

Follow the instructions above #Generating HashInfo file in order to set up the hash file, it is needed to write into the device music library. To be able to use the iPod Nano 5th gen with libgpod, a SysInfoExtended file is also needed to be placed in the directory /mnt/ipod/iPod_Control/Device/. It can be generated using:

# ipod-read-sysinfo-extended bus device mountpoint

for example:

# ipod-read-sysinfo-extended 001 011 /mnt/ipod/

iPod Nano 6th generation

By default libgpod does not seem to be able to synchronize on a iPod Nano 6th generation. It copies data, but as soon as USB is disconnected, everything is as before. The package libhashab-gitAUR fixes this. Additionally, the SysInfoExtended file is also required, and can be generated in the same fashion as in #iPod Nano 5th generation, however a HashInfo file is unnecessary on this model.

iPod Shuffle 1st and 2nd generation

rebuild_db is a Python 2 script that makes it possible to use the iPod Shuffle almost like any other USB flash MP3 player. Download the script from the website, then place it in the iPod's root directory. Copy your MP3 files onto the iPod Shuffle (sub-folders are allowed too) and then run the script:

$ python2 /mnt/iPod/rebuild_db.py

iPod Shuffle 4th generation

In order to use this version of the iPod Shuffle under linux, you can use the python based command line tool ipod-shuffle-4gAUR. It also provides advanced voiceover and (auto)playlist generation support.

iPod Video (5th and 5.5th generation)

iPods in the mainline series up to and including this model do not support the AAC PNS feature, and will display audible artifacts when encountering it. Disable the feature in ffmpeg when encoding AAC files for these devices.

$ ffmpeg -i input.ogg -c:a aac -b:a 256k -aac_pns 0 -movflags +faststart -vn output.m4a

The -movflags +faststart options place the moov atom at the start of the file, which helps the iPod parse the file faster.

第1・2世代 iPod Shuffle

("巨大な" iPod に比べて) Shuffle の構造は単純なため、他の USB フラッシュ MP3 プレイヤーと同じように扱うことができます。iPod のルートディレクトリには rebuild_db.py ファイルを保存する必要があります。MP3 ファイルを iPod Shuffle にコピーしたら (サブフォルダも使えます)、以下のコマンドを実行してください [1]:

$ 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
    • コマンドラインのみ。
  • jakpod
    • JakPod は Java で書かれており、音楽や動画ファイルを iPod にコピーすることができます。
    • 第6世代 iPod Nano サポート。
    • jakpodAUR[リンク切れ: パッケージが存在しません]

参照