我有一个长达 4 小时的音频文件。我创建了一个标准播放器来管理我的需求 - 工作正常,但您不会在位置计数玩家停止中寻求超过 12180000 毫秒。如果您将声音定位为播放 12100000(早耳几秒钟) - 播放正常,如果它算作播放而不通过代码更改位置,则直到最后都很好。我没有收到任何错误,也没有收到有关此类问题的任何类型的信息。
soundChannel = sound.play(12180000); // DOES NOT PLAY, NO ERRORS
soundChannel = sound.play(12100000); // PLAYS FINE, AND CONTINUES TO PLAY TILL THE END
- 播放前声音已满载。
所以有人有什么想法吗?
很有趣...我无法让它播放过去12173943 milliseconds
.对我来说,它计算出确切的数字,但在那之后的任何东西,它都不会播放。我的猜测是闪存为声音分配了一定数量的内存,并且该数字会计算为该文件分配的最大内存量。希望其他人可以插话。我正在使用Rummer提供的MP3,这是我的测试代码
import flash.media.*;
import flash.events.*;
import flash.net.*;
var channel:SoundChannel = new SoundChannel();
var sound:Sound = new Sound();
sound.load(new URLRequest("podcast.mp3"));
sound.addEventListener(Event.COMPLETE, soundLoaded);
sound.addEventListener(IOErrorEvent.IO_ERROR, onError);
function soundLoaded(e:Event):void
{
channel = sound.play(12173943);
}
function onError(e:IOErrorEvent):void
{
trace(e);
}
我正在使用闪存CS5.5并导出闪存10.2。我非常考虑将您的mp3分成几个部分。第一次加载SWF时,由于mp3太大,闪光灯在播放前挂起了10秒钟。
===============工作的 AS2 版本
var my_sound:Sound = new Sound();
my_sound.onLoad = function(success:Boolean)
{
if (success)
{
my_sound.start(12180);
}
};
my_sound.loadSound("podcast.mp3", true);