Apache flex 加载声音会导致Sound.id3出现异常

Apache flex 加载声音会导致Sound.id3出现异常,apache-flex,exception,audio,Apache Flex,Exception,Audio,将MP3加载到flash.media.Sound对象时,id3属性会给出一个错误: SecurityError: Error #2000: No active security context. 当然,就像Flex中的许多错误一样,Flex文档没有提到这方面的任何内容,只是它存在 MP3是有效的(我用MediaPlayer和iTunes检查过),声音对象处于良好状态(ByTestTotal和bytesLoaded都反映了正确的字节数) 有人也有这个问题吗?有什么解决方案或建议吗?你的MP3应该

将MP3加载到
flash.media.Sound
对象时,id3属性会给出一个错误:

SecurityError: Error #2000: No active security context.
当然,就像Flex中的许多错误一样,Flex文档没有提到这方面的任何内容,只是它存在

MP3是有效的(我用MediaPlayer和iTunes检查过),声音对象处于良好状态(
ByTestTotal
bytesLoaded
都反映了正确的字节数)


有人也有这个问题吗?有什么解决方案或建议吗?

你的MP3应该没问题

如果您想访问有关mp3文件的更多数据,而不仅仅是播放,则需要一个允许访问的策略文件。与加载图像类似,如果只是将图像添加到显示中,而不访问像素,这一切都很好,但如果要访问像素,则应该具有权限(跨域xml)

对于图像,当调用加载图像时,可以传递一个LoaderContext,其中明确表示要检查crossdomain.xml文件并访问内容

同样,您应该创建一个second参数设置为true(以进行检查)的函数,并在声音加载调用中使用它

e、 g

对于ID3数据,您应该侦听ID3事件:

sound.addEventListener(Event.ID3, onID3);

function onID3(event:Event) {
    for(var i in sound.id3)
        trace('prop: ' + i + ' value: '  + sound.id3[i]);
}
要了解更多信息,您可能会发现方便

嗯,,
乔治,你的MP3应该没问题

如果您想访问有关mp3文件的更多数据,而不仅仅是播放,则需要一个允许访问的策略文件。与加载图像类似,如果只是将图像添加到显示中,而不访问像素,这一切都很好,但如果要访问像素,则应该具有权限(跨域xml)

对于图像,当调用加载图像时,可以传递一个LoaderContext,其中明确表示要检查crossdomain.xml文件并访问内容

同样,您应该创建一个second参数设置为true(以进行检查)的函数,并在声音加载调用中使用它

e、 g

对于ID3数据,您应该侦听ID3事件:

sound.addEventListener(Event.ID3, onID3);

function onID3(event:Event) {
    for(var i in sound.id3)
        trace('prop: ' + i + ' value: '  + sound.id3[i]);
}
要了解更多信息,您可能会发现方便

嗯,,
George

从本地文件系统加载来自相同域或不同域的声音(我使用-use network=false以避免沙盒安全)从本地文件系统加载来自相同域或不同域的声音(我使用-use network=false以避免沙盒安全),这有助于我消除错误,但返回一个ID3Info对象,其所有内容均为null,即使加载了所有字节并调度了“complete”-事件。。。现在怎么办?编辑:再次尝试另一个mp3,给我正确的id3info。。。可能是Id3v2导致null?这有助于我消除错误,但返回一个ID3Info对象,其中所有内容都为null,即使加载了所有字节并调度了“complete”-事件。。。现在怎么办?编辑:再次尝试另一个mp3,给我正确的id3info。。。可能是Id3v2导致空值?