Повторно подключите устройство Bluetooth из командной строки.

Повторно подключите устройство Bluetooth из командной строки.

Через некоторое время использования моих bluetooth-наушников они иногда накапливают задержку и начинают заикаться. Мое ручное решение — отключить и снова подключить их, однако это быстро начинает раздражать. Как мне снова подключить наушники с помощью скрипта?

решение1

Следующий скрипт находит первое устройство в списке устройств Bluetooth компьютера, переподключает его и переключает аудиопрофиль на высококачественный профиль A2DP. В некоторых случаях переподключаться не требуется, но переключение аудиопрофиля с A2DP на HSP и обратно срабатывает (закомментировано ниже).

#!/bin/sh

device=$(echo -e 'list' | bluetoothctl | grep Device)
name=$(echo $device | sed -n 's/.* [0-9A-C:]\{17\} \(.*\)/\1/p')
address=$(echo $device | awk '{ print $4; }')

echo "Disconnect $name ($device)"
echo -e "disconnect $address" | bluetoothctl
sleep 5

echo "Connect $name ($device)"
echo -e "connect $address" | bluetoothctl
sleep 5

card=$(pacmd list-cards | grep -oP 'name: <\K(bluez[^>]*)')

# echo "Switching $card to HSP"
# pacmd set-card-profile $card headset_head_unit
# sleep 1

echo "Switching $card to A2DP"
pacmd set-card-profile $card a2dp_sink

Связанный контент