HSP/HFP 配置文件的音质非常差,BT Sony 耳机

HSP/HFP 配置文件的音质非常差,BT Sony 耳机

我最近买了 BT Sony 耳机。当我将其切换到 A2DP 配置文件时,一切都很好。但是当我切换到 HSP/HFP 进行视频会议时,声音太糟糕了,我听不懂其他参与者的声音。有什么办法可以解决吗?我买耳机就是为了开会,但耳机却不能用于开会,这真的很烦人。

答案1

自从我买了 Sennheisers 耳机后,我就有这个问题 6 个月了。看来耳机配置文件 (HSP/HFP) 定义了至少 2 个编解码器,速率分别为 8KHz 和 16KHz。Windows 和 Android 可以使用 16KHz,而 Linux 只使用 8KHz(我猜想压缩方式不同,因为低音也很糟糕)。在 Google 上搜索,所有“低质量”问题似乎都与聆听有关(即:通过 A2DP 开关解决),而不是与会议有关。

在这几个月里,我只发现一个错误报告,说 ChromeOS 运行得更好(并且无法将这些补丁移植到 Linux 发行版)。

PS:请不要将其设置为答案。我更喜欢一个实际上指向 16KHz 解决方案的答案。

答案2

我遇到了同样的问题,目前我已经解决了这个问题,以便在会议结束后我至少可以轻松切换到 a2dp_sink。

#!/bin/bash
bluetoothctl connect FC:58:FA:13:75:6F
DEFAULT_SINK=$(pactl list short sinks | grep "pci" | awk '{print $2}')
echo "Muting $DEFAULT_SINK"
pactl set-sink-mute "$DEFAULT_SINK" "1"

if [ $1 == "1" ]; then 
    echo "Card Profile Selected: a2dp_sink"
    card_profile="a2dp_sink"
else  
    echo "Card Profile Selected: headset_head_unit"
    card_profile="headset_head_unit"
fi     


pactl set-card-profile bluez_card.FC_58_FA_13_75_6F $card_profile

sink=$(pactl list short sinks | grep -i 'bluez_sink' | cut -c1-2)

if [ -z $sink ]; then
    echo "Usage: $0 <sinkId/sinkName>" >&2
    echo "Valid sinks:" >&2
    pactl list short sinks >&2
    exit 1
fi

newSink="$sink"
echo $newSink

pactl list short sink-inputs|while read stream; do
    streamId=$(echo $stream|cut '-d ' -f1)
    echo "moving stream $streamId"
    pactl move-sink-input $streamId $newSink
done

echo "Unmuting $DEFAULT_SINK"
pactl set-sink-mute "$DEFAULT_SINK" "0"

相关内容