Rockbox

Rockboxとは



Rockboxは、デジタルオーディオプレーヤー(DAP)のファームウェアを置き換えるための、フリーかつオープンソースのソフトウェアです。多くのDAPはメーカー純正のファームウェアによって機能が制限されていますが、Rockboxはそれらを置き換え、プラグイン機能を通じて様々な機能拡張を可能にします。これらの拡張機能には、PDA機能、アプリケーション、ユーティリティ、ゲームなどが含まれ、2000年代中頃にリリースされたプレーヤーにもビデオ再生機能を追加できるものもあります。また、視覚障碍を持つユーザーのために、音声による操作が可能なユーザーインターフェースも用意されています。

幅広いデバイスへの対応



Rockboxは、ハードウェア性能が大きく異なる様々なポータブルオーディオデバイス上で動作します。初期の1ビットキャラクタセルベースのディスプレイを持つArchosプレーヤーから、高画質ディスプレイや高度な録音機能を備えた現代的なプレーヤーまで、幅広いデバイスをサポートしています。多くの場合、Rockboxはフラッシュメモリからではなく、ハードディスクから起動します。これにより、Rockboxと標準ファームウェアを切り替えて利用できます。ただし、一部のデバイスではフラッシュメモリへのインストールも可能です。

開発の歴史



Rockboxプロジェクトは2001年後半に、初期のArchos製ハードディスク内蔵MP3プレーヤーやフラッシュメモリ搭載のOndioなどの録音機能付きモデルを対象に開始されました。当時のユーザーは、純正ファームウェアのユーザーインターフェースや操作性に不満を持っており、その改善を目的としてRockboxが開発されました。これらのデバイスは処理能力が限られており、音楽再生はMP3デコードチップ(MAS)で行っていたため、Rockboxは再生品質を向上させることはできませんでしたが、代わりにユーザーインターフェースを改善し、純正ファームウェアにはない機能をプラグインで導入可能にしました。Rockboxは、製品に搭載されたフラッシュメモリの起動領域を書き換えて、純正ファームウェアと置き換えることが可能でした。

その後、Rockboxはより新しい製品にも対応するようになりました。ソフトウェアデコードによる再生を実装し、Archos版で実装済みの機能に加え、純正ファームウェアが対応しないオーディオフォーマットの再生も可能にしました。専用のブートローダーで製品を起動した後、Rockboxはハードディスクから起動します。このため、ユーザーはRockboxをアップデートするために、ハードディスクにファイルをコピーして再起動するだけで済みます。ブートローダーの書き換えが必要な場合もありますが、一部の製品では不要です。

2004年後半には、iriverが製造したモトローラ製ColdFireプロセッサ搭載のハードディスクプレイヤー、iriver H100シリーズ(H110/H120/H140)への移植が始まりました。約1年後には、iriver H300シリーズへの移植も実現しました。

2005年後半には、Apple製iPodへのRockboxの移植が開始され、2006年にはiPod photo、iPod nano、iPod 第4世代、iPod mini、iPod 第5世代、そしてCowon iAUDIO X5シリーズに対応しました。

2007年には、iriver H10、東芝 gigabeat F、Xシリーズ、Cowon iAUDIO M5、SanDisk Sansa e200シリーズ、iPod 5.5世代80GBモデル、iPod 1G、2G、Sansa c200シリーズ、オリンパス m:robe MR-100、Cowon iAudio M3、東芝 gigabeat S、オリンパス m:robe MR-500iなど、多数のデバイスがサポートされました。

2010年にはAndroidへの移植が開始され、現在ではMPEG再生にも対応しています。

Rockboxの移植は、ほとんどの場合、メーカーの協力を得ずにリバースエンジニアリングによって行われています。しかし、開発者や支援者は、メーカーからの公式なサポートや、新製品への移植に関する非公式な支援を期待しています。一部のメーカーはRockboxに興味を示しているものの、開発プロジェクトへの公式なコード提供や、製品への組み込みを行った企業はまだありません。Sansaへの移植はメーカーの要請によって開始され、開発チームにサンプル品が提供されました。また、Sansa E200 v2などのSoCを開発するAustriaMicrosystemsも、データシートを提供するなど開発に協力しています。さらに、ロシアのフォーラムでは、HiFiMAN HM-801へのRockbox移植を呼びかけ、賛同者がRockbox開発者にHM-801を提供し、移植が実現しました。

Rockboxは継続的に開発されており、ソースコードの変更ごとにSVNビルドがリリースされています。

カスタマイズ



Rockboxのインターフェースは、プラットフォーム固有の制限を受けますが、様々な方法でカスタマイズが可能です。フォントや背景色などを自由に追加・選択できるほか、メニューや再生画面のテーマは、簡単なマークアップ言語を使って作成できます。テーマには、背景やアイコンなどの画像、拡張子、ID3タグ、ファイルの進捗状況、時間やシステム情報などを表示できます。2007年11月にはアルバムアートの表示が正式にサポートされ、2011年2月にはMP3のID3(v2)タグに埋め込まれたJPEGがサポートされました。

Rockboxはファイルツリーを基本とするプレイヤーであり、フォルダ構造による操作が可能です。フォルダはプレイヤーにドラッグ&ドロップでき、プレイヤー内での切り取り、貼り付け、削除も可能です。最近のバージョンでは、プレイヤーにファイルのID3タグから情報を収集するデータベース機能が追加されました。これにより、ユーザーはファイル構造に関係なく、データベースを使ってファイルを操作できます。

特徴



コーデック



ソフトウェアでデコードするプラットフォーム(Archos以外)では、13種類の非可逆コーデック、6種類のロスレスコーデック、4種類の非圧縮コーデック、14種類のチップチューンフォーマットの再生をサポートしています。DRM機構が施されたファイルは再生できません。これは、Rockboxがオープンソースプロジェクトであるため、意図的に実装されていない機能です。

非可逆コーデック

AC3(rawまたはRealMediaコンテナ)
ADX
Advanced Audio Coding (AAC-LC/HEv1/HEv2)(MP4またはRealMediaコンテナ)
MPEG audio layers I-III (MP3/MP2/MP1)
Musepack
Ogg Vorbis
ATRAC3(OpenMGまたはRealMediaコンテナ)
Cook Codec
Speex
Dialogic telephony type
Windows Media Audio
Windows Media Audio Professional
Opus

可逆コーデック

FLAC
WavPack
Shorten
Apple Lossless
Monkey's Audio
TTA

非圧縮コーデック

PCM
WAV
AIFF
Sunオーディオファイル
Wave64

チップチューンフォーマット

Atari Sound Format
Synthetic music Mobile Application Format
Game Boy Sound Format
AY Sound Chip Music
Hudson Entertainment System Sound Format
MSX Konami Sound System
SMS/GG/CV Sound Format
Video Game Music Format
Gzipped Video Game Music Format
MOD
NES Sound Format
Atari SAP
Sound Interface Device
SPC700

再生機能



オーディオファイルの再生と録音に加え、Rockboxは他のファームウェアにはない再生機能を提供しています。

ギャップレス再生(全てのLAME/iTunes方式'>[非圧縮]]、可逆コーデック、VorbisSpeex、Opus、MusepackMP3][AAC]に対応)
リプレイゲイン
5バンドパラメトリックイコライザ
クロスフィード
OTF(オンザフライ)プレイリスト
True randomシャッフル
カスタムUIテーマ
ステレオ録音(WAV/AIFF/WavPack(ロスレス)/MP3(デバイスサポートによる))
FMラジオと録音(デバイスサポートによる)
リモートコントロール(デバイスサポートによる)
デジタルSPDIF入出力(デバイスサポートによる)
Last.fm対応(内部時計が必要)
Cue sheet対応
メニュー選択バーの色の変更
アルバムアート表示(MP3 ID3v2埋め込みタグ対応)
マルチフォントサポート
歌詞の表示

プラグイン



Rockboxは、音楽を聴く以外の機能として、様々なアプリケーションがプラグインとして提供されています。

JPEG、PNG、BMPビューア
Rockboy GameBoyエミュレータ(Gnuboyのポート)
ZXBox ZX Spectrumエミュレータ(Spectemuのポート)
Doom(PrBoomエンジンのポート)
WAVからMP3へのエンコーダ
WAVからWavPackへのエンコーダ
MPEGビデオプレーヤー
数独ソリティアマインスイーパテトリス、リバーシ、pongなど40種類以上のゲーム
MIDIプレーヤー(リアルタイム再生可能、外部の楽器セットファイルが必要)
電卓(関数電卓機能付き)
カレンダー
ペイント
メトロノーム
テキストビューア/エディタ
ストップウォッチ

サポートしない機能



Rockboxには、外部企業やプラットフォームのサポート不足のため、まだ実装されていない機能があります。

FireWire
DRM(意図的に未実装)
FAT32以外のファイルシステムの実装(意図的に未実装)

アーキテクチャ



Rockboxは、フラットメモリモデルとシングルプロセスを用いたシンプルなカーネル上で動作します。これにより、メモリ管理装置のない様々なプラットフォームで動作させることができます。貧弱なスレッドは、協調マルチスレッディングで動作し、オーディオ・スレッドを優先させるスケジューラを使用しています。プリエンプションを行うには、割り込みを利用する必要があります。OSやプラグインはC言語で記述され、デバイスやプラットフォーム固有のコードにはアセンブリ言語が使用されています。このシンプルなアーキテクチャにより、1〜64MBのメモリと12〜300MHzのCPUを持つ様々なデバイスで動作します。Rockboxは、マルチコアシステムや非対称型マルチプロセッサシステムも限定的にサポートしています。

サポートしているデバイス



Archosデバイスのみ公式にサポートされています。以下は、Rockbox wiki Device Chartで「サポートされる」または「使用可能である」とされているデバイスのリストです。

安定版



Archos Jukeboxシリーズ
Cowon iAUDIO M3、M5、X5シリーズ
Apple iPod 第1~5.5世代、mini、nano
iriver H10、H100、H300シリーズ
MPIO HD300
Packard Bell Vibe 500
SanDisk Sansa e200、e200r、c200、Fuze、Clipシリーズ
Toshiba Gigabeat F、Xシリーズ

不安定版



Apple iPod nano 第2世代
Cowon COWON D2
HiFi E.T MA9
HiFiMAN HM-60x, HM-801
MPIO HD200
Olympus M:Robe 100、500
PHILIPS GoGear HDD, SAシリーズ
Samsung YH, YPシリーズ
SanDisk Sansa Fuze+
Toshiba Gigabeat Sシリーズ

開発中の移植版



Archos AV300
Cowon iAUDIO 7
Creative Zen Vision:M、Zen Vision
Onda VXシリーズ
Samsung YP-S3
iriver iFP-790
Meizu M6SL、M6SP、M3
Tatung Elio TPJ-1022
Apple iPod classic
SanDisk Sansa m200、c100、View、Connect
Logik DAX
Lyre project Lyre proto 1
Mini2440

ソフトウェア



Google Android
Nokia N8xx, N900
Pandora

ギャラリー



(画像がここに入る)

関連項目



iPodLinux

参照



(参照がここに入る)

外部リンク



The Rockbox Project
LWN.net: Waiting for Rockbox 3.0

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。