找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 9005|回复: 0

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

[复制链接]

2135

积分

4

听众

1130

金贝

中国原创歌词基地初级

积分
2135
guojian123 发表于 2015-10-23 08:56:05 | 显示全部楼层 |阅读模式
! N, y  Y; C8 q5 K% R+ w1 ]+ p, F
在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。
7 p7 o, j* O0 i  t
: M, y+ W# A8 R1 {: ]
' h% T: a  m* n" o$ H, y/ F) y$ t1 i
0 X1 [- z& M& \3 ^" V首先了解一下音频的几种常见格式:' Q4 q) K' O7 H% ^
# G# }/ [! }+ y
mp3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  # I7 K' d! e+ D
wma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  
' v+ o/ F5 d* Dwav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  0 u  Z! O4 J3 v" ~" g& g- X( ?

/ K$ ~! R+ k; T* j9 z1 v8 D属性(采样频率):  . l* D7 I" E7 J4 }  K

7 c4 J, z% M! z+ L3 n' ~5KHZ:只适合于说话声音% T. K. n0 x4 _4 J& `' ^6 V
11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质$ `2 h, y( d/ k% R! P! A
22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择0 {1 a( Z; t$ S7 i+ |) l9 U& ~
44khz:理论上的CD音质界限。标准CD采样率  
5 Z# b5 z; a: K; V6 F8 u& R7 {# _/ S! `$ l
采样位数:! l7 ]. |1 Z& a9 K+ H
& H2 Q" n$ f0 g7 w5 q
如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  , L# Y8 m+ N4 T
当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。
6 E# g4 e9 _6 i5 d确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  
5 ~% g3 x% A: K+ ^6 H
, K3 H( D7 ]" ?6 w7 [再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质
/ C; V! G4 S; y9 I% e# d7 D$ l! n要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  * t8 N5 ^# A' n- E4 ~: J2 E; u
搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。
+ o0 u& @7 ~9 K' l4 `1 k$ N- y' L& x7 x! |1 q

: S+ x$ j8 B$ Y7 ~0 Y下面我们打开Goldwave软件~来看看如何操作  
, s9 }+ I% C, }- F9 c" w& T6 X0 S; e7 V9 X
8 E& Y( Y2 y+ X' y1 v
音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  1 B  n/ o; A9 [+ {) [8 S3 ^0 c2 ^! E
! R6 B& f  k/ S' j
打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲5 \/ {; f  U" i* P
解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。1 {6 ?  G; H' @* i0 Y3 c' Z; H& o1 X0 q
在弹出菜单中,选择保存类型:MP3。3 x$ u) w9 V$ y
打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。
) h" Y  E3 P+ Q1 _  h" S& W$ a- C检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。2 d5 g1 C: P9 B( ]6 Y
回到flash软件,导入mp3,正常导入并检查库中元件。: O$ [/ }) Z" c) `* }9 ^0 s- M
注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。
3 S' A3 |7 ~& X. `. l& s9 T打开库面板,选中元件鼠标右键,选择“导出设置”。+ e' k& |0 Y, F# e7 C; J6 s7 d
选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。
! c* _" Q7 s# a- R; r0 p2 C: l! O再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。
& }  s5 I$ @- ~' W9 T
9 p4 H* z0 D% }9 v1 U& p1 e- d9 z
歌词和音频的同步,用于swf中的字幕制作* y! j0 ?$ A9 Y
0 U0 P7 }% C6 p: x4 _: Z7 T
打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。8 x' ~% }8 a& J. H
在时间轴上新建一个图层命名为“文本”。# G1 E# W, P0 H2 k3 d
使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。' k% \9 }; Q$ p/ h! S* l
在第1帧处插入如下代码,同时执行导入库中的音频文件:
3 c) _1 R7 ~3 a: X5 P5 j' m  s  \6 ?4 \3 [9 \
inc = 0;
* q$ X: Y6 G6 g' `  k/ Bmusic = new Sound(); : }' ?  V% \) X$ r
music.attachSound("music"); / d0 l( ~# }9 |6 B
music.start();
" `. A+ y! O, i0 Z& |" O' p+ J0 J' p9 R7 C! `- T( w  @
新建图层2,命名“as”层,第一帧处插入以下代码:
/ i! M2 w4 l4 j7 I3 Z, F, |0 B9 d2 {$ T  G/ b
stop(); 7 z- R1 C( j7 Z9 F! ?3 P
this.onEnterFrame = function() { ; `5 u$ l- y8 ?7 H, U# Y
  if (inc>10) {
0 @0 W0 G7 x9 k- h" q          gotoAndStop(1); 7 L; a% }: i: Z+ M1 K5 X6 f! D$ W
  } $ d. `) q. t+ `
  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5]; + {- N" r3 Q! X# J- R/ U
  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"]; % l( |/ M$ T7 C0 y& w) z
  if (getTimer()>labelTimeList[inc]*1000) {
/ {& ?2 B  q' ^8 `+ c! u   x = musictext[inc];
5 f( A4 j- w% L0 A3 z# F   inc == inc++; 1 V+ ?9 }: f/ g+ n& D' ~1 o7 H0 D! u
  }
8 G6 e6 ], a6 {4 _0 Y" k5 X. ?( ~1 l};
9 d8 U! s3 ]0 L1 e) Zthis.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数  {( W  a6 _+ Q
  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc
" o* H2 A6 Z- I: m" a1 V" M      x = musictext[inc];
- j5 u, i; W( K7 t4 J      inc == inc++;
( ?0 e- p2 B" R, M" [  }
8 Y1 |8 H: P: m" s+ Z8 {$ X};( [( c" q% E6 F6 v
labelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间
# F, w& X( d+ c" N3 s( u" i* |$ f% |
Ctrl+Enter回车测试效果。
/ E. R& ?4 U3 |; r( L: S

相关帖子

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-8 14:18 , Processed in 0.310524 second(s), 9 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

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