如何准确计算MP3的时间长度

wchuan 2003-12-22 04:59:06
有经验者能否给予提示?
...全文
255 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
eivanlee 2003-12-25
  • 打赏
  • 举报
回复
理论上是这样,实际上有待进一步研究,毕竟没有亲自动手做过,只是给楼主提个醒而已。惭愧。

不过我对MPEG-1、2规定的时间信息确实有疑虑:所有的时间信息好象都是为了视、音频的同步,因此时间信息只存在于系统部分,但实际应用中又允许将视频原始流和音频原始流分别作为文件独立播放,那么我想问:没有任何时间信息的原始流,如何控制其播放的速度,以保证准确的播放,既不快放,也不慢放?而且准确的定时应当是视、音频的一个基本属性,而标准却将定时与视、音频数据分离,是否科学?各位朋友能否给个解释,或者我的理解有误?
另外,对MPEG-4不熟,其时间信息是否也与MPEG-1、2的规定一样?有无改变?

wchuan 2003-12-25
  • 打赏
  • 举报
回复
eivanlee(视频爱好者) 讲得不错,如果是VBR的MP3那它的时间长度要搜索整个文件?

eivanlee 2003-12-23
  • 打赏
  • 举报
回复
抱歉,上面说错了。
MP3是符合MPEG标准的,MP3文件是音频原始流,应当看标准11172-3(音频)。
计算MP3文件的时间长度:根据标准,一个MP3音频原始流是由连续的音频frame构成的,而每个Layer III frame由1152个sample构成,抽样频率可从frame.header.sampling_frequency字段获得,因此一个frame的时间为1152/sampling_frequency,乘以整个MP3文件包含的frame个数就是总的时间长度。
细节部分请楼主自己斟酌,不当之处敬请指出。

eivanlee 2003-12-23
  • 打赏
  • 举报
回复
MP3就是MPEG Audio Layer III,所以应该符合MPEG编码标准规定的语法结构,本想帮楼主看看,谁知用UEdit打开了一个MP3文件,竟然与标准不符,诧异中。。。
DarthVader 2003-12-23
  • 打赏
  • 举报
回复
楼上讲的真不错啊 懂了

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧