2006-07-10から1日間の記事一覧

WAVE file formatに悪戦苦闘してみる

Systemクラスのwrite()メソッドを使ってみる。 System.out.write(byte[] buff, int index, int byte)buffの内容をindexからbyteバイト分出力する。これで例えば byte[] buff = {16, 0, 0, 0}; System.out.write(buff, 0, 4);とすればbuffの内容を最初から4バ…

file formatをまとめてみる

(数値は全て16進表記であり、little endianである) バイト データ 備考 4バイト "RIFF" 4バイト これ以下のバイト数 ファイルサイズ - 8 8バイト "WAVEfmt " tの後にスペースあり 4バイト WAVEfmt欄のバイト数 常に 16 (10 00 00 00) 2バイト データ形式 P…

WAVEファイルをコンピュータに作らせる

前途多難。

ちなみにfile formatの部分がこうなったよ?

我ながら無茶が多い。

もうちょっと詳しく話しを聞くんだった

だが今となっては後の祭り。

実行してみるもファイル動かず・・・

ファイルを再生できません。プレーヤーがそのファイルの種類をサポートしていないか、そのファイルの圧縮に使用したコーデックをサポートしていない可能性があります。 と言われる。疲れた。

それとなくできたっぽい

import java.util.*; public class Wave{ static final int max = 44100; static int counter = 0, filesize = 0; static String[] wave = {"RIFF", "WAVEfmt ", "data"}; static byte[][] fmt = {{0x10,0,0,0}, {0x01, 0}, {0x02, 0}, {0x44, (byte)0xAC, 0…

こんな感じなのかな

実行結果はこうなったまだ音の方のデータが作ってないので、「これ以下のバイト数」とかが抜けているが、他は1byteで表示できているのでOKなのではないかと思われ。とりあえずデータ作ってみない事には・・・。