Làm cách nào để luôn sử dụng micrô macbook với Bose QuietComfort 35?


30

Tôi có tai nghe khử tiếng ồn (Bose QC 35), cũng có micrô tích hợp. Nếu micrô hoạt động, chức năng khử tiếng ồn không hoạt động, chúng chỉ truyền qua âm thanh xung quanh (đây là do thiết kế. Tôi cho rằng, chúng đã làm như vậy nên bạn sẽ không cảm thấy rằng mình đang "chân không" khi bạn nói chuyện) .

Dù sao, vấn đề là bất cứ khi nào tôi kết nối tai nghe của mình với macOS, hệ thống sẽ chuyển từ micrô bên trong sang tai nghe. Do đó, khử tiếng ồn không hoạt động, trừ khi tôi đi đến cài đặt hệ thống và chuyển micrô trở lại bên trong.

Điều này rất khó chịu, đặc biệt là tôi phải làm điều đó mỗi khi kết nối tai nghe.

Có cách nào để buộc macOS luôn sử dụng micrô bên trong hoặc không sử dụng tai nghe cụ thể không?

Cập nhật từ ngày 10/2017:

Vì vậy, tôi phát hiện ra rằng "micro của tai nghe đang được sử dụng" chỉ xảy ra khi Skype đang chạy. Nhưng kể từ khi tôi ngừng sử dụng Skype (hoặc để nó chạy mọi lúc), vấn đề đã biến mất!

Đây không phải là giải pháp cho câu hỏi ban đầu, tôi chỉ để nó ở đây để tham khảo trong tương lai.


Làm thế nào để bạn kết nối tai nghe của bạn, thông qua Bluetooth? Nếu có, nó trông như thế nào trong Tùy chọn Bluetooth, dưới dạng một thiết bị hoặc là một cặp của hai thiết bị, tai nghe + micrô?
toma

@toma Bose QC 35 là một tai nghe không dây, nhưng nó cũng có thể được sử dụng thông qua đầu nối điện thoại
phía bắc

@northsea như tôi có thể thấy trên trang web chính thức, tai nghe này hỗ trợ cả giao diện, bluetooth và dây âm thanh. Vì vậy, nếu bạn kết nối chúng qua bluetooth, làm thế nào chúng được hiển thị trong các prefs BT? bose.com/en_us/products/headphones/over_ear_headphones/ từ
toma

@toma Tôi đang sử dụng chúng qua bluetooth, vâng. Chúng được hiển thị như tai nghe.
kovpas

4
Đây không phải là một giải pháp thực tế, nhưng bạn có thể nhanh chóng chuyển đổi nguồn đầu vào bằng cách giữ Optionvà nhấp vào biểu tượng Âm thanh trong thanh menu, sau đó chọn nguồn đầu vào từ danh sách. Nó nhanh hơn một chút so với sử dụng System Preferences, ít nhất.
aaplmath

Câu trả lời:


6

Tôi không chắc điều này thực tế đến mức nào (tôi chưa có cơ hội đo mức độ sử dụng CPU, v.v.), nhưng AppleScript dưới đây sẽ thực hiện công việc mà chỉ cần thay thế [YOUR HEADPHONES' NAME]bằng tên thật của tai nghe của bạn. Đây là phiên bản sửa đổi của tập lệnh từ chuỗi Cộng đồng hỗ trợ của Apple .

Lưu tập lệnh bên dưới dưới dạng một ứng dụng, chạy nó và thêm nó vào các mục khởi động của bạn. Nó sẽ chạy liên tục trong nền.

repeat
    set statusOld to checkStatus()
    set statusNew to checkStatus()
    repeat while statusOld is equal to statusNew
        delay 5 --for 5 second checks
        set statusNew to checkStatus()
    end repeat
    if statusNew is true then
        tell application "System Preferences" to activate
        tell application "System Preferences"
            reveal anchor "input" of pane id "com.apple.preference.sound"
        end tell
        delay 0.5
        tell application "System Events" to tell process "System Preferences"
            tell table 1 of scroll area 1 of tab group 1 of window 1
                select (row 1 where value of text field 1 is "Internal Microphone")
            end tell
        end tell
        tell application "System Preferences" to quit
    else
        -- Nothing needs to happen, the device was removed
    end if
end repeat

on checkStatus()
    set bluetoothDeviceName to "[YOUR HEADPHONES' NAME]"
    set myString to do shell script "system_profiler SPBluetoothDataType"

    --initial check if it's not even there
    if myString does not contain bluetoothDeviceName then
        return false
    else

        --find out if connected/disconnected
        set AppleScript's text item delimiters to "name:"
        set myList to the text items of myString --each item of mylist is now one of the devices

        set numberOfDevices to count of myList
        set counter to 1
        repeat numberOfDevices times --loop through each devices checking for Connected string
            if item counter of myList contains bluetoothDeviceName then
                if item counter of myList contains "Connected: Yes" then
                    return true
                else if item counter of myList contains "Connected: No" then
                    return false
                else
                    display dialog "Something went wrong with the script" --this shouldn't happen
                end if
            end if
            set counter to counter + 1
        end repeat
    end if
end checkStatus

Bạn có thể chơi với thời gian giữa các lần kiểm tra (dòng với nhận xét for 5 second checks) để giảm mức tiêu thụ tài nguyên.

Có một số API mới (đặc biệt là AVFoundation) đến với macOS High Sierra sẽ cho phép giải pháp rõ ràng hơn cho vấn đề này. Nếu bạn cảm thấy thoải mái với Swift hoặc Objective-C (hoặc cầu nối kịch bản ca cao trong AppleScript và JXA), tôi sẽ xem xét sử dụng các API đó thay vì tập lệnh này khi High Sierra được phát hành. Cụ thể, Hướng dẫn lập trình phiên âm thanh của Apple và bài đăng Stack Overflow này cho thấy một số kỹ thuật phát hiện kết nối Bluetooth bằng cách sử dụng AVAudioSession.


Vâng, có vẻ như một thỏa hiệp tốt. Tôi thực sự thất vọng Bose vẫn không thể hỗ trợ tốt cho sản phẩm của họ trên Sierra ... Cho đến lúc đó, dường như tôi phải sử dụng các cách giải quyết như thế này :(. Cảm ơn bạn!
kovpas

@aaplmath Kịch bản thực sự thú vị ... và tôi thực sự thích đề xuất đó ở cuối bài viết của bạn. Viết một ứng dụng thanh menu (hoặc không đầu) theo dõi phiên âm thanh và luôn định tuyến lại cho micrô bên trong sẽ là một dự án thú vị để làm việc và có thể mạnh mẽ hơn một chút ... (có thể) Nhưng tôi vẫn thích phiên bản AppleScript vì đây là thứ mà bất cứ ai cũng có thể sử dụng ngày hôm nay. Cảm ơn!
Evan Stone

18

Tôi vẫn thực sự thích đề xuất của @ aaplmath (và đó có thể là giải pháp tốt nhất trong tương lai), nhưng tôi cũng chỉ vấp phải giải pháp này không yêu cầu mã hóa (AppleScript / Swift / ObjC / Other) ở High Sierra, và nó rất dễ cấu hình .

Xin lưu ý rằng câu trả lời nằm trong phần bình luận của bài viết và nó dường như hoạt động trên High Sierra (Tôi là ngày 10.13.6), nhưng tôi không biết liệu điều này có hoạt động trên Mojave hay không.

Mở tiện ích "Audio MIDI Setup.app" tiêu chuẩn và nhấp vào + ở dưới cùng để tạo Thiết bị Tổng hợp. Sau đó chọn Micrô bên trong làm thành phần duy nhất trong thiết bị tổng hợp này và chọn nó làm đầu vào mặc định. Vì một số lý do, điều này ngăn Mac OS X chọn Micrô Bluetooth từ bây giờ và nó sẽ ở bên trong khi bạn kết nối lại.

Sau khi tạo đầu vào tổng hợp đó, hãy chuyển đến Tùy chọn hệ thống thông thường của bạn -> Âm thanh -> Đầu vào (tab)

Nguồn: http://ssrubin.com/posts/fixing-macos-bluetooth-headphone-audio-quality-issues-with-hammerspoon.html#comment-4018174387


Tôi cũng gặp vấn đề với Bose QC 35 ii. Giải pháp này hoạt động hoàn hảo. Cảm ơn bạn.
Charles Han

Điều này cũng hoạt động với tai nghe audiomx.
Daniel Staple

Dường như không hoạt động trên macOS Catalina. AirPods v2 của tôi lại trở thành mic chính và tập hợp mới được tạo dường như không chặn bất cứ thứ gì: '(
MoOx

Nó hoạt động ở Mojave và tôi chưa cài đặt Catalina. Apple có lẽ đã thay đổi một cái gì đó làm cho điều này không hoạt động bây giờ ... rất đáng thất vọng. Thật tốt khi biết rằng đây là cuối con đường nếu đó là trường hợp ... Tuy nhiên, có vẻ như Catalina thể hiện vấn đề ban đầu, tuy nhiên, nếu vậy, điều đó cũng rất đáng thất vọng.
Evan Stone

6

Tôi gặp vấn đề này khi sử dụng Trình mô phỏng iOS và nó tạo ra bất kỳ âm thanh nào, như từ bàn phím. My Bose 35 chuyển sang luồng âm thanh chất lượng thấp hơn và mọi thứ nghe có vẻ khủng khiếp.

Từ các kết quả tìm kiếm khác, tôi thấy rằng việc chuyển sang micrô bên trong máy Mac của tôi đã khắc phục được sự cố. Dựa trên câu hỏi này, tôi nhận ra rằng tôi có thể không thể đặt cài đặt cho máy mac của mình, nhưng tôi có thể đặt chúng cho Trình mô phỏng iOS của mình.

Trình mô phỏng iOS: Phần cứng -> Đầu vào âm thanh -> Micrô bên trong


-2

Nếu bạn sử dụng tai nghe qua cáp thay vì bluetooth, giải pháp đơn giản nhất là sử dụng cáp có giắc cắm điện thoại TRS (Mẹo + Đổ chuông + Tay áo) thay vì giắc cắm điện thoại TRRS (Mẹo + Đổ chuông + Đổ chuông). Giắc cắm điện thoại TRS chỉ hỗ trợ tín hiệu Âm thanh nổi, nhưng không có micrô. Do đó, không có tín hiệu micrô nào được truyền đi và micrô tích hợp sẽ duy trì hoạt động.


1
Không, tôi đang sử dụng chúng qua bluetooth. Không dây là lý do chính để mua chúng ở nơi đầu tiên :)
kovpas
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.