为了这个纠结了一个下午,现在总结一下我所知道的三种常用的播放音频的方法;
其中JDK本身自带的有两个,用JMF实现一个.
1.用 Applet 实现:(最简单的方法)
AudioClip player = Applet.newAudioClip(url);
AudioClip 介绍:
AudioClip 接口是用于播放音频剪辑的简单抽象。多个 AudioClip 项能够同时播放,
得到的声音混合在一起可产生合成声音。
重复播放:player.loop();//一句就搞定了
2.通过JDK自带的audio实现
sun.audio.AudioPlayer;//播放器
sun.audio.AudioStream;//音频流
do {
InputStream is = url.openStream();// 获得音乐文件的输入流
AudioStream as = new AudioStream(is);//创建音频 流
AudioPlayer.player.start(as);//开始播放
while(loop&&as.available() > 0 );//如果要实现重复,必须要停在这里,不然会一直只放开头,因为一直在重复读取
} while (loop);
3.通过JMF实现
Player player = Manager.createPlayer(url);//创建播放器对象
player.addControllerListener(new ControllerListener() {//加上对应的控制监听器
@Override
public void controllerUpdate(ControllerEvent e) {
// TODO Auto-generated method stub
if (e instanceof EndOfMediaEvent) {//如果播放到音频文件末尾,则再次开始播放
player.setMediaTime(new Time(0));
player.start();
}
if (e instanceof PrefetchCompleteEvent) {//Prefetch是指播放器的一种状态
player.start();
}
}
});
player.prefetch();//这个是用来触发上面监听器对应的第二种时间,以开始播放音频文件
JMF 工具包在下面的附件里,如果需要可以直接下载.
分享到:
相关推荐
#### 三、IFIX播放音频文件的具体应用 1. **报警提示**:当系统检测到异常情况时(如设备故障、参数超限等),IFIX可以自动播放相应的报警音频文件,以引起操作人员的注意。 2. **操作指导**:在复杂操作流程中,...
这篇博客"android使用AudioTrack低延迟播放音频文件"详细介绍了如何利用`AudioTrack`来实现这一目标。 首先,`AudioTrack`的创建需要指定一些关键参数,包括音频格式(如采样率、位深度、声道数)、音频流类型(如...
1. **AudioSystem类**:这是API的核心,提供了与系统音频设备交互的方法,如加载音频文件、播放音频以及获取系统信息。 2. **Clip接口**:它代表一段可以重复播放的音频片段。如果你需要循环播放某个音频,Clip是...
在Java编程语言中,开发一个音频播放小程序涉及到多个关键知识点,包括音频文件处理、音频流的理解、以及使用Java内置的音频API。以下是对这个主题的深入解析: 首先,Java提供了`javax.sound.sampled`包,这是一个...
Java 播放音频文件是Java编程中一个实用的功能,特别是在开发多媒体应用或者游戏时。在Java中,我们可以使用多种库来实现音频播放,而jar包通常包含了这些库的实现。下面将详细介绍如何在Java中播放音频文件以及相关...
- 音频流管理,支持连续播放多个音频文件。 ## 2. SoundPool `SoundPool`主要用于播放短小、重复的声音效果,如游戏中的音效。它通过内存缓存来实现快速加载和播放,适合处理有限数量的短期音频。 ### 使用步骤:...
标题中的“行业分类-设备装置-一种用于对媒体文件的播放音量进行调节的方法与设备”揭示了这个压缩包文件内容的主题,它涉及到的是电子设备或软件应用领域中,关于媒体播放音量控制的技术方案。这种方法和设备可能是...
标题中的“行业分类-设备装置-一种具媒体文件的播放安全控制功能的移动终端及其方法”揭示了这个压缩包文件包含的技术主题,主要是关于移动终端(如智能手机或平板电脑)在处理媒体文件(如视频、音频等)时的安全...
本文将深入探讨如何在Android中实现“短小且可能会重复播放的音频文件”的播放,主要关注`SoundPool`这个工具。 `SoundPool`是Android系统提供的一种音频管理工具,它允许开发者高效地加载和播放小型音频资源。对于...
其中,`MediaPlayer`适合播放较长的音频文件,而`SoundPool`和`AudioTrack`则更适合播放短小、重复的音频,尤其是对于需要快速响应和多音频同时播放的情况。 1. `MediaPlayer`: 这是一个强大的音频、视频播放组件,...
文件重复检测工具是一种实用的软件应用,主要用于帮助用户在计算机系统中查找并管理重复的文件。这类工具在处理大量数据、节省存储空间、优化系统性能等方面具有重要意义。"FindDupFile.exe"是压缩包中的主要执行...
3. **文件重复**:任何类型的文件都有可能出现重复,尤其是文档、音频等。通过比较文件内容的哈希值,可以判断两个文件是否完全相同。 二、文件去重方法 1. **手动检查**:虽然费时,但适用于少量文件。通过比较...
NAudio是一个开源库,提供了广泛的音频处理功能,包括读取和写入音频文件、播放音频、捕获音频等。 **获取电脑音频** 在Windows中,我们可以通过调用低级音频API,如Core Audio APIs( WASAPI,Windows Audio ...
在C#中,我们可以利用.NET框架提供的System.Media命名空间中的SoundPlayer类来播放音频文件,但若要进行更复杂的操作如录制和转换,我们需要借助第三方库。一个常用的库是NAudio,这是一个开源的C#音频处理库,支持...
音频剪辑是指对原始音频文件进行裁剪、合并、混音等操作,以达到理想的音效效果。常见的操作包括剪切、复制、粘贴、删除、淡入淡出、音量调整、消除噪音等。这些功能在这款免安装的音频剪辑软件中应有尽有,让用户...
通过这个标签,我们可以插入音频文件,控制其播放、暂停、音量调整等操作。例如: ```html <audio id="myAudio" src="music.mp3"></audio> ``` 在JavaScript中,我们可以获取到这个元素并进行控制,例如: ```...
你可以通过传入音频资源的URL作为参数,使组件知道要播放的音频文件。这个组件可能还提供了监听事件的能力,比如播放状态改变、进度更新等,以便在小程序的其他部分响应这些变化。 `.json`配置文件(如果存在)则...
此外,软件还支持多种文件类型的扫描,包括图片、文档、音频、视频等,确保全面覆盖用户可能存在的重复文件。 二、深度扫描与智能筛选 在扫描过程中,该工具会深入到每个文件夹和子文件夹,不遗漏任何角落。扫描...
在IT行业中,媒体文件处理是不可或缺的一部分,尤其是在多媒体应用、视频编辑、音频播放等领域。针对这一主题,"行业分类-设备装置-一种获取媒体文件总时长的方法和设备.zip" 提供了一个具体的技术方案,主要关注...
总的来说,"让重复文件一扫而光.zip" 提供了一种有效的方法来管理和优化硬盘空间,通过清理重复文件提高电脑性能。正确使用这类工具,可以帮助我们保持计算机的高效运行,并释放宝贵的存储空间。