找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 11848|回复: 0

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

[复制链接]

2135

积分

4

听众

1130

金贝

中国原创歌词基地初级

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

0 v) q0 d6 w/ y; H在Flash制作过程中,导入Mp3音频经常会遇到"读文件时出现问题,一个文件或多个文件无法导入"的提示,导致音频导入失败的情况。本文介绍了一种通过Goldwave软件解决这一音频导入问题,并使用脚本语言简单、轻松实现歌词和音频的同步。' _* K% U$ g2 L( r

$ ~( r3 i; f9 h7 r1 D4 X
* J! P3 b, h: Y5 ~/ z0 y' ]
# K! l% i4 p4 o. S, m. T首先了解一下音频的几种常见格式:
$ h& O3 I3 @! _' P
2 }# K8 R) E& E. |# x% Ump3(mpeg-1 audio layer 3): 能够以高音质、低采样率对数字音频文件进行压缩。换句话说,音频文件(主要是大型文件,比如WAV文件)能够在音质丢失很小的情况下(人耳根本无法察觉这种音质损失)把文件压缩到更小的程度。  # t( C. Z9 r/ O. q. |9 B
wma(windows media audio):是微软在互联网音频、视频领域的力作。常常用于在线收听和广播的首选,wma格式是以减少数据流量但保持音质的方法来达到更高的压缩率目的,其压缩率一般可以达到1:18。  
2 ~* L, G# J% T4 V8 }4 f% B3 k, e, A2 kwav 也叫一种波形声音文件格式,是最早的数字音频格式,被Windows 平台及其应用程序广泛支持。采用44.1kHz 的采样频率,16 位量化位数,跟CD 一样,对存储空间需求太大不便于交流和传播。  
5 k* l8 G3 V+ V; Z) y
5 \9 f; r8 ]; Z3 i. ?+ U, V属性(采样频率):  
& _# q+ q% g. s0 m
' e# Y: r1 A2 R! ]9 D: B& X. r" h5KHZ:只适合于说话声音; C: M2 k: A' {; k3 o7 Y; f% F
11khz:相当于电话音质。是标准CD采样率的1/2,是最低的推荐品质
5 T! [) E0 [1 A; m22khz:相当于FM广播的声音品质。相当于标准CD采样率的1/2,是供WEB播放的通用选择
! A( Y3 B0 K- A6 n3 x- C44khz:理论上的CD音质界限。标准CD采样率  
4 ]" c9 Q& R* g: `
& \* @" S) T8 W3 ]采样位数:3 m3 b& n+ Q  L+ R, V

  E1 j5 v: n! W$ r如:一段相同的音乐信息,16位声卡能把它分为64K,80K,96K,,,等精度单位进行处理,但这个数值越大,解析度就越高,声音就越真实。  
3 W8 m# }$ x2 C& A# @, H当对采样频率、采样位数(音质)二因素质量越高时,同时音乐的体积也成正比表现出越大。4 E9 S$ A2 O4 |6 _
确定音乐被flash无法识别导入后,首先我们要考虑以下几个问题:  
% u: _) J- q# s  O# N0 \
7 v2 M; U3 o9 I. |% l  |' [- q) ^再次确认无法导入的mp3歌曲是我们需要编辑的文件。包括再次确定2点因素:音乐大小、音质1 d' }1 _" X* Q; J
要知道即使是相同的歌曲体积大小不同,也会出现音质的等级不同。一支质量好、体积小的音乐对Flash是很有益处的。  , _" P( n8 m/ J& w# t" N" E" j, W
搜索网络音乐资源,在以上2点基础上再进行确定。并不是没有这样的可能:相等音质歌曲体积大小相差3倍左右,并可直接导入。5 r3 `  q# [2 v

4 _$ E$ |6 @/ h) y! l+ G/ E4 I
2 T2 M- {7 ^* T! [5 i6 _下面我们打开Goldwave软件~来看看如何操作  
3 \* V+ f5 D; L" P) o  F4 J/ B& e+ }& J& U& i$ l: k

* _6 d% [8 d' s音乐无法导入的问题主要是所导入MP3音乐与flash所要求格式、属性不符,那么我们在这儿通过修改音乐属性包括音层,HZ(赫兹)的改变。  ' D) e! m& G# `7 W; J  k
6 q1 N2 e& y/ }/ u+ w8 D
打开goldwave软件。在界面找到“打开”或:文件“文件---打开”选中转换歌曲
1 f0 W& U9 s, h  Y$ M( R$ _& R1 {解压音乐后,找开菜单栏---“文件”。导入选择文件“另存为”,当然如果需要对音乐段进行裁剪,可通过工具栏中进行选择,这里我们不再讨论。
$ `7 H5 C# C" Y% ^; a. h在弹出菜单中,选择保存类型:MP3。
% X: r3 A5 P9 w# s" V) L# h打开下面的属性菜单,选择各属性并修改:采样频率:22050HZ,已相当于标准CD采样率1/2。采样位数:64KPa,已接近最真实声音,个人经验选择采样位数:32KPa就可以达到基本的音质要求。
- V5 }  R- f" {* r" `! t- o检查体积大小、试听音质。主要是对编辑后的体积大小检查,及音质确认:体积是否满足需要,音乐是否清晰。那有人就想,我再设置高效果会更好!~没问题!可是要知道音乐效果好了,在flash中体积就大了。从flash减肥上来说不可取,音乐只是flash一部分。当然你也可以保存更低的采样频率、采样位数,从而音乐体积更小~音质则根据每个人的需要量力而行,选择较好音质同时体积不大,这也是结合Flash对音乐的要求。音乐1~2m以上、整体swf文件大小,对下载、播放是否流利或有影响,也是主要要考虑的问题。
* r. s& d! u. `; a" w回到flash软件,导入mp3,正常导入并检查库中元件。
+ j8 `0 L: U7 n/ Q$ {5 C6 l$ Q注意这里还可能可能会出现Mp3不能导入的情况,我个人的经验是将原音乐首先另存为wma格式,接着要不嫌麻烦的再次另存为Mp3,往往这样就能解决问题,具体的原因还不能解释清楚。
1 {5 h3 L, {6 Y6 _. Z2 g打开库面板,选中元件鼠标右键,选择“导出设置”。# S6 W" K9 L3 c
选择“声音设置”--改“默认”为“MP3”。再来一次比特率、品质设置 。# q9 i3 ?9 c; I$ [7 Y1 r
再选择“输出”--声音设置,进行修改设置,查看swf文件已降低,当然还可以降到更低,例如16kps甚至更低,但这时音质无法保证,因此提倡合理、适当分配音乐质量及体积大小。8 a$ u2 u; m* y; J0 Y2 ?! h
9 U8 }) s: V6 |  M* U

7 p7 H( {, @- N6 z" n3 ~7 [# r歌词和音频的同步,用于swf中的字幕制作
" ]3 h# m# @$ O. n- s; C5 N
7 w' O& i- s& c( [打开库面板,点选音频文件,鼠标右键选择“链接属性”,修改标识符为“music”。
4 `0 u) t: o2 @7 Y+ ?: o9 P在时间轴上新建一个图层命名为“文本”。
3 z( U4 W6 f- n3 p使用文字工具输入第一句歌词,在属性面板上修改文本属性为“动态”,自变量为“x” 。
$ z) z( R4 j$ \) E# F1 b1 k- S$ I在第1帧处插入如下代码,同时执行导入库中的音频文件:
1 x" h, V% e% Y; A( W7 h
* d8 t$ k7 C1 V& H1 k: a5 tinc = 0;
7 h* H5 v$ N; \; A+ A2 umusic = new Sound();
3 S8 Q" h- {) s) y. a) ~music.attachSound("music"); & X5 G6 h+ ?* C  A" Y* s
music.start();
. k7 f. O3 K- ~. w8 p5 t# E1 m' ]; M3 Q) `
新建图层2,命名“as”层,第一帧处插入以下代码:
3 X! t( ~0 O9 R; h0 x( ?) Z: D8 S: [  e  i
stop();
9 v3 T) _& f0 m# B& c. Vthis.onEnterFrame = function() {
8 P7 [3 D$ J1 S  if (inc>10) {
- d( P1 C* |1 _: _          gotoAndStop(1); 6 a+ E! S- {8 E
  }
) T* n, `0 [* N2 u  a  labelTimeList = [ 5, 11.5, 16, 21.5, 26.5 ,31.5];
8 \; r9 e3 ~: _# s2 ?: h+ f7 p: A# i  musictext = ["在东京铁塔第一次眺望", "看灯火模仿坠落的星光", "我终於到达但却更悲伤", "一个人完成我们的梦想"];
+ Q9 Q7 K5 t# J7 R* Z8 A  if (getTimer()>labelTimeList[inc]*1000) { 0 x$ W$ N( y4 `1 E# U9 H
   x = musictext[inc];
" G! K- D% s# e# g7 m. \' Q0 r   inc == inc++; ' q0 h/ @9 N7 e
  } : q- M" m( G) U1 u+ `$ G
};   c9 N' u3 n) D- T
this.onEnterFrame = function() { //自定义函数,当这个场景载入的时候执行自定义函数
* i; x  K$ o' c( ]/ ~# `  if (getTimer()>labelTimeList[inc]*1000) { //如果以用时间大于下载时间.则X变量的值为musictext[inc], inc变量加一后在返回值给inc( b1 S1 Z+ a: O5 l- `
      x = musictext[inc];
* o5 Z* G7 L; r$ V      inc == inc++; " P/ H" s  a) A4 U% F. r; i' ^8 A
  } " C$ A& c( p0 T1 F- }  X: J
};- G* n) R+ }8 b% p4 N
labelTimeList=[5,11.5,16,21.5,26.5,31.5] //分别为歌词“起”的时间
5 o* w9 |* I) u7 O% B6 H" l
$ U5 i+ A, x* W# I( s; _. fCtrl+Enter回车测试效果。6 I' M* u7 P& @  Q6 T3 g: d, m

相关帖子

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-10-15 12:58 , Processed in 0.028730 second(s), 9 queries , Redis On.

Powered by Audio app

中国原创歌词网微信: 924177110

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