Bose QuietComfort 35에서 항상 맥북 마이크를 사용하는 방법은 무엇입니까?


30

마이크가 내장 된 노이즈 캔슬링 헤드폰 (Bose QC 35)이 있습니다. 마이크가 활성화되어 있으면 소음 제거 기능이 작동하지 않고 주변 소리 만 통과합니다 (이것은 의도적으로 설계된 것입니다. 말했을 때 "진공 상태"라고 느끼지 않을 것입니다) .

어쨌든 문제는 헤드폰을 macOS에 연결할 때마다 시스템이 내장 마이크에서 헤드폰으로 전환된다는 것입니다. 따라서 시스템 설정으로 이동하여 마이크를 다시 내부 설정으로 전환하지 않으면 노이즈 캔슬링이 작동하지 않습니다.

특히 헤드폰을 연결할 때마다해야한다는 점을 고려하면 매우 성가신 일입니다.

macOS가 항상 내부 마이크를 사용하도록하거나 특정 헤드폰의 마이크를 사용하지 않도록하는 방법이 있습니까?

2017 년 10 월 업데이트 :

"헤드폰의 마이크 사용 중"은 Skype가 실행 중일 때만 발생한다는 것을 알았습니다. 그러나 Skype 사용을 중단 한 이후 (또는 항상 실행하고있는 이후) 문제는 사라졌습니다!

이것은 원래 질문에 대한 해결책이 아니며 나중에 참조 할 수 있도록 여기에 남겨두고 있습니다.


블루투스를 통해 헤드폰을 어떻게 연결합니까? 그렇다면 Bluetooth 기본 설정, 단일 장치 또는 두 장치 쌍, 헤드폰 + 마이크의 모양은 어떻습니까?
toma

@toma the Bose QC 35는 무선 헤드셋이지만 전화 커넥터를 통해서도 사용할 수 있습니다.
북해

@northsea 공식 웹 사이트에서 볼 수 있듯이이 헤드폰은 인터페이스, 블루투스 및 오디오 와이어를 모두 지원합니다. 블루투스를 통해 연결하면 BT 기본 설정에 어떻게 표시됩니까? bose.com/en_us/products/headphones/over_ear_headphones/…
toma

@toma 블루투스를 통해 사용하고 있습니다. 헤드폰으로 표시됩니다.
kovpas

4
이것은 실제 솔루션은 아니지만 Option메뉴 표시 줄에서 소리 아이콘을 클릭 한 다음 목록에서 입력 소스를 선택하여 입력 소스를 빠르게 전환 할 수 있습니다 . 적어도 시스템 환경 설정을 사용하는 것보다 약간 빠릅니다.
aaplmath

답변:


6

이것이 얼마나 실용적인지 잘 모르겠지만 (CPU 사용률 등을 측정 할 기회가 없었습니다), 아래 AppleScript에서 작업을 수행합니다 [YOUR HEADPHONES' NAME]. 헤드폰의 실제 이름으로 바꾸 십시오. 이것은 Apple 지원 커뮤니티 스레드 에서 수정 된 스크립트 버전입니다 .

아래 스크립트를 응용 프로그램으로 저장하고 실행 한 다음 시작 항목에 추가하십시오. 백그라운드에서 계속 실행되어야합니다.

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

점검 간격 (주석이있는 행)으로 재생하여 for 5 second checks자원 소비를 줄일 수 있습니다.

AVFoundationmacOS High Sierra 에는 여러 가지 새로운 API가 있으며 (특히 )이 문제에 대한보다 명확한 솔루션을 제공합니다. Swift 또는 Objective-C (또는 AppleScript 및 JXA의 Cocoa 스크립팅 브릿지)에 익숙하다면 High Sierra가 릴리스되면이 스크립트 대신 해당 API를 사용하는 것이 좋습니다. 특히, Apple의 오디오 세션 프로그래밍 안내서이 스택 오버 플로우 게시물 은을 사용하여 Bluetooth 연결을 감지하는 몇 가지 기술을 보여줍니다 AVAudioSession.


예, 괜찮은 타협처럼 보입니다. 정말 실망합니다 Bose는 여전히 Sierra에서 제품을 잘 지원할 수 없습니다 ... 그때까지는 다음과 같은 해결 방법을 사용해야 할 것 같습니다 :(. 감사합니다!
kovpas

@aaplmath이 스크립트는 정말 흥미 롭습니다. 그리고 글 끝 부분에서 그 제안을 정말 좋아합니다. 오디오 세션을 모니터링하고 항상 내부 마이크로 다시 라우팅되는 메뉴 표시 줄 앱 (또는 헤드리스) 응용 프로그램을 작성하면 작업하기가 재미 있고 좀 더 강력 할 수 있습니다 ... (아마도) AppleScript 버전은 오늘날 누구나 사용할 수 있기 때문입니다. 감사!
Evan Stone

18

나는 여전히 @aaplmath의 제안을 좋아하지만 (그리고 앞으로 나아질 수도 있지만) High Sierra에서 코딩 (AppleScript / Swift / ObjC / Other)이 필요없는이 솔루션을 우연히 발견했으며 구성하기가 매우 쉽습니다. .

대답은 기사 의 주석 섹션 에 있었고 High Sierra (10.13.6에 있음)에서 작동하는 것 같지만 이것이 Mojave 이상에서 작동하는지는 알 수 없습니다.

표준 "Audio MIDI Setup.app"유틸리티를 열고 하단의 +를 클릭하여 집계 장치를 만듭니다. 그런 다음이 집계 장치에서 유일한 구성 요소로 내장 마이크를 선택하고 기본 입력으로 선택하십시오. 어떤 이유로 Mac OS X이 지금부터 Bluetooth 마이크를 선택하지 못하도록하고 다시 연결할 때 내부의 마이크를 유지합니다.

해당 집계 입력을 생성 한 후 일반적인 시스템 환경 설정-> 사운드-> 입력 (탭)으로 이동하십시오.

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


Bose QC 35에도 문제가있었습니다. ii. 이 솔루션은 완벽하게 작동합니다. 감사합니다.
Charles Han

이것은 audiomx 헤드폰에서도 작동합니다.
대니 스테이플

macOS Catalina에서 작동하지 않는 것 같습니다. 내 AirPods v2가 다시 기본 마이크가되며 새로 생성 된 집계는 아무것도 차단하지 않는 것 같습니다. '(
MoOx

Mojave에서 작동하며 아직 Catalina를 설치하지 않았습니다. 애플은 아마도 지금 작동하지 않는 무언가를 바꿨을 것이다. 이것이 사실이라면 이것이 끝이라는 것을 아는 것이 기쁩니다. 그러나 그것은 또한 Catalina가 원래 문제를 나타내는 것처럼 들리지만, 그렇다면 매우 실망합니다.
Evan Stone

6

iOS 시뮬레이터를 사용할 때이 문제가 있으며 키보드와 같은 소리가납니다. 저의 Bose 35는 저품질 오디오 스트림으로 전환되어 모든 것이 끔찍합니다.

다른 검색 결과에서 Mac의 내장 마이크로 전환하면 문제가 해결되는 것으로 나타났습니다. 이 질문에 기초하여, 나는 나의 Mac에 대한 설정을 설정하지 못할 수도 있다는 것을 깨달았지만, 나의 iOS 시뮬레이터에 대해서는 설정할 수 있습니다.

iOS 시뮬레이터 : 하드웨어-> 오디오 입력-> 내장 마이크


-2

블루투스 대신 케이블을 통해 헤드폰을 사용하는 경우 가장 간단한 해결책은 TRRS (팁 + 링 + 링 + 슬리브) 전화 잭 대신 TRS (팁 + 링 + 슬리브) 전화 잭이있는 케이블을 사용하는 것입니다. TRS 폰 잭은 스테레오 신호 만 지원하지만 마이크는 지원하지 않습니다. 따라서 마이크 신호가 전송되지 않으며 내장 마이크가 활성 상태를 유지해야합니다.


1
아니요, 블루투스를 통해 사용하고 있습니다. 무선 먼저 :)에서 그들을 구입하는 주된 이유였다
kovpas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.