找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 5004|回复: 0

[音频应用] Flash中"一个文件或多个文件无法导入"音频问题及同步歌词的方法

[复制链接]
guojian123 发表于 2015-10-23 08:56:05 | 显示全部楼层 |阅读模式
0 p! ]! N5 L3 L" j8 R  k) Y
在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。7 I. u# ~; S8 \5 [
& D7 v* J- e+ m7 C  j. w
1 L2 }1 B* ^* Y3 b4 g9 R
, [$ w+ o9 D; A
首先了解一下音频的几种常见格式:
4 d3 E: w- B) W- g7 n' l+ |3 ^* ~) Z% k3 ?  |) Z8 o& N! t6 i
mp3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  
; `* y# h& w, `! e& I' swma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  7 b5 y4 a! U( \% o% k8 l
wav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  9 s7 R) M" z  E7 i

& J8 E( z' z9 P& G: X5 F$ q# N属性(采样频率):  4 J. h  u9 \" r7 z% z

3 c) S" z" b9 a  d8 N5KHZ:只适合于说话声音) g! O, O! p, E) F( t" T  K) S
11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质
  w% T* c- Y5 b. ~/ u22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择. A* }  p  z! s( t0 H. V
44khz:理论上的CD音质界限。标准CD采样率  
9 t! Y/ ~4 E! l' T1 x
8 U1 {5 O" W8 j采样位数:% v, b! x' B6 D9 ]
5 {* c  Y4 E2 H' C# k# \
如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  8 ^3 R# n; J8 }6 G4 n8 o5 [4 i9 m) a
当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。
9 q, u) c2 Z' P" M- {0 H确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  
1 [0 y2 L& u) {1 u! v" x+ L# R
4 \. `5 h& M' ^再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质' K: Y( D3 F( F" B& Z
要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  : [) _3 t4 b; m* k9 Q( _. F+ @
搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。8 o5 O' @! ]) ~$ b$ J  p: ^+ T+ ~
$ a6 R( Z7 s7 D6 L" ^
& D+ w3 d  ~- C& e) p/ T9 C3 j) e
下面我们打开Goldwave软件~来看看如何操作  
0 X* H  E* e4 O. @. o* w8 h+ n: r6 I3 j) M5 z) q
9 }. \4 T5 {4 k" y& J- i
音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  
3 v* i& i* I! K1 P1 g* p* N7 ~$ T! r# d
打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲
0 w/ H9 z( I* b" a* h% Q解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。
" \1 g8 W. V. u. u) d# W在弹出菜单中,选择保存类型:MP3。/ O  S) n; G0 }( y
打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。
) y+ {1 x& ?, ?2 C/ Q5 k3 l4 @4 N8 J检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。
+ \: p8 L6 l) T8 [: x7 s* o回到flash软件,导入mp3,正常导入并检查库中元件。
4 [+ W" x/ [  i# c& s) L) j6 @注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。0 O% ]: a4 M9 G7 n3 V
打开库面板,选中元件鼠标右键,选择“导出设置”。( {/ [) v, e: \: R# n) S% }. t3 Q
选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。
4 b7 @( E0 @8 L, `# n再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。
  O, U2 |+ s; m; d1 F" t+ p; E' ]# D" x& d

; W& @( T; {+ U  a+ q歌词和音频的同步,用于swf中的字幕制作6 l$ F& k1 j# X
- z5 d/ h) S: b) W3 Y( A
打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。
+ S7 z4 l* h& P" W6 o& R% z' G9 _在时间轴上新建一个图层命名为“文本”。
8 P2 D; H7 o. ~! @# ?7 _& @9 `使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。
  e; u. F3 [2 N$ K) L/ C在第1帧处插入如下代码,同时执行导入库中的音频文件:' o2 _/ Z/ y) O9 u: A0 Z& a

2 L3 h7 k3 Y# g0 h. h8 z0 qinc = 0;
' _% j% N& k4 K* t# h, xmusic = new Sound(); : e% ^& W3 J; h+ c+ S
music.attachSound("music");
+ D4 |) n3 r: Qmusic.start(); ( C: ?3 R; q! I7 s5 I1 @5 G# Q

, ~* z# ]! l3 k( m! E5 M4 m, ]新建图层2,命名“as”层,第一帧处插入以下代码:
, u3 d+ g( ^( D; |* {# a
& x/ [& l( n- e1 J  h: t5 ]/ E2 B% ~stop();
; C- d" Q" @$ a; [; tthis.onEnterFrame = function() {
5 ^3 s/ N  G  e3 M4 R  if (inc>10) {
. H5 {/ L8 v* N) Z4 C          gotoAndStop(1); 0 k- C3 Q7 |" r' l# U9 v6 w  h  \
  } % G; r5 J# U) l
  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5];
/ u* {# G# `% _6 s5 _  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"];
7 A3 R; w. F9 h2 F5 ~8 p  if (getTimer()>labelTimeList[inc]*1000) { 7 A5 w9 B9 `( C5 z  S8 n7 Y: n
   x = musictext[inc]; 7 U' V2 f( x6 Q  i0 ]8 Z
   inc == inc++; # x* `1 S/ z7 F6 `
  }
8 ^: i" e; }: f' t+ x/ ?};
( z% F+ l1 }3 X& ~- |' F2 |7 F6 uthis.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数
* F  ]! {( \: O" j* e! z& J6 h  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc' G* t5 W& E1 s; r3 i5 a
      x = musictext[inc];
* t% o) k/ h" I% s$ v3 R7 |      inc == inc++;
; }3 w5 Y0 y# j) `7 G+ c% A6 y  }
/ {+ [9 ~7 e' b8 x; [- r( `};6 g8 `- N1 `% k" l
labelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间
) c( w2 `4 p) i/ n5 p# z9 f
# q8 z) ^  w3 ~, p. I' r' c. xCtrl+Enter回车测试效果。/ |$ v7 @8 G0 J. |9 x/ G; ^

相关帖子

音频应用店铺 音乐发布 中国原创歌词网
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

小黑屋|手机版|音频应用|歌词网|投稿|中国原创歌词基地 ( 鄂ICP备13005321号-1 )

GMT+8, 2024-5-14 04:17 , Processed in 0.045965 second(s), 7 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

快速回复 返回顶部 返回列表