简介
之前做过一个项目,项目需求将采集卡采集到的原始Txt文件转换为Wav,找了一圈也没有在Maven里面发现合适的第三方Jar包以供使用。
自己动手丰衣足食,代码不长,但是涉及到的知识有文件写入,大小端编码这些,用Java实现起来还是蛮有意思的,挖个坑,后续考虑将其封装成一个工具类,此处摆出最原始的版本。
Wav头文件具体格式请参照这个博客
import java.io.FileOutputStream;
import java.util.Random;
public class Main {
//采样率44100 * 8s长度的音频文件
private static final int DataLength = 44100 * 8;
public static void main(String[] args) {
try {
FileOutputStream out = new FileOutputStream("testtxttowav.wav");
out.write("RIFF".getBytes());
// DataLength + 36 数据的长度 + 除了前两个之后的头文件长度
out.write(intToByteArraySmall(DataLength + 36));
out.write("WAVE".getBytes());
out.write("fmt".getBytes());
out.write(0x20);
o