北京课件制作 上海虚拟现实 广州动画制作 深圳建筑动画 天津三维动画 杭州光盘印刷 厦门企业宣传片 沈阳Flash动画 东莞企业宣传片 济南动画制作 北京光盘印刷 上海影视制作 杭州动画制作
发新话题
打印

还有问题:如何解director中声音图像不同步的问题?

还有问题:如何解director中声音图像不同步的问题?

我用的方法是:先用声音软件看一下它的长度(时间),再在director中做一个相同时间长度的动画,可是当我把声音加进去后发现要不是声音快了就是图片快了,反正不同步。
不知那位大虾有没有什么好办法????能不能指点一哈!
我等着哈!!!!

TOP

还有问题:如何解director中声音图像不同步的问题?

声音在D中是以时间为单位的,而动画是以帧为单位,所以会出现不同步的现象,你可以用声音提示点来缓解这个问题,另外也可以把他们做成F动画,这样也可以解决这个问题

TOP

还有问题:如何解director中声音图像不同步的问题?

声像同步的功能在flash里面可以设置,在director里面是个缺陷

TOP

还有问题:如何解director中声音图像不同步的问题?

用线索点做

TOP

还有问题:如何解director中声音图像不同步的问题?


  在 Director 制作多媒体演示,由于图像、转场效果和动画的播放速率随机器的性能不同而导致播放速度的差异。但声音通道的配音和配乐却以原始的固定速率播放,这样就导致了演示中的声音和画面的同步问题,而且这个问题简单依靠在 Director 中调节帧速率是很麻烦的,也不容易在不同配置的机器上取得满意的效果。
  下面就以一个简单的卡拉 OK 歌曲的歌词显示与原唱同步的练习,来探讨如何将显示与配音同步。同样的道理,也可以参照它应用到其它类型的演示应用中。
  首先准备一首歌曲,要求使用 Wave 文件格式。歌曲的内容随意,但最好你能够找到歌词或能够默写出来,因为下一步要把它输入到 Director 中。
  在 Lingo 语言里,有一个特殊的事件:cuePassed 它的格式为:
   on cuePassed(channelID, cuePointNumber,cuePointName)
     statement(s)
   end
  (其中:channelID 为声音通道号;cuePointNumber 标记点编号;cuePointName 标记点名称),这些参数载本例中并没有使用。
  这个事件是 Director 声音通道中的 Wave 播放到声音通道的一个声音标记点时触发一次,我们就是利用对这个事件的检测来实现在 Director 中的声画同步。
  Director 本身没有为 Wave 文件添加标记点的功能,因此需要使用其他软件来完成这项工作。好在许多的声音编辑软件都能胜任这项工作,下面列出常见的几种:
  Sound Forge
  Cool Edit 2000
  Ulead Media Studio 中的声音编辑。
  下面我们就首先完成声音标记点的制作。
  运行 Sound Forge,打开要编辑的声音文件,使用 EditTool 工具,配和播放试听定位到第一句歌词的起始处(考虑到视觉和听觉的习惯,以及 Director 中处理和显示的延迟,应该将标记点从歌词的起始处前移 0.2 秒左右),选择菜单 Special \ Drop Maker 在此处创建一个标记点,也可以使用它的快捷键 M 快速建立一个标记点。参见下图。

  使用同样的方法在每一句歌词的起始处都加入一个标记点,下图中的红色标记和虚线就是标记点的位置。Sound Forge 默认的标记点名称为 Maker xxxxx ,由于我们在 Director 中没有使用到标记点名称,可以认可它的默认值,也可以在标记点上按鼠标右键选择 Edit 为每一个标记点起一个自己喜欢或更有规律的名字。最终完成后仍使用原文件名保存,加入的标记点不会对声音文件的音质产生任何影响。

  考虑到各人使用的软件不同,下面简单说明在 Cool Edit 2000 中如何进行加入标记点的操作。运行 Cool Edit 2000 并打开要编辑的 Wav 文件,定位到添加标记点的位置,按 F8 键或参见下图中的说明,为声音文件添加一个标记点。

  也可以通过快捷按钮或菜单 View \ Cue List 打开标记点编辑窗口,直观地进行标记点的添加和编辑。完成以后将文件保存。
  至此,加入标记点的工作就完成了。
  运行 Director 在脚色窗口将编辑好的声音文件导入,然后先建一个文本脚色成员用于以后的歌词显示,文字的内容随意(下面要通过 Lingo 对文字脚色赋值显示),根据个人喜好设置好字体、颜色和大小。还可以导入一幅或多幅图像作为将来显示的背景。
  将声音脚色拖动到分镜表的声音通道1,设定其长度为标记点的总数+1(也就是有多少句歌词+1);把用于歌词显示的文本脚色成员放置到舞台的适当位置,设定它的起始帧为第二帧,结束帧与声音对齐;如果需要可以同时将演示背景图像设置好,但是要注意放置在底层。舞台的布置到此也完成了。
  如果你想知道前面加入标记点的操作有没有问题,可以在分镜表声音角色上面时间通道的任何一帧双击,打开帧速率设置面板。选择 Wait for Cue Point 并展开右边的下拉列表,从这里应该能看到加入的所有标记点(如下图),注意要按 Cancel 取消这一步操作。如果列表中只有 Next 和 End 两项,说明在声音中加入标记点的操作没有成功,可以参照前面的说明再重做一遍。

  接下来就是练习的核心部分 -- 脚本编写。双击第一帧的脚本通道打开脚本编辑窗口,先输入以下内容:
global geci
on beginSprite
  set geci = ["","青青杨柳风","悠悠桃花水", "小船儿漂来了", "俊俏的小阿妹", "眼睛水灵灵", "脸上红霞飞", "问一声小阿妹", "你要去见谁","要问阿妹去见谁呀", "阿妹心儿醉", "去见久别的情哥哥", "远方凯旋归", ...(考虑篇幅问题,删去了若干)]
end
on cuePassed
  go the frame+1
  member(1).text=geci[the frame]
end
on exitFrame
  go the frame
end

  配合 Alt 键拖动脚本,使它的长度与声音角色相同。在 Director 中播放,观察是否达到了预期的结果。下面来分析脚本的内容,脚本共有三个事件:
  1、on beginSprite 事件在第一次运行脚本时将歌词以数组(表)的形式赋值给一个变量 geci ,注意数组的第一个值为空,因为此时第一句歌词还没有开始(上面的脚本中省略了一部分歌词内容)。
  2、on cuePassed 是实现这个练习的关键,每播放到一个声音标记点该事件被触发执行一次,在这个事件里完成跳转到下一帧、配合 the frame 完成为显示歌词的角色成员赋值。在这里要注意member (1).text = geci [the frame] 要求建立的歌词文本角色成员的编号为1,如果你的练习不同的话,可以修改脚本中的数字使它们对应起来。
  3、on exitFrame 事件大家都明白,它使演示的播放停留在当前帧。
  这个练习到此就全部完成了。
  on cuePassed 事件的应用还有许多,这有待大家在使用中去探讨和发掘

TOP

发新话题