1

我正在 CS6 中开发一个 Flash 项目,需要将声音导入到我的库中,但我遇到了无穷无尽的问题。我在 Actionscript 3.0 中使用外部文件(例如,我无法执行 URLRequest,因为它无法在外部工作,需要导入) , 这仅在 MP3 文件中的 32 处。我将它转换为 AIFF,没有成功,WAV?没有成功。如果是 MP3,我只会得到“无法导入”如果是 AIFF 或 WAV,我会得到“一个或多个文件未导入,因为读取它们时出现问题”

Adobe 建议您需要 160kbps 以下的文件,都设置为 32kbps 以确保安全。另一个建议是您需要 Quicktime 7.7.1(或更新版本)和 iTunes 10.5.5.3(或更新版本)才能处理 MP3 文件。我有 Quick 7.7.3 和 iTunes 11.0,所以我真的不知道这个问题。

谁能帮忙,这个项目需要尽快完成。

谢谢。约翰。

4

3 回答 3

1

可能与比特率有关。

我遇到了一些使用 Audacity 从 wav 转换而来的 mp3 文件的问题。这是一些特定的不起作用的,所以我回到 Audacity 并将产生工作 mp3 的 wav 与不工作的 wav 进行了比较。我注意到工作 wav 的比特率为 44100Hz,非工作 wav 的比特率为 48000Hz。在导出之前将项目速率(左下角)设置为 44100Hz,生成的 mp3 可以毫无问题地导入到 flash 中。

简而言之:

  • 48000赫兹=淘气
  • 44100赫兹=不错
于 2014-12-04T01:48:35.073 回答
0

这篇文章有点老了,但我想在遇到同样的问题后我会发布一个答案。我也在 CS6 中使用 Flash Pro。您要做的是将声音嵌入到您的 FLA 中,这样当您的 SWF 被编译时,声音就会随之而来。哈立德的回答很好,但这个问题需要更多的 TLC。

对我有用的是获得一个编辑声音剪辑的应用程序。我下载了开源“Audacity”。在 Audacity 的左下角,您可以编辑项目速率。将其降至约 1600 或更低。然后保存项目并将声音导出为 mp3。

最后,确保您的声音剪辑与您的 FLA 位于同一文件夹中。导入您的 FLA(现在应该可以使用)并通过右键单击库中的声音,转到属性来导出您的声音以用于操作脚本。将类的名称更改为您想要的任何名称(至少从类名中删除“.mp3”)。

然后使用以下代码(不同于典型的声音 URL 加载器):

//sound is a constructor variable under your document class
public class DocumentClass extends MovieClip 
{
var yourSound:yourSoundClass;
public function DocumentClass()
{
init();
}
function init():void
{
yourSound = new yourSoundClass();
}
}

然后使用 yourSound.play() 播放声音;这种技术会将您的声音嵌入到 SWF 中,因此无论 SWF 走到哪里,它都会去到哪里。我希望能帮助任何遇到这个问题的人。

于 2013-06-21T05:44:56.373 回答
0

这是一个奇怪的问题,这是一个加载和播放 MP3 声音的简单代码片段,AS3 本身不支持 WAV:

//sound object
var sound:Sound = new Sound(new URLRequest("music.mp3"))
var soundChannel:SoundChannel = sound.play();

希望这有帮助:)

于 2012-12-10T16:34:15.760 回答