① java中怎么获取avi音频文件的播放时间长度。使用什么类要什么JAR包吗
由于avi当中压缩的种类繁多,JMF不能胜任,最好调用系统的简敬启DLL(系统的解码器)来读取
最稿亮简单的一个方法通过jacob调用WINDOWS的ActiveMovie control type library来读取。
另外,通过JNI+fmpeg、JFmpeg等,也可拦如以
② 跪求java 获取MP3 播放时长的代码,求高手帮忙 感激涕零!
File file = new File("侍谨G:\\8.mp3");
long total = 0;
try {
AudioFileFormat aff = AudioSystem.getAudioFileFormat(file);
Map props = aff.properties();
if (props.containsKey("ration"))
total = (long) Math.round((((Long) props.get("ration"判谈顷))
.longValue())/1000); System.out.println(total);
} catch (UnsupportedAudioFileException e) {
/掘陆/ TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
③ java程序读取mp3文件的播放时间时间!
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("D://aaa.mp3");
mediaPlayer.prepare();
int time = mediaPlayer.getDuration();
time就是时长
④ 请教java如何实现获取一段mp3的总时长
在导入一个java-1.0.2包 就可以了 如果是获取网络文件,那就需要先把文件下载到本地,然后再去获取音频时长
⑤ java中如何获取音频(mp3)长度
1.采样率。
2.压缩格式。
基本上就跟这俩东西有关了。
有了这个以后,可以根据文件的大小来计算播放时长。
至于具体的,我也没算过。我觉得你可以cut一段音乐,比如wma格式的,看看一分钟是多大。然后用你的文件大小来和这个标准文件作比较。
还有其他方法就是借助外部包jar,也可使用JMF框架。
⑥ java 怎么获取音频文件时长
File source =new File('d:\test.mp3');
Encoder encoder = new Encoder();
MultimediaInfo m = encoder.getInfo(source);
long ls = m.getDuration();
ration = ls/1000;
System.out.println("此视频时长为:"+ls/60000+"分"+(ls/1000-ls/60000*60)+"秒!");
若用的是springmvc框架上传文件
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest)request;
Iterator<String> iter = multiRequest.getFileNames();
while(iter.hasNext()){
MultipartFile file = multiRequest.getFile(iter.next());
String fileOldName = file.getOriginalFilename();
long ration = 0;//音频长度,秒
CommonsMultipartFile cf= (CommonsMultipartFile)file;
DiskFileItem fi = (DiskFileItem)cf.getFileItem();
File source = fi.getStoreLocation();
Encoder encoder = new Encoder();
MultimediaInfo m = encoder.getInfo(source);
long ls = m.getDuration();
ration = ls/1000;}
⑦ 文章怎么测试语音时长
今天在测试同事的毕镇槐微信平台的发送语音的时候,发现有时候语音能发过来,有时候就不行,经过检查,发现丢掉了检测音频时长(微信里面语言时长要限定在60S内),好吧,我补上,闲着也是闲着~
首先是读取语音的时长:
<span style="font-size:14px;"> /// <summary>
/// 获取上传音频的时间长度
/// </summary>
/// <param name="strFullUrl">The STR full URL.</param>
/// <returns>System.String.</returns>
///旅嫌 <remarks>Editor:v-liuhch CreateTime:2015/5/15 17:32:57</remarks>
public string GetLocalVoiceTotalTime(string strFullUrl)
{
ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace(Path.GetDirectoryName(strFullUrl));
FolderItem item = dir.ParseName(Path.GetFileName(strFullUrl));
return dir.GetDetailsOf(item, 27); // 获取歌曲时长。
}</span>
使用shellclass的时候要先引用COM组件Microsoft Shell Controls And Automation,并将Embed Interop Type 设手友为False。
由于上述函数只支持读取本地文件,所以,我们将得到的文件先放在临时文件夹中,判断完成之后立即删除。
<span style="font-size:14px;">/// <summary>
/// 检查上传音频文件的总时间长度是否小于60s
/// </summary>
/// <param name="file">The file.</param>
/// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns>
/// <remarks>Editor:v-liuhch CreateTime:2015/5/15 17:34:51</remarks>
public bool ChkVideoTotalTime(HttpPostedFile file)
{
string strTempUrl = Path.GetTempPath() + DateTime.Now.ToString("yyyyMMddHHmmssfff").ToString() + Path.GetExtension(file.FileName);
file.SaveAs(strTempUrl);//保存到本地临时文件夹
try
{
string strTotalTime = GetLocalVoiceTotalTime(strTempUrl); //获取文件时长
return (Convert.ToDateTime(strTotalTime) - Convert.ToDateTime("00:01:00")).Seconds > 0 ? false : true;
}
catch (Exception)
{ return false;}
finally { System.IO.File.Delete(strTempUrl);}//删除临时文件
}
</span>
之后,在处理文件之前加入如下判断就ok了:
<span style="font-size:14px;"> if (int.TryParse(HttpContext.Current.Request.QueryString["MaterialVoice"], out MaterialVoice))//如果是素材里面上传音频的话
{
if (!ChkVideoTotalTime(files[0]))
{
return strRequest = "errorTime"; //如果超过60s
}
}</span>
PS:别忘了前台验证。
打开CSDN APP,看更多技术内容
java获取amr格式语音长度
该java代码实现了将获取到的语音计算出其长度,方便在页面上播放
最新发布 java获取音频时长(wav)
package com.xyz.common.utils; import lombok.extern.slf4j.Slf4j; import javax.sound.sampled.*; import java.io.File; import java.net.URL; @Slf4j public class VoiceUtils { //获取时长 public static Long getVoiceLength(String wavFilePath) { //可以是本地
继续访问
微信开发之消息接收--语音消息(七)
一、消息格式 <xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1357290913</CreateT...
继续访问
uni-app实战仿微信app开发
<div style="color:#444444;"> 适用人群 </div> <div> <div style="color:#444444;"> <p style="color:#666666;"> 具有Html+Css+JavaScript基础,有一定的Vue.js基础,挑战高薪职位 </p> </div> <div style="color:#444444;"> 课程概述 <p> 本季度为uni-app + egg.js 实战仿微信app和小程序全栈开发,开启纯nvue原生渲染,大大提高性能。一次开发,同时搞定Android、iOS和小程序端等。 </p> <p> 课程大纲见以下图! </p> <p> <img src="https://img-bss.csdn.net/202003071752171980.png" alt="" /><img src="https://img-bss.csdn.net/202003071752255131.png" alt="" /><img src="https://img-bss.csdn.net/202003071752382716.png" alt="" /><img src="https://img-bss.csdn.net/202003071752459844.png" alt="" /><img src="https://img-bss.csdn.net/202003071752516999.png" alt="" /></p> </div> </div>
继续访问
最新微信小程序获取音频时长与实时获取播放进度
#微信小程序获取音频时长与实时获取播放进度 在小程序官方文档中 audio 注意:1.6.0 版本开始,该组件不再维护。建议使用能力更强的 wx.createInnerAudioContext 接口 ##第一种方法 通过audio组件获取音频时长和实时播放进度 audio 有一个bindtimeupdate 属性 当播放进度改变时触发 timeupdate 事件,detail = {current...
继续访问
即用:MultipartFile 音频视频获取时长(时分秒)
三个步骤: 本地生成file文件 MultipartFile转为file,获取时长(毫秒),换算毫秒为时分秒 删除本地的file文件 导入maven,该jar包可能会自动下载失败,需手动下载的,请移步: CSDN下载:jave-1.0.2.jar --计算视频时长所必需的jar包 网盘下载:链接:https://pan..com/s/1eION3Z4mDi-Jo-v...
继续访问
关于微信开发的语音存储问题
微信开发的语音存储问题
继续访问
Android开发--仿微信语音对讲录音
自微信出现以来取得了很好的成绩,语音对讲的实现更加方便了人与人之间的交流。今天来实践一下微信的语音对讲的录音实现,这个也比较容易实现。在此,我将该按钮封装成为一个控件,并通过策略模式的方式实现录音和界面的解耦合,以方便我们在实际情况中对录音方法的不同需求(例如想要实现wav格式的编码时我们也就不能再使用MediaRecorder,而只能使用AudioRecord进行处理)。
继续访问
Java读取音频\视频时长 - JAVE
JAVE官网地址 JAVE(JAVA 一 UDIO VIDEO Encoder)库是在Java包装 ffmpeg的项目。开发人员可以利用JAVE将音频和视频文件从一种格式转码为另一种格式。在例子中,你可以转码的AVI文件到MPEG一个,你可以改变一个DivX视频流转换为(YouTube的等)的Flash FLV一个,你可以一个WAV音频文件转换成MP3或奥格Vorbis的一个,你可以分离和
继续访问
multipartfile 获取音频时长_我在音频平台日赚150元的正确打开方式。或许适合你...
听一本书,比看一本书让我们获取知识变得更加的容易和方便,随时随地都可以进行学习,不论是躺在床上,还是在开车都可以随时收听,音频不同于图文,我们不需要聚精会神的看,音频他特有的属性,能在各种场景中发挥最大的效果。有声阅读也成为了一个用户获取知识的渠道。小白操作流程1.自己先注册账号,完善自己的账号信息,明确自己,你做什么产品,你就要卖什么服务。切记不要什么内容都讲,讲的越杂,收听的人越少,转换率越低...
继续访问
java获取网络音乐文件时长
java获取网络音乐文件时长,自己整理的三种方法
iOS 音频时长获取不正确
iOS 使用lame库将音频转化MP3会发现通过player获取时长与原文件时长不符,本文主要解决该问题
JAVA编程获取音频时长
具体代码如下: File source =new File('C:/Users/Qiang/Desktop/Alone.mp3'); Encoder encoder = new Encoder(); MultimediaInfo m = encoder.getInfo(source); long ls = m.getDuration(); ration = ls/1000; System.
继续访问
Android 仿微信语音,录音时间不能少于一秒,不超过一分钟,并且设置了录音倒计时提示等.rar
Android 仿微信语音,录音时间不能少于一秒,不超过一分钟,并且设置了录音倒计时提示等.rar [注:本内容来自网络,在此分享仅为帮助有需要的网友,如果侵犯了您的权利,麻烦联系我,我会第一时间删除,谢谢您。]
语音时长调整算法
关于语音时长调整的文档资源:基于混合域处理的快速WSola算法、基于语音分段的自适应时长调整算法、语音的时域压缩与扩展、语音时长调整快速算法
MultipartFile 视频获取时长(时分秒) VideoUtil.java
本地生成file文件 MultipartFile转为file,获取时长(毫秒),换算毫秒为时分秒 删除本地的file文件
热门推荐 java获取音频时长
下载 jave-1.0.2.jar http://pan..com/s/1nueaBjF File source =new File('d:\\test.mp3'); Encoder encoder = new Encoder(); MultimediaInfo m = encoder.getInfo(source); long ls = m.getDuration(
继续访问
微信小程序获取音频时长与实时获取播放进度问题
主要介绍了微信小程序获取音频时长与实时获取播放进度,文中给大家通过一个例子介绍了微信小程序音频长度获取的问题,感兴趣的朋友跟随脚本之家小编一起看看吧
⑧ java怎么能够获取url地址的MP3的时长吗如果可以 怎么获取
解析url,本想用正则表达式处理,但正则表达式速度较慢。用split处理一下就可以了。 package RequestPackage; import java.util.HashMap; import java.util.Map; public class CRequest { /** * 解析出url请求的路专径,属包括页面 * @param strURL u.
⑨ java js前端请求后台去获得音频流,然后播放音乐,音乐可以控制进度,显示总时长
AudioCLip主要的方法有:play()播放依次声音;loop()循环播放音乐;stop()停止播放。做法一:InputStreamis=null;AudioStreamas=null;is=getClass().getResourceAsStream("a.wav");try{as=newAudioStream(is);}catch(IOExceptione){}AudioPlayer.player.start(as);此方法将音乐文件放入流中在播放,仅限于JavaApplication,容易报错,空指针异常,或者是流异常,不推荐。做法二:Stringmusic="a.wav";AudioClipclip=Applet.newAudioClip(getClass().getResource(music));次方法在Applet中运行没有问题,但是Application中getclass()会返回空指针,导致失败。推荐做法:privateURLurl;privateAudioClipac;Filef1=newFile("C:/3.wav");try{url=f1.toURL();}catch(MalformedURLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}ac=Applet.newAudioClip(cb1);ac.play();
⑩ Java 怎样获取Mp3文件的播放时长
File file = new File("G:\\侍谨8.mp3");
long total = 0;
try {
AudioFileFormat aff = AudioSystem.getAudioFileFormat(file);
Map props = aff.properties();
if (props.containsKey("ration"掘陆))
total = (long) Math.round((((Long) props.get("ration"))
.longValue())/1000);
System.out.println(total);
} catch (UnsupportedAudioFileException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
/判谈顷/ TODO Auto-generated catch block
e.printStackTrace();
}