关于flex添加音频的方法

参考:

http://bbs.airia.cn/thread-45114-1-1.html

http://www.bbs.cenfun.com/thread-8000-1-1.html

http://docs.huihoo.com/actionscript/as3/developer/zh_CN/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d1d.html

 

 写道

有些时候用CMP播放MP3时,会出现比如时间不正确,音调不正确,播放速率不正确等问题
这些一般都是由于MP3的编码格式不标准造成的,建议重新转一下格式
因为CMP采用Flash开发,目前的Flash Player对这些特殊编码MP3可能会产生以上问题

Flash player能很好的支持对MP3音频格式的播放和控制,但并不是所有的MP3编码格式都支持(播放正常)。
查阅了Flash帮助文档和搜索官方资料也都没有明确的说明,而来自网络的MP3又各式各样,很多网友疑问用CMP播放MP3时都遇到了播放加快或其他不正常现象,这是因为某些MP3编码格式Flash不支持导致。

Flash支持播放的MP3格式,编码采样率最好是44100Hz(或者它的倍减数),且为CBR(常数比特率)压缩

推荐最佳标准MP3音频编码格式:
44100Hz采样率+128Kbps比特率+双声道立体声 音质不错,文件大小也适宜

频率倍减的还有22000Hz和11000Hz,声道也可以采用单声道
不过音质较差,当然文件更小,推荐减少比特率来减小文件,如:
44100Hz采样率+64Kbps比特率+双声道立体声 低速网或需减少流量采用的最佳方案(可替换wma)

不兼容的例子:
1,一些特殊采样率(如32000,8000,64000)编码的MP3虽然能够播放,但是播放速度不对(播放加快,音调不对),自然时间也不正确,歌词也无法同步。

2,Flash播放器不能很好的识别VBR(可变比特率、动态比特率)编码的文件,会产生各种问题,要么是完全忽略,要么是静音,导致可以正常下载却不能播放。

3,Flash播放器也无法解决“假mp3文件”——即那种是mp3模式,但内容是用一些不标准的系统编码的音频数据。Microsoft微软推出的一些音频解码器能通过微软自己的ACM音频压缩器制作mp3文件,但Flash播放器却完全不能识别。

这是因为Flash Player播放一些非标准压缩或编码的Mp3时,在寻址上并不准确:

Sound. play(position);

要很好的对position进行定位,需要对mp3的格式有些限制,这里做了些实验,分别对以下编码格式的mp3进行快进寻址操作,看是否准确:

64kbps_11kHz.mp3 有问题
128kbps_11kHz.mp3 有问题
32kbps_22kHz.mp3 有问题
32kbps_24kHz.mp3 有问题
32kbps_32kHz.mp3 有问题
96kbps_32kHz.mp3 有问题

32kbps_44kHz.mp3 正常
64kbps_44kHz.mp3 正常
96kbps_44kHz.mp3 正常
112kbps_44kHz.mp3 正常
128kbps_44kHz.mp3 正常
192kbps_44kHz.mp3 正常
128kbps_48kHz.mp3 正常
192kbps_48kHz.mp3 正常

以上均采用CBR(常数比特率/恒定码率)压缩,由此可见寻址的精确与否和采样频率有关系。
当采样频率大于等于44kHz都正常(即44100Hz),而与编码质量关系不大,不管是32kbps到192kbps都寻址正常。
所以推荐大家压缩用于flash player播放的mp3时,一定使用44100Hz的采样频率。而文件大小和音效质量由编码率去确定。当然大家还可测试一下采用VBR(变码率)压缩的情况。

 <?xml version="1.0"?>

<!-- Simple example to demonstrate the SoundEffect effect. -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/mx">

    <fx:Declarations>
        <mx:SoundEffect id="mySounds" source="@Embed(source='assets/jazz.mp3')"/>
    </fx:Declarations>

    <s:Panel title="Sound Effect Example" width="75%" height="75%" >
        <s:VGroup left="20" right="20" top="20" bottom="20">

        <s:Label width="100%" color="blue"
            text="Click on the phone to hear the sound effect."/>

        <mx:Image id="flex" source="@Embed(source='assets/Nokia_6630.png')"
            mouseDownEffect="{mySounds}"/>

        </s:VGroup>
    </s:Panel>
</s:Application>
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值