下面列出了javax.sound.sampled.LineEvent#getType ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
public void update(LineEvent e) {
if (e.getType() == LineEvent.Type.STOP) {
stopOccured++;
out(" Test program: receives STOP event for clip="+clip.toString()+" no."+stopOccured);
out(" Test program: Calling close() in event dispatcher thread");
clip.close();
synchronized (lock) {
lock.notifyAll();
}
}
else if (e.getType() == LineEvent.Type.CLOSE) {
out(" Test program: receives CLOSE event for "+clip.toString());
synchronized (lock) {
lock.notifyAll();
}
}
else if (e.getType() == LineEvent.Type.START) {
out(" Test program: receives START event for "+clip.toString());
}
else if (e.getType() == LineEvent.Type.OPEN) {
out(" Test program: receives OPEN event for "+clip.toString());
}
}
public void update(LineEvent event) {
// If you stop playback or to the end
if(event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // Playback position back to the beginning
}
}
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
public void update(LineEvent event) {
// �X�g�b�v���Ō�܂ōĐ����ꂽ�ꍇ
if (event.getType() == LineEvent.Type.STOP) {
Clip clip = (Clip) event.getSource();
clip.stop();
clip.setFramePosition(0); // �Đ��ʒu���ŏ��ɖ߂�
}
}
/**
* {@inheritDoc}
*/
public void update(final LineEvent e) {
if (e.getType() == LineEvent.Type.STOP) {
notifySoundStopped();
}
}
@Override
public void update(LineEvent event) {
LineEvent.Type type = event.getType();
if (type == LineEvent.Type.STOP) {
clip.close();
}
}
/**
* This method allows to be notified for each event while playing a
* sound
*/
@Override
public synchronized void update(final LineEvent event) {
final Type eventType = event.getType();
if (eventType == Type.STOP || eventType == Type.CLOSE) {
done = true;
notifyAll();
}
}
@Override
public void update(LineEvent event) {
LineEvent.Type type = event.getType();
if (type == LineEvent.Type.STOP) {
if (audioClip != null) {
audioClip.close();
audioClip.removeLineListener(this);
audioClip = null;
}
if (enabled) {
sleep(500);
play(musicLoader.getNextFile());
}
}
}
/**
* {@inheritDoc}
*/
@Override
public void update(final LineEvent event) {
if ((event.getType() == LineEvent.Type.CLOSE)
|| (event.getType() == LineEvent.Type.STOP)) {
// TODO evaluate the events
}
}
/**
* {@inheritDoc}
*/
@Override
public void update(final LineEvent event) {
if (LOGGER.isDebugEnabled()) {
LOGGER.debug("line updated: " + event.getType());
}
if ((event.getType() == LineEvent.Type.CLOSE)
|| (event.getType() == LineEvent.Type.STOP)) {
sem.release();
}
}
/**
* Processes the MaryTTS Output.
*
* @param theProcessID the bml id of the process
* @param text
* text, which will converted to audio information by MaryTTS
* @throws IOException the connection lost
* @throws UnsupportedAudioFileException failed to play the audio data
*/
public final void process(final String theProcessID,
final String text) throws IOException,
UnsupportedAudioFileException {
processID = theProcessID;
// Generate Stream
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
// Process Text
maryClient.process(text,
"TEXT",
"AUDIO",
speechLocale,
"WAVE",
voiceName,
byteStream);
// Generate Audio
ByteArrayInputStream byteInputStream =
new ByteArrayInputStream(byteStream.toByteArray());
AudioInputStream audioStream =
AudioSystem.getAudioInputStream(byteInputStream);
AudioPlayer player = new AudioPlayer(audioStream, new LineListener() {
@Override
public void update(final LineEvent event) {
if (event.getType() == LineEvent.Type.START
&& eventHandler != null) {
eventHandler.update(Listener.EVENT_TYPE_START,
processID);
} else if (event.getType() == LineEvent.Type.STOP
&& eventHandler != null) {
eventHandler.update(Listener.EVENT_TYPE_STOP,
processID);
}
}
});
// Start Audio
player.start();
}