Configurer un profil de conversion/compression des vidéos

1. Fonctionnement des profils

Le module Vidéo utilise des profils permettant la conversion de vidéos suivant un format et une résolution.
Le module dispose de plusieurs profils prédéfinis mais il est aussi possible d'en définir de nouveaux.

A partir de la version 4.2 du module Video le profil de conversion par défaut (mp4, HD720, stéréo) propose ce qui nous semble être un bon compromis entre compression et respect des qualités de visionnage et d'écoute.

Nous vous conseillons de conserver et utiliser ce profil ou, dans une démarche de plus grande sobriété, de choisir un profil encore plus compressé, par exemple en optant pour de la basse définition (SD). 

2. Créer un profil de conversion

 Vous pouvez créer un nouveau profil de conversion, nommé par exemple sden définissant les propriété suivantes :

  • les formats de fichier source acceptés :
    • jcmsplugin.videoplugin.conversion.profiles.sd.valid-mime-types: video/avi video/quicktime video/x-flv video/mp4
  • le format de fichier cible :
    • jcmsplugin.videoplugin.conversion.profiles.sd.targetformat: mp4
  • les arguments de la ligne de commande à passer à ffmpeg :
    • jcmsplugin.videoplugin.conversion.profiles.sd.cmd-options: -movflags +faststart -c:v libx264 -s hd480 -crf 22 -c:a aac -b:a 160k -vf "scale=iw*sar:ih,setsar=1"
      • Il est possible d'ajuster les arguments de la compression souhaitée. Dans l'exemple hd480 est une résolution de 720x480 pixels

3. Utiliser ce nouveau profil de conversion

Pour utiliser le profil sd créé, il faut soit :

  • le définir depuis l'interface d'administration du Module Vidéo ;
    ou
  • spécifier la propriété : jcmsplugin.videoplugin.conversion.profile: sd

4. Nota

  • Une application ne peut utiliser qu'un seul profil de conversion à la fois (i.e. toutes les conversions utilisent ce profil).
  • Le profil de conversion utilisé par l'application peut être modifié "à chaud" depuis l'interface d'administration du Module Vidéo.
  • Il est possible de créer des presets ou de s'inspirer de presets existants : https://github.com/yuvi/ffmpeg/tree/master/ffpresets

3 comments

cedric tremintin

Bonjour,

Lorsque seulement quelques vidéos posent problème après compression (qualité trop faible), quelles solutions avons-nous pour gérer ces exceptions ?

Dans mon cas, quelques vidéos sont tellement compressées qu'elles deviennent illisible (elles présentent des écrans filmés et on ne distingue plus bien les textes présentés).

cc Franck Coutureau

Franck Coutureau

1 vote :

Bonjour cedric tremintin,

Merci de ton retour. 👍

Je comprends que tu appliques la compression des vidéos sur ton site, donc un autre merci pour ce geste numérique responsable. 🌍💪

Pour gérer les exceptions je pense que la solution est de ne pas leur appliquer de conversion/compression. Même si la compression est configurée pour être exécutée automatiquement, il est possible, dans les options de la fenêtre d'upload, de la désactiver pour le dépôt en cours. La vidéo sera alors stockée sur JPlatform telle quelle. Cela peut être utile dans un cas comme celui que tu décris ou, inversement, pour une vidéo en extra haute résolution que tu voudrais stocker sur JPlatform sans altérer sa très bonne qualité (mais dans ce cas j'espère que le but serait seulement de la stocker, et pas de la diffuser, car ce serait contraire à l'esprit de ce savoir 😄).

Est-ce que je t'ai répondu ? Si tu imagines des pistes d'évolutions pour gérer le cas que tu évoques différement, et mieux, alors n'hésites pas à nous les remonter (via ton espaces de support par exemple, il existe maintenant une nature Ecoconception pour les tickets).

cedric tremintin

1 vote :

Hello Franck,

Merci beaucoup pour ton retour, c'est parfait !

Très bonne journée