WAVファイルをビットマップファイルへ変換
WAVファイルをビットマップファイルへ変換します.
WAVファイルをBMPファイルへ変換する
WAVファイルをBMPファイル(ビットマップファイル)へ変換する.以降にプログラムの機能をイメージ図で示す.
WAVファイルから生成するBMPファイルの名前は,引数で指定するプログラムと,自動的に命名するプログラムが存在します.本プログラムは通常は引数は二つで構いません.最初の引数は入力のWAVファイル名です.二番目の引数は出力用のBMPファイル名です.
wav2bmp <入力ファイル名1> <出力ファイル名> |
さらに,二つの引数を与えることが可能です.この追加の引数は出力BMPファイルの幅と高さを指定することができます.
wav2bmp <入力ファイル名1> <出力ファイル名> [ <幅> <高さ> ] |
以降に,実行例を示します.続いて、16ビット・ステレオのWAVファイルをBMPファイルへ変換します.以降に動作の様子を示します.
C:\>wav2bmp 異邦人_10msec.wav wav2bmp02.bmp
ファイル名[異邦人_10msec.wav] "fmt "の長さ: 16 [bytes] データ形式: 1 (1 = PCM) チャンネル数: 2 サンプリング周波数: 44100 [Hz] バイト数 / 秒: 176400 [bytes/sec] バイト数×チャンネル数: 4 [bytes] ビット数 / サンプル: 16 [bits/sample]
"data" の長さ: 1760 [bytes]
時間=0.010
[異邦人_10msec.wav] を [wav2bmp02.bmp] へ変換しました. |
出力のビットマップファイル:
出力BMPファイル)
続いて,大きさを指定してBMPファイルへ変換します.以降に動作の様子を示します.
C:\>wav2bmp 月16_10msec.wav wav2bmp03.bmp 1000 500
ファイル名[月16_10msec.wav] "fmt "の長さ: 16 [bytes] データ形式: 1 (1 = PCM) チャンネル数: 2 サンプリング周波数: 44100 [Hz] バイト数 / 秒: 176400 [bytes/sec] バイト数×チャンネル数: 4 [bytes] ビット数 / サンプル: 16 [bits/sample]
"data" の長さ: 1760 [bytes]
時間=0.010
[月16_10msec.wav] を [wav2bmp03.bmp] へ変換しました. |
出力のビットマップファイル:
出力BMPファイル(wav2bmp03.bmp)
サイズを指定できるため,大きなビットマップファイルを作成することも可能です.
BITMAPファイルの概要・その2
先のプログラムと違い,右チャンネルと左チャンネルを別々のBMPファイルへ変換します.入力WAVファイルがモノラルの場合,ひとつのBMPファイル(ビットマップファイル)が生成されます.
本プログラムは通常は引数は一つで構いません.出力のBMPファイル名は自動で命名されます.入力ファイルがステレオの場合,左チャンネルがleftWave.bmp,右チャンネルはrightWave.bmpという二つのBMPファイルが生成されます.入力ファイルがモノラルの場合,monoWave.bmpという一つのBMPファイルが生成されます.
wav2bmp2 <入力ファイル名1>
|
さらに,二つの引数を与えることが可能です.この追加の引数は出力BMPファイルの幅と高さを指定することができます.
wav2bmp2 <入力ファイル名1> [ <幅> <高さ> ]
|
以降に,実行例を示します.8ビット・ステレオの1002 [Hz]のSin波をBMPファイルへ変換します.以降に動作の様子を示します。
C:\>wav2bmp2
sin1002Hz8_10msec.wav
ファイル名[sin1002Hz8_10msec.wav]
"fmt "の長さ: 16 [bytes]
データ形式: 1 (1 = PCM)
チャンネル数: 2
サンプリング周波数: 44100
[Hz]
バイト数 / 秒: 88200 [bytes/sec]
バイト数×チャンネル数: 2 [bytes]
ビット数 / サンプル: 8
[bits/sample]
"data" の長さ: 880 [bytes]
時間=0.010
[sin1002Hz8_10msec.wav] を変換しました.
|
出力のビットマップファイル:
出力BMPファイル・左チャンネル(leftWave.bmp)
出力BMPファイル・右チャンネル(rightWave.bmp)
16ビット・ステレオのWAVファイルをBMPファイルへ変換します.以降に動作の様子を示します。
C:\>wav2bmp2 異邦人_10msec.wav
ファイル名[異邦人_10msec.wav]
"fmt "の長さ: 16 [bytes]
データ形式: 1 (1 = PCM)
チャンネル数: 2
サンプリング周波数: 44100
[Hz]
バイト数 / 秒: 176400 [bytes/sec]
バイト数×チャンネル数: 4 [bytes]
ビット数 / サンプル: 16
[bits/sample]
"data" の長さ: 1760 [bytes]
時間=0.010
[異邦人_10msec.wav] を変換しました.
|
出力のビットマップファイル:
出力BMPファイル・左チャンネル(leftWave.bmp)
出力BMPファイル・右チャンネル(rightWave.bmp)
続いて、16ビット・ステレオのWAVファイルを,大きさを指定してBMPファイルへ変換します.以降に動作の様子を示します。
C:\>wav2bmp2 月16_10msec.wav 1200 600
ファイル名[月16_10msec.wav] "fmt "の長さ: 16 [bytes] データ形式: 1 (1 = PCM) チャンネル数: 2 サンプリング周波数: 44100 [Hz] バイト数 / 秒: 176400 [bytes/sec] バイト数×チャンネル数: 4 [bytes] ビット数 / サンプル: 16 [bits/sample]
"data" の長さ: 1760 [bytes]
時間=0.010
[月16_10msec.wav] を変換しました. |
出力のビットマップファイル:
出力BMPファイル・左チャンネル(leftWave.bmp)
出力BMPファイル・右チャンネル(rightWave.bmp)
サイズを指定できるため,大きなビットマップファイルを作成することも可能です.
これまでは短いWAVファイルを試していましたが,CDなどに収められている通常の3分程度の曲をBMPファイルへ変換します.以降に動作の様子を示します。
C:\>wav2bmp2 異邦人.wav
ファイル名[異邦人.wav]
"LIST"の長さ: 238 [bytes]
"fmt "の長さ: 18 [bytes]
データ形式: 1 (1 = PCM)
チャンネル数: 2
サンプリング周波数: 44100
[Hz]
バイト数 / 秒: 176400 [bytes/sec]
バイト数×チャンネル数: 4 [bytes]
ビット数 / サンプル: 16
[bits/sample]
"data" の長さ: 39400704 [bytes]
時間=223.360
[異邦人.wav] を変換しました.
|
出力のビットマップファイル:
出力BMPファイル・左チャンネル(leftWave.bmp)
出力BMPファイル・右チャンネル(rightWave.bmp)
BITMAPファイルの概要・その3
直前のプログラムを拡張し,WAVファイルの一部を抜き出せるようにしました.本プログラムは通常引数は三つでかまいません.出力のBMPファイル名は以前のプログラム同様,自動で命名されます.入力ファイルの次に与えるのが,BMPファイル化する範囲です.この二つの引数には実数を指定できます.たとえば,入力WAVファイルの10.1秒目から0.5秒間をBMPファイルかしたければ,「10.1 0.5」を指定します.
wav2bmp2 <入力ファイル名> <開始位置:秒> <長さ:秒> |
さらに,二つの引数を与えることが可能です.この追加の引数は出力BMPファイルの幅と高さです.
wav2bmp2 <入力ファイル名> <開始位置:秒> <長さ:秒> [ <幅> <高さ> ] |
「開始位置:秒」には,入力WAVファイルの対象開始秒位置を実数で指定します.「長さ:秒」には,開始秒位置から何秒をBMPファイル化するか指定します.以降に概要を図で示します.
以降に,実行例を示します.まずは、16ビット・ステレオの音源の一部を,BMPファイルへ変換してみます.以降に動作の様子を示します。
C:\>wav2bmp3 異邦人.wav 53.3
1.11
ファイル名[異邦人.wav]
"LIST"の長さ: 238 [bytes]
"fmt "の長さ: 18 [bytes]
データ形式: 1 (1 = PCM)
チャンネル数: 2
サンプリング周波数: 44100
[Hz]
バイト数 / 秒: 176400 [bytes/sec]
バイト数×チャンネル数: 4 [bytes]
ビット数 / サンプル: 16
[bits/sample]
"data" の長さ: 39400704 [bytes]
時間=223.360
[異邦人.wav] を変換しました.
|
出力のビットマップファイル:
左チャンネル(leftWave.bmp)
右チャンネル(rightWave.bmp)
生成されたBMPファイルは,異邦人.wavの53.3 秒目から1.11秒間の波形です.
続いて、16ビット・ステレオのWAVファイルをBMPファイルへ変換します.BMPファイルのサイズも指定します.以降に動作の様子を示します。
C:\>wav2bmp3 "11 さよなら.wav"
100 0.015 2000 500
ファイル名[11 さよなら.wav]
"LIST"の長さ: 242 [bytes]
"fmt "の長さ: 18 [bytes]
データ形式: 1 (1 = PCM)
チャンネル数: 2
サンプリング周波数: 44100
[Hz]
バイト数 / 秒: 176400 [bytes/sec]
バイト数×チャンネル数: 4 [bytes]
ビット数 / サンプル: 16
[bits/sample]
"data" の長さ: 53345712 [bytes]
時間=302.413
[11 さよなら.wav] を変換しました.
|
出力のビットマップファイル:
出力BMPファイル・左チャンネル(leftWave.bmp)
出力BMPファイル・右チャンネル(rightWave.bmp)
開始位置に100 秒目から0.015秒間です.そしてBMPファイルサイズに幅2000ピクセル,高さ500ピクセルを指定しました.入力ファイルがステレオのため,左チャンネルがleftWave.bmp,右チャンネルはrightWave.bmpというBMPファイルで生成されます.