From 09545394a9939358087a8b263ba7a74a02e01765 Mon Sep 17 00:00:00 2001 From: Sébastien Dailly Date: Mon, 17 Jun 2013 22:20:59 +0200 Subject: Connecting turntable with linux --- content/Informatique/navit.rst | 2 +- content/Perso/platine.rst | 178 +++++++++++++++++++++++++++++++++ content/images/icons/face-smile.png | Bin 0 -> 1057 bytes content/images/platine/jack2rca.jpg | Bin 0 -> 4756 bytes content/images/platine/lecture_150.jpg | Bin 0 -> 10809 bytes content/images/platine/line-in.jpg | Bin 0 -> 5628 bytes content/images/platine/riaa.jpg | Bin 0 -> 25055 bytes content/images/platine/tete_75.jpeg | Bin 0 -> 6967 bytes theme/static/css/main.css | 11 ++ 9 files changed, 190 insertions(+), 1 deletion(-) create mode 100644 content/Perso/platine.rst create mode 100644 content/images/icons/face-smile.png create mode 100644 content/images/platine/jack2rca.jpg create mode 100644 content/images/platine/lecture_150.jpg create mode 100644 content/images/platine/line-in.jpg create mode 100644 content/images/platine/riaa.jpg create mode 100644 content/images/platine/tete_75.jpeg diff --git a/content/Informatique/navit.rst b/content/Informatique/navit.rst index ed290a5..786e66c 100644 --- a/content/Informatique/navit.rst +++ b/content/Informatique/navit.rst @@ -5,7 +5,7 @@ Un gps libre avec Navit ####################### :date: 2012-03-26 -:tags: Libre +:tags: Libre, DIY :summary: |summary1| |summary2| :logo: static/images/navit.png diff --git a/content/Perso/platine.rst b/content/Perso/platine.rst new file mode 100644 index 0000000..2e1ec95 --- /dev/null +++ b/content/Perso/platine.rst @@ -0,0 +1,178 @@ +.. -*- mode: rst -*- +.. -*- coding: utf-8 -*- + +############################## +Écouter ses vinyles sous linux +############################## + +:date: 2013-06-21 +:tags: Libre, DIY +:logo: static/images/platine/tete_75.jpeg +:summary: |summary| + +.. image:: |filename|/images/platine/lecture_150.jpg + :width: 150 + :class: floatright + :alt: Tête de lecture + +|summary| + +.. |summary| replace:: + Peut-être avez-vous dans votre grenier une platine vinyle qui prend la + poussière, ainsi qu'une collection de disques dans des cartons. Je vous + propose aujourd'hui de ressuciter la platine et récupérer le son sur votre + ordinateur. Il n'y a pas que les platines USB qui peuvent être branchées + sur un PC, même la plus ancienne peut faire l'affaire ! + +Merci pulseaudio +================ + +Pour toutes les opérations, nous allons nous servir de pulseaudio qui va +grandement nous simplifier les traitements à réaliser. + +Pour faire les tests, nous allons nous servir de `pavucontrol` qui permet de +contrôler les flux d'entrée, et d'afficher un audiomètre (pratique pour voir +sur quelle entrée provient notre son…) + +System-wide +----------- + +Il est nécessaire que pulseaudio tourne en continu pour rediriger le son dès +que la platine tourne. Ça n'est pas le cas par défaut, pour des raisons de +sécurité, et il va être nécessaire de modifier la configuration pour ça. En +effet, le comportement par défaut est de se lancer pour la durée nécessaire, +via dbus, puis se couper une fois que la demande est terminée. Il n'existe pas +à ma connaissance de modèle de platine capable de lancer demander à pulseaudio +de se mettre en route, on va donc laisser pulseaudio tourner en continu. + +.. admonition:: Attention ! + + Il n'est pas conseillé de lancer pulseaudio en tant que démon du système. + Comme le wiki l'indique, cela ne devrait être utilisé que dans des cas + particuliers (serveur de son accessible uniquement par le réseau). + + De nombreuses failles de sécurité ont été trouvés utilisant pulseaudio pour + obtenir un accès root à la machine. + + Dans notre cas nous n'avons pas le choix, puisque la platine ne correspond + à aucun utilisateur du système, mais vous êtes prévenus ! + +Le wiki explique la procédure_ en détail, je ne rentre pas dans le détail : les +explications données sur le wiki sont assez claires, et je préfère ne pas +inciter à trop jouer avec votre système… + +.. _procédure: http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/ + +Branchement +=========== + +.. image:: |filename|/images/platine/jack2rca.jpg + :class: floatleft + :alt: jack to rca + +Il est fort probable que votre platine dispose d'une sortie RCA. Pour le +connecter à l'ordinateur, il va nous falloir un adaptateur, comme celui montré +en photo. Pour ma part, je l'ai trouvé, non pas chez les vendeurs de disques, +mais dans une grande surface de bricolage, sinon, vous pourrez le commander +facilement sur internet. + +.. image:: |filename|/images/platine/line-in.jpg + :class: floatright + :alt: line-in + +Nous n'avons plus qu'à brancher notre cablage, de préférence sur l'entrée +line-in de l'ordinateur, qui est faite pour récupérer du son directement depuis +un autre appareil (moins de parasites). Il s'agit normalement d'une prise bleue +sur la carte son. + +Le volume de sortie de platine est suffisant pour être lu directement par +l'ordinateur, à partir de ce moment là, vous pouvez commencer à mettre un +disque, et jouer avec `audacity` pour récupérer le son ! + +Par défaut, l'entrée audio de pulseaudio est la prise micro, il va falloir +modifier l'entrée dans l'interface de contrôle pour la faire passer sur +l'entrée line-in. + +L'égalisation RIAA +================== + +Ça y est, le son tourne ! Mettez donc un disque que vous connaissez, et +surprise ; mais où sont les basses ?? En fait, pour éviter au sillon de sauter +à cause de l'amplitude des basses, un traitement est fait au son avant de le +presser : les basses sont atténuées, et les aigües sont augmentées — c'est +l'`égalisation RIAA`_ + +.. _égalisation RIAA: https://fr.wikipedia.org/wiki/%C3%89galisation_RIAA + +Lors de la lecture nous allons avoir besoin d'effectuer la coure de traitement +inverse pour restaurer le son : + +.. image:: |filename|/images/platine/riaa.jpg + :alt: La courbe riaa + +Pulseaudio ne sait pas égaliser le son nativement, mais il est possible de +passer le son dans des filtres qui vont faire le boulot pour nous. En effet, il +existe une norme, ladspa_, qui permet de créer des plugins sous linux pouvant être +utilisés par n'importe quelle application. (Qui a dit que la gestion du son était +bordelique_ sous linux ? |:-)|) + +.. _ladspa: http://www.ladspa.org/ +.. _bordelique: http://blogs.adobe.com/penguinswf/2007/05/welcome_to_the_jungle.html + +.. |:-)| image:: |filename|/images/icons/face-smile.png + +Le plugin que nous allons utiliser est celui de l'égaliseur multibande, son +petit nom étant mbeq_1197. (Dans Debian, vous le trouverez dans le paquet +`swh-plugin`). + +D'après sa page de manuel, il prend des corrections à appliquer pour les +fréquences suivantes : 50Hz, 100Hz, 156Hz, 220Hz, 311Hz, 440Hz, 622Hz, 880Hz, +1250Hz, 1750Hz, 2500Hz, 3500Hz, 5KHz, 10KHz et 20KHz. Il ne sera donc pas +possible de reproduire la courbe RIAA parfaitement, mais en comparant avec la +courbe ci-dessus, vous pourrez constater qu'il s'agit d'une approximation, qui +couvre la totalité de fréquence audible, et qui permet de générer un son +suffisament fidèle à l'oreille. + +Il ne reste plus qu'à calculer les valeurs pour chaque fréquence, sortez vos +calculettes ! Bon, on va faire plus simple, il existe des `feuilles de +calculs`_ toutes prêtes qui n'attendent plus que nous rentrions nos fréquences. + +.. _feuilles de calculs: http://www.bonavolta.ch/hobby/en/audio/riaa.htm + +Pour finir +========== + +Après cette longue introduction, nous allons pouvoir créer notre paramétrage +facilement. Il suffit d'éditer le fichier de configuration de pulseaudio et +rajouter les lignes suivantes : + +.. code-block:: ini + + # Crée un filtre qui applique l'égalisation RIAA + load-module module-ladspa-sink sink_name=riaa_eq master=0 plugin=mbeq_1197 label=mbeq control=17.035,13.177,10.079,7.641,5.347,3.367,1.731,0.514,-0.655,-1.915,-3.611,-5.619,-8.121,-13.645,-19.531 + + # Prend l'entrée et la redirige vers notre filtre + load-module module-loopback source=1 sink=riaa_eq + +Le paramètre `source=1` peut être différent sur votre configuration. La valeur +peut être trouvée grace à la commande suivante : + +.. code-block:: console + + $ pactl list sources | grep -E "Source|Description" + Source #0 + Description : Monitor of Audio interne Stéréo analogique + Source #1 + Description : Audio interne Stéréo analogique + Source #2 + Description : Monitor of LADSPA Plugin Multiband EQ on Audio interne Stéréo analogique + +Voilà, à travers ces deux lignes, nous venons de connecter notre platine vinyle +sur les enceintes du PC et donner au son le dynamisme qui lui faut ! + +Pour ma part, je suis bluffé par le fait que des disques ayant presque quarante +ans d'âge puissent encore être écouté parfaitement sur un ordinateur conçu bien +longtemps après. Aujourd'hui la musique passe majoritairement par des lecteurs +mp3, bien souvent disposant d'une connexion propriétaire et `volontairement` +non standard. Pensez-vous qu'en 2060, il sera possible de brancher un IPod sur +un ordinateur neuf pour en lire la musique ? Qui prend les paris ? diff --git a/content/images/icons/face-smile.png b/content/images/icons/face-smile.png new file mode 100644 index 0000000..b8a3d90 Binary files /dev/null and b/content/images/icons/face-smile.png differ diff --git a/content/images/platine/jack2rca.jpg b/content/images/platine/jack2rca.jpg new file mode 100644 index 0000000..77bb7e3 Binary files /dev/null and b/content/images/platine/jack2rca.jpg differ diff --git a/content/images/platine/lecture_150.jpg b/content/images/platine/lecture_150.jpg new file mode 100644 index 0000000..7742767 Binary files /dev/null and b/content/images/platine/lecture_150.jpg differ diff --git a/content/images/platine/line-in.jpg b/content/images/platine/line-in.jpg new file mode 100644 index 0000000..b35c7ed Binary files /dev/null and b/content/images/platine/line-in.jpg differ diff --git a/content/images/platine/riaa.jpg b/content/images/platine/riaa.jpg new file mode 100644 index 0000000..5e3463e Binary files /dev/null and b/content/images/platine/riaa.jpg differ diff --git a/content/images/platine/tete_75.jpeg b/content/images/platine/tete_75.jpeg new file mode 100644 index 0000000..673c7c1 Binary files /dev/null and b/content/images/platine/tete_75.jpeg differ diff --git a/theme/static/css/main.css b/theme/static/css/main.css index 0015dfe..1bd60f6 100755 --- a/theme/static/css/main.css +++ b/theme/static/css/main.css @@ -165,6 +165,17 @@ strong { } +div.admonition, div.attention { + background-color: #EEE; + border-left: 3px solid #ae4e00; + border-top: 1px solid #ae4e00; +} + + p.admonition-title { + color: #ae4e00; + font-weight: bold; + } + div#page { background : url(../images/fond.jpg) repeat-y top center white; -- cgit v1.2.3