Archives de catégorie : Logiciels libres

Musique assistée par ordinateur mise à jour

J’ai fait une petite mise à jour de ma page sur l’installation des outils de musique assistée par ordinateur (MAO). En fait il y a pas mal de modifications, des changements de version pour des bibliothèques audio ou de calcul diverses (suil 0.10.0, serd 0.30.0, sord 0.16.2, sratom 0.6.2, lilv 0.24.4, rubber ban 1.8.2), des utilitaires audio divers (chromaprint 1.4.3, jack 1.9.12, qjackctl 0.5.3, fluidsynth 1.1.11, qsynth 0.5.2, audacity 2.2.2) puis des applications de MAO plus évoluées comme mixxxx 2.1.1, MusE 3.0.2, Ardour 5.12 et Rosegarden 18.06.

En revanche je déplore d’avoir perdu la possibilité de pouvoir m’appuyer sur jack avec audacity ce qui me permettait de faire des connexions un peu exotiques avec les entrées et les sorties audio. En fait maintenant audacity accepte uniquement jack s’il est configuré avec portaudio et non avec alsa. Or quand j’essaye de compiler la nouvelle version de jack il me dit que « portaudio requires windows.h ». Mais c’est quoi cette histoire, je suis sous linux pas sous windows ! Au final par de portaudio dans jack et donc pas de jack sous audacity.

Libérer son portable (acte 4) passer à LineageOS

Après l’acte 3 créer son propre cloud, l’acte 2 utiliser un catalogue d’applications alternatif et l’acte 1 passer root voici l’étape ultime qui consiste à se libérer totalement de l’univers Google et passer sur un OS totalement open source, également basé sur android, à savoir lineageOS. Le mobile cobaye sera le Motorola Moto E4 plus (modèle XT1771 double carte SIM).

Rien n’est fait pour faciliter les choses et on risque à chaque étape de bloquer définitivement le portable, sans compter qu’on perd la garantie de fait…

Première étape, débloquer le bootloader, le chargeur de boot est un bout de code qui permet de lancer le portable, une sortie de BIOS en quelque sorte. Ce code initialise le matériel et charge le noyau, la mémoire et les autres process, le tout est contenu dans une mémoire permanente qu’on appelle ROM (read only memory). Tout portable est doté d’une ROM officielle (ou stock ROM). Le but de l’opération est donc de remplacer la ROM officielle par une ROM personnalisée (custom ROM) contenant LineageOS. Revenons au bootloader, il est habituellement verrouillé, or il est nécessaire de devoir le déverrouiller pour pouvoir installer une custom ROM, dans le jargon on parle de flasher une nouvelle ROM. On installera tout d’abord des outils de développement Android permettant d’envoyer des commandes au mobile via un PC qu’on trouvera par ici. J’ai évidemment choisi la version pour linux qui propose un ensemble d’outils dans un répertoire platform-tools.

Continuer la lecture de Libérer son portable (acte 4) passer à LineageOS

Carte son externe

J’utilise un thinkpad X200 comme PC multimédia branché à un ampli-tuner Eltax AVR900 comme on peut le voir sur cette photo avec mes autres thinkpad.

La connexion se fait via des câbles avec connectique RCA avec un adaptateur RCA/jack et il faut bien l’avouer, ce n’est pas terrible, d’une part la carte son interne n’est pas du meilleur niveau et d’autre part la connectique laisse franchement à désirer et provoque des coupures et autres grésillements non désirés.

Du coup pour m’affranchir de tout ça j’ai acheté une carte son externe USB Ugreen

Sous linux, le branchement est quasi plug and play, voilà ce que systemd renvoie quand on la branche :

mars 10 19:08:33 tahiti.kervao.fr kernel: usb 3-1: new full-speed USB device number 3 using uhci_hcd
mars 10 19:08:33 tahiti.kervao.fr kernel: Shorewall:net-fw:DROP:IN=enp0s25 OUT= MAC=00:1f:16:1c:23:81:78:2b:cb:62:8f:ce:08:00 SRC=192.168.1.11 DST=192.168.1.30 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=55225 DF PROTO=TCP SPT=874 DPT=46074 WINDOW=29200 RES=0x00 SYN URGP=0
mars 10 19:08:33 tahiti.kervao.fr kernel: usb 3-1: New USB device found, idVendor=0d8c, idProduct=0024
mars 10 19:08:33 tahiti.kervao.fr kernel: usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
mars 10 19:08:33 tahiti.kervao.fr kernel: usb 3-1: Product: USB Advanced Audio Device
mars 10 19:08:33 tahiti.kervao.fr kernel: usb 3-1: Manufacturer: C-Media Electronics Inc.
mars 10 19:08:33 tahiti.kervao.fr kernel: input: C-Media Electronics Inc. USB Advanced Audio Device as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1:1.3/0003:0D8C:0024.0004/input/input16
mars 10 19:08:33 tahiti.kervao.fr kernel: hid-generic 0003:0D8C:0024.0004: input,hidraw2: USB HID v1.11 Device [C-Media Electronics Inc. USB Advanced Audio Device] on usb-0000:00:1a.0-1/input3
mars 10 19:08:33 tahiti.kervao.fr mtp-probe[3690]: checking bus 3, device 3: "/sys/devices/pci0000:00/0000:00:1a.0/usb3/3-1"
mars 10 19:08:33 tahiti.kervao.fr mtp-probe[3690]: bus: 3, device: 3 was not an MTP device

Ensuite dans la configuration de l’environnement graphique il faut choisir comme périphérique de sortie audio par défaut « USB Advanced Audio Device » et puis c’est tout. L’amélioration du son n’est pas évidente mais par contre je me suis totalement affranchi de la problématique de la connectique et de ses bruits parasites. C’est une bonne alternative si on a un port jack endommagé ou voire aucun port micro comme pour certains portables.

Mise à jour de kdenlive vers 17.12.2

J’avais exposé dans un post précédent mes problèmes avec la dernière version du logiciel de montage vidéo kdenlive. Je suis donc reparti à zéro en faisant une mise à jour de mon système et en reconstruisant toutes les dépendances de bibliothèques de kdenlive. Du fait du changement du noyau, j’ai recompilé le driver nvidia « à la main », et là patatras, erreur de compilation (extrait) :

   /tmp/selfgz9132/NVIDIA-Linux-x86_64-384.90/kernel/nvidia-drm/nvidia-drm-crtc.c:173:5: erreur : unknown field ‘enable’ specified in initializer
        .enable     = nvidia_crtc_enable,
        ^
   /tmp/selfgz9132/NVIDIA-Linux-x86_64-384.90/kernel/nvidia-drm/nvidia-drm-crtc.c:173:19: erreur : initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
        .enable     = nvidia_crtc_enable,
                      ^
   /tmp/selfgz9132/NVIDIA-Linux-x86_64-384.90/kernel/nvidia-drm/nvidia-drm-crtc.c:173:19: note : (near initialization for ‘nv_crtc_helper_funcs.mode_valid’)
   /tmp/selfgz9132/NVIDIA-Linux-x86_64-384.90/kernel/nvidia-drm/nvidia-drm-crtc.c: Dans la fonction ‘nvidia_plane_create’:
   /tmp/selfgz9132/NVIDIA-Linux-x86_64-384.90/kernel/nvidia-drm/nvidia-drm-crtc.c:223:9: erreur : incompatible type for argument 7 of ‘drm_universal_plane_init’

je n’ai eu d’autres choix pour relancer l’interface graphique d’installer le package nvidia de la Mageia 6 et tant qu’à faire avec les extensions CUDA pour que le GPU soit utilisé pour décharger un tant soit peu le CPU.  Il se trouve qu’en compilant le driver, je n’arrivais pas à avoir l’extension CUDA.

Sauf que je me suis souvenu pourquoi je n’utilisais pas le package de la Mageia, en fait melt qui est utilisé par kdenlive, plante avec un beau segmentation fault pour une raison que je n’avais pas réussi à élucider.  Étant condamné à trouver une solution pour pouvoir utiliser kdenlive, il se trouve qu’en supprimant les fichiers qui commencent par cairo sous /usr/local/lib/frei0r-1 ça fonctionne ! Après avoir utilisé kdenlive, je n’ai pas constaté d’effets de bord… C’est certainement pas génial comme solution, mais au moins ça me permet d’utiliser kdenlive et en plus d’avoir l’extension CUDA, en espérant que ça m’apporte un gain de performance, je n’ai pas le recul suffisant pour pouvoir le constater pour l’instant.

Tant qu’à faire j’ai mis à jour mon site FUNIX avec les modifications suivantes :

  • dans la page sur les outils de base pour la vidéo, passage à libogg 1.3.3, faad2 2.8.1, x264-snapshot-20180303-2245, x265 2.7, opencv 3.4.1, movit 1.6.1 et ffmpeg 3.4.2
  • dans la page conteneur vidéo, passage à mkvtoolnix 21.0.0
  • dans la page sur le montage vidéo, passage à mlt 6.6.0 et kdenlive 17.12.2
  • dans la page sur les lecteurs vidéo, passage à libdvdread 6.0.0, libdvdnav 6.0.0, libdvdcss 1.4.1, libdvbpsi 1.3.2, VLC 3.0.1, xine lib 1.2.9 et xine ui 0.99.10


 

Paris Moscou

Pendant qu’il y en a qui grelotte, on peut dire que j’ai bien profité du vent apporté par le Paris Moscou dont les media nous bassinent à longueur de journée en ce moment. A commencer par une sortie en J80 sous le soleil samedi en rade de Brest.

Avec le vent d’est c’était l’orientation idéale pour remonter en tirant des bords dans l’Elorn puis redescendre sous spi et travailler les empannages toujours sous spi comme on peut voir sur la trace GPS.

Le lendemain planche à voile sur la côte nord, spot des trois moutons, plus communément appelé Tréompan (qui est en réalité plus à l’ouest). Mon photographe perso a pris ces quelques clichés.

Une vue d’ensemble du spot
Le flotteur de slalom qui se prend pour un flotteur de vague
Le kiteux qui me regarde de haut

Par contre en fin de session j’ai douillé niveau douleur avec les onglées aux doigts !

J’avais prévu de faire une nouvelle vidéo d’autant plus que kdenlive est sorti dans sa version 17.2.2 avec la nouvelle version du framework multimedia mlt 6.6.0, la précédente version avait deux ans déjà. A vrai dire ce n’est pas une réussite, je crains d’avoir à tout réinstallé, kdenlive ne prend plus en compte  des bêtes images jpg et pire encore, la synchronisation des vidéos dans la timeline ne correspond plus au rendu. Par ailleurs j’ai cette erreur dans le shell:

kf5.kio.core: KIO Connection server not listening, could not connect

Au final, kdenlive plante, je suis obligé de taper kdenlive en tapant

dbus-launch kdenlive

je garde la recompilation complète sous le coude pour plus tard, il est possible que ça vienne également simplement d’un projet ouvert dans une version antérieure. En attendant voilà un gif animé d’un jibe.

J’avais expliqué dans ce post comment faire un gif avec GIMP, en fait il y a bien plus simple, il suffit de mettre dans un répertoire des images png dans l’ordre et de taper:

convert -loop 0 *.png Animation.gif

 

Aménager son intérieur avec Sweet Home 3D

Ayant déménagé récemment je me suis mis à la recherche d’un logiciel permettant une visualisation de mon aménagement intérieur pour voir si j’arrivais virtuellement à tous caser à peu près harmonieusement avant de faire mon choix. Il va de soi, qu’il devait marcher sous linux.

Je me suis vite tourné vers Sweet Home 3D qui tourne sous java et est donc multi plateformes (windows, linux, Mac, …).  Il dispose d’une bibliothèque incroyable d’objets de toutes sortes, il sera difficile de ne pas trouver vos ustensiles ou meubles pour les faire figurer dans votre logement virtuel.  L’utilisation est vraiment très simple et ergonomique, en guère plus d’une heure sans avoir jamais utilisé le logiciel,  j’avais terminé ma simulation numérique. En plus des vues en 2D et 3D classiques, on peut se déplacer virtuellement dans le logement pour voir ce que ça donne.

Si on veut aller encore plus loin, on peut optimiser l’emplacement des prises électriques, des interrupteurs et autres lumières, affiner le sens d’ouvertures des portes/fenêtres, colorer les murs avec de la tapisserie et bien d’autres choses. Retenez juste que Sweet Home 3D est juste un logiciel d’aménagement intérieur, ce n’est pas un logiciel de conception ou de modélisation 3D d’une maison avec calcul de structures.

Généalogie sous Linux

Je me suis attaqué humblement à la constitution de mon arbre généalogique, je dis humblement car c’est une tâche généralement de longue haleine. Fort heureusement internet a quand même révolutionné le domaine, sur des sites comme geneanet des particuliers qui ont fait ce travail de recherche mettent à disposition leurs arbres. Il suffit souvent de retrouver un homonyme et de se raccrocher aux arbres existants via un aïeul commun. Par contre des erreurs peuvent exister qui sont reproduites ensuite d’arbre en arbre, il conviendrait donc (en théorie) de vérifier chacune des ascendances en se basant sur les actes officiels. Pour cela, notre administration a, elle aussi, fait un exceptionnel effort de numérisation et de mise à disposition vers le public, le site France Archives est déjà un bon point d’entrée. Pour les originaires des anciennes colonies et notamment de la Réunion d’où je suis originaire, je vous conseille la visite des archives nationales d’outre mer où vous trouverez notamment la numérisation des états civils et des registres matricule militaire. Par contre c’est de la numérisation pure sans reconnaissance de caractères, il faudra donc se palucher virtuellement des pages et des pages de vieux grimoire avant de tomber sur un ancêtre. Pour vous faciliter la tâche une association de généalogie à la Réunion a entrepris justement le travail de numérisation avec la mise en place d’un moteur de recherche par nom, ça facilite grandement la tâche. Autre source d’information, le travail remarquable de Gilles Gérard, chercheur et historien de l’île de la Réunion, qui a constitué une base de donnée d’esclaves issue de recensements effectués peu avant leur affranchissement total en 1848. On y découvre qu’avant 1848, il existait deux catégories de population, les esclaves et les esclavagistes ! Même les paysans pauvres (les petits blancs dans le jargon local) disposaient d’au moins 1 ou 2 esclaves.

Bref, et que vient faire linux dans tout ça ! J’ai commencé à constituer mon arbre dans un tableur, mais je suis vite rendu compte que ça n’allait pas le faire. Dans ce domaine, il est quasi obligatoire d’utiliser un logiciel adapté à la généalogie compatible avec la norme GEDCOM. Cette norme s’est imposée comme le format d’échange entre logiciels et sites de généalogie. Pour ma part j’ai fait le choix d’ancestris qui présente les avantages suivants:

– c’est un logiciel libre sous licence GNU/GPL

– il tourne sous java et donc fonctionne indifféremment sous linux ou windows c’est important pour moi, car cela me permet de faire des échanges avec des membres de la famille qui utilisent windows

– il est parfaitement compatible avec la norme GEDCOM

– il existe des modules d’import/export vers geneanet et d’autres sites de généalogie

Cela donne cela

autre raffinement il existe des extensions dont l’une permet de créer une structure HTML pour intégrer son arbre sur un site perso.

Copier un DVD avec VLC

J’ai découvert un peu par hasard qu’il était possible de copier un DVD avec le lecteur vidéo VLC, en plus c’est assez rapide même si la qualité du rendu final n’est pas forcément à la hauteur d’un outil comme HandBrake par exemple. Autre inconvénient, il n’est pas possible de récupérer toutes les pistes audio et de sous titres, il faudra faire un choix. Il n’est pas possible également de couper facilement les bandes noires du film (cropping). Attention l’encodage est également très sensible à la qualité de la galette, si celle-ci a un peu souffert il arrête le process à la première erreur, sans moyen d’aller plus loin.

Pour cela, il suffit de lancer VLC, d’insérer son DVD, et d’aller dans le menu Média->Convertir/Enregistrer…
On choisit d’abord le support DVD dans l’onglet Disque, puis les pistes audio et de sous-titres (on laisse à -1 pour en choisir aucun), il est préférable de lancer une lecture classique préalablement pour identifier la bonne piste et éventuellement le sous titre.

Ensuite on choisit le format d’encodage, je choisis par défaut le couple H265/MP3 dans un conteneur MP4 qui donne généralement de très bons résultats. Il vaut mieux ne pas cocher la case Affiche le flux de sortie qui va ralentir le process. On a le choix également d’enregistrer le flux brut pour pouvoir faire un traitement particulier sur avidemux ensuite, en effet la configuration par défaut des codecs H264 et H265 n’est franchement pas terrible et on n’est pas vraiment guidé pour l’améliorer. A noter que dans ce cas la lecture se fait en temps réel et vous pouvez choisir la bande son directement à partir du menu Audio.

Pour améliorer sensiblement l’encodage pour le codec H265 on cliquera sur l’outil à droite du profil et on mettra l’option -crf 20, on clique ensuite sur Enregistrer

On saisit le nom du fichier et c’est parti en cliquant sur Démarrer.

L’état d’avancement est donné par la barre de progression.

Envoyer via bluetooth l’audio d’un mobile vers un PC sous linux/XFCE

Pour le fun j’ai configuré bluetooth de ma station Linux sous mageia 6/XFCE pour qu’elle rediffuse sur ses hauts parleurs le son provenant d’un mobile. Tout d’abord j’ai installé les packages suivants pulseaudio-module-bluetooth, blueman, bluez et obexftp. Ils sont en théorie installés par défaut sur une distribution linux récente, mais sait-on jamais. J’ai dû bidouiller manuellement la configuration du serveur audio pulseaudio pour qu’il reconnaisse en tant que sortie/entrée audio les périphériques audio bluetooth en rajoutant en fin du fichier /etc/pulse/system.pa les lignes suivantes:

load-module module-bluetooth-policy
load-module module-bluetooth-discover

et en rajoutant le fichier /etc/dbus-1/system.d/pulseaudio-bluetooth.conf contenant:

<busconfig>

  <policy user="pulse">
    <allow send_destination="org.bluez"/> 
  </policy>

</busconfig>

on relance pulseaudio avec systemd

systemctl stop pulseaudio
systemctl start pulseaudio

on vérifie que le bluetooth est bien activé sur la machine en tapant systemctl status bluetooth. Cela doit donner quelque chose comme cela :

● bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since dim. 2017-11-19 09:24:34 CET; 5h 40min ago
     Docs: man:bluetoothd(8)
 Main PID: 966 (bluetoothd)
   Status: "Running"
   CGroup: /system.slice/bluetooth.service
           └─966 /usr/libexec/bluetooth/bluetoothd

nov. 19 09:24:34 predator.kervao.fr systemd[1]: Starting Bluetooth service...
nov. 19 09:24:34 predator.kervao.fr bluetoothd[966]: Bluetooth daemon 5.45
nov. 19 09:24:34 predator.kervao.fr systemd[1]: Started Bluetooth service.
nov. 19 09:24:34 predator.kervao.fr bluetoothd[966]: Starting SDP server
nov. 19 09:24:34 predator.kervao.fr bluetoothd[966]: Bluetooth management interface 1.14 initialized

Continuer la lecture de Envoyer via bluetooth l’audio d’un mobile vers un PC sous linux/XFCE

Créer un routeur linux avec connexion wifi via 4G pour un réseau privé

Je vous fais rapidement le topo, je viens de déménager et à l’installation de la fibre, on s’est rendu que quelqu’un a eu la brillante idée sur la voie publique de couper à la base la gaine de desserte télécom et de couler le tout dans le béton… Au final, il faut tout casser et je crains de rester sans téléphone fixe, sans TV et surtout sans internet pendant un bout de temps.

Heureusement qu’il existe encore la 4G qui me permet de partager la connexion internet à mes postes sous wifi. Mais ce n’est pas très satisfaisant car j’aimerais que mes postes sous ethernet dont mon serveur puissent également accéder à internet. Pour mémoire (cf. ce post), mon réseau privé ressemble à ceci :

Sauf que je n’ai pas de box pour l’instant, l’idée est donc de faire le portable Rangiroa un routeur avec sa connexion wifi via le mobile 4G en le branchant directement en RJ45 au port internet du routeur Netgear N300 WNR3500l.

Continuer la lecture de Créer un routeur linux avec connexion wifi via 4G pour un réseau privé