as3——检测视频,音频

使用flash.system.Capabilities的hasEmbeddedVideo, hasStreamingVideo和hasVideoEncoder属性确定正在运行flashplayer的设备的视频性能。
    在你尝试传送视频给用户前,很重要的是检测他的系统是否能够播放视频,应该如何传递。以流媒体嵌入播放器来传递flash视频率是最有效的方法。这样用户可以一边观看一边载入,而不是等到整个文件下载完毕(常常文件非常大)。然而,用户的系统可能不接受流媒体。为了检测这方面,可用flash.system.Capabilities.hasStreamingVideo 属性。如果放回false,唯一的选择是让播放器载入另一个内置视频的swf文件。然而,在做这些之前,应该检查属性flash.system.Capabilities.hasEbeddedVideo在下载之前确定用户能观看。就像下列代码:
if(flash.system.Capabilities.hasStreamingVideo) {
  // Code to set up a video stream and start streaming a
  // specific video
}
else if(flash.system.Capabilities.hasEmbeddedVideo) {
  // Code to load an external .swf containing an embedded video
}
else {
  // Alternate content without any video
}
    同样的,如果程序需要视频流编码,你就要确定系统处理编码的能力,就像网站的中央地址存储器用来从用户的系统中传送生活影片。你可以用flash.system.Capabilities.hasVideoEncoder属性测试。如同早期的例子,你或许会在if语句中测试这个属性且仅当测试为true时建立视频流。另外,也可以给用户显示一个信息解释这种情形或直接给他另一个页面。
使用 flash.system.Capabilities 中的hasAudio和hasMP3属性确定正在运行flashplayer设备的音频性能。
    如果用户的系统具有音频的性能flash.system.Capabilities.hasAudio属性返回true,否者返回false。为了在多种设备上播放影片这一点极其重要。如果设备不支持音频,就要强制避免用户下载他们不能听的东西(特别因为音频是非常大的)。
// Load a .swf containing sound only if the Player can play audio
if (flash.system.Capabilities.hasAudio) {
  content = "sound.swf";
} else {
  content = "silent.swf";
}
// code to load the .swf referenced in content
    然而,仅因为系统具有音频性能,也不必然意味着能够播放MP3音乐。因此,如果要发布MP3内容,应该用flash.system.Capabilities.hasMP3属性测试MP3性能。如果支持,MP3声音更合适,因为它们比ADCP声音有更高的性能比。
// If the Player can play MP3s, load an MP3 using a Sound object.
// Otherwise, load a .swf containing ADCP sound into a nested
// sprite.
if (flash.system.Capabilities.hasMP3) {
  var
url:URLRequest = new URLRequest("sound.mp3");
  sound = new Sound(url);
  sound.play(  );
} else {
  // code to load an external .swf containing a ADCP sound
}
    重要的是理解hasAudio和hasMP3的属性设置是根据播放器的性能而不是正在运行播放器的系统的性能。桌面系统的播放器(windows,Mac OS和linux)无论系统是否真正有播放声音的硬件(也就是声卡和扬声器)那两个属性总是返回true。然而,如果设备不支持音频或MP3特征,其它设备的播放器可能返回false。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值