Tự động chuyển thiết bị đầu ra âm thanh sang tai nghe Bluetooth và buộc cấu hình A2DP khi kết nối


11

Tai nghe bluetooth của tôi (Plantronics Backbeat Go2) được kết nối tốt với hệ thống của tôi, nhưng có một số bước thủ công tôi phải thực hiện để thực hiện công việc này mà tôi rất muốn tự động hóa:

  1. Sau mỗi lần khởi động lại, tôi phải chạy pactl mô-đun mô-đun-bluetooth-khám phá trong thiết bị đầu cuối để thiết bị kết nối hoàn toàn. Tôi đã thử đặt tập lệnh này vào tập lệnh shell để chạy khi khởi động, nhưng không có xúc xắc :(
  2. Tai nghe của tôi tự động kết nối mà không gặp sự cố, nhưng nó luôn mặc định là Telephony Duplex hoặc thậm chí là Tắt thay vì A2DP; Tôi đã thử và thất bại với một số chiến lược khác nhau để buộc A2DP :(
  3. Buộc tai nghe BT là thiết bị đầu ra mặc định. Đã thử một số chiến lược ở đây, thật không may ... mỗi lần tôi kết nối tai nghe, chỉ số từ pacmd dường như thay đổi, vì vậy tôi không thể buộc mặc định trong tệp conf conf set-default-chìm theo cách đó. Và việc sử dụng tên được liệt kê dường như cũng không hoạt động - nếu không có tai nghe, nó sẽ chuyển sang loa và không chuyển trở lại nếu tai nghe kết nối :(

Cảm ơn cho bất kỳ lời khuyên nào bạn có thể có để giải quyết các vấn đề này!

Câu trả lời:


8

Điều này làm việc cho tôi: https://sandalov.org/blog/2146/

Hướng dẫn sao chép ở đây cho hậu thế:

Add to /etc/pulse/default.pa to automatically switch pulseaudio sink to Bluez:

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
load-module module-switch-on-connect  # Add this
.endif

Modify/Create /etc/bluetooth/audio.conf to auto select A2DP profile (instead of HSP/HFP):

[General]
Disable=Headset # Add this

Apply changes:

pulseaudio -k # Restarts pulseaudio

# You may need to turn your bluetooth headphones off, then back on

1
Ghi chú: Nhận xét "thêm cái này" rất quan trọng, vì dòng " .ifexists module-bluetooth-discover.so" đã tồn tại. Tôi đã thử thêm toàn bộ bốn dòng ở đầu và nó không hoạt động. Chỉ thêm một dòng ở đúng nơi làm việc.
Fabian Röling

2
trên Ubuntu Bionic tôi đã đặt AutoConnect=truethay vì Vô hiệu hóa = Tai nghe
develCuy

2

Không chỉ sau khi khởi động lại mà còn sau khi ngắt kết nối và kết nối lại một thiết bị có khả năng cả hai cấu hình HSP và A2DP mà Bluez luôn kết nối nó ở chế độ HSP (headest).

Tôi không thể nói chi tiết những gì đang diễn ra dưới mui xe (Bluetooth có khá nhiều điều kỳ quặc) nhưng tôi nghi ngờ rằng chúng tôi đang kết nối một thiết bị mới với tư cách là Tai nghe thay vì là thiết bị Audio hoặc AudioSink qua dbus.

Dường như không có thiết lập nào mà chúng ta có thể kiểm soát điều này. Tôi không biết bất kỳ cài đặt nào chúng tôi có thể thực hiện để mặc định thiết bị Bluetooth thành A2DP khi kết nối (nhưng tôi không thể loại trừ rằng tôi đã bỏ lỡ một phần tài liệu ở đâu đó). Đây có thể được coi là một lỗi.

Đôi khi tôi đã viết một tập lệnh để thiết lập kết nối Bluetooth bằng cấu hình Audio . Tập lệnh này được bao gồm trong một ứng dụng GUI Python nhỏ ( bt-autocconnectect trên launchpad hoặc thông qua ppa: takkat-nebuk / takkat ) của tôi, trong số các chỉnh sửa khác thực hiện chính xác điều này nhưng nó là một hack hơn là một giải pháp xác định, và thật đáng buồn không hoạt động với tất cả các bộ điều hợp xung quanh nhưng nó sẽ kết nối tai nghe Philips của tôi ở chế độ A2DP trước tiên (mặc dù cài đặt âm thanh vẫn cho rằng đó là HFP nhưng đó là một vấn đề khác).


Cảm ơn về Takkat đầu vào ... Tôi nghĩ rằng tôi đã bị lừa và đó sẽ là một quy trình thủ công :(
Logo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.