マイクから録音して、.wavファイルとしてディスクに保存しています。JavaサウンドApi:ディスクに録画を保存した後でWavファイルが再生されない
Media Playerでwavファイルを再生できません。これは正常ですか?
AudioFormat format = new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
44100.0F, 16, 2, 4, 44100.0F, false);
DataLine.Info info = new DataLine.Info(TargetDataLine.class, format); // format is an AudioFormat object
// Obtain and open the line.
try {
targetLine = (TargetDataLine) AudioSystem.getLine(info);
targetLine.open(format);
targetLine.start();
ByteArrayOutputStream out = new ByteArrayOutputStream();
int numBytesRead;
byte[] data = new byte[targetLine.getBufferSize()/5];
targetLine.start();
while (recording) {
numBytesRead = targetLine.read(data, 0, data.length);
out.write(data, 0, numBytesRead);
System.out.println(Arrays.toString(data));
}
File fileOut = new File("C:\\audio\\audio6.wav");
AudioInputStream ais = new AudioInputStream(targetLine);
if (AudioSystem. isFileTypeSupported(AudioFileFormat.Type.WAVE,ais)) {
AudioSystem.write(ais, AudioFileFormat.Type.WAVE, fileOut);
System.out.println("writen");
}
targetLine.stop();
ais.close();
それが動作するはずです。ファイル内にデータがありますか、それともちょうど迷惑メールですか? –
ByteArrayOutputStreamのコンテンツを使用していません - なぜですか? –
@ジョン私は別の書き込みを試みていた:// \t \t OutputStream outputStream = new FileOutputStream(fileOut); // \t \t // \t \t \t \t out.writeTo(OutputStreamの); // \t \t \t \t outputStream.close(); // \t \t \t \t out.close(); – Blitzkr1eg