Archief - Geluid in java?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

stienoo

Legacy Member
Ik zou graag geluid gebruik in java (geluidsbestanden afspelen of met MIDI mag ook) maar ik zou niet weten hoe dit moet, kan iemand mij helpen?

WHiSPy

Legacy Member
Al op de idee gekomen om java sound op te zoeken op google?

stienoo

Legacy Member
Heu, nee, ik zal meteen gaan zoeken!

*edit*
Kent iemand een goede tutorial?

Yngwie

Legacy Member
Bekijk het Java media framework (JMF) eens. Wanneer je meerdere formaten nodig hebt (bv mp3 of ogg) dan gebruik je best de Fobs4JMF plugin voor JMF. Dat is een java wrapper voor ffmpeg waarmee je de meeste audio en videoformaten kan afspelen.

Voor mijn afstudeerproject waar ik een streaming mediaserver aan het schrijven ben gebruik ik deze combinatie voor de playback van zowel audio als video.

Kemblin

Legacy Member
zoiets, een beetje aanpassen hier en daar en klaar

Code:
import java.io.IOException;
import java.io.File;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.DataLine;

public class Sound extends Thread{  
	private static String filename = "";
	
	public static void setup(String filename) throws IOException {
		Sound.filename = filename;    
	}
	
	public void run() {    
		if(filename.equals("")) return;
		try{      
			AudioInputStream stream = AudioSystem.getAudioInputStream(new File(filename));     			  
			DataLine.Info info = new DataLine.Info(Clip.class, stream.getFormat());      
			Clip clip = (Clip)AudioSystem.getLine(info);         
			clip.open(stream);      
			clip.start();		
			while(clip.isRunning()) {
				Thread.sleep(100);
			}
		} catch (Exception e) {      
			e.printStackTrace();    
		}  
	}
}
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan