Archives de catégorie : Logiciels libres

Étalonnage vidéo

Je monte mes vidéos depuis déjà pas mal de temps et je n’avais jamais réellement procéder à de l’étalonnage vidéo, pourtant c’est réputé pour participer à la finition d’une vidéo et c’est souvent la dernière étape avant le rendu final.

L’étalonnage vidéo consiste à modifier, le contraste, la luminosité ou même les couleurs de la vidéo. Il a deux objectifs, tout d’abord un objectif technique qui consiste à corriger la vidéo, en effet tous les rushs de la vidéo n’ont pas été pris dans les mêmes conditions de temps et de luminosité et il est parfois nécessaire d’homogénéiser l’ensemble. Le deuxième objectif est de donner un rendu particulier à la vidéo, c’est la touche artistique de créativité, on peut prendre l’exemple des films de Caro et Jeunet comme Délicatessen avec l’effet sepia qui va renforcer le côté sombre, inquiétant et oppressant.

Kdenlive offre des outils puissants pour jouer sur l’étalonnage vidéo et pas forcément très simple d’utilisation. En basculant sur le mode Couleur les principaux outils d’analyse font leur apparition sur la gauche et la droite.

Sur la gauche:

  • l’étalage RVB: une image est constituée d’un mélange des couleurs primaires Rouge, Vert et Bleu, cet outil permet de visualiser la distribution de ses 3 composantes, on appelle ça la chrominance.
  • la forme d’onde: qui donne la luminosité de l’image ou luminance
  • le vecteurscope: qui permet d’afficher une roue chromatique pour apporter des corrections colorimétriques à l’image, une couleur saturée (intense) sera plus éloignée du centre au contraire d’une image terne qui sera plus proche du centre.

Sur la droite:

  • l’histogramme : ces courbes donnent l’histogramme de la luminance pour chaque composante de couleur de la vidéo. La luminance évolue de 0 à 255 sur l’axe des abscisses, l’ordonnée correspond aux nombres de pixels avec la luminance concernée sur l’image sélectionnée en cours. En gros à 0, l’image n’a aucune luminance, elle est donc noire et à 255, la couleur est très intense.

Le réglage de tout cela est très complexe, des sites comme celui-ci entrent davantage dans le détail des explications et j’avoue que pour l’instant j’ai survolé le sujet. Pour en savoir plus je vous renvoie vers les pages du manuel (en anglais) de kdenlive (Manuel sur l’histogramme, Manuel sur l’étalage RVB et la forme d’onde, Manuel sur le vecteurscope).

Pour faire simple on pourra se contenter d’appliquer certains effets de correction de couleur comme la balance des blancs ou appliquer un modèle de LUT (Look Up Table) qui est un ensemble de valeurs préconfigurées pour modifier le rendu de la vidéo. Pour cela on utilisera l’effet Apply LUT, 4 modèles sont disponibles par défaut.

En cliquant sur le bouton   on pourra télécharger d’autres modèles mis à disposition de la communauté ou sinon on peut en trouver sur internet, kdenlive prend en charge les LUT créés par After Effects (.3dl), Iriadas (.cube), DaVinci Resolve (.dat) et Pandora (.m3d) qu’on peut télécharger en choisissant Custom… dans la liste déroulante des modèles. Des sites comme celui-ci en propose en téléchargement, il faudra s’enregistrer mais cela vaut le coup.

Pilotage d’un onduleur sous linux

Après avoir installé mon mini serveur Lenovo M92p je n’avais pas encore installé le nécessaire pour pouvoir piloter mon onduleur APC Back-UPS XS 950U. Maintenant que je suis passé à la dernière version Mageia 9, il était grand temps de le faire.

J’avais déjà rédigé des articles à ce sujet avec un onduleur et des versions précédentes qu’on retrouvera ici et avec l’utilisation de NUT (Network UPS Tools) qui pourront encore éventuellement servir.

Considérant que j’avais un onduleur APC j’ai installé l’utilitaire APC UPS daemon prévu pour. On retrouvera dans cette page l’installation du serveur à partir des sources mais sur ma mageia 9 je me suis contenté de l’installer via urpmi. La suite de la configuration est assez simple, on active le daemon en tapant:

systemctl enable apcupsd

Puis on éditera le fichier de configuration /etc/apcupsd/apcupsd.conf qu’on retrouvera ci-dessous avec des commentaires pour certains paramètres, les autres étant par défaut.

#nom de l'onduleur
UPSNAME onduleur

#type de connexion
UPSCABLE usb
UPSTYPE usb
DEVICE

LOCKFILE /run/lock
SCRIPTDIR /etc/apcupsd
PWRFAILDIR /etc/apcupsd
NOLOGINDIR /etc

# on laisse 6s à apcupsd pour réagir
ONBATTERYDELAY 6

# si une coupure de courant survient, l'arrêt est déclenché quand le pourcentage restant est inférieur est égal à la valeur définie par BATTERYLEVEL
BATTERYLEVEL 5

# si une coupure de courant survient, l'arrêt est déclenché quand le temps restant est inférieur est égal à la valeur définie par MINUTES
MINUTES 3

TIMEOUT 0
ANNOY 300
ANNOYDELAY 60
NOLOGON disable
KILLDELAY 0

# pour pouvoir monitorer via un navigateur
NETSERVER on
NISIP 127.0.0.1
# port du serveur
NISPORT 3551

#fichier log
EVENTSFILE /var/log/apcupsd.events
#taille max en Ko
EVENTSFILEMAX 10

UPSCLASS standalone
UPSMODE disable

STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0
Continuer la lecture de Pilotage d’un onduleur sous linux

Installation de Mageia 9

Suite à la sortie de Mageia 9 j’ai passé un peu de temps ce week end à migrer trois de mes postes Lenovo, 2 postes clients Thinkpad x220 et x240 et surtout mon petit serveur personnel Thinkcenter M92p dont j’avais vanté les mérites sur linuxfr.org.

Habituellement je fais des mises à jour, il y a bien longtemps que je ne repars pas à zéro et réinstallant tout. Les mises à jour sont maintenant parfaitement maîtrisées et on gagne un temps fou car elles reprennent les fichiers de configuration existant. Généralement les modifications de configuration sont de l’ordre du cosmétique. Mais quelle ne fut pas ma surprise sur mon serveur, il avait purement et simplement supprimé ma configuration NFS et sendmail qu’il a fallu que je redescende. J’ai été bien content d’avoir mis en place une sauvegarde borg. J’ai retrouvé assez vite mes petits en montant la sauvegarde système de la veille et en copiant les fichiers manquants.

A part ça je constate encore que le ménage des anciens paquets rpm de la mageia 8 laisse encore à désirer, ll en reste par dizaine et dizaine qui ne sont pas supprimés du système. Le script bash suivant permet de les supprimer d’un seul coup.

#!/bin/bash
rpmfiles=$(rpm -qa | grep mga8);
for f in $rpmfiles
do
 urpme --auto $f
done

Globalement cette Mageia 9 apporte peu de nouveautés à part des évolutions de version, elle utilise encore les vieux scripts de la Mandrake écrits en perl qu’il serait sans doute temps de changer. Il y a quand même une nouveauté, la commande remove-old-kernels qui comme son nom l’indique permet de supprimer les anciens noyaux qui s’accumulaient jusqu’à présent si on ne faisait pas manuellement le ménage de temps à autre.

 Bienvenue à 'remove-old-kernels' Interactive

 System: Mageia release 9 (Official) for x86_64 | Noyaux dans /boot/:4 | AUTO:1 | GARDER:3  
 ==> kernel-desktop
 1   : Garder : U   : kernel-desktop-6.4.9-4.mga9.x86_64            jeu. 31 août 2023 16:47:49 
 2   : Garder :     : kernel-desktop-6.4.9-2.mga9.x86_64            lun. 14 août 2023 20:03:37 
 3   : Garder :     : kernel-desktop-6.4.8-2.mga9.x86_64            ven. 04 août 2023 13:00:50 
 4   : Enlever:     : kernel-desktop-6.4.7-3.mga9.x86_64            mer. 02 août 2023 15:42:47 
                U = En usage maintenant
Enlever 1 noyau: ? y/N/i (y=oui N=non i=confirmer pour chaque) y 

désinstallation de kernel-desktop-6.4.7-3.mga9.x86_64

J’ai commencé également à upgrader les différents services de mon serveur, Pour mon serveur httpd, je suis ainsi passé à Apache 2.4.57, PHP 8.2.10 et MariaDB 11.1.2. Prochaine mise à jour de FUNIX à venir pour prendre en compte cette montée en version.

Kdenlive 23.08.1

J’ai installé la version 23.08.1 du logiciel de montage vidéo Kdenlive qui n’introduit pas d’évolutions majeures si ce n’est quelques évolutions qui concerne les outils de la timeline. Elles sont présentées ici. Ça ne devrait pas changer beaucoup ma manière d’utiliser kdenlive. La dernière évolution majeure reste l’apparition des séquences qui permet pour un projet d’avoir plusieurs sous projets avec des timeline spécifiques.

J’ai pu constater également qu’il ne prenait plus compte du fichier kdenliverc existant, il faut refaire toute la configuration personnalisée, et ça se passe plutôt mal pour recharger d’anciens projets. Il vaut donc mieux ne pas faire la mise à jour alors qu’on a un projet en chantier.

En attendant un projet plus complexe ma première vidéo montée est sur mon compte instagram.

Sortie de Kdenlive 23.04

Kdenlive 23.04 vient de sortir, ce n’est pas une simple version, elle intègre une évolution majeure attendue depuis fort longtemps par les aficionados de kdenlive dont je fais partie. Il s’agit des timelines multiples (ou nested timelines en anglais), c’est particulièrement utile pour les projets complexes et kdenlive rattrape enfin flowblade sur ce point là. Jusqu’à présent il fallait faire avec une timeline surchargée qui couvrait l’ensemble du projet avec les difficultés et contraintes que ça impose pour modifier le fil du projet, rajout, suppression ou réaménagement.
Maintenant chaque séquence du projet fait l’objet d’une timeline spécifique, comme on peut le voir sur la copie d’écran ci-dessous.

Dans cet exemple j’ai un projet avec 3 séquences et une séquence finale qui comprend le projet complet. Chaque séquence a son onglet de timeline spécifique avec le nombre de pistes, le zoom et le paramétrage qui lui sont propres. Quand on a fini de travailler sur chacune des séquences, on passe à la séquence finale qui va regrouper toutes les autres séquences, on les glisse à partir des Sources du projet sur la timeline finale dans l’ordre souhaité.

Cette version intègre bien d’autres évolutions qui sont présentées par ici, je n’ai pas encore tout testé, mais j’ai retenu l’intégration du système de reconnaissance vocale whisper pour générer des sous titres et qui permet une traduction automatique en anglais.

Pour aller plus loin un tutoriel sur l’utilisation de kdenlive patiemment entretenu par votre serviteur.

Passage à Digikam 7.10.0

Je suis passé à la dernière version 7.10.0 du gestionnaire de photos évolué digikam que j’avais déjà évoqué dans un précédent post. Mais auparavant j’ai upgradé ma Mageia 9 cauldron à la version de ce jour. Ça s’est fait sans trop de difficultés mis à part que mon répertoire /usr de 26Go devient trop petit, j’ai dû déplacer /usr/share sur une autre partition et créer un lien. Pour la mise à jour du noyau et du driver nvidia qui a toujours été une difficulté, ça s’est passé sans encombre, au reboot en mode normal, il a reconstruit le module et l’interface graphique s’est lancée dans la foulée sans erreur particulière.

Mais revenons à digikam, j’ai buté sur la compilation pour une sombre histoire de référence indéfinie avec cette erreur

/usr/lib64/libQt5WebEngineCore.so.5 : référence indéfinie vers « av_stream_get_first_dts@LIBAVFORMAT_59 »

Je me doutais qu’il pouvait y avoir un mélange entre mon FFMPEG perso compilé sous /usr/local/lib et celui par défaut de ma Mageia sous /usr/lib64, mais que ce soit l’un ou l’autre j’avais toujours la même erreur. Je me suis rabattu sur la version flatpak mais il manquait la clé GPG. Finalement j’ai installé la version appimage directement disponible sur le site de digikam.

Entre la dernière version 7.8.0 qui tournait sur ma mageia 8, il n’y a pas d’évolutions majeures, ça reste une version de maintenance en attendant la version 8. Voici une copie d’écran avec le tri par la position GPS contenue dans les informations exif.

J’en ai profité pour virer le cairo dock de mon environnement de bureau XFCE, j’ai opté pour deux tableaux de bord fixes à droite et à gauche, ça me permet de couvrir davantage l’écran de bas en haut et j’y gagne en confort de visualisation. On notera également le thème sombre de digikam plutôt sympa.

Amélioration du filtrage des spams avec SpamAssassin

J’ai conduit récemment quelques améliorations à ma configuration de SpamAssassin pour filtrer les spams. En effet je continuais à avoir des mails écrits en arabe ou chinois qui continuaient à passer au travers, j’ai donc mis en place un filtrage basé sur la langue. Sous /etc/mail/spamassassin, j’ai édité le fichier v343.pref et j’ai décommenté les lignes suivantes:

ok_languages en fr ca de es it pt
score UNWANTED_LANGUAGE_BODY 10
add_header all Languages _LANGUAGES_

La première ligne indique les langues que l’on accepte, les mails écrits dans une toute autre langue se verront attribuer une note de 10 et considérer comme du spam.

Et maintenant en cas de réception de mail en langue arabe ou chinoise, vous allez voir apparaître dans le rapport spamassassin en plus cette mention

 10 UNWANTED_LANGUAGE_BODY BODY: Message dans une langue non désirée
                             (config locale)

et dans le corps du mail on retrouve UNWANTED_LANGUAGE_BODY

X-Spam-Flag: YES
X-Spam-Status: Yes, score=11.7 required=5.0 tests=BAYES_40,DKIM_SIGNED,
        DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,
        FREEMAIL_FROM,HTML_MESSAGE,NO_RDNS_DOTCOM_HELO,RCVD_IN_DNSWL_NONE,
        RDNS_NONE,SPF_HELO_NONE,UNWANTED_LANGUAGE_BODY shortcircuit=no
        autolearn=no autolearn_force=no version=3.4.6
X-Spam-Level: ***********

Maintenant autre problème, je constatais régulièrement que certains mails ne soit pas analysé par spamassassin alors que c’était des spams sans aucune ambiguïté. Dans les logs j’avais le message suivant

févr. 12 02:36:41 ultra.kervao.fr spamc[3659916]: skipped message, greater than max message size (512000 bytes)

En fait c’est une petite faille du système, par défaut spamc ne va pas analyser le mail dès lors que la taille du fichier dépasse 512ko, les spammeurs profitent de cela et attachent une image de quelques Mo pour passer au travers. Il suffit donc d’augmenter la taille en créant le fichier /etc/mail/spamassassin/spamc.conf qui contiendra

-s 5000000

On autorise donc le traitement pour des mails jusqu’à 5Mo, maintenant avec la puissance des machines, ce n’est plus vraiment un problème.

Pour plus d’information sur la configuration de SpamAssassin, voir la page sur mon site Funix.

Tutoriel kdenlive flouter un visage avec l’effet suivi de déplacements

Je viens de mettre en ligne un tutoriel vidéo pour flouter un visage avec l’effet suivi de déplacements ou motion tracking en anglais. L’effet suivi de déplacements se base sur la détection de mouvement d’OpenCV, plusieurs algorithmes de suivi sont disponibles, ils sont référencés et documents par ici. J’ai utilisé dans ce tutoriel DaSiam qui utilise les techniques de l’intelligence artificielle par apprentissage, il faudra avoir préalablement récupérer des modèles d’apprentissage (voir par ).

Sinon j’ai utilisé la fonctionnalité d’enregistrement d’écran (screencast) pour faire cette vidéo, j’ai eu du mal avec l’audio qui était un peu pourri vu mon installation micro basique. Je ne m’en sortais pas avec les filtres audio de kdenlive, j’ai basculé sur audacity pour réintégrer la bande son sur kdenlive ensuite.

Mise à jour et migration de digikam

J’achève la migration de mon serveur Dell PowerEdge vers mon mini serveur Lenovo M92P avec la migration de Digikam. Pour mémoire j’avais fait un post pour présenter ce logiciel de gestion évoluée de photos.

digikam avec les photos géolocalisés

Jusqu’à présent mon serveur Dell stockait à la fois les photos mais également les bases de données sur lesquelles se repose digikam pour stocker toutes les informations, pour cela je me reposais sur MariaDB. J’ai choisi de déplacer mes photos sur un PC de mon réseau et les bases sur mon nouveau mini serveur, de fait digikam ne peut fonctionner que sur ce PC et je n’ai pas prévu pour l’instant de fonctionnement en réseau si tant est que ça soit possible.

Pour migrer mes bases, sur mon serveur Dell sous phpMyAdmin j’ai exporté mes bases digikam à savoir digikam, digikam_vignettes (qui fait presque 2Go), digikam_similarites et digikam_visages.
Sur le nouveau serveur, j’ai importé les bases en ligne de commande:

 mysql -u olivier -p digikam < 20221030-digikam.sql
 mysql -u olivier -p digikam_vignettes < 20221030-digikam_vignettes.sql
 mysql -u olivier -p digikam_similarites < 20221030-digikam_similarites.sql
 mysql -u olivier -p digikam_visages < 20221030-digikam_visages.sql

j’ai modifié sous phpMyAdmin les champs volumeid, specificPath de la table AlbumRoots et de la base digikam pour lui indiquer le nouveau chemin des photos. Le serveur Dell éteint, au premier lancement de digikam, il mouline en l’attendant indéfiniment, il suffit d’annuler et la fenêtre de connexion au serveur s’affiche, il suffit de rentrer simplement les paramètres de connexion du nouveau serveur. Et c’est tout.

A vrai dire je me suis compliqué la vie pour rien car digikam intègre une option de migration de base de données que j’ai découvert un peu tard ! Elle est accessible via le menu Configuration->Migration d’une base de donnée.

Migration de base de données sous digikam

Sinon je suis passé à la dernière version 7.8.0, comme d’habitude je l’ai installé à partir des sources. Dans le répertoire digikam-7.8.0, on édite d’abord le fichier bootstrap.linux et on modifie ainsi les lignes suivantes si on veut espérer avoir une version en français.

      -DDIGIKAMSC_CHECKOUT_PO=ON \
      -DDIGIKAMSC_CHECKOUT_DOC=ON \
      -DDIGIKAMSC_COMPILE_PO=ON \

Ensuite on tape

vi bootstrap.linux

voilà le résultat

-- Top level compilation configuration for digikam
-- 
-- digikam will be compiled....................... YES
-- Extract application translations files......... YES
-- Extract documentation translations files....... YES
-- Translations will be compiled.................. YES
-- Handbooks will be compiled..................... NO
-- Tests code will be compiled.................... YES
-- ----------------------------------------------------------------------------------
-- Check dependencies for digikam version 7.8.0
-- 
-- Could NOT find KF5Sane: found neither KF5SaneConfig.cmake nor kf5sane-config.cmake
-- KF5::KIOWidgets include dirs: /usr/include/KF5/KIOWidgets;/usr/include/KF5
-- Libjpeg version: 84
-- Using libjpeg sub-directory: libjpeg/84
-- Found lcms version 2.13, /usr/lib64/liblcms2.so
-- HEIF_FOUND        = TRUE
-- HEIF_INCLUDE_DIRS = /usr/include
-- HEIF_LIBRARIES    = /usr/lib64/libheif.so
-- HEIF_DEFINITIONS  =
-- HEIF_VERSION      = 1.12.0
-- X265_FOUND        = TRUE
-- X265_INCLUDE_DIRS = /usr/local/include
-- X265_LIBRARIES    = /usr/local/lib/libx265.so
-- X265_DEFINITIONS  =
-- FFMPEG_FOUND        = TRUE
-- FFMPEG_INCLUDE_DIRS = /usr/local/include
-- FFMPEG_LIBRARIES    = /usr/local/lib/libavcodec.so;/usr/local/lib/libavdevice.so;/usr/local/lib/libavfilter.so;/usr/local/lib/libavformat.so;/usr/local/lib/li
bavutil.so;/usr/local/lib/libswscale.so
-- FFMPEG_DEFINITIONS  =
-- QtAV search path: /lib64/cmake
-- Could NOT find QtAV (missing: QTAV_LIBRARIES QTAV_INCLUDE_DIRS)
-- QtAV_FOUND       = FALSE
-- QtAV_INCLUDE_DIR = QTAV_CORE_INCLUDE_DIR-NOTFOUND QTAV_WIDGETS_INCLUDE_DIR-NOTFOUND
-- QtAV_LIBRARIES   = QTAV_CORE_LIBRARY-NOTFOUND;QTAV_WIDGETS_LIBRARY-NOTFOUND
-- QtAV_VERSION     =
-- ENABLE_MEDIAPLAYER option is enabled but QtAV cannot be found. Media player support is disabled.
-- OpenCV Root directory is: /usr/local/lib64/cmake/opencv4
-- OpenCV: Found version 4.6.0 (required: 3.3.0)
-- OpenCV headers: /usr/local/include/opencv4
-- OpenCV libs   : opencv_core;opencv_objdetect;opencv_imgproc;opencv_imgcodecs;opencv_dnn;opencv_flann
-- Marble_FOUND       = TRUE
-- MARBLE_INCLUDE_DIR = /usr/include
-- MARBLE_LIBRARIES   = /usr/lib64/libmarblewidget-qt5.so
-- ASTRO_LIBRARIES    = /usr/lib64/libastro.so
-- FIND IMAGEMAGICK API Magick++
-- -DMAGICKCORE_HDRI_ENABLE=1
-- -DMAGICKCORE_QUANTUM_DEPTH=16
-- FIND IMAGEMAGICK API MagickCore
-- -DMAGICKCORE_HDRI_ENABLE=1
-- -DMAGICKCORE_QUANTUM_DEPTH=16
-- FIND IMAGEMAGICK API MagickWand
-- -DMAGICKCORE_HDRI_ENABLE=1
-- -DMAGICKCORE_QUANTUM_DEPTH=16
-- ImageMagick_FOUND:                      TRUE
-- ImageMagick_VERSION_STRING:             7.1.0-51
-- ImageMagick_EXECUTABLE_DIR:             /bin
-- ImageMagick_INCLUDE_DIRS:               /usr/include/ImageMagick-7
-- ImageMagick_LIBRARIES:                  /usr/lib64/libMagick++.so;/usr/lib64/libMagickCore.so;/usr/lib64/libMagickWand.so
-- ImageMagick_DEFINITIONS:                -DMAGICKCORE_HDRI_ENABLE=1;-DMAGICKCORE_QUANTUM_DEPTH=16
-- ImageMagick_Magick++_INCLUDE_DIRS:    /usr/include/ImageMagick-7
-- ImageMagick_Magick++_LIBRARY:         /usr/lib64/libMagick++.so
-- ImageMagick_Magick++_DEFINITIONS:     -DMAGICKCORE_HDRI_ENABLE=1;-DMAGICKCORE_QUANTUM_DEPTH=16
-- ImageMagick_MagickCore_INCLUDE_DIRS:    /usr/include/ImageMagick-7
-- ImageMagick_MagickCore_LIBRARY:         /usr/lib64/libMagickCore.so
-- ImageMagick_MagickCore_DEFINITIONS:     -DMAGICKCORE_HDRI_ENABLE=1;-DMAGICKCORE_QUANTUM_DEPTH=16
-- ImageMagick_MagickWand_INCLUDE_DIRS:    /usr/include/ImageMagick-7
-- ImageMagick_MagickWand_LIBRARY:         /usr/lib64/libMagickWand.so
-- ImageMagick_MagickWand_DEFINITIONS:     -DMAGICKCORE_HDRI_ENABLE=1;-DMAGICKCORE_QUANTUM_DEPTH=16
-- OpenGL found;               TRUE
-- OpenGL GLU extension found; YES
-- OpenGL Qt5 found;           1
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Looking for ccache...
-- ccache program found: CCACHE_FOUND-NOTFOUND...
-- libgphoto2 found    : TRUE
-- libgphoto2 version  : 2.5.29
-- libgphoto2 includes : /usr/include/gphoto2
-- libgphoto2 libraries: /usr/lib64/libgphoto2.so;/usr/lib64/libgphoto2_port.so;/usr/lib64/libusb-1.0.so
-- libgphoto2 API version >= 2.5
-- liblensfun: Found version 0.3.95.0 (required: 0.2.6.0)
-- 
-- --------------------------------------------------
-- digiKam RawEngine dependencies checks:
-- 
-- Looking for OpenMP
-- OpenMP found with CXX flags: -fopenmp
-- RawEngine will be compiled with OpenMP support
-- RawEngine will be compiled with RedCine codec
-- Looking for LibJpeg
-- RawEngine will be compiled with DNG lossy codec
-- Looking for PThreads
-- --------------------------------------------------
-- 
-- 
-- ----------------------------------------------------------------------------------
--  digiKam 7.8.0 dependencies results   <https://www.digikam.org>
-- 
--  MySQL Database Support will be compiled.. YES (optional)
--  MySQL Internal Support will be compiled.. YES (optional)
--  DBUS Support will be compiled............ YES (optional)
--  App. Style Support will be compiled...... YES (optional)
--  QWebEngine Support will be compiled...... YES (optional)
--  libboostgraph found...................... YES
--  libexiv2 found........................... YES
--  libexpat found........................... YES
--  libjpeg found............................ YES
--  libkde found............................. YES
--  liblcms found............................ YES
--  libopencv found.......................... YES
--  libpng found............................. YES
--  libpthread found......................... YES
--  libqt found.............................. YES
--  libtiff found............................ YES
--  bison found.............................. YES (optional)
--  doxygen found............................ NO  (optional)
--  digiKam will be compiled without API documentation building support.
--  Please install the doxygen (version >= 1.8.0) development package.
-- 
--  ccache found............................. NO  (optional)
--  digiKam will be compiled without CCACHE build support.
--  Please install the ccache (version >= 3.0.0) development package.
-- 
--  flex found............................... YES (optional)
--  libakonadicontact found.................. NO  (optional)
--  digiKam will be compiled without KDE desktop address book support.
--  Please install the libakonadicontact (version >= 4.89.0) development package.
-- 
--  libmagick++ found........................ YES (optional)
--  libeigen3 found.......................... YES (optional)
--  libgphoto2 found......................... YES (optional)
--  libjasper found.......................... YES (optional)
--  libkcalendarcore found................... YES (optional)
--  libkfilemetadata found................... NO  (optional)
--  digiKam will be compiled without KDE desktop file metadata support.
--  Please install the libkfilemetadata (version >= 5.5.0) development package.
-- 
--  libkiconthemes found..................... YES (optional)
--  libkio found............................. YES (optional)
--  libknotifications found.................. YES (optional)
--  libknotifyconfig found................... YES (optional)
--  libksane found........................... NO  (optional)
--  digiKam will be compiled without flat scanners support.
--  Please install the libksane (version >= 5.5.0) development package.
-- 
--  liblensfun found......................... YES (optional)
--  liblqr-1 found........................... YES (optional)
--  libmarble found.......................... YES (optional)
--  libqtav found............................ NO  (optional)
--  digiKam will be compiled without Media Player support.
--  Please install the libqtav (version >= 1.12.0) development package.
-- 
--  libthreadweaver found.................... YES (optional)
--  libxml2 found............................ YES (optional)
--  libxslt found............................ YES (optional)
--  libheif found............................ YES (optional)
--  libx265 found............................ YES (optional)
--  OpenGL found............................. YES (optional)
--  libqtxmlpatterns found................... YES (optional)
--  digiKam can be compiled.................. YES
-- ----------------------------------------------------------------------------------
-- 
-- Using ccache to speed-up compilations..... NO
-- Remove GCC compiler option -pedantic from /usr/local/linux/photos/digikam-7.8.0/core
-- Remove GCC compiler option -Wsuggest-override from /usr/local/linux/photos/digikam-7.8.0/core
-- Remove GCC compiler option -Wcast-align from /usr/local/linux/photos/digikam-7.8.0/core
-- Remove GCC compiler option -Wzero-as-null-pointer-constant from /usr/local/linux/photos/digikam-7.8.0/core
-- Disable GCC compiler option -Wno-deprecated-copy from /usr/local/linux/photos/digikam-7.8.0/core
-- Disable GCC compiler option -Wno-deprecated from /usr/local/linux/photos/digikam-7.8.0/core/libs/metadataengine
-- Remove GCC compiler option -Wcast-align from /usr/local/linux/photos/digikam-7.8.0/core/libs/pgfutils
-- Remove GCC compiler option -Wzero-as-null-pointer-constant from /usr/local/linux/photos/digikam-7.8.0/core/libs/pgfutils
-- Remove GCC compiler option -pedantic from /usr/local/linux/photos/digikam-7.8.0/core/libs/dplugins/webservices
-- Remove GCC compiler option -Wundef from /usr/local/linux/photos/digikam-7.8.0/core/libs/rawengine
-- Remove GCC compiler option -Werror=return-type from /usr/local/linux/photos/digikam-7.8.0/core/libs/rawengine
-- WallPaper plugin will be compiled......... YES
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/linux/photos/digikam-7.8.0
Now run make in /usr/local/linux/photos/digikam-7.8.0/build.

On peut déplorer que digikam intègre QtAV qui permet de visualiser les vidéos qui n’est plus maintenu, j’ai bien tenté de patcher le code, mais c’est très lourdingue et j’ai laissé tomber. On peut découvrir par ici que les développeurs ont choisi d’intégrer leur propre code à partir des versions 8.X, en attendant il faudra s’en passer ou rester aux versions 4.X de FFMPEG.

On termine ensuite par un classique make puis en tant que root make install

Cette version m’a permis de découvrir le format HEIF qui est le nouveau standard à la mode en passe de supplanter le format jpeg, il a été développé en parallèle du format HEVC pour la vidéo par le même groupe de travail ISO Moving Picture Experts Group (MPEG). Des constructeurs de renom ont maintenant choisi de l’adopter comme format d’enregistrement par défaut comme Apple, Canon ou Sony. Comme pour le HEVC le rapport taille/qualité est bien meilleur, vous trouverez par ici un exposé plus précis. Petit bémol il dépend de plusieurs brevets et n’est pas vraiment libre, ça n’empêche pas digikam de le prendre en compte, ne possédant pas d’appareil générant des HEIF je ne saurais dire quelles sont les limitations.

Mise à jour kdenlive vers la version 22.08.2

J’ai mis à jour kdenlive en installant la version 22.08.2, ça ne s’est pas fait simplement. En effet KF5 sur ma mageia8 était trop ancien et il était trop compliqué de faire cohabiter une version plus récente, j’ai donc dû passer à la Mageia 9 Cauldron. Je n’aime pas trop travailler avec une version instable mais je n’avais guère le choix si je voulais bénéficier des dernières fonctionnalités de kdenlive.

Un mot d’abord sur la mise à jour vers la Mageia 9 que j’ai fait en ligne de commande comme indiqué ici. Je n’ai pas rencontré de grandes difficultés si ce n’est que je n’ai pas réussi à compiler le driver propriétaire de ma nvidia suite à une incompatibilité avec les noyaux 6.0. Je n’ai guère eu plus de succès en essayant de patcher le driver. J’ai donc tenté le paquet nvidia propriétaire de la Mageia9 qui marche très bien, mais après chaque démarrage il forçait l’installation de ce fichu driver nouveau malgré son blacklistage dans le fichier/etc/modprobe.d/nvidia-installer-disable-nouveau.conf. C’est ce fichu harddrake qui écrasait à chaque démarrage mon fichier /etc/X11/xorg.conf et j’ai dû le désactiver.

Mais revenons à kdenlive, sans plagier l’annonce de cette nouvelle version voilà ce que j’en retiens. kdenlive intègre maintenant l’outil d’animation 2D glaxnimate, j’aurais préféré que ça soit synfig studio, glaxnimate a l’air bien plus basique et sa documentation sur internet est très pauvre.

Animation glaxnimate dans kdenlive

A vrai dire j’ai un peu galéré pour l’installer car il faut que mlt soit compilé avec l’option qui va bien et il n’apparait pas directement dans le menu de kdenlive, il faut rajouter manuellement l’icône dans la barre d’outils principal.

En plus de cela, même si pour l’instant je ne m’en sers pas on peut également maintenant éditer les styles des sous titres (fenêtre à gauche).

Édition du style de sous titre dans kdenlive

kdenlive 22.08 arrive également avec un tas d’effets plus ou moins utiles et surtout plus ou moins mal documentés comme malheureusement beaucoup d’effets. J’en ai testé quelques uns et s’il faut en retenir un c’est celui sur l’exposition qui me parait très utile comme on peut le voir ci-dessous avec et sans l’effet.

Effet exposition dans kdenlive

J’ai donc mis à jour mon tutorial kdenlive en prenant en compte ces nouveautés ainsi que la page sur l’installation de kdenlive. Tant qu’à faire suite au passage à la Mageia 9 Cauldron j’ai mis à jour quelques pages de mon site Funix, à savoir:

pages divers
– page trucs et astuces, rajout d’un astuce (envoyer du son via SSH)
– page ma configuration, prise en compte  de ma nouvelle architecture avec l’abandon de mon serveur Dell Poweredge T310

pages réseau et système
– page outils de sauvegarde du système et des données, prise en compte de ma nouvelle architecture de sauvegarde

page multimédia
– page base vidéo, passage à flac 1.4.1, rubberband 3.1.1, gpac 2.0, OpenCV 4.6.0 et ffmpeg 5.1.2
– page lecteur vidéo, passage à libdvdread 6.1.3, vlc version développement et MPlayer 1.5, la modification de l’interface de vlc est assez spectaculaire et plutôt déroutante

Vlc version développement


– page mediacenter, passage à kodi Matrix 19.4
– page outils audio divers, passage à audacious 4.2, lollypop 1.4.35, OSD lyrics 0.5.12, Clementine rc1-864-g0fab61278 et MusicBrainz Picard 2.8.3
– page transcodage, passage à avidemux 2.8.1 et HandBrake 1.5.1

pages montage vidéo,
– page montage vidéo, passage  à mlt 7.8., kdenlive 22.08.2 et cinelerra 8, cinelerra GG 5.1.20220928, synfig studio 1.4.3 et blender 3.3.1
– page tutorial montage vidéo avec kdenlive, rajout de fonctionnalités avec le passage à la version 22.08