package com.xzz.applet.service;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.net.Socket;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.SourceDataLine;
public class SimpleAudioPlayer {
public SourceDataLine sdLine;
public AudioFormat audioFormat;
private PlayThread playThread;
private Socket soc;
public boolean stop = true;
public SimpleAudioPlayer(Socket soc) throws LineUnavailableException {
audioFormat = MyAudioFormat.getInstance();
DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class,
audioFormat);
sdLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo);
sdLine.open();
this.soc = soc;
}
public void start() throws IllegalRecordStateException {
if (stop) {
sdLine.start();
playThread = new PlayThread();
playThread.start();
} else {
throw new IllegalRecordStateException(
"Illegal playing state! Player is active at the time.");
}
}
public void stop() {
stop = true;
playThread.stopService();
playThread = null;
sdLine.stop();
}
public void close(){
sdLine.close();
}
class PlayThread extends Thread {
private BufferedInputStream in;
@Override
public void run() {
try {
in = new BufferedInputStream(soc.getInputStream());
} catch (IOException e1) {
e1.printStackTrace();
}
byte[] buf = new byte[1024 * 1];
int readed = -1;
try {
while (stop) {
if ((readed = in.read(buf)) > 0) {
sdLine.write(buf, 0, readed);
} else
break;
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void stopService(){
try {
in.close();
} catch (Exception e) {
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
java sound 简单播放器代码
共1个文件
java:1个
4星 · 超过85%的资源 需积分: 9 11 下载量 39 浏览量
2011-02-19
15:50:05
上传
评论
收藏 813B RAR 举报
温馨提示
java sound 简单播放器,这是我自学Java Sound后编写的一个简单播放程序,另外我还上传了一个基于Java Sound的录音程序。
资源推荐
资源详情
资源评论
收起资源包目录
SimpleAudioPlayer.rar (1个子文件)
SimpleAudioPlayer.java 2KB
共 1 条
- 1
资源评论
- wDASF2562014-09-08很久以前下的了,一般般的东西
- tangshengwei2013-05-17搞了很久都没有搞出来 ···唉 技术不行啊
Lostdroid
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功