找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 9994|回复: 0

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

[复制链接]

2135

积分

4

听众

1130

金贝

中国原创歌词基地初级

积分
2135
guojian123 发表于 2015-10-23 08:56:05 | 显示全部楼层 |阅读模式
) l) Y! n/ C2 k+ Y
在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。
7 K* E' `2 c. ]' T/ g5 C
( x$ m; O# r$ G* U1 X3 ]
9 @& d  |4 _, `( g6 |- ]" w2 w9 E8 a
首先了解一下音频的几种常见格式:# c6 c" F; n4 z) p8 c. K) o, {
+ V+ ?0 ?" y0 ^- g* C/ `- S# [, _+ O( _
mp3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  9 a0 v7 b& f1 n2 ~6 k
wma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  - J5 p0 j2 o+ a* }: z3 u( S
wav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  ! T9 `5 \6 f+ ^" i* o2 F
. \# ^+ }2 D4 S% D
属性(采样频率):  " {, D0 J3 A! P+ G" ^

! f( w; ~7 M/ R/ u3 t+ c5KHZ:只适合于说话声音
( I; ~. q+ `7 i/ B9 ]- B. g( h11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质
! `- `+ ^' I: V* l/ r, T( ?22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择6 v7 v1 g7 t: ]0 j3 Q, b% P& E
44khz:理论上的CD音质界限。标准CD采样率  
% h' ]- q+ `0 i0 l$ ^2 q' h$ g; a) `9 u, ^
采样位数:
% Z* ]" w! `* |3 X
+ H- f+ {) `. F8 j% Y如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  9 m) d/ L2 m# A" E
当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。
4 g- x6 M* V# I2 f7 _确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  
% [3 h( [! C4 |3 s: i+ M0 w3 G) U$ ^
再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质
8 j( L7 q" O% s# E( F7 S. ~( z. C要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  " a( Y  a1 y7 B  A
搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。
& i7 m6 X0 Y! {, ~( b9 N* x* V% K! O: r) }. U% Z+ P, m/ N8 G

+ I* C; Z# ?  f3 b7 X7 {/ M下面我们打开Goldwave软件~来看看如何操作  8 W. t, i. t7 C3 Y# C: D- Q

9 h# i: l% [$ u. t) L. S' h+ k7 I, f
音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  
# Y" w7 C# B. N. a6 T4 p" o8 d
2 L+ X! d0 N$ R! o7 m5 s9 f: J打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲9 g+ M& Q3 Y' c0 r( }) r/ x
解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。: k4 k0 a5 x4 b4 v4 _( B4 ]* q1 l
在弹出菜单中,选择保存类型:MP3。
/ c1 A3 y; o9 u8 ?打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。
( v+ Q4 X+ H' j$ k: k  [6 A检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。
8 l2 I8 c( W7 V. v3 ]4 @- o回到flash软件,导入mp3,正常导入并检查库中元件。- f3 D) E: a, [% H: q# O6 Y
注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。
1 Q6 @( P3 ]3 p9 Z打开库面板,选中元件鼠标右键,选择“导出设置”。
* Q8 f( q( {! a5 h5 m选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。$ f, t, r- R8 |- e
再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。0 Z8 k, z2 q3 Y' V

- o- S, ~6 s# G2 C) x+ r0 w# f# j
歌词和音频的同步,用于swf中的字幕制作* m: t5 o" z. V/ y- Y3 e
7 j3 f2 j3 B( h) b
打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。1 f; E& U/ Z& a+ K  ~' X" F
在时间轴上新建一个图层命名为“文本”。1 |/ ~5 a. S' S, \' n
使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。" x6 Q& J- d) V/ K' Y! Z* O
在第1帧处插入如下代码,同时执行导入库中的音频文件:
% e8 k; J7 f& f% q" K2 d
  L$ V" L4 E7 C7 zinc = 0;
3 q" z# s- w8 ]9 Hmusic = new Sound();
1 _( i0 O- ]  [# Q: [music.attachSound("music");
+ t3 ^. U; }2 a' D/ ^; s$ t% Xmusic.start();
' h* H. p; @) G% h# U+ E$ Z; Y( Z% X8 |
新建图层2,命名“as”层,第一帧处插入以下代码:
9 Y# |* U7 Q7 R! V% ]5 ?( y: h$ \, Z' v$ J" |7 P
stop();
; W; j  Q. c; r$ c" I8 O$ othis.onEnterFrame = function() { 6 ~$ w5 @; P( S9 M* m$ v" @
  if (inc>10) {
. g, Z) |# `6 r2 {2 i          gotoAndStop(1);
$ X* x8 |3 ]( T0 F# O  }
  @* Q( `5 C, H3 `" w  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5];
  }/ s0 g# a6 L5 l' N1 i' W( C' j  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"];
  H- p6 q( `! D  if (getTimer()>labelTimeList[inc]*1000) {
  N5 t1 v" O) S# i& m! |; a4 P   x = musictext[inc];
9 ]6 x4 }5 R+ O; ]- U   inc == inc++; " n4 G$ p5 }0 H: i
  } 0 w  f5 z& I: r& p/ R
};
/ e3 ]" {; }( N1 P* kthis.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数; d! K& _8 J) U& m, q9 _# w
  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc7 X8 @9 k2 ]6 `9 O0 `% R
      x = musictext[inc]; 8 z8 r7 G$ a' T( e8 A# E8 b; D
      inc == inc++;
6 h; i" \( v* C: A  }
! b) x8 k8 J2 U};2 |. d7 ^& ~" N: {
labelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间" M& [2 b# J/ p0 ~$ Q: [) F

3 g- s$ F, q# w7 _Ctrl+Enter回车测试效果。3 m8 U6 Q: D1 x8 x

相关帖子

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-4 12:54 , Processed in 0.093187 second(s), 9 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

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