JavaでMP3ファイル さわって遊ぶ

JavaでMP3ファイル触ってたら、一日が終わりました。

JavaLayerいい感じです。
http://www.javazoom.net/javalayer/javalayer.html

MP3のフォーマットを調べました。
気になったこと

■フレームが独立
Wavとかのファイルと違って
MP3は個々のフレームに独立してヘッダーが付いてますので、
適当に切りはりしても(たぶん)
再生できる場合が多いです。
■1フレームの長さは固定(サンプリングレートによるが)
そしてフレームは必ず1152サンプルを持っています。
サンプルというのは44100hzという風に1秒間にどれだけサンプリングするかです。つまり、MP3では、25msぐらいの精度でしか音を分けることができません。
(十分ですが)
 そして、CBRのファイルの場合は、非常に簡単にファイルを分けることが出来ます。VBRの場合もフレームを数えていけばどうにかなりそうです。
■フレームのヘッダーサイズは32bit(4byte)

そのうち、JMP3JoinCutRemoveMixというソフトを作ろうと思っています。
3月中に出せるといいな。

参考になるページ(全部 google上位だけど)
http://mpgedit.org/mpgedit/mpeg_format/MP3Format.html
http://www.psionics.demon.co.uk/mp3/mp3info.html
http://kone.vis.ne.jp/diary/diaryb08.html
http://mosilla.tripod.com/mp3/bitstrea.htm
http://www.geocities.jp/bywnn498/mp3/44_playtime.htm