找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 9545|回复: 0

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

[复制链接]

2135

积分

4

听众

1130

金贝

中国原创歌词基地初级

积分
2135
guojian123 发表于 2015-10-23 08:56:05 | 显示全部楼层 |阅读模式

$ @# h* K( n8 h$ @7 h. O在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。
( T5 D) o) n* W7 @
% u2 h& u8 I1 f, ]* R2 U
, i( x. V' O; [# \- c! D, S9 C( V) B! \+ e6 e! v
首先了解一下音频的几种常见格式:
, b7 G/ K9 w. u7 G( M2 S) k1 F/ l8 g# |. m+ f3 |8 ~
mp3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  / Z2 C( B$ M% Y2 @
wma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  1 S& ?4 t& a% }/ M% a* u7 o
wav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  ! T8 O& |0 F' J( x
! ]; ]8 w/ V9 K: j" z  {
属性(采样频率):  
# M5 n' c, v# B; R8 @1 {
. K, ^' ]2 c, F5KHZ:只适合于说话声音, m5 ?7 e9 N9 A+ r5 |
11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质2 T1 W: }4 `. Q$ P: G, d
22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择9 D- x; y+ P' B$ p5 c6 `# m3 Y5 a7 W
44khz:理论上的CD音质界限。标准CD采样率  
. {. Y  G5 ]' Y2 w3 o+ U% g9 X* K1 M1 Y) Z1 w
采样位数:
/ ^, l. z  c: ~
' P* \" p. f7 @& y( f, Y# R如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  & t& e1 ~' w2 Q! H  _9 X( V# s7 O# `+ R
当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。
* {6 u& Q" l0 c. w; @; d确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  2 N& P* c/ j2 Y: M% v
) H! u$ s+ d& ~' ?: k
再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质
' U; B+ B. L, A8 Y要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  
- p* e9 E1 |7 r3 F- B搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。  t3 x7 F$ a+ h

  D& X& A0 V7 K* G
8 I& p: L5 `6 O7 Z9 a: G4 T8 n: ?2 B" t下面我们打开Goldwave软件~来看看如何操作  
2 P) ^* u( O% J: ?& y8 ]5 R2 e, f0 y8 J8 B, b

$ ?  h, @1 Q, U8 d" I音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  
) S1 u3 d& ], Z7 K# y
) q* U4 d6 M! `5 @( J: O8 @  q  I打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲
. M( p3 f4 ?" W3 V& a解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。
2 b/ ]- J6 j" s& T2 s0 W在弹出菜单中,选择保存类型:MP3。
9 J3 D% y8 Q0 ^4 K打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。) B9 |# E  P8 b! n% M
检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。
3 z3 v' D6 B! F6 u' t/ `0 S% I回到flash软件,导入mp3,正常导入并检查库中元件。: _( O5 X0 b0 x* f# D+ G* U
注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。* r0 q5 J/ K) Y# j
打开库面板,选中元件鼠标右键,选择“导出设置”。9 s0 m* @$ N( f* F/ Z9 i
选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。
, C7 H: Z! y8 E% E9 W再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。
' n1 s$ H- P3 V2 o2 i5 A1 l1 t0 }
; x$ g) b; R# i/ D
6 E* x- e5 c8 T5 G- y! V! C% S歌词和音频的同步,用于swf中的字幕制作- R7 e# |$ w7 ?! T

/ A9 e+ l& X+ I* O9 Q, j; ]打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。
, |9 C2 d9 A* d在时间轴上新建一个图层命名为“文本”。" ?' t" R; K! ]
使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。% @2 [, W* S9 l5 d3 V4 D$ }
在第1帧处插入如下代码,同时执行导入库中的音频文件:) `6 d& ~5 K$ i! A" W3 A; ?
9 q% ]0 y9 _% U( b' h' S
inc = 0; ! u& H# b/ U( [0 m9 K8 R
music = new Sound(); 6 [$ Q$ H' t8 U+ j) p
music.attachSound("music");
3 E/ N7 @3 l  b$ t) E5 pmusic.start();
4 p* q& _* h1 z# U& i5 h) G' M1 z+ N" B- g& I9 N; H& v8 z
新建图层2,命名“as”层,第一帧处插入以下代码:9 {! Y, o$ u( u9 d2 a/ U% |5 b
6 o4 P1 w5 F" C6 z( p
stop();   }$ f, M; ~# c. A. I  I3 G
this.onEnterFrame = function() { . x5 s5 t& S: \) r
  if (inc>10) { ( S1 p  @5 _1 U$ j" w
          gotoAndStop(1); 7 F/ Q7 J$ s% b( O  \
  } 8 H( n" x' P, g# D
  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5]; # w" ^  i, P" J1 g% _% F9 H% \
  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"];
( \" V9 w$ S0 ^9 h( q3 g  A  if (getTimer()>labelTimeList[inc]*1000) {
, \3 l9 x, C+ {( B   x = musictext[inc]; + [3 N2 O/ l5 ]/ A
   inc == inc++; ! @% E: E( F6 _7 F6 l$ _
  } 6 V- p7 N% ^/ l" c0 e/ o
}; 7 Z1 i% \4 t2 f5 P' x5 x, O4 D
this.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数
& R  i( W3 A5 f1 D: D5 x8 z% q  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc( ?. m' J0 F* m; Y9 D
      x = musictext[inc];
4 _6 K2 D* o0 Y* Y& [5 a, C      inc == inc++; / T3 v! h, A% _
  }
# p% W) C0 {2 N2 S+ G};
" ~: ~) A8 `+ ?5 A3 V+ s# x" ulabelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间4 @2 ~1 U. f; }& O: n
/ R0 r$ [6 W  C9 M) b3 {
Ctrl+Enter回车测试效果。  J0 O7 t) w0 `9 l$ ^

相关帖子

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-30 17:35 , Processed in 0.351378 second(s), 9 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

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