Comme vous l’avez certainement constaté, il y a eut plusieurs beta infructeuses pour une version 1.7. Clairement, on ne s’en sort pas !
Tous les problèmes sont liés au couple libav/ffmpeg.
Pour rappel:
- libav/ffmpeg est la librairie multi-plateforme qui permet l’encodage et le décodage des fichiers musicaux et vidéos.
- Il y a encore quelques années, il n’existait que ffmpeg, puis pour d’obscures raisons, la communauté ffmpeg a explosée et une partie de cette communauté a fondée le fork libav.
- Ces deux librairies ayant une histoire commune, elles fonctionnent de la même façon et pendant longtemps elles ont été quasiment interchangeable.
Jusqu’à récemment, dans le code source de ffDiaporama, on s’adaptait assez facilement aux différences entre ces deux librairies. Hors, plus ces deux librairies progressent et plus elles s’éloignent l’une de l’autre devenant aujourd’hui, franchement différentes. L’ensemble des problèmes constatés dans ffDiaporama 1.7, proviennent de ces différences.
Il a donc fallu prendre le problème différemment et revoir completement l’adaptation à ces différences.
Ce travail qui vient d’être effectué a généré de très nombreuses modifications dans le code source de ffDiaporama.
Ces modifications justifient l’abandon de la version 1.7 et le passage à une nouvelle version majeure : La version 2.0
Désormais, ffDiaporama reconnait correctement les 2 librairies dans les versions suivantes :
- ffmpeg 1.2.x composé de LIBAVUTIL 52,18,100, LIBAVCODEC 54,92,100, LIBAVFORMAT 54,63,104, LIBAVDEVICE 54,3,103, LIBAVFILTER 3,42,103, LIBSWSCALE 2,2,100 et LIBSWRESAMPLE 0,17,102
- Cette version est totalement supportée par ffDiaporama 2.0
- Cette version est utilisée par plusieurs distributions Linux, souvent anciennes
- Cette version représente aujourd’hui environ 5% des utilisateurs de ffDiaporama
- ffmpeg 2.0.x composé de LIBAVUTIL 52,38,100, LIBAVCODEC 55,18,102, LIBAVFORMAT 55,12,100, LIBAVDEVICE 55,3,100, LIBAVFILTER 3,79,101, LIBSWSCALE 2,3,100 et LIBSWRESAMPLE 0,17,102
- Cette version est totalement supportée par ffDiaporama 2.0
- Cette version est celle que nous fournissons dans les versions Windows et est également utilisée par la plupart des distributions Linux récentes (hors debian et dérivés)
- Cette version représente aujourd’hui environ 75% des utilisateurs de ffDiaporama
- libav 0.8.x composé de LIBAVUTIL 51.22.1, LIBAVCODEC 53.35.0, LIBAVFORMAT 53.21.1, LIBAVDEVICE 53.2.0, LIBAVFILTER 2.15.0 et LIBSWSCALE 2.1.0
- Cette version est totalement supportée par ffDiaporama 2.0
- Cette version est utilisée par plusieurs distributions Linux, souvent celles basées sur Debian (Ubuntu, Linux Mint, etc…)
- Cette version représente aujourd’hui environ 20% des utilisateurs de ffDiaporama
- libav 9.x composé de LIBAVUTIL 52.3.0, LIBAVCODEC 54.35.0, LIBAVFORMAT 54.20.3, LIBAVDEVICE 53.2.0, LIBAVFILTER 3.3.0, LIBSWSCALE 2.1.1 et LIBAVRESAMPLE 1.0.1
- Cette version est partiellement supportée par ffDiaporama 2.0 (les travaux sont en cours pour la prendre en charge complètement)
- Cette version n’est utilisée aujourd’hui que par quelques distributions Linux et le plus souvent sous forme d’une option (par exemple dans Gentoo)
- La plupart des distributions basées sur Debian ont annoncés que leurs prochaines versions utiliseront libav 9.x (Ubuntu 14.04, Linux Mint 16, etc…) on a donc encore un peu de temps pour finir de la prendre en charge
En plus de ces évolutions de la prise en charge des librairies libav/ffmpeg, une autre évolution importante fait sont apparition dans la version 2.0.
Cette évolution concerne l’ajout d’une base de données SQLite3 dans le profil de l’utilisateur pour y stocker toute sorte d’informations.
Concrêtement, cette base de données va permettre :
- de stocker beaucoup moins de chose en mémoire et par conséquent de permettre de gérer des projets beaucoup plus gros.
- Jusqu’à la version 1.6, il était envisageable de gérer des projet de 250 à 300 diapositives sur un système 32 bits et jusqu’à 500 ou 600 diapositives sur un système 64 bits
- Cette limite devrait disparaitre grace à cette base de données. L’objectif est de pouvoir gérer des projets d’au moins 10 000 diapositives aussi bien en 32 qu’en 64 bits.
- de permettre de nouvelles fonctionnalités nécessitant de gros volumes de stockage. Par exemple :
- Pouvoir coller directement des images du presse papier sans être obligé de les sauvegarder dans des fichiers
- Pouvoir afficher les courbes de son pour les musiques, les vidéos et les diapositives
- etc…
- d’accélérer l’interface lors
- de la navigation dans les répertoires, en stockant les analyses des fichiers multimédia dans la base de données pour ne pas avoir à les refaire à chaque fois qu’on ouvre le même répertoire
- de la réouverture des projets, ce qui est indispensable pour des projets de plusieurs milliers de diapositives
Actuellement les travaux sur cette base de données sont en cours et une partie de ces nouveautés seront intégrés dès la version 2.0