扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
代码没有,不过提供思路:
成都创新互联自2013年起,先为凤城等服务建站,凤城等地企业,进行企业商务咨询服务。为凤城企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
先将音频文件完全的读入。。
然后使用1M就开启一个线程的方法,并添加一个tag 例如:threadi:+音频第iM的数据,并开启一个socket将这个文件传输过去。结束的最后一段数据后面加上 :end标识
服务器开启10个等待连接的线程。接收到:end标识之后,将所有的文件根据之前的threadi来组织起来并创建音频文件。如果有线程没有接收有丢失,就服务器返回信息i. 客户端根据i重新传送
在 applet 中播放声音文件非常简单,一般需要以下步骤:创建一个 AudioClip 对象
装入 .au 声音文件到 AudioClip 对象
一次播放或者不停循环播放声音
停止播放
下面是相应的代码:import java.applet.*;AudioClip ac = getAudioClip(getCodeBase(), soundFile);
ac.play(); //play once
ac.stop(); //stop playing
解决这个问题的窍门是利用由 Sun 及 其JDK 提供的某些 undocumented 的特征。先看看 Sun JDK 中的文件 classes.zip (使用任何解压工具即可),发现其中不仅包含标准的 Java 包如 java.applet 而且还存在包 sun.audio. (在 sun/audio 的目录下.)
包 sun.audio 中包含了用于播放声音文件所需的所有东西!下面是示例代码:import sun.audio.*; //import the sun.audio package
import java.io.*;//** add this into your application code as appropriate// Open an input stream to the audio file.
InputStream in = new FileInputStream(Filename);// Create an AudioStream object from the input stream.
AudioStream as = new AudioStream(in);// Use the static class member "player" from class AudioPlayer to play
// clip.
AudioPlayer.player.start(as);// Similarly, to stop the audio.
AudioPlayer.player.stop(as);如果要用一个 URL 做为声音流的源(source),则用下面的代码所示替换输入流来创建声音流:AudioStream as = new AudioStream (url.openStream());如果需要持续播放声音文件,则要稍稍复杂一点:// Create audio stream as discussed previously.
// Create AudioData source.
AudioData data = as.getData();// Create ContinuousAudioDataStream.
ContinuousAudioDataStream cas = new ContinuousAudioDataStream (data);// Play audio.
在JAVA.applet中有AudioClip类支持播放,但好像只支持播放au和 wav格式的
代码:
AudioClip ac=getAudioClip (getCodeBase(), File);
// 创 建Audioclip 对 象 并 装 入.au 文 件
ac.play(); // 播 放 一 次
ac.stop(); // 停 止 播 放
ac.loop(); // 循 环 播 放
上传就和普通的文件上传一样,不过需要表明文件格式,可以在request header里面标注,便于服务器将文件保存下来。
下载的时候可以直接将文件流写入到response里面,不过要设置一下response的content type,便于客户端分辨用什么程序打开文件。
总之都是流的操作,和普通文件的上传下载没什么太大区别。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流