Índice:
- Etapa 1: Aquisições
- Etapa 2: montar o hardware
- Etapa 3: conecte ao Pi e conecte seus alto-falantes
- Etapa 4: Baixe o Raspbian Lite
- Etapa 5: configurar o Pi
- Etapa 6: usar SSH para abrir uma sessão em uma máquina remota
- Etapa 7: Instale o Mopidy
- Etapa 8: use o Python Pip para instalar outras … instalações (extensões)
- Etapa 9: Configurar Mopidy como um serviço
- Etapa 10: adicione sua própria música
- Etapa 11: Arquivo de configuração da placa de som - Asound.conf
- Etapa 12: Certifique-se de usar a sobreposição correta para Configure.txt em / boot
- Etapa 13: Desfrute da música
- Etapa 14: Conclusão
Vídeo: Raspberry Pi Audio Dac-Amp-Streamer: 14 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
Reutilize um chapéu de voz Google AIY datado como um dispositivo de streaming de áudio estéreo sem cabeça dedicado.
Agora que os kits de voz do Google AIY estão chegando aos dois anos de idade, você pode ter descoberto que a novidade se desgastou um pouco. Ou você pode estar se perguntando se os anúncios do seu navegador para o festival renascentista mais próximo têm algo a ver com a pergunta que você fez sobre onde encontrar um bom negócio em tênis de corrida sob a armadura.
Se você já possui um, este projeto mostrará como pegar seu kit de voz Google AIY existente e reaproveitá-lo como um streamer de áudio sem cabeça dedicado. Se você ainda não tem um kit e mora perto de um Micro Center; você está com sorte - ainda há muitos por aí, e eu duvido que eles fiquem mais baratos do que o preço atual de US $ 5. (na verdade, eram US $ 3 em julho de 2019).
Este projeto tem tudo a ver com áudio e nada a ver com IA. Estaremos trabalhando em um sistema operacional completamente separado, armazenado em um cartão micro SD separado, que permitirá que você mantenha todas as funcionalidades de IA intocadas. Além disso, melhoraremos a experiência do usuário introduzindo som estéreo (por alguns dólares a mais) à medida que construímos um dispositivo de streaming de áudio escalonável. Finalmente, após a conclusão deste projeto, deixaremos o chapéu de voz permanecendo em um estado pronto para expansão futura. As limitações da expansão serão apenas da nossa criatividade.
Etapa 1: Aquisições
Escreverei este manual do ponto de vista de que você ainda não tem um kit do Google Voice em sua posse. Caso você já tenha o kit de voz configurado - os itens adicionais necessários estão marcados com um * abaixo. Além disso, a última oferta do Raspberry Pi (Pi 3 A +) é perfeitamente adequada para este projeto com base em seu formato, e eu recomendo fortemente comprar um de qualquer maneira. No entanto, qualquer Pi deve servir, desde que acomode o chapéu do kit de voz e os GPIOs.
Ingredientes:
- Raspberry Pi (recomendo Pi 3 A +)
- Fonte de alimentação micro usb 5,25 V 2,4 amp
- Cartão Micro SD (dependendo do tamanho da coleção de música, 16 gb deve ser adequado)
- Max98357A dac e amp (da Adafruit) *
- Caixas de som). O kit vem com um, no entanto, para obter o estéreo, precisaremos de um alto-falante adicional. (também Adafruit)
- Kit Google AIY Voice
- Cabeçalho - banda única *
- Fio de alto-falante *
Ferramentas necessárias: Ferro de soldar, solda, chave de fenda philips tamanho 00 ou 000. descascadores de fios, fita adesiva ou fita adesiva para proteger o conector temporariamente durante a soldagem, adaptador USB para micro SD.
Etapa 2: montar o hardware
Fora da caixa, o chapéu de voz chega em modo mono. Felizmente, os engenheiros do Google projetaram a placa para permitir um upgrade para estéreo simplesmente adicionando outra placa Max98357a para servir de outro chapéu. Eles até delinearam a caixa para nós.
Você adivinhou: vamos construir um chapéu sobre outro chapéu. Hardware em cima de Hardware já em cima.
Usando o cabeçalho fornecido pelo conjunto de chips Adafruit Max98357a, começamos soldando o cabeçalho de 7 pinos ao chapéu de voz diretamente abaixo das palavras “AIY projeta chapéu de voz”. Um pedaço de fita adesiva afixada aos pinos machos mais longos na face da placa pode ser útil para evitar que os cabeçotes deslizem para fora do lugar, pois trabalharemos com a placa de cabeça para baixo durante este estágio de soldagem.
Solde também dois pinos dentro da caixa com contorno branco ao chapéu de voz onde a placa max98357a azul ficará.
NÃO SOLDA O CONECTOR DO ALTO-FALANTE À PLACA MAX98357a!
Em vez disso, conecte os terminais de alto-falante ao chapéu de voz, alinhados diretamente abaixo de onde os dois pólos foram soldados. A conexão do alto-falante esquerdo e a conexão do alto-falante direito devem ser alinhadas lado a lado, em uma fileira de quatro terminais.
Vire a placa com o lado direito para cima.
Solde o jumper com a etiqueta “JP4”, deixando uma gota de solda no jumper. Não se esqueça desta parte ou não teremos estéreo!
Prenda com cuidado a placa max98357a azul aos pinos machos longos que se projetam do chapéu de voz. Isso foi um pouco difícil, então tente soldar os pinos o mais perpendicularmente possível à placa. Com algumas pequenas disputas no cabeçalho de dois pinos, fui capaz de fazer isso com apenas um pequeno esforço.
Conclua a solda dos pinos machos no chip max98357a azul - tanto o cabeçote de sete pinos quanto o de dois pinos devem segurar o max98357a firmemente no lugar.
Feito com solda!
Etapa 3: conecte ao Pi e conecte seus alto-falantes
Usando os dois espaçadores de náilon fornecidos com o kit, mescle cuidadosamente o kit de voz feminina sobre os cabeçalhos masculinos no pi de framboesa. Os espaçadores de náilon devem se encaixar no lugar, proporcionando um encaixe seguro nos cantos opostos da plataforma.
Usando uma pequena chave de fenda Philips (000 ou 00), desaperte os parafusos no terminal do alto-falante o suficiente para permitir que o fio do alto-falante se encaixe nas aberturas de compressão. Você não deve ter que remover os parafusos, mas abra-os o suficiente onde eles se sentirem soltos.
Insira o fio do alto-falante de calibre pequeno na abertura e aperte os parafusos para segurar o fio do alto-falante firmemente no lugar.
Achei essa etapa o desafio mais assustador de todo o projeto - não consegui encontrar uma chave de fenda pequena o suficiente, ou meu fio de alto-falante frágil era muito fino para absorver a compressão do parafuso e preferia quebrar do que segurar firme. Fiz uma modificação construindo “pontas” ou fios menores que eram firmes o suficiente para resistir à compressão e apenas longos o suficiente para serem soldados às pontas desencapadas do fio do alto-falante. Feio, sim, mas eficaz.
Feito com o Hardware!
Etapa 4: Baixe o Raspbian Lite
Muitos de vocês já estão familiarizados com o processo de download e gravação de imagens em um cartão SD, e as etapas subsequentes estão um pouco além do escopo deste projeto. Vou listar as etapas abaixo para garantir, mas se você ainda estiver preso, há muitos recursos para ajudá-lo.
Última edição: junho de 2020 para download do Buster Lite.
· Baixe e instale o Etcher by Balena Software
· Baixe o Raspbian Lite OS mais recente em raspberrypi.org
· Usando Etcher, grave a imagem Raspbian no cartão SD
· Depois de concluído, a menos que esteja usando um pi zero w - transfira o cartão SD recém-criado para o nosso Raspberry Pi. Se você estiver usando um pi zero w, precisamos fazer algumas edições no arquivo WPA_Supplicant.conf na partição de inicialização para configurar seu wi-fi.
Etapa 5: configurar o Pi
Com nossa imagem recém-criada, vamos aumentar o pi. Mas primeiro vamos pegar emprestado um monitor e um teclado para ajudar na configuração. Insira o cartão micro SD e conecte o cabo de carregamento micro usb. Com sorte, a luz LED verde piscará algumas vezes durante a inicialização. A primeira inicialização pode levar alguns minutos, mas em 5 minutos estaremos prontos para trabalhar em nossa configuração. Raspbian "Lite" não tem um desktop.
Uma vez no prompt de comando: faça o login como pi, senha “raspberry”.
· Acesse o painel de configuração digitando “sudo raspi-config” no prompt de comando.
· Mude sua senha imediatamente.
· Configure seu wi-fi usando as opções de rede no painel de configuração
· Altere suas opções de localização e defina seu fuso horário
· Habilitar SSH usando a opção do painel de interfaces
· Execute “sudo apt-get update” para atualizar seu software para a versão mais recente
Precisamos do endereço IP do Pi. Eu recomendo um aplicativo chamado "FING" que pode ser baixado para qualquer dispositivo Android e listará todos os dispositivos conectados à sua rede. Estaríamos procurando um dispositivo chamado “raspberrypi”. Anote o endereço IP.
Deste ponto em diante, não precisaremos mais do monitor ou do teclado. Todas as outras configurações serão realizadas usando as linhas de comando por meio de uma sessão SSH.
Etapa 6: usar SSH para abrir uma sessão em uma máquina remota
Usar SSH é bastante básico. Abra uma janela de terminal de qualquer dispositivo em sua rede e digite o comando
ssh pi @ myipaddress
Substitua “myipaddress” pelos valores numéricos obtidos com o dedo.
Pela primeira vez, você pode ser saudado com um aviso assustador indicando que você não está na lista de convidados, no entanto, há uma frase que deve ser "para remover isso …" copie a longa sequência de caracteres e cole-a no comando prompt, pressione Enter. Em seguida, usando a tecla de seta para cima, repita o comando ssh pi @ myipaddress, escolha sim e agora digite sua senha. Parabéns !, agora você está conectado ao seu dispositivo se estiver vendo um prompt de comando de "pi @ raspberrypi: ~ $".
Etapa 7: Instale o Mopidy
Vamos instalar o Mopidy como nosso servidor de música. Existem muitas opções aqui, mas vou mostrar como instalar uma extensão chamada "Music Box" que permitirá que você controle suas músicas a partir de uma interface da web em vez de um prompt de comando.
O que é Mopidy? De acordo com seu site, Mopidy é uma série de palavras grandes que me fazem sentir muito inferior no momento, mas vamos apenas dizer que Mopidy é a plataforma a partir da qual nossa música vai tocar. Será um servidor de música, um MPD (daemon do reprodutor de música) e um servidor web. O addon PiMusic Box oferecerá o site no qual podemos navegar e controlar o Mopidy. Percebi que, como funciona bem com vários serviços populares, como Spotify ou Google Play Music, seria adequado para isso. Além disso, é muito legal.
Abaixo estão as instruções descaradamente copiadas do Mopidy para instalar a partir da linha de comando:
1. Adicione a chave GPG do arquivo:
sudo wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add -
2. Adicione o repositório APT às fontes do seu pacote:
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list
Finalmente instale o mopidy:
sudo apt-get update
sudo apt-get install mopidy
Acabar com a cópia desavergonhada.
Etapa 8: use o Python Pip para instalar outras … instalações (extensões)
Acabamos de instalar o Mopidy plain vanilla, mas estamos apenas começando. As extensões serão nossos blocos de construção para adicionar personalizações ao nosso Mopidy normal. Como a maioria das extensões que adicionaremos ao mopidy básico são escritas em python, usaremos um equivalente do apt que é específico para python.
Antes de começarmos a usar o pip, vamos primeiro garantir que temos todos os plug-ins do gstreamer usando apt:
sudo apt install
python3-gst-1.0 / gir1.2-gstreamer-1.0 / gir1.2-gst-plugins-base-1.0 / gstreamer1.0-plugins-good / gstreamer1.0-plugins-ugly / gstreamer1.0-plugins-bad / gstreamer1.0-tools
A instalação pode demorar alguns minutos. Sem o Gstreamer, você não conseguirá fazer streaming de música.
E agora podemos instalar o pip python:
sudo apt install build-essential python3-dev python3-pip
Agora podemos usar pip para adicionar mais pepitas mopidy. Pip é uma ferramenta python, semelhante ao apt, mas acho que funciona um pouco mais rápido que o apt. Um pouco lento fora do bloco, mas começa muito rápido.
Abaixo estão quatro para nos ajudar a começar:
Um front-end da web. Vamos usar o Iris, mas se você quiser, pode tentar mopidy-musicbox-webclient:
sudo python3 -m pip install Mopidy-Iris
Um hub de estação de rádio da Internet com 30 canais:
sudo python3 -m pip install mopidy-somafm
Outro hub de serviço de rádio na Internet com ainda mais canais:
sudo python3 -m pip install mopidy-TuneIn
E outro front-end para dispositivo móvel. As estações de rádio e o Iris não tocam bem juntos, mas o celular tem todos os tipos de estações de racionamento de internet para ouvir:
sudo python3 -m pip install Mopidy-Mobile
Depois de concluído, você deve ser capaz de acessar o Music Box usando:
myipaddress: 6680 / iris / -ou- https:// localhost: 6680 / musicbox_webclient
Ainda não teremos nada saindo dos alto-falantes se você tentar tocar música.
Para obter uma lista de outros recursos e extensões: Sirva-se:
sudo pip search mopidy
A partir daqui, você pode continuar a adicionar extensões à sua escolha.
Tenho um arquivo de configuração mopidy de amostra anexado. Sinta-se à vontade para usar o conteúdo em /etc/mopidy/mopidy.conf
sudo nano /etc/mopidy/mopidy.conf
Etapa 9: Configurar Mopidy como um serviço
Como queremos executar o mopidy na inicialização, dois comandos permitirão que o mopidy seja executado na inicialização:
sudo systemctl enable mopidy
sudo dpkg-reconfigure mopidy
Reinicialize e execute
sudo systemctl status mopidy - l
para verificar seu status. Você deve ver um indicador verde. Mopidy tem um site de suporte muito útil para ajudar com outras opções de configuração. Confira o site de documentação do Mopidy para mais detalhes.
Etapa 10: adicione sua própria música
Por padrão, mopidy irá querer armazenar música local em uma pasta em / var / lib / mopidy / media. Copie sua coleção de música lá. Acho mais fácil apenas remover o cartão SD do pi (após desligamento seguro) e, usando um adaptador micro SD para USB, conecte o adaptador à unidade de armazenamento e copie / cole lá. (pode demorar um pouco dependendo do tamanho da coleção). Depois de concluído, devolva o cartão SD ao pi, inicialize-o, reconecte-o e digite:
varredura local sudo mopidyctl
Isso adicionará sua música à biblioteca de mídia local no Music Box. Você pode perceber que os arquivos.wma não são reconhecidos como áudio e os arquivos.ogg parecem ser perdidos durante a verificação. Arquivos MP3 não devem ser um problema.
Etapa 11: Arquivo de configuração da placa de som - Asound.conf
Você ainda não deve ter nada em /etc/asound.conf, mas se tiver, substitua o conteúdo pelos abaixo ou crie um usando:
sudo nano /etc/asound.conf
e cole:
options snd_rpi_googlehat_soundcard index = 0
pcm.softvol {type softvol slave.pcm dmix control {name Master card 0}} pcm.! default {type asym playback.pcm "plug: softvol"} ctl.! default {type hw card 0}
ctrl-x e Y para salvar o acima como seu novo arquivo asound.conf.
Etapa 12: Certifique-se de usar a sobreposição correta para Configure.txt em / boot
modelo
sudo nano /boot/config.txt
As últimas linhas devem se parecer com algo semelhante a seguir. Queremos garantir que o áudio padrão seja comentado, junto com qualquer sobreposição anterior, como meu hifiberry dac, ao implementar a sobreposição de chapéu de voz do Google. Finalmente, queremos instruir o pi a usar o mapeamento i2s. O indicador # diz ao sistema para ignorar a linha.
# Ativar áudio (carrega snd_bcm2835)
# dtparam = audio = on # dtoverlay = hifiberry-dac dtoverlay = googlevoicehat-soundcard dtoverlay = i2s-mmap
reinicie se tudo parecer semelhante ao anterior. Aguarde alguns minutos, abra um navegador para o URL da caixa de música e reproduza algumas músicas.
Etapa 13: Desfrute da música
Se você está ouvindo bondade estéreo, missão cumprida!
Uma das coisas bonitas de usar um raspberry pi como um servidor de música sem cabeça conectado a wi-fi é que ele está funcionando sem ocupar muitos recursos. É verdade que estamos bombeando apenas 3 watts por canal, mas isso provavelmente é o suficiente para ouvir de perto. A bateria do seu telefone vai agradecer.
Há um fator verde muito significativo também - estamos consumindo apenas 5,25 volts de energia. E em comparação com o Bluetooth, podemos definir o fluxo de rádio e não estar ancorado em um alcance bluetooth de 30 pés. Com relação ao nosso telefone, podemos atender uma chamada, jogar um jogo e navegar um pouco mais livremente, sem interromper o fluxo de música. Nós apenas arranhamos a superfície. Existem toneladas de extensões mopidy disponíveis para explorar, e mopidy tem uma base crescente de desenvolvedores por ser de código aberto. Vou deixar você explorar os recursos que lhe interessam por conta própria.
Etapa 14: Conclusão
Uma das características mais marcantes deste projeto é que não estamos restringindo nosso pi bloqueando o acesso ao GPIO. Isso nos permite acessar muitas outras opções porque o chapéu de voz foi projetado muito bem. Por exemplo, meu próximo projeto será adicionar um botão momentâneo como botão de desligamento. Deve ser fácil, e eu já sei onde os pinos precisam cair: eles não estão obstruídos. De lá? Bem, para este projeto, ignoramos completamente o microfone - talvez um karaokê pi? Talvez um show de luzes LED, ou adicionar um motor para uma jukebox de rolamento? Todos os pinos ainda estão disponíveis e acessíveis. A questão é: por que não? E caso você queira voltar para a IA, basta inserir o cartão SD antigo e fazer o google responder em estéreo.
Recomendado:
Como fazer e testar um DAC melhor com ESP32: 5 etapas
Como fazer e testar um DAC melhor com ESP32: O ESP32 tem 2 conversores digital para analógico (DACs) de 8 bits. Esses DACs nos permitem produzir tensões arbitrárias dentro de uma certa faixa (0-3,3 V) com 8 bits de resolução. Neste Instructable, vou mostrar a você como construir um DAC e caracterizar seu p
Áudio USB DAC: 12 etapas
Áudio USB DAC: usa drivers padrão, funciona com Windows, Macs e muitas distribuições de Linux, mas limita o desempenho a 16 bits, 48 kHz Saídas de nível de linha balanceado (pro) na parte traseira (XLR / 6,35 mm) Nível de linha de terminação única (pro) saída na frente (RCA) Sem saída s
DIY: Audio DAC - DSD, MP3 e Radio Volumio Player: 3 etapas
DIY: Áudio DAC - DSD, MP3 e Rádio Volumio Player: DSD testado: DSD64, DSD128 & DSD256
Reproduzindo arquivos de áudio e som (Wav) com um Arduino e um DAC: 9 etapas
Reproduzindo arquivos de áudio e som (Wav) com um Arduino e um DAC: Reproduza o arquivo wav de áudio do seu cartão Audino SD. Este Instructable mostrará como um arquivo wav em seu SdCard pode ser reproduzido através de um circuito simples para um alto-falante. O arquivo wav deve ser mono de 8 bits. Não tive problemas para reproduzir arquivos de 44 KHz. Embora não
Seletor de áudio da caixa de hortelã: Interruptor de áudio de 3,5 mm: 6 etapas
Seletor de áudio da Mint Box: 3,5 mm Interruptor de áudio: Problema: muitas vezes, em minha área de trabalho, preciso usar fones de ouvido para jogos ou ouvir música enquanto outras pessoas estão na sala e, em seguida, preciso mudar para alto-falantes se quiser mostrar um vídeo ou fazer uma chamada pela Internet para um parente distante. º