![]() |
[Java] Problem mit AudioInputStream
Morgen.
Ich spiel grad unter Java ein bisschen mit nem AudioInputStream herum und habe folgendes Problem: Ich versuche, den Stream mit der Utility-Klasse AudioSystem in ein passendes Format zu verwandeln und dann die einzelnen Samplewerte auszulesen und in einen int[]-Buffer zu packen. Mein Code dazu sieht so aus:
Code:
Das Problem ist, dass mir der Stream Werte jenseits von Gut und Böse liefert, mit denen ich gar nichts anfangen kann.
public int[] getIntBuffer()
throws UnsupportedAudioFileException, IOException { AudioInputStream stream = getStream(); int[] buffer = null; try { AudioFormat tmpFormat = new AudioFormat( Encoding.PCM_SIGNED, stream.getFormat().getSampleRate(), stream.getFormat().getSampleSizeInBits(), 1, stream.getFormat().getFrameSize(), stream.getFormat().getSampleRate(), false); AudioInputStream tmpStream = AudioSystem.getAudioInputStream(tmpFormat, stream); byte[] buf = new byte[tmpFormat.getFrameSize()]; buffer = new int[(int) tmpStream.getFrameLength()]; if (tmpFormat.getFrameSize() > 1) { for (int i = 0; i < buffer.length; i++) { tmpStream.read(buf); buffer[i] = (int) (buf[0]) | (int) (buf[1])<<8; System.out.println(buffer[i]); } } else { for (int i = 0; i < buffer.length; i++) { tmpStream.read(buf); buffer[i] = (int) (buf[0]); } } } catch (IOException e) { e.printStackTrace(); } return buffer; } |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz