pcm ファイルがあり、それを wav ファイルに変換したいと考えています。
これに適した API またはコードはありますか?
まだコメントを残すことはできませんがget16BitPcm
、devflow の回答の方法は [奇妙なことに] 入力データをスケーリングしていることに注意してください。wav ファイルに書き込む 16 ビットの pcm データが既にある場合、メソッドは次のようになります。
public byte[] get16BitPcm(short[] data) {
byte[] resultData = new byte[2 * data.length];
int iter = 0;
for (short sample : data) {
resultData[iter++] = (byte)(sample & 0x00ff);
resultData[iter++] = (byte)((sample & 0xff00) >>> 8);
}
return resultData;
}
最初のインターンシップで最初のプロジェクトでコンバーター (linux c/c++) を開発するために使用した "OperateWav" というものを知っています。これ自体が存在するかどうか、Java をサポートするかどうかはわかりません。 pcm raw データに wav 形式のヘッダーを追加しています...