Rockbox
Rockboxは、デジタルオーディオプレーヤーに搭載されたファームウェアを置き換えるフリーソフトであり、拡張性の乏しいプレーヤーに様々な機能を追加するためのプラグイン機能を(多くの場合、元のファームウェアを取り除かないで)提供する。オープンソースのファームウェアであり、誰でも開発、配布が自由である。拡張機能にはPDA機能、アプリケーション、ユーティリティ、ゲームなどがある。また、2000年中頃にリリースされたプレーヤーにもビデオの再生機能を加える。また、視覚障害をもつユーザのための声で操作できるユーザインタフェースも用意されている。
iPod ビデオのipodVisionテーマ | |
開発元 | The Rockbox Project |
---|---|
最新版 | |
リポジトリ | |
種別 | ファームウェア |
ライセンス | GNU General Public License |
公式サイト | http://www.rockbox.org/ |
Rockboxはハードウェア能力が非常に異なっている様々なポータブルオーディオデバイス上で動くものであるため、1ビットのキャラクタセルベースのディスプレイをもつ早期のArchosプレーヤーから、近代的な高画質のディスプレイ/デジタルの光学オーディオ機器/高度な録音能力をもっているプレーヤーまで対応している。多くの場合、フラッシュメモリから実行されるよりも、ハードディスクからRockboxか標準のファームウェアのどちらかから読み込み可能なサポートされているデバイスのフラッシュに最小限のブートローダーがインストールされる。また、一部の機器ではフラッシュメモリへのインストールもできる。
開発
編集Rockboxプロジェクトは2001年の後半に、初期のArchosシリーズのハードディスク内蔵型MP3プレイヤーと、フラッシュメモリ型のOndioを含んだ録音機能つきモデルを対象に行われた。Rockbox開発は、ユーザーインターフェイスやデバイスの取り扱い方法に不満をもったことにより開発された。これらの機器の処理能力は限られており、音楽再生はMP3デコードチップ(MAS)で行っていたため、Rockboxは音楽の再生品質を変えることはできなかったが、その代わり、Rockboxは改良されたユーザーインターフェイスを提供し、工場出荷時のファームウェアに無い機能をプラグインで導入可能にした。Rockboxは製品に搭載されたフラッシュメモリの起動領域を書き換え、元のファームウェアとそっくりそのまま入れ替えてしまうことができた。
Rockboxにはより新しい製品に対応したバージョンも用意されている。こちらではソフトウェアデコードにより演奏しており、既にArchos版で実装している機能に加えて、オリジナルのファームウェアが対応しないオーディオフォーマットの演奏が潜在的に可能となっている。専用のブートローダーで製品が起動後、Rockboxはハードディスクから立ち上がる。つまり、Rockboxをアップグレードするのにユーザーが必要なことは、ハードディスクにファイルをコピーして再起動することだけである。ブートローダーの差し替えのためにはファームウェアの書き換えが必要になるが、製品によっては差し替え不要である。
2004年の後半に始まった初めてのこれらの移植はiriverが製造したモトローラー製のColdFireプロセッサーを使ったデバイス、つまりハードディスク・プレイヤーであるiriver H100 シリーズ(H110/H120/H140)だった。およそ1年後に、iriver H300 シリーズへの移植は機能的になり、同じような機能を提供するようになった。
- 2005年後半に、Apple製のiPodにRockboxの移植が始まった。
- 2006年の1年間は、Cowon iAUDIO X5シリーズと同様に、Rockboxを様々なiPod(iPod photo, iPod nano, iPod第4世代, iPod mini, iPod第5世代)で利用可能にした。
- 2007年2月には、iriver H10や東芝のgigabeat FとXシリーズへの移植が利用可能になった。
- 2007年3月5日には、Cowon iAUDIO M5への移植が機能的になった。
- 2007年3月11日には、SanDisk Sansa e200シリーズがRockboxの次のラインアップに追加された。
- 2007年5月23日には、iPod 5.5世代 80 GBモデルに対応し、iPod videoのラインアップが完結した。
- 2007年7月27日には、iPod 1G と 2Gの最初のサポートが追加された。
- 2007年9月23日には、Sansa c200シリーズがラインアップに追加された。
- 2008年3月18日には、オリンパスのm:robe MR-100がラインナップに追加された。
- 2008年3月23日には、Cowon iAudio M3がラインナップに追加された。
- 2008年5月3日には、東芝 gigabeat Sの利用が可能となった。
- 2009年3月10日には、オリンパスのm:robe MR-500iの利用が可能となった。
- 2010年にはandroidへの移植が始まる。
現在、Rockboxはmpegplayerプラグインを使用し、MPEG再生に対応。[1]
現在のところ全てのRockboxはメーカーの手助けをほとんど借りることなくリバース・エンジニアリングのみによって移植を完了してきた。しかし、フリーソフトウェアではあるが、開発者、支援者は移植されたRockboxにメーカーの公式サポート、あるいは新製品への移植に非公式な手助けが得られることを望んでいる。今でも少数の企業がRockboxに興味を示すに留まっており、開発プロジェクトへの公式なコード提供や、製品への組込を行う企業は皆無である。Sansaへの移植はメーカーの要請により始められ、開発チームにサンプル品が提供されている。[2]また、Sansa E200 v2などのSoCを開発しているAustriaMicrosystemsもデータシートを提供するなど開発に協力している。[3]また、ロシアのフォーラムで有志がHiFiMAN HM-801にrockboxの移植を行ってもらおうと呼びかけ、賛同者がrockboxの開発者にHM-801を提供し、移植されたという例もある。
カスタマイズ
編集Rockboxのインターフェイスは特有のプラットフォームごとの制限に左右されるが、様々な方法でカスタマイズ出来る。フォントや表面と背景の色は追加したり選ぶことが出来る。その一方、メニューや再生中の画面のテーマを作るのには簡単なマークアップ言語が使われている。これらのテーマとして、背景や他の画像(アイコンのような物とか)があげられ、加えて、様々な拡張子、ID3タグ、ファイルの進捗状況、時間やシステムの情報があげられる。2007年11月11日の時点で、アルバムアートの表示が正式にサポートされた。2011年2月27日にはmp3のID3(v2)タグに埋め込まれたJPEGが正式にサポートされた。Rockboxは原則的にファイルツリーが基本のプレイヤーであり、そしてフォルダ構造による操作が出来る。(フォルダはプレイヤーにドラッグ・アンド・ドロップすることができる。)プレーヤー内で切り取り・貼り付けや削除をすることもできる。また、最近のバージョンには、プレイヤーにファイルのID3タグからの情報を集めることを可能にしたデーターベース機能がある。ユーザーはその結果ファイル構造に関係なく、このデーターベースを用いることでファイルを操作することが出来る。
特徴
編集コーデック
編集ソフトウェアでデコードするプラットフォーム(Archos以外)では13つの非可逆コーデックと6つのロスレスコーデックと4つの非圧縮コーデックと14つのチップチューンフォーマットの再生をサポートしている。また、DRM機構のファイルはRockboxにおいて再生できない。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[5](OpenMGコンテナもしくはRealMediaコンテナ)
- Cook Codec
- Speex
- Dialogic telephony type
- Windows Media Audio
- Windows Media Audio Professional
- Opus
可逆コーデック
編集非圧縮コーデック
編集- PCM
- WAV
- AIFF
- Sunオーディオファイル[5]
- Wave64
チップチューンフォーマット
編集- Atari Sound Format
- Synthetic music Mobile Application Format[8]
- 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は他のファームウェアが実装していない再生機能を提供している。
以下に掲載されているのはこれらの機能の一部である。
- ギャップレス再生 (全ての非圧縮、可逆コーデックとVorbis、Speex、Opus、Musepack、MP3(LAME方式およびiTunes方式)、AAC(iTunes方式およびNero Digital方式)に対応)
- リプレイゲイン[9]
- 5バンド・パラメトリックイコライザ[9]
- クロスフィード
- OTF ("on the fly") プレイリスト
- True randomシャッフル (fresh randomly shuffled list every time)
- カスタムUIテーマ
- ステレオでの以下の形式への録音: WAV/AIFF/WavPack (ロスレス)/MP3[10] (デバイスのサポート)
- FMラジオとその録音 (デバイスのサポート)
- 遠隔操作 (デバイスのサポート)
- Digital SPDIFの入出力 (デバイスのサポート)
- Last.fmの対応 (ただし、内部時計が無ければ対応しない)
- Cue sheetの対応
- メニュー選択のバーの色と外観は変更可能
- アルバムアート(MP3ID3v2の埋め込みタグ対応) [11]
- マルチフォントのサポート
- 歌詞を音声にあわせて表示
プラグイン
編集Rockbox は、音楽を聞く以外の機能として、プラグインという形で様々なアプリケーションが Rockbox の開発者によって作成されている。その一例として、以下のものがある。(完全なプラグインのリストは プラグインのリスト を参照のこと)
- JPEG、PNG、BMPビューア
- Rockboy GameBoy エミュレータ (Gnuboyのポート)[12]
- ZXBox ZX Spectrum エミュレータ (Spectemuのポート)[13]
- Doom (PrBoomエンジンのポート)
- WAV から MP3 へのエンコーダ
- WAV から WavPack へのエンコーダ
- MPEGビデオプレーヤー [1]
- 様々なゲーム(数独, ソリティア, マインスイーパ, テトリス, リバーシ, pong等40種以上)
- MIDIプレーヤー。ある程度の処理能力があるプレイヤーではリアルタイムで再生可能。再生には外部の楽器セットファイルが必要であり、Rockboxのページからダウンロードできる。CPUが追いつかなくなると、音飛びが生じる。
- 電卓(関数電卓機能付)
- カレンダー
- ペイント
- メトロノーム
- テキストビューア/エディタ
- ストップウォッチ
サポートしない機能
編集Rockboxには外部の会社やプラットフォームのサポート不足のために、まだ実装されていない機能がいくつかある。
アーキテクチャ
編集Rockboxはフラットメモリモデル (これが メモリ管理装置なしで様々なプラットホーム上で動かすことを可能にしている。)と シングル プロセスを用いた、単純なカーネルで動いている[15]。 貧弱なスレッド は、"オーディオ・スレッドを優先させる スケジューラ"に制御を返す"協調マルチスレッディング"で動く。つまり、プリエンプション(OSが優先順位の高いタスクに有利になるように、現在のタスクを停止したり、先取りする能力のこと)を行うには割り込みを利用するしかない。OSやプラグインはC言語で書かれていて、繊細なコードを実行することにつけ加え、デバイスやプラットフォーム固有のコードの為にアセンブリ言語が用いられている。この単純で軽いアーキテクチャのおかげで、Rockboxは、1〜64MBまで変動するメモリや、12〜300MHzまで変動するCPUといった、様々な機器で動かすことが可能になっている。Rockboxはまた、マルチコア・システムや非対称型マルチプロセッサ・システムへの限定的なサポートをしている。
サポートしているデバイス
編集Archosデバイスのみ公式にサポートされると宣告されている。以下は少なくとも実質的に動作する(Rockbox wiki Device Chartで「サポートされる」か「使用可能である」として、記載されている)デバイスのリストであると考えるべきである。詳細に関してはRockbox Device Chartを参照。
安定版
編集Archos
編集- Archos Jukebox シリーズ
- Jukebox 6000
- Jukebox Player/Studio
- Jukebox Recorder
- FM Recorder
- Recorder v2
- Ondio FM
- Ondio SP
Cowon
編集- iAUDIO M3、M3L
- iAUDIO M5、M5L
- iAUDIO X5、X5L
- iAUDIO X5V
Apple
編集- iPod 第1世代
- iPod 第2世代
- iPod 第3世代
- iPod 第4世代 (グレイスケール)※ロット(搭載CPUのリビジョン?)によって公式ビルドではunstableなものがある模様。
- iPod 第4世代 (Color/Photo)
- iPod 第5世代/第5.5世代 (Video)
- iPod mini 第1世代
- iPod mini 第2世代
- iPod nano 第1世代
iriver
編集- iriver H10 (H10 5/6/20GB)
- iriver H100 (H100/H110/H115/H120/H140, aka iHP-100/110/115/120/140)
- iriver H300 (H320/H340)
- MPIO HD300
- Vibe 500
- Sansa e200 シリーズ (v1/v2)
- Sansa e200r シリーズ
- Sansa c200 シリーズ (v1/v2)
- Sansa Fuze シリーズ (v1/v2)
- Sansa Clip シリーズ (v1/v2/Clip+)
- Sansa Clip Zip
Toshiba
編集- Gigabeat Fシリーズ (F10/F11/F20/F21/F30/F31/F40/F41/F60)
- Gigabeat Xシリーズ
不安定版
編集Apple
編集- iPod nano 第2世代
Cowon
編集- COWON D2
- MA9
- HM-60x
- HM-801
MPIO
編集- MPIO HD200
Olympus
編集- M:Robe 100
- M:Robe 500
- PhilipsGoGear HDD16x0
- GoGear HDD63x0
- GoGear SA9x00
- YH-820/YH-920/YH-925
- YP-R0
SanDisk
編集- Sansa Fuze+
Toshiba
編集- Gigabeat Sシリーズ
開発中の移植版
編集Rockboxは様々なデジタルオーディオプレーヤーを使う人たちによって開発されている。自分たちが使っているプレイヤーへRockboxを移植することに興味を持っている人であれば開発に加わることは常に歓迎である[16]。原理的には、プレイヤーのCPUにGCCが対応してさえいれば移植可能である。Rockboxの移植版がすでに存在するプレイヤーと共通の部品を持っていれば、開発は非常に容易になる。公開されている仕様書がない部品で作られていたり、ハッシュチェックや暗号化でファームウェアを積極的に保護していれば、移植は難しくなる。
Archos
編集- AV300
Cowon
編集- iAUDIO 7
- Zen Vision:M
- Zen Vision
- VX747
- VX767
- VX747+
- VX777
Samsung
編集- YP-S3
iriver
編集- iFP-790
- M6SL
- M6SP
- M3
- Elio TPJ-1022
Apple
編集- iPod classic
SanDisk
編集- Sansa m200 (v1/v4)
- Sansa c100
- Sansa View
- Sansa Connect
- DAX
- Lyre proto 1
- Mini2440
ソフトウェア
編集Nokia
編集- N8xx
- N900
Pandora
編集- Pandora
ギャラリー
編集-
iriver H120/iPod 4G, LlamaBetaテーマ
-
iPod Video, Mintyテーマ
-
iPod Video, iPodVisionテーマ
-
iAudio X5, zenX5テーマ
-
iPod Nano, Black Glass MGrテーマ
-
iPod Nano, Tangoテーマ
-
iriver H320/iPod Photo, DGTテーマ
-
Archos Jukebox Recorder/FM Recorder/Ondio, WPS by Jens Arnold
-
Toshiba Gigabeat, beatMP WPS by Kirill Lanchev
関連項目
編集参照
編集- ^ a b mpegplayerプラグインは MPEG-1 もしくは MPEG-2 形式のビデオでMPEGオーディオ (レイヤーII/III)(音声部はMP2とMP3にのみ対応)を多重化した.mpgファイル形式に対応。ハードウェアによるフレームレートとビットレートの制約はない。ファイルはおのおのの機器に応じた解像度である必要がある。早送りと巻き戻しにも対応。[1]
- ^ [2]
- ^ daniel.haxx.se » AMS Replied with the AS3525 Data Sheet
- ^ ただし、ソースツリーのアクセスは、Git (正確には、git-svn) を用いることが推奨されている。
- ^ a b 3.6 以降でサポート。
- ^ Monkey's Audioの対応は初期の段階であり、ほとんどデバイスにおいてリアルタイムに再生できるのは低圧縮の設定のみである。
- ^ 3.6 以降でサポート。ただし、一部の機種ではリアルタイムに再生することはできない。
- ^ 3.6 以降でサポート。ただし、音源が PCM または ADPCM であるものだけが再生可能。MIDI 音源は非対応。
- ^ a b ソフトウェアデコードのターゲットのみ
- ^ MP3 と WavPack と AIFF はArchos以外で利用可能。マルチサンプルレートとビットレートは利用可能。(ただし、ハードウェアに依存).
- ^ ある程度制限があります。詳細はRockbox ウィキ [3] をご覧ください。
- ^ RockboyはゲームボーイとゲームボーイカラーのROMに対応している。
- ^ ZXBoxはZX Spectrum 48をエミュレートする。Spectemuの元サイト: [4]
- ^ a b NoDo
- ^ Rockboxのカーネルについて
- ^ [5]
外部リンク
編集