Board logo

标题: 提取音频文件的“持续时间” [打印本页]

作者: wooglle     时间: 2010-7-25 20:03    标题: 提取音频文件的“持续时间”

在论坛上找了好久,都没有发现满意的代码。
请问各位大侠有没有什么方法,用DOS命令提取音频文件(mp3,wma等)的“持续时间”。
作者: johnsonlam     时间: 2010-7-25 22:44
1) use block read (or read whole file)

2) store in memory (buffer)

3) call decoding routine

4) play

Cubic player ( 無 敵 DOS 音 樂 播 放 器 ) with source code:

http://www.cubic.org/player/geocities/download.html

[ Last edited by johnsonlam on 2010-7-25 at 22:46 ]
作者: wooglle     时间: 2010-7-26 00:31
谢谢johnsonlam兄,Cubic player我下了,但是真的是搞不懂。
兄给出的4个步骤应该是一种解题的思路,但是我觉得如果要read whole file的话不利于多个文件的批量操作。
我在网上又查了一下,发现有利用wmp来提取的例子,不过好像是在VB中,
我把这个代码贴在这里,希望高手可以参照一下,挪用到DOS里

<code>
SumTime := MediaPlayer1.Length div 1000; //该MP3文件播放持续时间
<code>

在这里也分享一下自己刚刚领悟的笨方法,利用foorbar2000的一个插件。
先全选要提取的文件,然后利用工具里的“文本工具”,添加“length”项,然后就可以复制粘贴所有文件的“持续长度”了。

说明一下,我提取这个“持续长度”主要是向利用dos制作一个简单的音乐播放器。
这个播放器主要是利用mshta.exe,但是,必须要提供音频文件的“持续长度”才可以连贯地播放。
现在,我利用foorbar2000+Excel可以快速得到需要的播放列表,但是此方法不利于传播普及,所以,希望高手可以提供更好的方法。谢谢!!!
作者: jqh2004     时间: 2010-10-30 13:15    标题: 用wmic方法呢?

这个有好多操作方法,应该能吧wmplayer的一些工具调用出来吧
不懂,随便说了下