as3 使用sound类(翻译)-获取文件大小

 [1b]问题六[/1b]
       我们想创建一个声音文件加载情况的进度条,这就要求我们能获取文件的大小,及已经下载了多少了。
[1b]解决方法[/1b]
       访问sound对象的bytesTotal 和bytesLoaded属性。
[1b]具体讨论[/1b]
[color="#ffffff"]成业原创,转载说明出处 http://hi.baidu.com/flash_as3[/color]
       对于流式的音频文件,让用户知道目前已经下载了多少数据是个不错的想法。理想情况是:声音文件的下载速度比播放速度快,这样就不会在播放的时候暂停。但是,在不稳定的网络和带宽比较窄的情况下,如果声音文件的编码率比较高,就很难保证缓冲区里总是非空的,也就很难保证不会出现暂停。
[color="#ffffff"]成业原创,转载说明出处 http://hi.baidu.com/flash_as3[/color]
       因此,用进度条来向用户展示目前声音的加载和播放情况是一个不错的选择。你也许看过很多流媒体播放器的进度条,比如Windows Media Player或QuickTime Player。通常,会有一个进度条表示音乐的播放进度,进度条的背景色是白色的,前景有一个黑色的进度条表示目前播放的位置,另外,还有一个灰色的进度条表示目前缓冲区的情况。当灰色的进度条(缓冲buffer)比黑色的进度条(当前播放位置play position)长的时候,我们知道文件播放很流畅;当黑色的进度条赶上灰色的进度条的时候,媒体会停止播放,灰色进度条继续变长,继续向缓冲区加载数据,当它足够长的时候,媒体会继续播放,黑色进度条会继续移动,这时灰色进度条就有希望一直领先了。
[color="#ffffff"]成业原创,转载说明出处 http://hi.baidu.com/flash_as3[/color]
       本文教你如何实现创建上面提到的灰色进度条和白色背景(以后我们将学习如何创建黑色进度条),要用到声音对象的两个属性
[color="#ff6666"]bytesTotal[/color]

[color="#ff6666"]bytesLoaded[/color]
,这些属性的含义相当明了:bytesTotal 包含mp3文件总长度的信息,bytesLoaded包含当前已经下载了多少数据的信息。有了这两个值,我们就有了数据下载的百分比。
[color="#ffffff"]成业原创,转载说明出处 http://hi.baidu.com/flash_as3[/color]
       下面的例子设定了enterFrame的处理函数,让影片每播放一帧就重新计算当前下载百分比,然后根据这个绘制进度条。
[color="#ffffff"]成业原创,转载说明出处 http://hi.baidu.com/flash_as3
[/color]
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1917.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值