You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity中香港风格卡拉OK歌词逐字高亮动画实现咨询

实现香港风格卡拉OK逐字高亮动画的可行方案

一、代码实现(适合网页/APP场景)

JavaScript + CSS

既然已经有每个字符的时间节点,核心思路是把歌词拆成单个字符的独立元素,再根据音乐进度匹配时间节点切换样式:

  1. 将每个字符渲染为独立的<span>标签,绑定对应的开始/结束时间数据;
  2. 监听音频播放的timeupdate事件,实时对比当前播放时间与字符的时间节点;
  3. 给处于播放时间范围内的字符添加高亮样式,已唱完的字符设置“已完成”样式。

示例代码片段:

// 假设歌词数据格式:[{char: '明', startTime: 0.8, endTime: 1.1}, ...]
const lyricsContainer = document.querySelector('.karaoke-lyrics');
// 渲染拆分后的字符
lyricsData.forEach(item => {
  const charSpan = document.createElement('span');
  charSpan.textContent = item.char;
  charSpan.dataset.start = item.startTime;
  charSpan.dataset.end = item.endTime;
  lyricsContainer.appendChild(charSpan);
});

// 绑定音频进度监听
const audio = document.querySelector('#karaoke-audio');
audio.addEventListener('timeupdate', () => {
  const currentTime = audio.currentTime;
  document.querySelectorAll('.karaoke-lyrics span').forEach(span => {
    const start = parseFloat(span.dataset.start);
    const end = parseFloat(span.dataset.end);
    if (currentTime >= start && currentTime < end) {
      span.classList.add('highlight');
      span.classList.remove('sung');
    } else if (currentTime >= end) {
      span.classList.add('sung');
      span.classList.remove('highlight');
    } else {
      span.classList.remove('highlight', 'sung');
    }
  });
});

CSS样式示例:

.karaoke-lyrics span {
  color: #999;
  transition: color 0.1s ease;
}
.karaoke-lyrics span.highlight {
  color: #ffd700; /* 高亮金色 */
}
.karaoke-lyrics span.sung {
  color: #fff; /* 已唱完的白色 */
}

GSAP动画库

如果需要更流畅的过渡效果(比如渐变高亮、缩放),可以用GSAP创建精准的时间线动画,将每个字符的高亮动画与音频进度绑定,批量处理时间节点会更高效。

二、视频制作工具(适合导出成品视频)

Adobe After Effects

把歌词拆分为单个字符的文本层,给每个层的“填充颜色”属性添加关键帧,对应你的时间节点调整颜色。可以用脚本批量导入时间数据并生成关键帧,减少手动操作。

Final Cut Pro / Premiere Pro

拆分字符为独立文本片段,在时间轴上对齐每个字符的高亮时间段,通过文本动画功能设置颜色变化。Premiere的“字符动画器”可以精准控制单个字符的样式切换。

DaVinci Resolve

在Fusion页面中将文本拆分为单个字符元素,通过关键帧控制每个字符的颜色属性,匹配音乐时间节点完成逐字高亮。

三、卡拉OK专用工具

傻丫头字幕精灵:专门针对卡拉OK字幕制作的工具,支持导入时间节点数据(或直接编辑),一键生成逐字高亮效果,导出后可直接嵌入视频。

内容的提问来源于stack exchange,提问作者Jelly Qwerty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 11:47:49