このエントリーをはてなブックマークに追加

Raw形式(ヘッダーなし)の音声データーを、通常のソフトで扱えるWav形式のデーターに変換する方法

および、Wav形式のデーターをRaw形式に変換する方法を説明します。


注意


Soxを使って

オープンソースソフト Soxを使用する場合


RawデーターをWaveにする

Rawデーターを読み込む場合は、形式および、サンプルビット・サンプリングレート・チャンネルを指定する必要があります


■形式の指定

Wav形式の場合、8bitのデーターは符号無しで、16bitのデーターは符号有りになります。

-s signed (符号付)です

-u unsigned (符号無し)です。

注意

その他にADPCM等も指定できるようです。詳しくは、Sox付属のマニュアルをご覧ください

■サンプルビットの指定

通常、8bitあるいは16bitを指定すると思います。

-b 8bit

-w 16bit

-l 32bit

-d 64bit

■サンプリングレートの指定

-r の後に数値を入力して指定します。

-r 11025

-r 22050

-r 44100

■チャンネルの指定

-cの後に数値を入力して指定します。

ステレオ

-c 2

モノラル

-c 1

■エンディアンの入れ替え

-x エンディアンを入れ替えます。(big・littleの指定ではないので注意)


16kHz signed 16bitのデーターの場合は以下のようになります。

sox -r 16000 -c 1 -w -s "input.raw" "output.wav"

ファイルの拡張子がraw以外の場合、-t rawでファイル形式をRawと指定します

sox -r 16000 -c 1 -w -s -t raw "input.xxx" "output.wav"

Raw形式が、BigEndianの場合、は-xでエンディアンを変換します

sox -r 16000 -c 1 -w -s -t raw -x "input.xxx" "output.wav"

Wav形式をRawデーターにする

非常に簡単です。

Soxでは出力ファイルの拡張子がrawの場合、Rawデーターをとして処理します。

MS-DOSを開きます。Soxをインストールした場所へ、MS-DOS上でディレクトリーを移動します。

そして以下のコマンドを順に入力します。

input.wavは入力元の音声のファイルパスに置き換えてください。

output.rawは出力先の音声のファイルパスに置き換えてください。

sox "input.wav" "output.raw"

ファイルの拡張子がraw以外の場合は

sox "input.wav" -t raw "output.xxx"

Bigエンディアン形式で保存する場合は、

sox "input.wav" -t raw -x "output.xxx"

関連

Signed/Unsignedって?

クリエイティブ・コモンズ・ライセンス
このworkは、クリエイティブ・コモンズ・ライセンスの下でライセンスされています。

サイト
Android情報サイト | Youtube サイト | Java サイト | Google 活用サイト | Google 情報サイト | 無料ソフト活用 サイト |写真活用のPicasa2 サイト |新サイト

Blog
Android ブログ


Copyright (c)2004 - 2012 Aki. All rights reserved.