Accueil > Documentation incomplète > Les plugins développés pour MédiaSPIP > SPIPMotion > Processus d’encodage > De l’upload à la vidéo finale [version standalone]

De l’upload à la vidéo finale [version standalone]

Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.

Upload et récupération d’informations de la vidéo source

Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".

Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées :

  • La récupération des informations techniques des flux audio et video du fichier ;
  • La génération d’une vignette :
    • extraction d’une vignette de la vidéo (si le document dispose d’un flux vidéo) à partir d’une frame du flux ;
    • extraction de l’image situées dans les métadonnées (id3 tags par exemple) si disponible ;

La récupération des métadonnées utilise les logiciels Mediainfo et FFprobe issu de FFmpeg.

L’extraction de la vignette vidéo à partir d’une des frames est réalisée par FFmpeg via un script servant de wrapper. [1]

Cette vidéo originale devient donc disponible pour l’encodage si besoin est.

Demande de transcodage du document "original"

Lorsque le document original est disponible, inséré en base de donnée, il est alors possible de créer à partir de lui, une ou plusieurs versions lisibles dans un navigateur ou accessibles par des logiciels tiers (du type VLC pour la vidéo ou la musique...).

Pour ce faire il existe deux solutions :

  • Soit le webmestre du site a réglé la configuration pour que tout document vidéo ou sonore correspondant à certains critères soient automatiquement mis dans une file d’attente d’encodage dès leur mise en ligne ;
  • Soit on laisse le droit à l’auteur de l’article et donc à la personne mettant en ligne ce document de demander ou non que son fichier soit encodé ;

Cas de l’activation de l’encodage automatique

Dans ce cas c’est l’administrateur qui définit des templates de transcodage en fonction des formats d’entrée et des formats de sortie souhaités.

Cas de la demande d’utilisateur

L’utilisateur en fonction de son statut ou des droits définis dans la configuration du site a la possibilité de définir le format d’export de son document selon :

  • Une liste définie de possibilités (templates) configurées au préalable par le webmestre (droits limités)
  • Un formulaire lui permettant de jouer sur chaque option d’encodage possible (droits complets)

Dans l’espace privé du site, l’utilisateur à accès à cette demande via un bouton associé à chaque document le menant vers le formulaire adéquat.

Pour chaque nouvelle version de document demandée, un fichier de configuration est créé pour être passé en paramètre de l’encodeur sur le système (cf la suite de cet article}.

La gestion de la file d’attente

Chaque document demandé à être transcodé que ce soit par un utilisateur ou automatiquement par le système est alors ajouté à une file d’attente d’encodage (une nouvelle table dans la base de donnée du site, listant l’ensemble des fichiers qui ont été ou qui sont dans la file).

Processus de transcodage

À garder en considération :

  • Il est important de conserver le document original pour garder la possibilité de réencodage dans le futur afin de conserver la meilleure qualité possible dans les encodages futurs.

Notes

[1Ces deux actions étaient réalisées auparavant par le module PHP ffmpeg-php, qui n’est plus maintenu, dans le cas d’un conteneur vidéo/audio ou la librairie PHP getID3 dans le cas d’un son.

  • Auteur :
  • Publié le :
  • Mis à jour : 24/10/13
  • Révisé par : 2 anonymes

Aucun commentaire


Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document