JAVA :: サウンド再生と音源
基本的に Java で使える音源ファイル変換についてのメモですが、単に mid wav flac mp3 等一般的な音源ファイル変換の基本としても参考になると思います。(内容無保証)
編集
Java Sound 再生
getAudioClip( url, str ) で音声再生と思ったら xxxx.au ファイルが無い・・・
フリーのサウンド素材でも .au などと言う音源を配布している所が見当たらず出るのは kddi の au ばかり。
unix 標準音声ファイルといっても ubuntu でも .ogg (・・・オジジ?・・・)を当たり前に使っているようでシステムにも .au など見当たらず・・・ちなみに Ubuntu のシステム関連サウンドは /usr/share/sounds/ にあるらしい。
OS 別音源ファイル
- MS-Windows
- wav
- Mac
- flac
- UNIX 系
- au らしいが linux系(ubuntu では) -> ogg ?と思われる。
ogg とは 著作権的制限ある .mp3 の代用?・・・> mp3 同等以上の仕様?らしい。
Java で使える au 形式は、量子化ビット 8bit 、サンプリング周波数 8000Hz 、 u-law 形式でないと使えないらしい。(・・・なんのことやら・・・)また、AudioClip クラスでは au , wav , mid も使えるが、多分いずれも(多分最低でも)サンプリング周波数 8000Hz 程度でないと音飛びして使い物にならない。
Java でも mp3 とか使用出きるが AudioClip クラスでは扱えず別のクラスを使用するらしい。
▲上へ [ 編集 ]
マルメデ系拡張子一覧(メモ)
拡張子一覧 | ||
---|---|---|
wav | win | |
flac | mac | |
au | unix | |
mid | MIDI(Musical Instrument Digital Interface)規格で作成されたデータ。パソコンからシンセサイザーなどを演奏する楽譜データと思えば簡単と思う?が詳細不明。普通シンセサイザ無くてもソフトシンセなどで演奏出来るみたい。類似形式で .mif .rmi .std なども有るらしい。 | |
mp3 と関連フォーマット | ||
mp2 | mp3 とほぼ同様と考えてよいらしいが、圧縮率が約 1/7 と言うことらしい。 | |
mp3 | MPEG1 Audio Layer3 :: CD 音質をほぼ劣化無しで 約1/12 に圧縮。現 STN な音声圧縮フォーマット。著作権保護機能が無いらしい。ライセンス料有り。より高圧縮同音質で wma , aac などあり。ogg は mp3の代替的? | |
mp4 | 音声ではなく動画ファイルらしいです。 | |
wma | Windows Media Audio :: MS が mp3 ライセンス料発生を嫌いその代替として作った(らしい)。比較的フリーに使えるみたい。 | |
aac | Advanced Audio Coding :: mp3 を超える高音質/圧縮を目的に標準化された方式。先進的技術が盛込まれ拡大中?の模様。次期 mp3 ? 著作権保護機能とか、ライセンス料とか不明。 | |
ogg | 「おじじ」でなく「オッグ」と読むらしい。mp3 ライセンス問題回避しつつ優れた音質を実現し、オープン且つフリーで使えるフォーマット(らしい)。Ubuntu では標準で使ってるようだが、あまり一般的でない。 |
▲上へ [ 編集 ]
音源変換
一般的に以下の何れかの方法で対処可能。CLI ツールは要音源関連「うんちく」・要格闘!その他 GUI ツールも操作に若干戸惑うかもしれない・・・
- wav 他 -> au 変換
- Sox(CLI) を使用
- mid -> wav/au/他音源へ変換
- TiMidity(CLI) を使用
- ms-win/mac-os 等なら winamp , iTuens 等を使用してみる。
- wav 他 -> mp3 変換
- soundconverter , soundkonverter , winff , xcfa 等の GUI ツールを使用
- LAME(CLI) でコマンド叩くとか・・・
- mp3 -> wav 他(au を除く)へ変換
- soundconverter , winff , 他 GUI ツールを使用
- mp3 -> au へ変換(要 2 step)
- soundconverter 等で mp3 -> wav(等) へ変換 SoX(CLI) で Option を指定し wav(等) -> au へ変換する。
- soundKonverter で mp3 -> wav/flac へ変換 soundKonverter で wav/flac -> au へ変換する。但し Option 指定が出来ず Java では使えない。
詳細は 音源変換メモ を参照
▲上へ [ 編集 ]
音源変換ツール
主に linux で使えるツールと CLI では コマンドの使い方などをメモ
mid を変換するなら timidity(CLI) 、au へ変換するなら sox(CLI) で Option を指定して実行します。
mp3 , ogg , wav , flac 等 OS や音源ファイルとして一般的なファイル変換には、操作が容易な GUI ツールが便利。
詳細は 音源変換メモ を参照
▲上へ [ 編集 ]
getAudioClip の音源再生
- 再生可能
- .mid
確かに再生出来ます。・・・が音飛びが激しく使えない。変換時にサンプルレートとかなんちゃらHzとか調整が必要なのか?.mid の容量がでかいのか? - .wav
非常に明瞭に再生可能。ファイルが小さいから? - .au
soundkonverter で単純に変換したちとデカい .au ファイルを再生したところ .mid 同様音飛びが・・・
- .mid
- 再生不能
- .flac
だめだめダァ〜 - .ogg
オジジだめです。 - .mp3
ハナからダメです。(多分 .ogg も)再生時の処理を別途準備しないといけません。
- .flac
あとデカい音声ファイルはダメ(音が飛ぶ、起動が遅くなるとか)っぽい?
音源変換ツールで音源の仕様を Java の要件に一致させれば .wav .au ファイルも再生可能です。 .mid については仕様変更困難(現時点で不明)なので .wav / .au へ変換して再生。.mp3 / .ogg / .flac も同様に .wav .au へ変換して Java で使用可能。
▲上へ [ 編集 ]
関連ページ
- 開発環境関連
- JAVA 関連
- 音源変換メモ
▲上へ [ 編集 ]
2011年04月05日(火) 10:36:09 Modified by sakura_momo2