■Waveクリエイト■

ver 1.0

【WaveCreater.tonyu】で、wavファイルの作成、読み込みができます。


■更新■

【ver 1.0】
・WaveCreaterクラスを大幅に変更(メソッド名変更など)
・waveファイル情報取得は、変数を参照する仕様から、メソッドを使う仕様に変更
・waveファイル操作系メソッドで、WaveCreater内に波形データを置いていたのを、外部の波形データを使う仕様に変更
・waveCreate、waveReadメソッドのファイル読み書き処理を高速化
・サンプルの追加・改良

■機能■

▼Waveファイル操作系メソッド▼

メソッド(関数) 説明
waveCreate(name, ch, smp, bit, dataL, dataR) ■Wavファイル作成■
作った波形データをwavファイルにする。

●引数●
name : 作成するwavファイルの名前(拡張子不要)
ch : チャンネル数(1: モノラル 2: ステレオ)
smp : サンプリング数 (44100: 44.100kHz 22050: 22.050kHz)
bit : ビット数 (8: 8bit 16: 16bit)
dataL : 保存する、1ch波形データ配列 (モノラル時: 左右スピーカー ステレオ時: 左スピーカー)
dataR : 保存する、2ch波形データ配列 (モノラル時は引数不要 ステレオ時: 右スピーカー)


●配列内容●
[8bitの場合]
配列の1要素には、0〜255の値を格納。

[16bitの場合]
配列の1要素には、-32768〜32767の値を格納。


●戻り値●
正常に処理された時     :0
ファイル書き込みに失敗した時:1
引数が間違っている時    :2
waveRead(name, dataL, dataR) ■Wavファイル読み込み■
wavファイルから波形データを読み込む

●引数●
name : 読み込むwavファイルの名前(拡張子不要)
dataL : 1ch波形データを格納する配列 (モノラル時: 左右スピーカー ステレオ時: 左スピーカー)
dataR : 2ch波形データを格納する配列 (モノラル時は引数不要 ステレオ時: 右スピーカー)

●戻り値●
正常に処理された時      :0
ファイル読み込みに失敗した時 :1
引数が間違っている時     :2
対応していないフォーマットの時:3
ファイルが壊れている時    :4
waveHeaderRead(name) ■Wavヘッダーのみ読み込み■
wavファイルの情報を読み込む(波形データは読み込まない)
getFileSize()
getDataSize()
getFmtCode()
getCh()
getSmp()
getBytePerSecond()
getBlockSize()
getBit()
で取得できる情報が更新される。

●引数●
name : 読み込むwavファイルの名前(拡張子不要)

●戻り値●
正常に処理された時      :0
ファイル読み込みに失敗した時 :1
対応していないフォーマットの時:3
ファイルが壊れている時    :4

▼Wave情報取得系メソッド▼

メソッド(関数) 説明
getProgress() 現在のwavファイル書込or読込の、進捗状況を取得
getProgressMax() 進捗状況のwavファイル書込or読込の、最大値を取得
getFileSize() Wavファイルのサイズ
getDataSize() 波形データのサイズ(読み書きの処理をした時に、値がセットされる)
getDataSize() / getSmp() = 音声の長さ(秒) がわかる
getFmtCode() フォーマットコード
getCh() チャンネル数
getSmp() サンプリング数
getBytePerSecond() 転送速度(Byte/s)
getBlockSize() ブロックサイズ
getBit() ビット数

■サンプル■

1〜6キーでページを移動できます。
起動時は4ページが開きます。

・index
 波形を作り、ステレオの音声を作り出します。
 MediaPlayer等で聞いてください。

・index2
 リアルタイムで、wavを作り再生します。車のエンジン音のつもりです。
 (もう少し作りこみたいけど、サンプルなので…)
 こんな風にも応用できます。

 ただし、低スペック環境では処理落ちするかも…

・index3
 時報です!!
 アナログ放送で正午にテレビに出てきたアレです。
 デジタル放送ではタイムラグがあるため放送できず、アナログ放送終了とともにテレビから姿を消しました…
 ラジオや電話番号117では健在です。

・index4
 wavを読み込んで、波形を表示します。
 ちょっとした音楽プレイヤー?
 test4_8.wav 〜 test4_11.wav は、filesフォルダに好きなwavファイルを
 この名前で保存しておくと、読み込むことができます。

・index5
 かなり短いwavファイルを作り、鳴らします。(Zキーで)
 一番短いwavファイルをテストするのに必要だったので作った残骸ページ(^^;

・index6
 画面に表示されている周波数のサイン波を鳴らします。
 ↑↓キーで周波数を変更できます。