Alsa重采样

Alsa重采样

我的设置是 Vortexbox 2.3,一个基于 Fedora 的 Linux 音乐发行版。我有一个多通道声卡,来自 miniDSP 的 USBStreamer。我已经设置了单独的立体声设备,asound.conf这样我就可以有多个squeezelite 实例播放到单独的输出通道。因为所有播放器只有一个时钟,所以音频需要具有相同的采样率。我的大部分音乐都是 44.1kHz,但也有一些是 48kHz,因此在播放 48kHz 文件时我需要进行一些重新采样。我已经解决了这个问题asound.conf。然而,ALSA 似乎正在将所有内容重新采样到 44.1kHz,即使这是原始采样率,而不仅仅是播放器输出我预期的 48kHz。我希望无需重新采样即可播放原生 44.1 文件。我想处理 ALSA 中的采样率而不是播放器,这样我也可以添加其他播放器。

有没有办法让 ALSA 仅在速率不匹配时重新采样?

#
# Place your global alsa-lib configuration here...
#

#defaults.pcm.rate_converter "speexrate"

pcm_slave.miniDSP {
# pcm "hw:0,0"
pcm "hw:USBStreamer"
rate 44100        # fixed, because all dshare devices must use the same samplerate. Could use rate unchanged but not for here.
format S32_LE
channels 10
}

pcm.stereo_1_raw {
type plug
slave.pcm {
    type dshare
    ipc_key 662662
ipc_key_add_uid true
    slave miniDSP
    bindings [ 0 1 ]
}
}

pcm.stereo_2_raw {
type plug
slave.pcm {
    type dshare
    ipc_key 662662
ipc_key_add_uid true
    slave miniDSP
    bindings [ 2 3 ]
}
}

pcm.stereo_3_raw {
type plug
slave.pcm {
    type dshare
    ipc_key 662662
ipc_key_add_uid true
    slave miniDSP
    bindings [ 4 5 ]
}
}

pcm.stereo_4_raw {
type plug
slave.pcm {
    type dshare
    ipc_key 662662
ipc_key_add_uid true
    slave miniDSP
    bindings [ 6 7 ]
}
}

pcm.stereo_1_output {
    type rate
    slave {
            pcm stereo_1_raw
            rate 44100
    }
    #converter "speexrate_medium" This doesn't work for 4 channels.
converter "samplerate"
}

pcm.stereo_2_output {
    type rate
    slave {
            pcm stereo_2_raw
            rate 44100
    }
    converter "speexrate_medium"
}

pcm.stereo_3_output {
    type rate
    slave {
            pcm stereo_3_raw
            rate 44100
    }
#converter "speexrate_medium"
converter "samplerate"
}

pcm.stereo_4_output {
    type rate
    slave {
            pcm stereo_4_raw
            rate 44100
    }
    #converter "speexrate_medium"
converter "samplerate"
}

答案1

plug插件rate仅在需要时插入插件,但是当您rate手动插入插件时,这就是您所得到的。

只需删除rate插件即可;您可以stereo_x_raw直接使用这些设备。 (对于重采样算法,您可以依赖默认设置。)

相关内容