Rockbox 中文文档 下载 App

Rockbox Crossfade 淡入淡出 - 曲目间平滑过渡的时间重叠

Gapless 的互补功能

上一页讲了 Gapless——曲目间无缝切换、不丢任何音频片段。但 Gapless 有个前提:两首歌本来就是连续的。

对于曲目间有自然间隔的专辑(比如大部分流行专辑,每首歌本来就是独立的),或者 Shuffle 模式下随机播放完全不相关的两首歌,Gapless 直切反而会显得太硬——上一首戛然而止,下一首突然炸出来。

Crossfade(交叉淡入淡出)就是解决这个场景的。

Crossfade 做了什么

Crossfade 的做法是:

  1. 上一首倒数 X 毫秒时开始淡出(音量从 100% 线性降到 0%)
  2. 下一首提前 X 毫秒开始解码并淡入(音量从 0% 线性升到 100%)
  3. 两首歌的音频在 X 毫秒窗口内同时播放,上一首淡出下一首淡入

整个过程听起来就像 DJ 在打碟换歌——平滑过渡,没有任何突兀的切断。

设置 Crossfade

Settings → Playback Settings → Crossfade

Rockbox 给了你三个参数:

参数默认值含义
Crossfade Duration500ms(0.5 秒)重叠混音的时间长度。越大过渡越长越柔和,但会吃掉更多两首歌的音频
Fade In Delay0ms下一首淡入延迟多久。0 = 立刻淡入;设正值 = 上一首淡出先开始,下一首稍后淡入
Fade Out Lead-in0ms上一首淡出提前多少毫秒开始。配合 Fade In Delay 控制混音节奏

推荐设置:

Crossfade 的限制与坑

Gapless 关闭才能开 Crossfade

Rockbox 不允许同时开 Gapless 和 Crossfade——逻辑矛盾:Gapless 要「直切」,Crossfade 要「重叠」。Rockbox 在你打开其中一个时会自动关闭另一个。

Crossfade 吃掉部分音频

在 Duration 那段时间里,上一首在淡出——意味着上一首的最后几毫秒的音频音量在被压到 0。如果你的 Crossfade Duration 设得很长(比如 3 秒),而某首歌本来结尾就是 fade-out 收尾,那么你的 Crossfade 叠上去可能听起来很怪(双重淡出)。

建议:Crossfade Duration 不要超过 1500ms。绝大多数场景 300~800ms 足够。

部分设备 CPU 压力

Crossfade 需要同时解码两首歌(上一首还没停 + 下一首已经开始)并做混音计算。对于老设备(Archos、早期 iRiver 型号)可能有 CPU 压力——设 Duration 大了可能掉帧或爆音。

新设备(iPod Classic 之后的 ARM 架构、复古掌机)一般没这个问题。

插件音频不支持 Crossfade

Rockbox 的部分插件音频(游戏模拟器输出、MIDI 播放器、MikMod)走的是不同的音频管道,不支持 Crossfade。主程序的常规音频全部支持。

Crossfade vs Gapless:什么时候选哪个

场景推荐
Pink Floyd《月之暗面》(曲目无缝衔接)Gapless(Crossfade 会破坏连续性)
普通流行专辑(每首歌独立)都可以。Gapless 更干,Crossfade 更柔
Shuffle 随机混合歌单Crossfade(不同风格的歌硬切很突兀)
古典音乐Gapless 或关(Crossfade 绝对不能开)
Live 专辑(曲目间有掌声但不是连续音频)Crossfade(让掌声过渡更自然)

进阶:按播放模式自动切换

Rockbox 可以设置 Crossfade 只在非顺序播放(Shuffle 或动态播放列表)时启用,顺序播放时自动关闭。这个设置在 Settings → Playlist 里找(具体因版本略有差异)。