热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

声音编程介绍

在Flash创建的引人入胜的动画效果当中,声音效果是最容易让人忽略,却又是最吸引人的地方。在动画创作中加入声音元素,能够使动画效果交互性更强,效果更生动。比如可以在视频游戏中添加声音效果,可以在应用程

在Flash创建的引人入胜的动画效果当中,声音效果是最容易让人忽略,却又是最吸引人的地方。在动画创作中加入声音元素,能够使动画效果交互性更强,效果更生动。比如可以在视频游戏中添加声音效果,可以在应用程序用户界面中添加音频回馈,甚至可以创建一个分析通过Internet加载的mp3文件的程序。
本章将介绍何加载外部音频文件以及处理SWF中嵌入的声音。还将介绍如何控制音频和从用户麦克风捕获声音等内容。

在计算机中声音信息的表示形式被称为数字音频。计算机可以捕获并编码数字音频以及对其进行存储和检索,进而可以通过连接到计算机上的扬声器进行回放。使用Flash Player和ActionScript结合,也能够实现音频文件的回放。
在ActionScript 3.0中,利用载入的数字音频数据,可以随意的来控制声音的音量、或者立体声还是单声道声音。不过在ActionScript 3.0中控制声音之前,需要先将声音信息加载到Flash Player中。ActionScript 3.0提供了4种方法将音频数据加载到 Flash Player 中,分别为:
在运行时加载的外部声音文件。
在应用程序的 SWF 文件中嵌入的声音资源。
来自连接到用户系统上的麦克风的声音数据。
从远程媒体服务器流式传输的声音数据,如Flash Media Server。

Sound类

Sound类用于在应用程序中使用声音。利用Sound类创建新的Sound对象、将外部的MP3文件加载到该对象并播放该文件、关闭声音流,以及访问有关声音的数据,比如有关流中字节数和ID3元数据的信息。

2323232

SoundChannel类

SoundChannel类用于在应用程序中控制声音。在Flash应用程序中,播放的每一个声音都被分配到一个声道,而且应用程序可以具有混合在一起的多个声道。SoundChannel类还包含一个stop()方法、几个用于监控声道幅度的属性,以及用于对声道设置SoundTransform对象的属性。SoundChannel类共有4个属性,1个方法,1个事件,具体内容如下。
leftPeak:只读属性,表示左声道的当前音量幅度,范围从0(静音)至1(最大音量)。
position:只读属性,表示该声音中播放头的当前位置。
rightPeak:只读属性,表示右声道的当前音量幅度,范围从0(静音)至1(最大音量)。
soundTransform:分配给该声道的SoundTransform对象。用于实现音量的控制和调节。
stop()方法:停止在该声道中播放声音。
soundComplete事件:在声音完成播放后调度该事件。

SoundMixer类

如果在加载声音文件或视频文件数据的同时播放该文件,则认为是流式传输。通常,将对从远程服务器加载的外部声音文件进行流式传输,以使用户不必等待加载完所有声音数据再收听声音。SoundMixer类就是用于控制嵌入的音频文件在传输声音流之前,预先载入道缓冲区的时间。注意,此类只能控制动态加载的声音文件,而不能控制嵌入道Flash Player中的声音文件。此类有2个属性,3个方法,具体如下所示。
bufferTime:表示在开始传输嵌入的声音流之前,将其预加载到缓冲区中所用的秒数。
soundTransform :控制全局声音属性的SoundTransform对象。
areSoundsInaccessible():确定是否因安全限制而无法访问任何声音,若无法访问,则返回false。
computeSpectrum():获取当前声音波形的快照,并将其放在指定的ByteArray对象数组中。
stopAll():停止当前正在播放的所有声音。

 

 

本文来自:ASP急救中心(http://www.ccap168.cn),详细出处参考:http://ccap168.cn/news/2010410016.htm


推荐阅读
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了在使用Python中的aiohttp模块模拟服务器时出现的连接失败问题,并提供了相应的解决方法。文章中详细说明了出错的代码以及相关的软件版本和环境信息,同时也提到了相关的警告信息和函数的替代方案。通过阅读本文,读者可以了解到如何解决Python连接服务器失败的问题,并对aiohttp模块有更深入的了解。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
author-avatar
ivanjjHelen
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有