Actionscript 3 让Actionscript 3以正确的长度播放mp3文件

Actionscript 3 让Actionscript 3以正确的长度播放mp3文件,actionscript-3,flash,audio,mp3,Actionscript 3,Flash,Audio,Mp3,我有一个应用程序,使用ActionScript3构建,可以播放mp3文件。AS3有时会错误地报告文件的长度。几周前我问了一个问题,得到了一个链接: 我在XML文件中包含了正确的长度,并认为使用该值让AS3正确播放文件是相当容易的。不幸的是,文件停止播放的长度是3认为正确的值,而不是实际长度 有解决方案吗?您可以尝试以下几点: -检查您使用的事件。使用Event.complete确保在获得长度之前声音已完全加载 或 -尝试使用计时器并将其设置为XML文件中给定的长度 这取决于你在做什么,但如

我有一个应用程序,使用ActionScript3构建,可以播放mp3文件。AS3有时会错误地报告文件的长度。几周前我问了一个问题,得到了一个链接:

我在XML文件中包含了正确的长度,并认为使用该值让AS3正确播放文件是相当容易的。不幸的是,文件停止播放的长度是3认为正确的值,而不是实际长度


有解决方案吗?

您可以尝试以下几点:

-检查您使用的事件。使用Event.complete确保在获得长度之前声音已完全加载

-尝试使用计时器并将其设置为XML文件中给定的长度

  • 这取决于你在做什么,但如果窗口失焦,可能会出现音频停止或循环的问题。试着保持窗口的焦点,看看这是否是你的问题。如果是,您可能需要使用event.activate和event.deactivate暂停音频

这算是一个答案,我不喜欢,但也许这就是我们需要做的:

决定将这首歌加载到Blaze Audio的RipEditBurn Plus中并进行重新转换,看看会发生什么。当光标位于文件名上时,在加载之前会显示正确的长度。惊人-为什么AS3会出错

新文件工作正常,AS3读取的长度正确。原始文件似乎有问题。两个文件上的文件大小完全相同

如果我在第二天左右没有得到更好的答案,我会把它标记为正确答案,但如果有更好的方法来做这件事,那就太好了

编辑-YIKES!!!!!在使用应用程序运行歌曲之前,我已将其重命名。一切正常。所以我把名字改回来了,结果长度不对!!!?????很久以前,我使用mp3文件格式,但我不记得头中会导致此问题的任何内容。这首歌的名字是Ayize——这是一首南非歌曲。如果我只是让它变为ayize,它就会起作用


非常非常奇怪。

我找到了真正的答案,而且非常疯狂。我在做其他事情的时候把这个项目放在一边,几天前又重新开始了。我有一套不同的歌曲,其中一些我需要编辑。我尝试了编辑版本,而AS3播放了非编辑版本!我意识到,因为我是从主机上传输这些内容,所以AS3似乎在我的计算机上的某个地方保存了一份原件的副本


如果我在另一台计算机上运行它,我会立即知道,但至少我最终找到了发生的事情。

我会说重新打包你的mp3,以便让AS3正确地读取它们的长度。这个程序将用于许多来源的mp3文件。我不可能重新包装它们。我希望这不是一个愚蠢的问题,但你读过这篇文章吗:我正在等待加载完成,以获得长度。我正在做这两件事。使用event complete时报告的长度不正确,如果使用基于XML文件中长度的计时器,文件将停止播放AS3认为正确的长度。