GStreamer 1.x mûrit et Pitivi 1.0 bêta déboule

Posté par  (site web personnel) . Édité par Davy Defaud, Benoît Sibaud, BAud et claudex. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
42
22
mar.
2014
Audiovisuel

Impossible de faire l’impasse sur l’actualité de la bibliothèque de manipulation de sons et d’images GStreamer suite au hackfest qui vient de se dérouler.

L’actualité de GStreamer, c’est aussi celle des applications qui s’appuient dessus :

  • le lecteur multimédia Totem qui pourra lire les vidéos en cours de téléchargement par torrent ;
  • le transcodeur vidéo Transmageddon qui pointe son nez refait dans une toute nouvelle version plus simple d’utilisation et dotée de nouvelles fonctionnalités ;
  • le logiciel de montage vidéo Pitivi qui continue son chemin vers la tant attendue version 1.0 et qui a pour cela engagé une campagne de financement…

Sommaire

GStreamer 1.x mûrit

GStreamer est une bibliothèque logicielle de gestion du son et de l’image (autrement dit, un framework multimédia) disponible pour les systèmes GNU/Linux et cousins, Mac OS X, Windows et Android. C’est aujourd’hui un pilier du projet GNOME (Totem, Rhythmbox, Epiphany, Gajim ou encore PiTiVi s’appuient dessus, pour citer quelques exemples). Firefox l’utilise également pour décoder les H.264, AAC et MP3 des séquences audio‐vidéo en HTML 5 sur GNU/Linux.

GStreamer

La branche 1.x a succédé à la branche 0.10.x le 24 septembre 2012 après un long travail de développement devant permettre au framework de réaliser de nouvelles prouesses à partir dune base retravaillée (rappelons que les deux versions peuvent coexister sur un même système afin de faciliter la transition).

GStreamer étant basé sur un système de greffons, c’est l’ensemble de ceux‐ci qui devaient être adaptés pour fonctionner avec la nouvelle version et en tirer profit.

L’accélération du (dé)codage vidéo fait partie de ces bénéfices.

Récemment la sortie des versions 0.5.7 et 0.5.8 de la bibliothèque gstreamer-vaapi a rendu celle‐ci possible (respectivement pour le décodage et le codage).

Le GStreamer Hackfest qui vient de s’achever dans les bureaux de Google Office à Munich a permis un certain nombre d’avancées.

Parmi celles‐ci (liste complète et détaillée ici), citons :

  • accélération du décodage au moyen des fonctions OpenGL de la carte graphique ;
  • accélération matérielle plus efficace sur Android ;
  • nouveau jeu de décodeurs basés sur l’API mem2mem de V4L2, que l’on retrouve sur certains SoC Samsung Exynos (un travail de mise à niveau de la partie de GStreamer 1.x faisant appel à V4L2 devra d’ailleurs être réalisé « dans un futur proche ») ;
  • raffinement de l’accélération matérielle recourant à la VAAPI ;
  • possibilité via Pulse Audio de passer directement un flux encodé ;
  • travail en cours afin de pouvoir lire un fichier en train d’être téléchargé via le protocole torrent sans atteindre la fin du téléchargement (l’auteur considère que son travail n’est pas assez finalisé pour l’inclure dès à présent dans GStreamer) ;
  • amélioration de la prise en charge de Dynamic Adaptive Streaming over HTTP, une technologie de diffusion multimédia développée par le MPEG.

Les applications GNOME Sound Recorder (enregistreur de sons pour GNOME) et Transmageddon (transcodeur universel, ainsi que « rippeur » de DVD) ont également bénéficié de ce hackfest.

Un gros travail est en cours pour enfin permettre la manipulation du format MPEG-TS dans des travaux de montage vidéo. MPEG-TS, très présent dans la télévision numérique, est conçu pour la diffusion continue et pas du tout pour le montage, ce qui rend la bête difficile à apprivoiser. Heureusement, les gars de Pitivi (Mathieu Duponchelle et Thibault Saunier) sont à la tâche.

En parlant de Pitivi, ses développeurs ont pu à cette occasion finaliser les briques GStreamer Editing Services, GNonLin et gst-python sur lesquelles ils basent Pitivi et qui permettent à tout à chacun de construire un logiciel d’édition audio et/ou vidéo profitant de la puissance de GStreamer sans avoir à tout coder directement à partir de ce dernier (gros boulot !). Plus d’infos ici.

Pitivi 1.0 bêta déboule

Pour rappel, Pitivi est un logiciel de montage vidéo pour systèmes GNU/Linux.

Pitivi

Comme nous venons de le voir, les développeurs de Pitivi sont au taquet ; outre le travail direct sur GStreamer, GStreamer Editing Services, GNonLin et gst-python, ils en ont profité pour sortir la première bêta de Pitivi 1.0 !

Cette version, estampillée 0.93, apporte, comme pour les précédentes (0.91 et 0.92, à qui les développeurs avaient donné le stade d’alphas, par prudence), de nombreuses corrections de bogues, mais aussi un certain nombre d’améliorations, notamment en termes d’utilisabilité (une des deux priorités de Pitivi, avec la stabilité). Vous trouverez un exemple ici et la liste complète des changements intervenus depuis la 0.92 ici.

Les utilisateurs de Debian devraient, comme pour les précédentes, pouvoir piocher cette nouvelle version assez rapidement dans les dépôts Experimental, tandis que les utilisateurs d’Ubuntu pourront utiliser ce PPA. Les autres, qui ne souhaitent pas attendre les paquets pour leur distribution, suivront les instructions du site officiel.

Envie que ça aille plus loin, plus vite ?

Vous avez envie que ça aille plus vite, vous voulez un beau logiciel libre de montage vidéo pour GNU/Linux qui soit conçu pour être stable, simple à utiliser et capable de tout (dé)coder grâce à GStreamer ? Alors, pensez à participer à la campagne de financement de Pitivi qui permettra à deux développeurs expérimentés et ayant fait leurs preuves de travailler à plein temps sur le projet pendant plusieurs mois (à partir de la bêta qui vient d’être publiée).

Celle‐ci est organisée sous l’égide de la Fondation GNOME, et le projet GStreamer lui‐même a fait une donation de 2 500 € : en effet, et comme nous venons de le voir, Pitivi se base GStreamer qu’il améliore et étend au passage, afin que le travail effectué profite à tous.

La campagne avance bien mais la route est encore longue avant que l’objectif soit atteint, c’est pourquoi il est important que les personnes intéressées par le projet puissent contribuer, chacun selon ses moyens.

Bref, c’est ici que ça passe pour faire un don : fundraiser.pitivi.org

Aller plus loin

  • # Système de détection des périphériques

    Posté par  . Évalué à 5.

    Il manque dans cette bonne dépêche le travail sur le bogue 678402, à savoir le remplacement du système GstPropertyProbe de détection des périphériques par une nouvelle api plus puissante. Elle va en effet permettre non seulement de les lister, mais aussi de détecter des changements, donc de réagir à chaud. Elle devrait devenir disponible uniquement à partir de la 1.4, mais le travail a justement été finalisé durant la hackfest en question, donc je pense que c'est pertinent.

  • # Qt mulitmedia

    Posté par  (site web personnel) . Évalué à 3.

    Si quelqu’un se sent de terminer la migration de Qt multimedia vers gstreamer 1.0, et au passage finir cette implémentation, ça garantirait une bonne utilisabilité des webcams par les applications Qt sous GNU/Linux.
    (Je suis aussi intéressé si quelqu’un connait les éventuels efforts de migration d’opencv)

  • # Avisynth... je t'aime.

    Posté par  . Évalué à 1.

    Quand je pense que le montage vidéo avec avisynth se résume à :

    film1 = avisource "film1.avi"
    film2 = avisource "film2.avi"
    return (film1+film2)

    Et que je lis le tutoriel Pitivi ( très bien fait du reste ) je me demande où est le progrès…

    • [^] # Re: Avisynth... je t'aime.

      Posté par  (site web personnel) . Évalué à 4. Dernière modification le 26 mars 2014 à 12:33.

      avisynth a en effet des fonctionnalités basiques de montage.
      Le tutoriel précise qu'il concerne les bases du montage vidéo avec Pitivi.
      Après, Pitivi permet le montage évolué.
      Où est le pb ?

  • # Dommage qu'aucun ne soit disponible sous Windows

    Posté par  . Évalué à 2.

    Dommage que ni Pitivi ni Transmaggesdon ne soient disponibles sous Windows, alors que les 3 briques de base sont disponibles sous Windows (gstreamer, gtk et python)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.