找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 9110|回复: 0

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

[复制链接]

2135

积分

4

听众

1130

金贝

中国原创歌词基地初级

积分
2135
guojian123 发表于 2015-10-23 08:56:05 | 显示全部楼层 |阅读模式
; b0 t( O6 w, `1 ^
在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。6 I! i$ u/ J+ Y" U+ k5 I- b9 W( k9 ~& w
) o4 V1 g) h# `

6 B- {) [" n, }
7 Y. q& D* i: d, B首先了解一下音频的几种常见格式:
$ i0 S8 R% Q/ _+ `# p
0 @( \5 z/ H$ \# f) pmp3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  3 u  b- o2 R2 d
wma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  6 p+ }. M7 {$ W  i
wav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  $ E' S3 e- F& V9 Q) Y5 Z3 ]

  F: h1 F, l" _" `: }- G1 s3 I属性(采样频率):  , C  B& L% |8 f3 @- b5 H) n3 ?
9 l0 s% Z' g! D- g, P% s
5KHZ:只适合于说话声音
% g" N% `8 v4 Y3 [. U# w9 l: e- R11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质
8 W6 O$ |) Q7 v  z# }# D/ y22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择2 i9 F% u2 }& U1 M, |! \' i
44khz:理论上的CD音质界限。标准CD采样率  
  I6 j4 W3 M) J0 R
8 t8 O8 h/ H2 H: c! G9 t采样位数:+ z( T/ w4 L, r9 q) ^3 {$ _; W
! D( p) }  U+ e, m, M
如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  
2 p; z9 a( C+ x+ V; O) n- W5 @当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。9 u! ?$ L) \. e# a, t" `1 y$ m
确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  4 s" U5 }- i5 k1 h! C
/ t3 Z7 b* t; T6 O
再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质
% q; F. |. E( v* B9 i+ p& H% D要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  
* w  h" i2 w8 D搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。$ h1 w, G# U7 @( p2 M% J# k
. x- n" `1 }  [' C: A
# J' g' Y1 s, o* o: w
下面我们打开Goldwave软件~来看看如何操作  
& x% O4 B+ L3 ]6 y" {& W7 a* }0 X- x" r2 t

$ {( a( B: K% V1 ~1 G! X7 e" P音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  
! @4 W6 Q8 ]9 h; z) J- @; Z
6 _2 S$ T2 I9 \  O' v6 `打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲/ ?) o. q2 ^) H; S
解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。. h4 s& a8 u* r
在弹出菜单中,选择保存类型:MP3。
! D4 _& b& e  X6 T8 u打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。
& b( m8 [. \4 G2 u: m检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。' M* E  Z9 E$ U( A5 m; v
回到flash软件,导入mp3,正常导入并检查库中元件。0 H& c, }! L4 `& l
注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。: {/ K! e3 X) E! q
打开库面板,选中元件鼠标右键,选择“导出设置”。
1 y, }; K& W" x: }8 g选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。
3 A% W7 r1 a* ?( k/ O再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。0 o, o9 b# ?  w

& ^$ _: K) ?! D7 z. K9 t" w: J) P: o- r6 F$ T, `# t
歌词和音频的同步,用于swf中的字幕制作
* l. y8 [7 V- Y% D! K( D0 }) ?' {4 Y9 g) Q2 e
打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。
( z' e' O- ^/ n5 @4 E7 d9 _在时间轴上新建一个图层命名为“文本”。9 _) P2 G5 `6 a+ x
使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。
+ a4 ]- ~( l, S- E: G& t在第1帧处插入如下代码,同时执行导入库中的音频文件:
4 h/ t6 \( t% q1 ^' l7 z2 ?! G7 N0 ?7 e0 F7 k% K' _1 o2 O
inc = 0; 6 b, }' f7 w: p
music = new Sound(); 1 P- O. \" ^0 M. N; g
music.attachSound("music");
$ C! d" Q3 G* n7 _music.start(); 3 j" p4 c! a* ]4 v0 s7 d4 ?% [

/ O$ o  _+ V, [& k4 @3 S新建图层2,命名“as”层,第一帧处插入以下代码:
  s6 d  M- r* d  u7 Z
, o3 v0 _+ ^% @; E6 z: Astop(); 3 Q$ F# O6 f0 |! `/ u% m7 N
this.onEnterFrame = function() { 8 @7 J1 ?0 l$ e6 ]
  if (inc>10) {
  F4 n# a$ ~) i% ]" d9 L6 S5 @          gotoAndStop(1); & w0 _# y9 v  k& m  [' a) \  C* ~
  }
9 Z* b, {6 h9 R% K; ~/ B* Q, ~  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5];
; g2 ^. [/ S/ x5 |1 m  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"]; 0 K6 c) ^. T9 l/ D
  if (getTimer()>labelTimeList[inc]*1000) {
; k& s3 x- Z8 w' V& N# a% M: B, P   x = musictext[inc]; , i& U1 ]2 a6 b) k
   inc == inc++;
- i3 g1 P7 z. @) _, N& Y3 \. x  }
( S( @6 I. j. b, W# _" M, w};
4 L6 x* S+ X9 y3 Z8 z8 O" Kthis.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数( B. u9 d# F) r- W/ f
  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc! y& _; C- H% I* b/ h& U1 ~
      x = musictext[inc]; 0 x( X& z( Y9 h- m9 J
      inc == inc++;
$ ~# ^5 c4 v6 v+ v6 l, R4 O  } ) p# s( F$ j4 S& m8 x2 z! E
};% W! c; W" ~  K! d, J' v1 g
labelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间
% m: K* g6 r/ m: \; s: Q/ Z4 E4 M4 `! z0 ^# F% ^* m' F; h
Ctrl+Enter回车测试效果。
6 Q7 W% n3 w4 V% g+ }& B

相关帖子

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-18 02:20 , Processed in 0.830999 second(s), 7 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

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