月满西楼
演唱:童丽

红藕香残玉簟秋
轻解罗衫独上兰舟
云中谁寄锦书来
雁字回时 月满西楼
……
花自飘零水自流
一种相思 两处闲愁
此情无计可消除~
才下眉头 却上心头
却上心头
 
红藕香残玉簟秋
轻解罗裳 独上兰舟
云中谁寄锦书来
雁字回时 月满西楼
……
……
……
花自飘零水自流
一种相思 两处闲愁
此情无计可消除
才下眉头 却上心头
却上心头
花自飘零水自流
一种相思 两处闲愁
此情无计可消除
才下眉头 却上心头
却上心头
----end----
 
  坛友做了个帖子,想用字幕特效做同步歌词,不如人意。
  我不信邪,硬是尝试了一把。
  制作同步歌词,要解决的就是控制歌词出现的时间与音乐同步。这在flash和网页制作中,用脚本很好解决,或者说才能做到,对于这个制作是另外的话题了。
  用字幕效果(或说特效)做同步歌词,精确控制时间就不太好解决,哪怕是大致同步也很困难。原因是影响时间不稳定的因素很多。比如网络运行的速度、歌曲下载的快慢、网页中动画对象的多少、歌曲多次重播造成的累计误差、歌曲中节奏的变化等等。
  字幕移动是均匀的,设定了快慢它就一直那样。所以用字幕做歌词同步,就只有一项手段可利用:调整字幕速度。字幕对象中有两个属性可改变快慢:
scrollamount:字幕对象每次移动的象素值,值越大越快;
scrolldelay: 速度,毫秒为单位。手册解释为“间歇”、“延迟”,值越大越慢。

  上面的效果,马马虎虎说得过去,虽不能逐句同步,大体上效果还可以。对脚本不感兴趣的话,制代码帖可以试试。
  做法如下。
  1、根据此例歌曲“唱”的实际情况,设置一个单列五行(单元格)的表格;
  2、第二、四格放歌词;
  3、第一格的高度用来改变歌词出现的时间;
  4、第三格用来调整两段“唱”之间的间隔时间(伴奏);
  5、第五格用来调整第二遍播放的时间。

  整个表格的高度加上字幕显示区高度,这个数值与整个歌曲的时长对应。
  好了,接下来就是让移动速度与歌曲的时间挂起钩来。
  操作方法,有哪些地方可以改变、影响歌词同步。
  1、歌词的行数肯定是固定了的,但行距可用来微调(用样式“style”设置行距);字的大小以及字体,当然会影响歌词所占的高度值。可以根据制作需要先将 它们设定,在后面的调试中就不动它了。
   2、当然是上面的两个属性了。根据经验,移动的点数只能设为1了。间歇值可先估算一下:用一段歌词所占的时间秒数(从播放器上可得到)除以歌词框的高度加显示区的高度,就得到每点所占的时间。乘1000就是毫秒数,将它暂时作为间歇值。
  3、调整歌词最开始出现的时间。将第一个空格的高度大约设置一个高度值,播放歌曲,调整它的高度,使歌词出现的时间合适。
  4、观察第一段歌词出现、消失的情况(因为此例的效果是让“唱”完成时歌词走出显示区,所以歌词框的高度要加上显示区高度)。用改变上面估算的“间歇”值来调整效果。这里要注意:改变“间歇”值会影响整个移动对象的速度,所以,这个值一旦变动,第一格的高度也要调整一下。到这里,此前定下的数据就基本不动了。
  5、调整第三格(空格)的高度,使第二段歌词出现的时间适当。
  6、调整第四格的歌词情况,就不能用改变“间歇”值来满足了,一旦动了,其他相关地方也得动。这里,只能采用适当增加歌词的行数,在唱词有间歇的地方,加省略号或其他符号 ,以及改变行距来调整,以满足此段歌词出现和消失的时间。
  7、调整第五格(空格)的高度,使第二遍播放时,歌词出现的时间合适。
  8、制作、调试中,可以给空单元格加上底色,给字幕显示区加上边框色,这样便于观察,全部完成后去掉即可。
  可以试听了。如果耐得烦,可根据效果再作稍许调整。

  因下载的影响,第一遍同步可能会有点问题。听过第一遍,刷新一下,效果就好了。
  上面的校对工作非常耗时,听一遍要数分钟,而且还得专注。尝试一两次制作尚可,多做就耐不得烦了。
  用此法做歌词同步有些“歪门邪道”,很难精确控制时间,因为影响时间变化(不稳定)的因素太多了。只能玩个新鲜。
  根据表格的高度、显示区高度、属性值、歌曲时长,可以将需要的数据大体上计算出来。兴趣大时,可以玩玩。