Si votre projet étonnant est un peu trop silencieux, ajoutez un son haute fidélité avec Raspberry Pi et l'aide de ce guide pratique du magazine HackSpace, écrit par PJ Evans.
Il n’est pas surprenant que nous aimions les microcontrôleurs du magazine HackSpace. Leur polyvalence et leur simplicité en font un incontournable des projets électroniques. Bien qu'ils se donnent la peine de lire les capteurs ou d'éclairer les LED, les Arduinos et leurs amis ont du mal en ce qui concerne l'audio de haute qualité. Si vous avez besoin d'ajouter de la musique ou de la parole à votre projet, il peut être utile d'obtenir un ordinateur Raspberry Pi pour faire le gros du travail. Nous allons examiner les différentes options de sortie audio disponibles pour notre petit ordinateur préféré, du simple buzz au bonheur audiophile.
Sommaire
Obtenez le bourdonnement
L'endroit le plus simple pour commencer est avec l'humble buzzer. Un buzzer actif bon marché peut être rapidement ajouté au GPIO du Raspberry Pi. C’est étonnamment facile aussi. Essayez de connecter un fil rouge (positif) du buzzer à la broche 22 du GPIO (numérotation Broadcom) et le fil noir (masse) à une broche GND. Maintenant, installez la bibliothèque GPIO Zero Python en tapant ceci sur la ligne de commande:
sudo apt install python3-gpiozero
Créez un fichier appelé buzz.py
dans votre éditeur préféré et entrez les informations suivantes:
importer le temps depuis gpiozero importer Buzzer buzzer = Buzzer (22) buzzer.on () time.sleep (1) buzzer.off ()
Exécutez-le sur la ligne de commande:
python3 buzz.py
Vous devriez entendre un bourdonnement d'une seconde. Voyez si vous pouvez faire des sons de code Morse en modifiant la durée de la sommeil
déclaration.
Passif mais pas agressif
Les ordinateurs Raspberry Pi, à l'exception de la gamme Zero, ont tous une sortie audio à bord. Le Raspberry Pi d'origine comportait une prise stéréo 3,5 mm, et tous les modèles A et B disposent depuis d'une prise à quatre pôles qui comprend également la vidéo composite. Cela fournit votre itinéraire le moins cher pour obtenir l'audio de votre ordinateur Raspberry Pi.
Un haut-parleur passif à faible coût peut être directement branché pour fournir un son, bien que probablement plus silencieux que vous ne le souhaiteriez. Bien sûr, ajoutez un amplificateur ou un haut-parleur actif et vous obtenez un son aussi fort que vous le souhaitez. C'est le moyen le plus direct d'ajouter du son à votre projet, mais comment faire sortir le son?
Normalement, le système d'exploitation Raspbian reconnaît qu'un périphérique audio a été connecté et achemine l'audio à travers lui. Parfois, en particulier si vous avez connecté un moniteur HDMI avec une capacité sonore (par exemple un téléviseur HDMI), le son ne sortira pas du bon appareil.
Pour résoudre ce problème, ouvrez une fenêtre de terminal et exécutez sudo raspi-config
. Lorsque le menu apparaît, accédez à Options avancées et sélectionnez l'audio, puis sélectionnez l'option pour forcer la sortie via la prise audio. Vous devrez peut-être redémarrer Raspbian pour que toutes les modifications prennent effet.
Plug and playback
Un périphérique audio USB est un autre choix simple pour la lecture audio sur Raspberry Pi. Des centaines sont littéralement disponibles, et un périphérique d'entrée / sortie de base avec une meilleure qualité audio que le système embarqué peut être acheté pour quelques livres en ligne. L'installation n'est généralement pas plus compliquée que de brancher l'appareil sur le port USB. Vous devrez peut-être sélectionner la nouvelle sortie, en tant que système audio sous-jacent, ALSA (voir le ALSA et PulseAudio section pour plus), peut le désactiver par défaut. Pour résoudre ce problème, exécutez alsamixer
à partir de la ligne de commande, appuyez sur F6
pour sélectionner le nouveau périphérique audio, et si vous voyez «MM» au bas de l'indicateur de volume, appuyez sur M
pour réactiver le son et régler le volume avec les touches de curseur.
Sans surprise, lors du choix de votre périphérique audio USB, vous pouvez commencer à quelques kilos et aller jusqu'à un équipement professionnel coûtant des centaines. Comme ils sont de faible puissance, les périphériques USB n'ont pas tendance à présenter d'amplification, sauf s'ils ont une source d'alimentation séparée.
Jouons
La façon la plus simple de lire de l'audio sur Raspbian est d'utiliser OMXPlayer. Il s'agit d'un outil de ligne de commande accéléré par matériel dédié qui tire pleinement parti des capacités du Raspberry Pi. Il envoie le son à la prise audio analogique par défaut, donc la lecture d'un fichier MP3 est aussi simple que l'exécution:
omxplayer /path/to/audio/file.wav
Il existe de nombreuses options de ligne de commande qui vous permettent de contrôler la façon dont l'audio est lu. Vous voulez que l'audio boucle en permanence? Ajoutez simplement --boucle
à la commande. Vous remarquerez que lorsqu'il est en cours d'exécution, OMXPlayer fournit une sorte d'interface utilisateur vous permettant de contrôler la lecture à partir du terminal. Si vous souhaitez simplement qu'il s'exécute en arrière-plan sans intervention de l'utilisateur, exécutez la commande comme suit:
omxplayer --no-keys example.wav &
Ici, —- pas de clés
supprime l'interface et l'esperluette (&) indique au système d'exploitation d'exécuter le travail "en arrière-plan" afin qu'il ne bloque rien d'autre que vous souhaitiez faire.
OMXPlayer est un excellent choix pour Raspbian, mais d'autres lecteurs tels que mpg321 sont disponibles, alors trouvez l'outil qui vous convient le mieux.
Un autre utilitaire utile est test de haut-parleur
. Cela peut produire un bruit blanc ou une confirmation vocale afin que vous puissiez vérifier que vos haut-parleurs fonctionnent correctement. C'est aussi simple que ça:
test de haut-parleur -t wav -c 2
Le premier paramètre définit le son comme une voix, et le -c
teste uniquement les canaux stéréo: avant gauche et avant droit.
Phat Beats
Si l'espace est un problème, un Raspberry Pi 4, un amplificateur et un haut-parleur peuvent ne pas être ce que vous avez en tête. Après tout, votre projet portable cool va être problématique si vous traînez un amplificateur sur un chariot avec une rallonge de 50 mètres alimentant tout. Heureusement, les gens intelligents de Pimoroni vous ont couvert. Le haut-parleur pHAT est un HAT de taille zéro Raspberry Pi qui non seulement ajoute une capacité audio à la plus petite de la famille Raspberry Pi, mais arbore également un haut-parleur de 3 W. Vous pouvez maintenant lire n'importe quel fichier audio avec un petit appareil et une batterie USB.
Le processus d'installation est entièrement automatisé, donc pas de problème avec les pilotes et les fichiers de configuration. Une fois le script terminé, vous pouvez exécuter n'importe quel outil audio comme précédemment, et le son sera acheminé via le haut-parleur. Non, le volume maximum ne gênera aucun concert de heavy metal, mais vous ne pouvez pas faire tomber la commodité et le facteur de forme.
Jouer du blues
Bluetooth est un moyen facile d'obtenir une qualité audio supérieure à l'aide d'un ordinateur Raspberry Pi. Les modèles récents tels que les 3B, 4 et même le Zero W prennent en charge les appareils Bluetooth et peuvent être jumelés avec la plupart des haut-parleurs Bluetooth, même à partir de la ligne de commande. Une fois connecté, vous disposez d'une gamme d'options sur la taille et la puissance de sortie, ainsi que l'avantage de la connectivité sans fil.
La configuration d'une connexion Bluetooth, en particulier si vous utilisez la ligne de commande, peut être un peu difficile (voir le Cheatsheet Bluetooth section). Il y a un guide succinct ici: hsmag.cc/N6p2IB. Si vous utilisez Raspbian Desktop, c'est beaucoup plus simple. Cliquez simplement sur le logo Bluetooth en haut à droite et suivez les instructions pour coupler votre appareil.
Si vous trouvez qu'OMXPlayer ne produit aucun son, essayez d'installer mpg321:
sudo apt install mpg321
Et essayez à nouveau:
mpg321 /path/to/audio/file.mp3
Mais sérieusement
Si votre projet a besoin d'un bon son et que la sortie standard de 3,5 mm ne suffit pas, il est temps de regarder la large gamme de DAC (convertisseurs numérique-analogique) disponibles au format HAT. C'est un marché bondé, et les prix varient considérablement en fonction de ce que vous voulez de votre appareil. Commençons par le bas, avec le DAC + Zero de HiFiBerry. Ce minuscule HAT ajoute une lecture 192 kHz / 24 bits via deux ports phono RCA pour 12,50 £. Si vous êtes sérieux au sujet de votre audio, alors vous pouvez envisager le format DAT + Pro haute résolution au format HAT complet pour 36 £, ou vraiment vous lancer avec la version DSP (traitement numérique du son) pour 67 £. Tout cela nécessitera une amplification, mais la qualité sonore rivalisera avec les composants audio d'un prix beaucoup plus élevé.
Si l'argent n'est pas un objet et que votre projet nécessite la meilleure reproduction possible, alors vous pouvez envisager de devenir audiophile complet. Il existe des HAT haut de gamme incroyables, mais l'un des plus performants que nous avons vus est le DAC PecanPi. Son créateur Leonid Ayzenshtat a soigneusement sélectionné chaque composant individuel, en choisissant toujours le meilleur de sa catégorie. Il a même utilisé un DAC distinct pour chaque canal audio. La carte résultante peut faire grimacer votre portefeuille à environ 200 £ pour la carte nue, mais l'audio résultant est assez bon pour être utilisé dans les studios d'enregistrement professionnels. Si vous avez restauré une magnifique vieille radio dans le showroom, vous pourriez faire bien pire que d'ajouter la carte avec un excellent ampli et haut-parleur.
ALSA et PulseAudio
Il y a souvent de la confusion entre ces deux systèmes. Raspbian est livré préinstallé avec ALSA (Advanced Linux Sound Architecture), qui est le logiciel de bas niveau qui fait fonctionner le son. Il est livré avec une gamme d'utilitaires pour contrôler le périphérique de sortie, le volume, etc. PulseAudio est une couche logicielle qui se trouve au-dessus d'ALSA pour fournir plus de fonctionnalités, y compris des capacités de streaming. Il y a de fortes chances que si vous devez faire quelque chose d'un peu plus intelligent que de simplement lire de l'audio, vous devrez installer un serveur PulseAudio.
Cheatsheet Bluetooth
Si vous souhaitez coupler un périphérique audio Bluetooth (A2DP) sur la ligne de commande, cela peut être un peu poilu. Voici un petit guide:
Première installation:
sudo apt-get install pulseaudio pulseaudio-module-bluetooth sudo usermod -G bluetooth -a pi sudo reboot
Démarrez le serveur PulseAudio:
pulseaudio --start
Exécutez l'utilitaire Bluetooth:
bluetoothctl
Mettez votre haut-parleur en mode d'appairage. Maintenant, dans l'utilitaire, exécutez les commandes suivantes (en appuyant sur Entrer après chacun):
mettre sous tension l'agent lors de la numérisation
Attendez maintenant que la liste se remplisse. Lorsque vous voyez votre appareil…paire
Où
est l'identifiant long affiché pour votre appareil. Vous pouvez simplement saisir les premiers caractères et appuyer sur Languette à compléter automatiquement. Faites de même pour les étapes suivantes.
confiancerelier
Attendez la confirmation, puis entrez:
quitter
Essayez maintenant de lire de l'audio en utilisant aplay (pour les fichiers WAV) ou mpg321 (pour mp3). Ces instructions sont adaptées du guide d'Actuino sur hsmag.cc/N6p2IB.
Types de fichier
Il existe des lecteurs de ligne de commande disponibles pour à peu près tous les formats audio couramment utilisés. En général, le MP3 offre le meilleur équilibre entre qualité et espace, mais des débits binaires inférieurs entraînent une qualité sonore inférieure. WAV n'est pas compressé, mais peut gruger votre carte SSD. Si vous ne voulez pas faire de compromis sur la qualité audio, essayez FLAC, qui est identique en qualité à WAV, mais beaucoup plus petit. Pour convertir entre les types audio, envisagez d'installer FFmpeg, un puissant outil de traitement audio et vidéo.
Magazine HackSpace
Cet article provient directement du numéro 28 du magazine HackSpace, maintenant disponible et disponible en version imprimée auprès de votre marchand de journaux local, le Raspberry Pi Store de Cambridge, et en ligne de Raspberry Pi Press.
Si vous aimez le magazine HackSpace autant que nous, pourquoi ne pas jeter un œil aux offres d'abonnement disponibles, y compris l'offre de 12 mois avec un terrain de jeu gratuit sur le circuit d'Adafruit! Les abonnés aux États-Unis peuvent désormais obtenir un abonnement de 12 mois pour 60 $ lors de leur adhésion d'ici la fin mars!
Et, comme toujours, vous pouvez télécharger le PDF gratuit sur le site Web de Raspberry Pi Press.
Lien de site Web
Commentaires
Laisser un commentaire