Tenho fones de ouvido com cancelamento de ruído (Bose QC 35), que também possuem microfone embutido. Se o microfone está ativo, o cancelamento de ruído não funciona, eles passam apenas pelos sons do ambiente (isto é por design. Suponho que eles fizeram isso para que você não sentisse que está no "vácuo" quando está falando) .
De qualquer forma, o problema é que sempre que conecto meus fones de ouvido ao macOS, o sistema muda do microfone interno para o dos fones de ouvido. Portanto, o cancelamento de ruído não funciona, a menos que eu vá para as configurações do sistema e troque o microfone de volta para o interno.
Isso é muito chato, especialmente considerando que eu tenho que fazer isso toda vez que conecto fones de ouvido.
Existe alguma maneira de forçar o macOS a sempre usar microfone interno ou não usar o fone de ouvido específico?
Atualização a partir de 10/2017:
Então eu descobri que "o microfone dos fones de ouvido está sendo usado" só acontece quando o Skype está em execução. Mas desde que parei de usar o Skype (ou o fazia funcionar o tempo todo), o problema desapareceu!
Esta não é a solução para a pergunta original, apenas a deixo aqui para referência futura.
fonte
Option
pressionado e clicando no ícone Som na barra de menus e selecionando uma fonte de entrada na lista. É um pouco mais rápido do que usar as Preferências do Sistema, pelo menos.Respostas:
Não tenho certeza do quanto isso é prático (não tive a chance de medir o uso da CPU, etc.), mas o AppleScript abaixo fará o trabalho - basta substituir
[YOUR HEADPHONES' NAME]
pelo nome real dos fones de ouvido. Esta é uma versão modificada de um script de um encadeamento de comunidades de suporte da Apple .Salve o script abaixo como um aplicativo, execute-o e adicione-o aos itens de inicialização - ele deve ser executado continuamente em segundo plano.
Você pode jogar com o tempo entre as verificações (a linha com o comentário
for 5 second checks
) para reduzir o consumo de recursos.Há várias novas APIs (especialmente no
AVFoundation
) chegando ao macOS High Sierra que permitiriam uma solução muito mais limpa para esse problema. Se você estiver familiarizado com Swift ou Objective-C (ou a ponte de scripts Cocoa no AppleScript e JXA), gostaria de usar essas APIs em vez desse script quando o High Sierra for lançado. Em particular, o Guia de programação de sessões de áudio da Apple e esta publicação Stack Overflow mostram algumas técnicas de detecção de conexões Bluetooth usandoAVAudioSession
.fonte
Ainda gosto muito da sugestão de @ aaplmath (e essa pode ser a melhor daqui para frente), mas também me deparei com esta solução que não requer codificação (AppleScript / Swift / ObjC / Outros) no High Sierra e é super fácil de configurar .
Observe que a resposta estava na seção de comentários do artigo e parece funcionar em High Sierra (eu estou em 10.13.6), mas não sei se isso funciona no Mojave e além.
Fonte: http://ssrubin.com/posts/fixing-macos-bluetooth-headphone-audio-quality-issues-with-hammerspoon.html#comment-4018174387
fonte
Eu tenho esse problema ao usar o iOS Simulator e ele produz qualquer som, como de um teclado. O My Bose 35's muda para um fluxo de áudio de qualidade inferior e tudo soa horrível.
De outros resultados de pesquisa, descobri que a mudança para o microfone interno do meu Mac corrige o problema. Com base nesta pergunta, percebi que talvez não consiga definir as configurações do meu mac, mas posso defini-las no meu iOS Simulator.
Simulador iOS: Hardware -> Entrada de áudio -> Microfone interno
fonte
Se você usar seus fones de ouvido via cabo em vez de bluetooth, a solução mais simples será usar um cabo com uma tomada de telefone TRS (Tip + Ring + Sleeve) em vez de uma tomada de telefone TRRS (Tip + Ring + Ring + Sleeve). A tomada de telefone TRS suporta apenas sinal estéreo, mas sem microfone. Portanto, nenhum sinal de microfone será transmitido e o microfone embutido deve permanecer ativo.
fonte