Bom dia!
Estou fazendo um player em Java sound (java.sound.sampled). Pesquisei na documentação da Sun, mas sinceramente, não entendi.
Existe o tipo de line que é o SourceDataLine, criei um line deste tipo, e chega num momento que tenho que abrir a linha, statear ela e depois escrever.
.
.
.
SourceDataLine.Info info = new DataLine.Info(SourceDataLine.class, format, ((int)stream.getFrameLength()*format.getFrameSize()));
line = (SourceDataLine) AudioSystem.getLine(info);
line.open();
line.start();
byte[] buf = new byte[line.getBufferSize()];
line.write(buf, 0, numRead-offset);
.
.
.
Minha dúvida é que somente o line.start não inicia a música (fiz testes) tem que ter o
line.write();
Então o que faz o line.open e o line.start, qual a função deles?