audioStream = AudioSystem.getAudioInputStream(soundFile); } catch (Exception e){ e.printStackTrace(); audioFormat = audioStream.getFormat(); DataLine.Info info = new DataLine.Info(SourceDataLine.class, audioFormat); try { sourceLine = (SourceDataLine) AudioSystem.getLine(info); sourceLine.open(audioFormat); } catch (LineUnavailableException e) { e.printStackTrace(); sourceLine.start(); while (nBytesRead != -1) { try { nBytesRead = audioStream.read(abData, 0, abData.length); } catch (IOException e) { e.printStackTrace(); int nBytesWritten = sourceLine.write(abData, 0, nBytesRead); sourceLine.drain(); sourceLine.close();
soundNode.add(soundSampledNode); md = new MediaData("Suffixes", "Sound File Suffixes", AudioSystem.getAudioFileTypes()); soundSampledNode.add(new DefaultMutableTreeNode(md)); Control[] controls = line.getControls(); if (line instanceof DataLine) { DataLine dataLine = (DataLine)line; AudioFormat audioFormat = dataLine.getFormat(); data = new Object[7+controls.length][2]; data[0][1] = new Integer(audioFormat.getChannels()); data[1][1] = audioFormat.getEncoding(); data[2][1] = new Float(audioFormat.getFrameRate()); data[6][1] = new Float(dataLine.getLevel()); Port.Info portInfo = (Port.Info)port.getLineInfo(); data = new Object[2+controls.length][2]; data[kk][1] = controls[index]; md = new MediaData(getShortLineName(line.getLineInfo().toString()), columnNames, data); soundSampledMixerNode.add(new DefaultMutableTreeNode(md));
format = new AudioFormat(sampleRate, 16, 1, true, false); receivePacket.getData()); ais = new AudioInputStream(baiss, format, receivePacket.getLength()); try { DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class, format); SourceDataLine sourceDataLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo); sourceDataLine.open(format); sourceDataLine.start(); sourceDataLine.open(format); sourceDataLine.start(); System.out.println("format? :" + sourceDataLine.getFormat()); sourceDataLine.write(soundbytes, 0, soundbytes.length); System.out.println(soundbytes.toString()); sourceDataLine.drain(); sourceDataLine.close(); } catch (Exception e) { System.out.println("Not working in speakers...");
new AudioFormat(Note.SAMPLE_RATE, 8, 1, true, true); SourceDataLine line = AudioSystem.getSourceDataLine(af); line.open(af, Note.SAMPLE_RATE); line.start(); for (Note n : Note.values()) { play(line, n, 500); play(line, Note.REST, 10); line.drain(); line.close(); ms = Math.min(ms, Note.SECONDS * 1000); int length = Note.SAMPLE_RATE * ms / 1000; int count = line.write(note.data(), 0, length);
AudioInputStream din = null; try { AudioInputStream in = AudioSystem.getAudioInputStream(new URL("http://www.howjsay.com/mp3/"+ args[0] +".mp3")); AudioFormat baseFormat = in.getFormat(); AudioFormat decodedFormat = new AudioFormat( AudioFormat.Encoding.PCM_SIGNED, baseFormat.getSampleRate(), 16, baseFormat.getChannels(), baseFormat.getChannels() * 2, baseFormat.getSampleRate(), false); din = AudioSystem.getAudioInputStream(decodedFormat, in); DataLine.Info info = new DataLine.Info(SourceDataLine.class, decodedFormat); SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info); if(line != null) { line.open(decodedFormat); byte[] data = new byte[4096]; line.start(); while ((nBytesRead = din.read(data, 0, data.length)) != -1) { line.write(data, 0, nBytesRead); line.drain(); line.stop(); line.close(); din.close();
dataLine = AudioSystem.getSourceDataLine( clip.getFormat() ); return (frames/(long)dataLine.getFormat().getSampleRate())*1000; return (int)(milliseconds/dataLine.getFormat().getSampleRate()); public int getFramePosition() { long timeSinceLastPositionSet = System.currentTimeMillis() - timelastPositionSet; int size = dataLine.getBufferSize()*(format.getChannels()/2)/bufferUpdateFactor; int framesSinceLast = (int)((timeSinceLastPositionSet/1000f)* dataLine.getFormat().getFrameRate()); int framesRemainingTillTime = size - framesSinceLast; return framePosition return dataLine.getLevel(); return dataLine.getLongFramePosition()*2/format.getChannels(); return dataLine.available(); return dataLine.getBufferSize(); return dataLine.isActive(); return dataLine.isRunning(); dataLine.stop(); if (thread!=null) { try {
* format.getFrameSize())]; seconds = 0; while (thread != null) { if ( (capture.line != null) && (capture.line.isActive()) ) { long milliseconds = (long)(capture.line.getMicrosecondPosition() / 1000); seconds = milliseconds / 1000.0; while ((capture.line != null && !capture.line.isActive())) DataLine.Info info = new DataLine.Info(TargetDataLine.class, format); line = (TargetDataLine) AudioSystem.getLine(info); line.open(format, line.getBufferSize()); } catch (LineUnavailableException ex) { shutDown("Unable to open the line: " + ex); int bufferLengthInFrames = line.getBufferSize() / 8; int bufferLengthInBytes = bufferLengthInFrames * frameSizeInBytes; byte[] data = new byte[bufferLengthInBytes]; int numBytesRead; line.start(); line.stop(); line.close(); line = null;
public static double getLength(String path) throws Exception { AudioInputStream stream; stream = AudioSystem.getAudioInputStream(new URL(path)); AudioFormat format = stream.getFormat(); if (format.getEncoding() != AudioFormat.Encoding.PCM_SIGNED) { format = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, format .getSampleRate(), format.getSampleSizeInBits() * 2, format .getChannels(), format.getFrameSize() * 2, format .getFrameRate(), true); // big endian stream = AudioSystem.getAudioInputStream(format, stream); DataLine.Info info = new DataLine.Info(Clip.class, stream.getFormat(), ((int) stream.getFrameLength() * format.getFrameSize())); Clip clip = (Clip) AudioSystem.getLine(info); clip.close(); return clip.getBufferSize() / (clip.getFormat().getFrameSize() * clip.getFormat() .getFrameRate());
clip.open(inputStream); clip.start(); System.out.println("" + (System.currentTimeMillis() - startTime) + ": sound started playing!"); Thread.sleep(durationInMiliSeconds); while (true) { if (!clip.isActive()) { System.out.println("" + (System.currentTimeMillis() - startTime) + ": sound got to it's end!"); break; long fPos = (long)(clip.getMicrosecondPosition() / 1000); long left = durationInMiliSeconds - fPos; System.out.println("" + (System.currentTimeMillis() - startTime) + ": time left: " + left); if (left > 0) Thread.sleep(left); clip.stop(); System.out.println("" + (System.currentTimeMillis() - startTime) + ": sound stoped"); clip.close(); inputStream.close(); } catch (LineUnavailableException e) { e.printStackTrace();
line.stop(); line.close(); AudioInputStream encoded = AudioSystem.getAudioInputStream(file); AudioFormat encodedFormat = encoded.getFormat(); AudioFormat decodedFormat = this.getDecodedFormat(encodedFormat); Long duration = null; AudioInputStream currentDecoded = AudioSystem.getAudioInputStream(decodedFormat, encoded); line = AudioSystem.getSourceDataLine(decodedFormat); line.open(decodedFormat); line.start(); boolean fezFadeIn = false; boolean fezFadeOut = false; duration > paramFade && !fezFadeOut && line.getMicrosecondPosition() >= duration - ((this.secondsFade+1)*1000000) ) line.stop(); lock.wait(); line.start(); line.write(b, 0, i); line.drain(); line.stop(); line.close(); currentDecoded.close();
try { AudioFormat af = new AudioFormat(24000, 16, 1, true, false); DataLine.Info info = new DataLine.Info(SourceDataLine.class, af); SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info); line.open(af, 4096); line.start(); line.write(buffer, 0, buffer.length); line.drain(); line.stop(); line.close(); } catch (Exception e) { throw new RuntimeException(e.getMessage(), e);
DataLine.Info info = new DataLine.Info(TargetDataLine.class, format); microphone = (TargetDataLine) AudioSystem.getLine(info); microphone.open(format); int numBytesRead; int CHUNK_SIZE = 1024; byte[] data = new byte[microphone.getBufferSize() / 5]; microphone.start(); audioInputStream = new AudioInputStream(byteArrayInputStream,format, audioData.length / format.getFrameSize()); DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class, format); sourceDataLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo); sourceDataLine.open(format); sourceDataLine.start(); int cnt = 0; byte tempBuffer[] = new byte[10000]; try { while ((cnt = audioInputStream.read(tempBuffer, 0,tempBuffer.length)) != -1) { if (cnt > 0) { sourceDataLine.write(tempBuffer, 0, cnt); sourceDataLine.drain(); sourceDataLine.close(); microphone.close(); } catch (LineUnavailableException e) { e.printStackTrace();
LineUnavailableException { audioIn = AudioSystem.getAudioInputStream(file); fmt = audioIn.getFormat(); bufferSize = fmt.getFrameSize() * 8192; frameSize = fmt.getFrameSize(); totalFrames = audioIn.getFrameLength(); sampleRate = fmt.getSampleRate(); try { audioOut = AudioSystem.getSourceDataLine(audioIn.getFormat()); audioOut.open(fmt, bufferSize); } catch (LineUnavailableException x) { try { audioOut.start(); int bytesWritten = audioOut.write(buffer, 0, bytesRead); if (bytesWritten != bytesRead) { audioOut.drain(); audioOut.stop(); } catch (Throwable x) { showErrorMessage(x); audioOut.close();
clips[sound][clipIndex[sound]].setFramePosition(0); stream = AudioSystem.getAudioInputStream(AudioManager.class.getClass().getResource(files[s])); } catch (UnsupportedAudioFileException | IOException e) { initializeClips(sound); clips[sound][clipIndex[sound]].start(); clipIndex[sound]++; if(clipIndex[sound] == 10){ clipIndex[sound] = 0; clips[sound][clipIndex[sound]].drain(); clips[sound][clipIndex[sound]].flush(); clips[sound][clipIndex[sound]].setFramePosition(0); line.open(audioFormat); line.start(); line.write(abData, 0, nBytesRead); line.drain(); line.stop(); line.close(); line = null; backgroundOn = false;
fmt = new AudioFormat(44100, 16, 2, AudioFormat fmt = getAudioFormat(); DataLine.Info info = new DataLine.Info(SourceDataLine.class, fmt); return info; source.open(fmt); source.start(); return (int) (time * (fmt.getSampleRate() * fmt.getChannels() * fmt.getSampleSizeInBits()) / 8000.0); source.close(); source.write(b, 0, len * 2); source.drain(); int pos = 0; if (source != null) { pos = (int) (source.getMicrosecondPosition() / 1000);
stream = AudioSystem.getAudioInputStream(soundFile); format = stream.getFormat(); info = new DataLine.Info(Clip.class, format); clip = (Clip) AudioSystem.getLine(info); clip.open(stream); clip.start(); while(clip.getMicrosecondLength() != clip.getMicrosecondPosition()) {} clip.close(); stream.close(); soundFile.close(); }catch(Exception ex){
public void actionPerformed(ActionEvent e) { if (clip != null) { clip.stop(); clip.close(); AudioInputStream audioStream = AudioSystem.getAudioInputStream(audioFile); AudioFormat format = audioStream.getFormat(); DataLine.Info info = new DataLine.Info(Clip.class, format); this.clip = (Clip) AudioSystem.getLine(info); this.clip.open(audioStream); if (clip != null && clip.isRunning()) { lastFrame = clip.getFramePosition(); System.out.println("Stop"); clip.stop(); if (clip != null && !clip.isRunning()) { if (lastFrame < clip.getFrameLength()) { clip.setFramePosition(lastFrame); } else { clip.setFramePosition(0); clip.start();
final File outputAudio = new File(args[1]); final AudioFileFormat.Type fileType = AudioSystem.getAudioFileFormat(inputAudio).getType(); final Clip c = AudioSystem.getClip(); AudioInputStream ais = AudioSystem.getAudioInputStream(inputAudio); c.open(ais); final AudioFormat audioFormat = ais.getFormat(); c.stop(); AudioInputStream startStream = new AudioInputStream(new FileInputStream(inputAudio), audioFormat, c.getLongFramePosition()); AudioSystem.write(startStream, fileType, outputAudio); c.start();
try { URL url = Sandbox.class.getResource("/sound-effects/Loud-alarm-clock-sound.wav"); AudioInputStream ais = AudioSystem.getAudioInputStream(url); AudioFormat af = ais.getFormat(); DataLine.Info info = new DataLine.Info(Clip.class, af); Clip clip = (Clip) AudioSystem.getLine(info); clip.open(ais); clip.start(); System.out.println("Drain..."); clip.drain(); System.out.println("...Drained"); } catch (UnsupportedAudioFileException | IOException | LineUnavailableException exp) {
line.write(data, 0, data.length); start(); line.write(data2, 0, data2.length); line.drain(); line.stop(); AudioFormat format = new AudioFormat(8000.0F, 8, 1, true, false); SourceDataLine.Info info = new DataLine.Info(SourceDataLine.class, if (!AudioSystem.isLineSupported(info)) { System.out.println("Format not supported"); System.exit(1); line = (SourceDataLine) AudioSystem.getLine(info); line.open(format); } catch (LineUnavailableException ex) { ex.printStackTrace(); line.start();