mp3处理工具(mp3agic)
1. maven
<dependency><groupId>com.mpatric</groupId><artifactId>mp3agic</artifactId><version>0.9.1</version></dependency>
2. API
2.1 Mp3File对象方法
方法 | 描述 |
getFrameCount() | 获取MP3文件帧数 |
getStartOffset() | 获取起始设置 |
getEndOffset() | 获取结束设置 |
getLengthInMilliseconds() | 获取MP3长度,单位毫秒 |
getLengthInSeconds() | 获取MP3长度,单位秒 |
isVbr() | 是否为VBR编码,不是为 CBR编码 |
getBitrate() | 获取码率 |
getBitrates() | 获取码率,返回map,key为码率,value为 MutableInteger 对象 |
getChannelMode() | 获取渠道模式 |
isCopyright() | 是否有版权 |
getEmphasis() | 获取强调信息 |
getLayer() | 获取压缩级别 |
getModeExtension() | 获取模式扩展 |
isOriginal() | 是否是原版 |
getSampleRate() | 获取音频采样率 |
getVersion() | 获取版本 |
hasXingFrame() | 判断是否有 xing帧 |
getXingOffset() | 获取xing设置 |
getXingBitrate() | 获取xing比特率 |
hasId3v1Tag() | 判断是否有3v1本版标签 |
getId3v1Tag() | 获取3v1本版标签 |
setId3v1Tag(ID3v1 var1) | 设置3v1本版标签 |
removeId3v1Tag() | 移除3v1本版标签 |
hasId3v2Tag() | 判断是否有3v2本版标签 |
getId3v2Tag() | 获取3v2本版标签 |
setId3v2Tag(ID3v2 var1) | 设置3v2本版标签 |
removeId3v2Tag() | 移除3v2本版标签 |
hasCustomTag() | 判断是否有自定义标签 |
getCustomTag() | 获取自定义标签 |
setCustomTag(byte[] var1) | 设置自定义标签 |
removeCustomTag() | 移除自定义标签 |
save(String var1) | 保存mp3文件 |
2.2 ID3v1对象方法
方法 | 描述 |
getVersion() | 获取版本 |
getTrack() | 获取唱片歌曲数量 |
setTrack(String var1) | 设置唱片歌曲数量 |
getArtist() | 获取艺术家 |
setArtist(String var1) | 设置艺术家 |
getTitle() | 获取歌曲名 |
setTitle(String var1) | 设置歌曲名 |
getAlbum() | 获取唱片名 |
setAlbum(String var1) | 设置唱片名 |
getYear() | 获取发行时间 |
setYear(String var1) | 设置发行时间 |
getGenre() | 获取流派 |
setGenre(int var1) | 设置流派 |
getGenreDescription(); | 获取流派描述 |
getComment(); | 获取注释 |
setComment(String var1) | 设置注释 |
toBytes() | 转换为字节数组 |
2.3 ID3v2对象方法(ID3v2为ID3v1的子类)
方法 | 描述 |
getPadding() | 判断是否填充 |
setPadding(boolean var1) | 设置是否填充 |
hasFooter() | 判断是否有页脚 |
setFooter(boolean var1) | 设置页脚 |
hasUnsynchronisation() | 判断是否有不同步 |
setUnsynchronisation(boolean var1) | 设置是否有不同步 |
getBPM() | 获取每分钟节拍数 |
setBPM(int var1) | 设置每分钟节拍数 |
getGrouping() | 获取分组 |
setGrouping(String var1) | 设置分组 |
getKey() | 获取调号,它关系到我们整首歌曲的音高范围 |
setKey(String var1) | 设置调号 |
getDate() | 获取日期 |
setDate(String var1) | 设置日期 |
getComposer() | 获取作曲家 |
setComposer(String var1) | 设置作曲家 |
getPublisher() | 获取发版者 |
setPublisher(String var1) | 设置发版者 |
getOriginalArtist() | 获取原创艺术家 |
setOriginalArtist(String var1) | 设置原创艺术家 |
getAlbumArtist() | 获取专辑艺术家 |
setAlbumArtist(String var1) | 设置专辑艺术家 |
getCopyright() | 获取版权信息 |
setCopyright(String var1) | 设置版权信息 |
getArtistUrl() | 获取艺术家url地址 |
setArtistUrl(String var1) | 设置艺术家url地址 |
getCommercialUrl() | 获取广告url地址 |
setCommercialUrl(String var1) | 设置广告url地址 |
getCopyrightUrl() | 获取版权url地址 |
setCopyrightUrl(String var1) | 设置版权url地址 |
getAudiofileUrl() | 获取音频文件路径 |
setAudiofileUrl(String var1) | 设置音频文件路径 |
getAudioSourceUrl() | 获取音频资源路径 |
setAudioSourceUrl(String var1) | 设置音频资源路径 |
getRadiostationUrl() | 获取广播url地址 |
setRadiostationUrl(String var1) | 设置广播url地址 |
getPaymentUrl() | 获取付款url地址 |
setPaymentUrl(String var1) | 设置付款url地址 |
getPublisherUrl() | 获取发版url地址 |
setPublisherUrl(String var1) | 设置发版url地址 |
getUrl() | 获取MP3地址 |
setUrl(String var1) | 设置MP3地址 |
getPartOfSet() | 获取部分配置信息 |
setPartOfSet(String var1) | 设置部分配置信息 |
isCompilation() | 获取是否汇编 |
setCompilation(boolean var1) | 设置是否汇编 |
getChapters() | 获取章节 |
setChapters(ArrayList<ID3v2ChapterFrameData> var1) | 设置章节 |
getChapterTOC() | 获取章节目录 |
setChapterTOC(ArrayList<ID3v2ChapterTOCFrameData> var1) | 设置章节目录 |
getEncoder() | 获取编码格式 |
setEncoder(String var1) | 设置编码格式 |
getAlbumImage() | 专辑插画 |
setAlbumImage(byte[] var1, String var2) | 设置专辑插画 |
setAlbumImage(byte[] var1, String var2, byte var3, String var4) | 设置专辑插画 |
clearAlbumImage() | 清除专辑插画 |
getAlbumImageMimeType() | 专辑插画类型 |
getWmpRating() | 获取评分 |
setWmpRating(int var1) | 设置评分 |
getItunesComment() | 获取调音方式 |
setItunesComment(String var1) | 设置调音方式 |
getLyrics() | 获取歌词 |
setLyrics(String var1) | 设置歌词 |
setGenreDescription(String var1) | 设置类型说明 |
getDataLength() | 获取数据长度 |
getLength() | 获取长度 |
getObseleteFormat() | 获取过时的格式 |
getFrameSets() | 获取帧组 |
clearFrameSet(String var1) | 清除帧组 |
3. 实例代码
Mp3File mp3file = new Mp3File("D:/demo/a.mp3");if (mp3file.hasId3v2Tag()) {ID3v2 id3v2Tag = mp3file.getId3v2Tag();System.out.println("唱片歌曲数量: " + id3v2Tag.getTrack());System.out.println("艺术家: " + id3v2Tag.getArtist());System.out.println("歌曲名: " + id3v2Tag.getTitle());System.out.println("唱片名: " + id3v2Tag.getAlbum());System.out.println("歌曲长度:"+mp3file.getLengthInSeconds()+"秒");System.out.println("码率: " + mp3file.getBitrate() + " kbps " + (mp3file.isVbr() ? "(VBR)" : "(CBR)"));System.out.println("专辑插画 : "+id3v2Tag.getAlbumImage());System.out.println("专辑插画类型"+id3v2Tag.getAlbumImageMimeType());System.out.println("发行时间: " + id3v2Tag.getYear());System.out.println("流派: " + id3v2Tag.getGenre() + " (" + id3v2Tag.getGenreDescription() + ")");System.out.println("注释: " + id3v2Tag.getComment());System.out.println("歌词: " + id3v2Tag.getLyrics());System.out.println("作曲家: " + id3v2Tag.getComposer());System.out.println("发行公司: " + id3v2Tag.getPublisher());System.out.println("Original artist: " + id3v2Tag.getOriginalArtist());System.out.println("Album artist: " + id3v2Tag.getAlbumArtist());System.out.println("版权: " + id3v2Tag.getCopyright());System.out.println("URL: " + id3v2Tag.getUrl());System.out.println("编码格式: " + id3v2Tag.getEncoder());byte[] albumImageData = id3v2Tag.getAlbumImage();if (albumImageData != null) {System.out.println("专辑插图长度: " + albumImageData.length + " bytes");System.out.println("专辑插图类型: " + id3v2Tag.getAlbumImageMimeType());}}
mp3处理工具(mp3agic)相关推荐
- Linux下小巧的mp3分割工具mp3splt简介
有时想将一个mp3文件中的某一段截取出来,在Linux可以选择使用mp3splt这个工具.该工具其实还支持对ogg格式文件的分割. 下面以mp3为例简要介绍一下它的使用: (1) 安装 可以从源里直接 ...
- MP4 转换为 MP3 的工具
由于俺的手机的铃声只支持MP3,但是从网上找一个不错MP4单曲,想转一下,做为手机铃声 这个工具让俺找了一会儿,国内有很多可以转,但是效果都不理想, 一天在google里找到了一个国外的MP4 to ...
- act转MP3格式工具
相信有很多拥有MP3播放器的朋友都遇到过一个问题,就是用MP3本身的录音功能录出来的声音文件如果是.ACT格式的,那么在网上根本找不到合适的播放软件,怎么办呢? 前几天也遇到了同样的问题,在网上搜索了 ...
- Python爬虫+PyQt5制作mp3下载工具
实际效果如下图所示: 源代码有四个文件,分别是kugou.ui.kugou_ui.py.my_spider.py.main.py. kugou.ui: <?xml version="1 ...
- MP3切分工具, 简单,粗暴好用。
良友刚起步,请推广加关注 简单粗暴,傻瓜式mp3切割软件 简单粗暴,傻瓜式mp3切割软件 简单粗暴,傻瓜式mp3切割软件 下载地址 MP3切割软件(超好用).zip: https://545c.com ...
- 获取MP3音频时长 | Java工具类
获取mp3格式音频时长. Maven依赖 <dependency><groupId>org</groupId><artifactId>jaudiotag ...
- 一款简单易用的mp3录音软件
MP3 Audio Recorder Mac版是Mac平台上的一款录音应用.MP3 Audio Recorder Mac版是一款简单的录音软件,它可以通过系统内置或外接麦克风将音频文件录制成高品质的M ...
- python 自动下载 voa MP3
因为英语学习的需要,经常会去网上下载一些VOA的MP3,常去的一个网站是http://www.51voa.com/ 要想下载该网站上的MP3,需要手动选择要下载的篇幅,打开之后再选择要下载的MP3文件 ...
- 修改mp3图片和信息——BesMp3Editor
导读 BesMp3Editor, 是一款小巧的 MP3 编辑工具,可以修改.添加 MP3 上的图片.歌曲名.歌手.专辑信息. 最近想给 BesLyric-for-X 添加一个功能,为下载下来的歌曲添加 ...
- 【xm格式转不了mp3】教你正确下载喜马拉雅PC版,并优雅获取音频
鉴于下载官网的提供的Win软件后所缓存的音频的格式只能是xm格式,而且限制只可使用该喜马拉雅软件才能打开,而且网上基本没有xm转mp3/m4a的工具 这次分享的不是如何转换成mp3的工具,而是采用了' ...
最新文章
- qt webassembly 安装过程记录及注意事项
- Makefile常用函数总结
- 服务器不安装Excel,实现导出Excel功能
- [转]TCP协议中的三次握手和四次挥手(图解)
- 汉诺塔问题深度剖析(python实现)
- SSIS 学习之旅 FTP访问类
- Asterisk拨号方案中变量的应用
- hashmap hash冲突怎么解决_HashMap原理及冲突之简谈
- 怎么给图片降噪?WidsMob Denoise 图片降噪教程
- linux服务器上svn的log_SVN如何查看修改的文件记录
- 谁说前端工程师不能成为全栈?
- hdu 2069 1 5 10 25 50 这几种硬币 一共100个(母函数)
- 判断文本的行数c语言,软件工程统计文件中字符串个数,单词个数,词频,行数
- HTML学习总结(3)——Audio/Video
- html 伪元素原理,CSS伪类伪元素详解
- 手撕包菜BT搜索引擎带爬虫自动抓取安装
- 励磁电感公式_永磁同步电机交直轴电感计算
- 心理测试单机小软件,成人心理测评系统(单机版)
- [POJ1187] 陨石的秘密
- Java实现Google的S2算法工具类