使用Java实现MP3音乐播放

Java SE自带的API中缺少对MP3格式音频文件的支持,想要使用Java代码播放MP3需要第三方库。JLayer-MP3 library是一款Java语言编写的开源的支持MP3的SPI(服务提供者接口,Service Provider Interface)支持库,俗称javazoom.jl包(JLayer包)。

JLayer-MP3 library内含多个MP3的播放器可直接播放MP3:

  1. 标准播放器类:javazoom.jl.player.Player类是JLayer提供的标准播放器类,该类的使用方法非常简单,在创建播放器对象时将MP3文件的文件输入流当做参数,然后执行播放器的play()方法即可播放。

  2. 极简播放器:javazoom.jl.player.jlp类是一个极简播放器,仅提供了一个play()方法用于播放MP3音频。

  3. 简易播放器:javazoom.jl.player.advanced.jlap类,是一个简化版的高级播放器,但它的功能却比Player播放器强大,增加了一些控制功能。

  4. 高级播放器:javazoom.jl.player.advanced.AdvancedPlayer类是最灵活、功能最全的播放器类。该类提供了很多方法,在播放时可进行各种控制。

    但在编写MP3播放程序中需要如下图,在构建路径中添加JLayer-MP3 library支持库,共包含三个jar包:jl1.0.jar 、mp3spi1.9.4.jar 、tritonus_share.jar

    我们在下面给出的例程,简单演示用标准播放器和高级播放器播放MP3音频,供大家学习参考:

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import javazoom.jl.player.Player;
import javazoom.jl.player.advanced.AdvancedPlayer;
public class Mp3PlayTest {/**JLayer提供的AdvancedPlayer类是最灵活、功能最全的播放器类。* 该类提供了很多方法**/public static void Mp3AdvancedPlayer(String path) {try {FileInputStream fIn = new FileInputStream((path));BufferedInputStream bis = new BufferedInputStream(fIn);AdvancedPlayer player = new AdvancedPlayer(bis);player.play(); //播放音频文件} catch (Exception e) {e.printStackTrace();}}/**  javazoom.jl.player.Player类是JLayer提供的标准播放器类,* 该类的使用方法非常简单,在创建播放器对象时将MP3文件的文件输入流当做参数,* 然后执行播放器的play()方法即可播放。* **/public static void Mp3Player(String path) {try {Player player = new Player(new FileInputStream(path));player.play();} catch (Exception e) {// TODO: handle exception}}public static void main(String[] args) {String filePath = "D:\\test\\music\\三步舞曲.mp3"; System.out.println("\n高级播放器,开始播放:" + filePath);Mp3AdvancedPlayer(filePath);System.out.println("\n标准播放器类,开始播放:" + filePath);String path = "D:\\test\\花心.mp3";Mp3Player(path);}
}

关于JLayer-MP3 library的更详细的介绍请参见:
Java播放MP3——JLayer的博客链接

使用Java实现MP3音乐播放相关推荐

  1. 使用Java实现MP3音乐播放器

    原文链接:http://www.cnblogs.com/haoxia/archive/2009/06/03/1495419.html 使用Java实现MP3音乐播放器 JavaSound是一个小巧的低 ...

  2. 【转】使用Java实现MP3音乐播放器

    原文来源:http://blog.csdn.net/liuzhongbing/article/details/4535402 JavaSound是一个小巧的低层API,支持数字音频和MIDI数据的记录 ...

  3. Android应用开发--MP3音乐播放器滚动歌词实现

    Android应用开发--MP3音乐播放器滚动歌词实现 2013年6月2日  简.美音乐播放器开发记录 -----前话 有网友给我博客评论说,让我借鉴好的Android代码,代码贴出来的时候最好整体先 ...

  4. Android开发本地及网络Mp3音乐播放器(二十)歌曲下载完成后通知主界面更新本地音乐

    转载请注明出处:http://blog.csdn.net/iwanghang/article/details/51448597 项目源码(打赏5积分请点这边):http://download.csdn ...

  5. Android开发本地及网络Mp3音乐播放器(十二)创建NetMusicListAdapter、SearchResult显示网络音乐列表

    转载请注明出处:http://blog.csdn.net/iwanghang/article/details/51290181 觉得博文有用,请点赞,请留言,请关注,谢谢!~ 实现功能: 实现NetM ...

  6. Android开发本地及网络Mp3音乐播放器(十三)网络音乐搜索功能实现,歌名歌手专辑名搜索

    转载请注明出处:http://blog.csdn.net/iwanghang/article/details/51298411 觉得博文有用,请点赞,请留言,请关注,谢谢!~ 实现功能: 实现网络音乐 ...

  7. java课程设计-音乐播放器_java课程设计---java音乐播放器.doc

    java课程设计---java音乐播放器 Java程序设计课程设计 题 目 java音乐播放器 学 号: 姓 名: 指导教师: 完成时间: 目 录 第一章 系统概述3 1.需求分析3 1.1任务目的: ...

  8. Android应用开发--MP3音乐播放器Service实现

    Android应用开发--MP3音乐播放器Service实现 2013年5月29日简.美音乐播放器开发记录 让网友们久等啦,关于简.美音乐播放器的开发,最重要的Service类总算是要发博了.关于An ...

  9. android 关联mp3,Android开发本地及网络Mp3音乐播放器(四)实现音乐播放

    建立PlayService服务 package com.iwanghang.drmplayer; import android.app.Service; import android.content. ...

最新文章

  1. Spring 事务管理高级应用难点剖析--转
  2. 视频光端机园区出入口监控项目应用方案详解
  3. php mysql int 日期格式化 string,MYSQL int类型字段的时间存放和显示 和 php的时间存放函数...
  4. Java IO 系列(01)-Java IO概述
  5. Android中关于Adapter的使用(下)BaseAdapter
  6. php foeeach页面输出,PHP数组foreach遍历输出例子详解
  7. 【小程序源码】多功能图片处理器一键多种处理照片
  8. 如何注册邮箱163,有几个邮箱登录入口?
  9. IE浏览器发送两次相同请求第二次读取第一次缓存问题
  10. coredns异常问题
  11. OpenResty安装、启停止_linux
  12. H2O技术方案预研分析
  13. [codeforces 1324C] Frog Jumps 一直向右+边界处理
  14. 2021年全国职业院校技能大赛:网络系统管理项目-真题-模块C-2全套视频讲解含无线地勘
  15. 什么是闭包,闭包的作用与好处是什么,何时使用闭包,对闭包的改进
  16. 一个可以给文件添加备注信息的小工具
  17. 批处理方式更改IE代理服务器
  18. 一个命令就可启用的微信机器人WhoChat
  19. iOS冰与火之歌番外篇 - 在非越狱手机上进行App Hook(转载)
  20. 迅睿CMS 网站安全权限划分

热门文章

  1. #include中用双引号和用尖括号括起来头文件的区别
  2. HTML+CSS实现炫酷的登录界面
  3. NLP 实战(10): CSDN 领域榜标签分组更新
  4. 无法通过终端(远程桌面)服务启动MATLAB的解决办法
  5. ArcGIS地理数据库简介
  6. 游戏设计模式阅读笔记18——优化模式(对象池模式)
  7. windows 进程监控 Procmon.exe
  8. 手写实现数据库连接池
  9. 为 VS 2012 打包 MSDN 在线文档为磁盘安装源
  10. 去除html双击后选中有蓝色背景