怎么获取一段mp3格式的音频的播放时长

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么获取一段mp3格式的音频的播放时长相关的知识,希望对你有一定的参考价值。

参考技术A 1、添加MP3格式文件。打开软件后,点击初始界面左上方的“添加视频”按键,打开文件夹找到需要的mp3音乐并导入到软件上。有时浏览文件夹时没看到音乐文件,这时注意一下“打开”对话框下面的“文件类型”,可选是AllFiles(全部格式文件),或mp3格式。2、点击“编辑”按钮。软件左上角的位置上的第二个按钮上,点击编辑按钮,然后就可以进到文件的编辑界面上,这是软件编辑文件的入口。3、开始音频剪切编辑。点击主界面左上方的“视频编辑”按键即可进入编辑窗口。如图所示。可以手动在时间轴上用鼠标随意拖动左区间和右区间,两者之间的部分就是截取/剪切出来的音频了。如果需要精确的剪切,可以在“截取”项下面的菜单中,输入精确的开始时间和结束时间的数值。最后“确定”保存并返回主界面。4、然后再选择预置方案,即输出格式。单击“预置方案”右边的小倒三角,打开上拉菜单,根据需要选择音频格式,如果按原格式输出的话,就选择常见音频中的MP3-MPEGLayer-3Audio(*.mp3)流行的音频格式,具有很好的音质和很小的体积。5、最后点击右下角的转换按钮,然后就可以在转换器的界面上看到转换完成后界面的提示,还可以直接点击打开目录按钮,直接找到编辑后的音乐文件。

如何获取音频文件的准确时长,比如MP3

用过mciSendCommand(wDevice,MCI_STATUS,MCI_STATUS_ITEM, (DWORD) (LPMCI_STATUS_PARMS)&StatusParms);可是获取的时长有时不准确,我一个MP3文件明明是1分钟,可是用这个方法得到的是4分钟 ,请问还有其他方法能够得到准确的时长信息吗?
我用同样的代码,在另外一台电脑上运行却可以获取真实时长,不知是哪里出的问题,请高手指教

我也是遇到这个问题,这是MCI的BUG,暂时应该无解,而且微软似乎没有打算修复这个问题,解决方法只能改用别的播放内核。MCI只有在获取可变码率的音频文件的长度时才会出现不准确的情况。能够过观察发现,MCI识别的长度误差满足下面的关系:MCI识别的长度/实际长度≈比特率/128。 参考技术A 调用js,如果是win7系统,把21改成27。
@ echo off
>"%tmp%\a.js" echo var f=new ActiveXObject("Shell.Application").NameSpace("D:\\新建文件夹");
>>"%tmp%\a.js" echo WSH.echo(f.GetDetailsOf(f.ParseName("a.mp3"),21));
for /f %%i in ('cscript //nologo "%tmp%\a.js"') do echo %%i
pause
参考技术B mp3的话,右键属性里的详细信息里有写,一般也不会有错追问

我指的是用编程的方法获取“时长”这个信息 用在程序里的,并不是看一眼就算了

以上是关于怎么获取一段mp3格式的音频的播放时长的主要内容,如果未能解决你的问题,请参考以下文章

java获取MP3音频播放时长(总结)

请教java如何实现获取一段mp3的总时长

java 获取音频视频文件时长代码示例

java 获取音频视频文件时长代码示例

如何用C语言播放一段音频呢

想用怎么用js实现播放音频。