【基于Flash的声音可视化播放效果分析研究】 声音可视化
摘要:一般音频播放器采用可视化插件效果来渲染声音的旋律美感,以达到最佳的视频效果,强调人们对声音的理解。该文应用flash提供的SoundMixer类对声音进行频谱可视化分析研究,实验证明不管是波形描述或者频谱描述,只要获取了声音的原始数值,就可以发挥编程与艺术的结合,实现对声音的播放效果做各种动态的可视化表达。
关键词:声音;可视化;Flash编程
中图分类号:TP391文献标识码:A文章编号:1009-3044(2012)18-4512-03
Analysis Based on the Sound Visualization in Flash Playback
KONG De-jian, SUN Dan-peng
(Qujin Normal University, Qujin 655011, China)
Abstract: General audio player visualization plug-in effects to render the beauty of the sound of the melody in order to achieve the best video effects, and emphasized that people of sound understanding. In this paper, flash SoundMixer class analysis of the sound spectrum visu? alization, experiments show that regardless of the waveform description or spectrum description, you can play a combination of program? ming and art, as long as access to the original value of the sound, the sound playback do a variety of dynamic visual expression.
Key words: sound; visualization; Flash program
对声音的描述可以基于物理特征或心理特征来进行描述。物理特征描述如频率、幅度、相位等,心理特征方面描述有音调、响度、音色等。用这些量纲特性语言来描述声音缺乏形象与直观性,更难以体现人们对音乐旋律的感受。对只能主观感受的声音进行可视化表达,可以增强人们对声音的理解,增强声音信息的表达力效果。
图2FFTMode为false图3FFTMode为true
当把FFTMode的值改为true时,其结果如图3所示;
默认情况下FFTMode的值为false,采用波形描述,readFloat()方法读取的outputArray值为介于-1和+1之间的浮点数,这些值表示所播放的声音波形中点的波幅;当FFTMode的值为true时,使用频谱形式描述,readFloat方法读取的outputArray值为0和约1.414之间的浮点数。
2.2波形可视化效果表达
从上面的分析来看,FFTMode:Boolean (default = false),采用波形描述,声音数据是作为ByteArray对象(包含512个4字节数组)返回的。前256个浮点数描述左声道的波形,后256个浮点数描述右声道的波形。
//获取当前声音频谱信息
SoundMixer.computeSpectrum(ba, false, 0);
graphics.lineStyle(1, 0x0000FF, 100); //绘制声波曲线
for (var i = 30; i <= stage.stageWidth - 30; i++) {
num = ba.readFloat() * 360; //以浮点形式读出当前声音频谱信息
图4波形效果
2.3频谱可视化效果表达
当把FFTMode设置为true时,使用快速傅立叶变换(FFT)将波形数据转换为频谱数据,在频谱中,左侧表示的是低频,右侧表示的是高频。图5频谱图示效果
stretchFactor:int (default = 0),声音采样的分辨率。stretchFactor值默认设置为0,表示按44.1KHz对数据进行采样;如果值为1,则按22.05KHz对数据进行采样;如果值为2,则按11.025KHz对数据进行采样;依此类推。采样率影响波形的平滑度。
从上面的分析来看,不管是波形描述或者频谱描述,只要获取了声音的原始数值,就可以发挥编程与艺术的结合,实现对声音的播放效果做各种动态的可视化表达。这种可视化表达不尽有利于增强声音播放的视听效果,同时也能可视化的体现声音的旋律感,增强人们对于声音变化的感受。
[1]周宁,张李义.信息资源可视化模型方法[M].北京:科学出版社,2008.
[2] Adobe公司. Adobe Flash CS5中文版经典教程[M].陈宗斌,译.北京:人民邮电出版社,2010.
[3] Adobe公司. Adobe Flash CS4 ActionScript 3.0中文版经典教程[M].井中月,译.北京:人民邮电出版社,2010.
[4] Adobe Flash Platform[EB/OL]._CN/air/html/dev/index.html.
