Annonce

#1 2021-03-12 22:19:20

lexi
Membre
2021-03-10
41

Lecture des vidéos MP4 impossible

Hello tout le monde,

Je viens de réussir à uploader des petits vidéos mp4 via l'interface admin de Piwigo (et même Digikam) mais dans ma gallerie Piwigo, elle n'apparaisse pas sous forme de Vidéo, mais d'une image jpeg

Techniquement, je trouve cela assez fort cette prouesse, peut être en utilisant ffmeg.

Mais je préférerai plutôt pouvoir visionner la vidéo :).

J'utilise la dernier version de Firefox, la V86, donc un navigateur qui supporte largement le visionnage des vidéos en HTML5 sans rien installer de plus.

Je suis donc surpris de ne pas pouvoir faire cela de base. Faut il que j'installe un plugin supplémentaire ? Je n'ai rien vu de concluant.

Ou peut être une modif à faire dans le fichier de configuration de Piwigo ?

Piwigo 11.3.0
PHP: 7.3.19-1


J'ai regardé les discussion à coté mais rien de similaire. Je suis surpris d'être le seul d'ailleurs à avoir ce problème.


Piwigo 11.5.0
PHP: 7.4.21
Base de donnée: 5.5.5-10.5.11-MariaDB-1 [2021-10-15 11:35:03]
Graphics Library: GD 2.3.0

Hors ligne

#2 2021-03-13 06:19:11

ddtddt
Équipe Piwigo
Quetigny (21) - France
2007-07-27
16785

Re: Lecture des vidéos MP4 impossible

Bonjour

Tu as mis à jour ta config local ?


Vous aimez Piwigo alors n'hésitez pas à participer avec nous, plus d'infos sur la page "Contribuer à Piwigo". Si vous n'avez pas beaucoup de temps et que vous souhaitez nous soutenir vous pouvez aussi le faire par un don.

Hors ligne

#3 2021-03-13 07:11:50

TOnin
Membre
2010-08-10
103

Re: Lecture des vidéos MP4 impossible

Bonjour,
D'après mon expérience, il te faut un plugin.
Piwigo gère l'affichage des images jpeg. Pour les autres formats d'image, il calcule grâce à une librairie graphique (GD ou ImageMagick) une image représentative au format jpeg (sous-répertoire pwg_representative). Par exemple, pour les fichiers png ou tiff. Pour les vidéos, c'est la même histoire sauf que c'est une autre librairie qui serait nécessaire. Je ne connais pas de librairie d'extension de PHP qui soit axées aux containers et formats video. Du coup, pour chaque vidéo, il faut trouver un moyen de générer l'image représentative, et puis surtout il faudrait pouvoir jouer la vidéo en plus de la présenter, et ce n'est pas grâce à la balise HTML <img> que les deux objectifs pourront être atteints, donc il faut un modèle de page différent pour présenter la vidéo avec la balise <video>. Des plugins permettent de le faire, et peut-être aussi des thèmes et, qui sait, indépendamment d'un plugin...
Rendez-vous donc sur https://fr.piwigo.org/ext/index.php pour lancer un filtre avec la version de ton piwigo et le mot clef video. Ou depuis piwigo et l'interface d'ajout de plugin ou de thème.

videojs n'est pas encore proposé pour la version 11, ce plugin peut s'appuyer sur le programme ffmpeg pour générer l'image représentative, et offre un choix de lecteurs.

J'utilise personnellement videojs car j'ai pu le modifier pour jouer différentes définitions d'une même vidéo originelle, cela est possible grâce à une préparation des fichiers en amont de la synchronisation. Bref, c'est un bricolage exploratoire qui tient la route.

Voici un vieux sujet qui permet de se faire une idée des contraintes apportées par la gestion des vidéos : Ajouter video plugin videojs [2014-03-25 - 2016-11-27] https://fr.piwigo.org/forum/viewtopic.php?id=25113

Dernière modification par TOnin (2021-03-13 07:13:14)

Hors ligne

#4 2021-03-13 12:16:29

lexi
Membre
2021-03-10
41

Re: Lecture des vidéos MP4 impossible

@ddtddt, tout est plus qu'à jour, même apparement peut être trop, tout du moins pour Piwigo ^^

@TOnin merci pour tes explications. En effet j'ai cru comprendre que GD était utilisé pour proposer différente de photo, et si ImageMagick (je ne savais pas que cela existait en PHP) prenait le dessus s'il était configuré car plus performant.


Pour la vidéo, j'ai ma petit idée ;)


Dans le fichier admin/include/functions_upload.inc.php, quelque chose d'interessant.

Code:

$representative_file_path = dirname($file_path).'/pwg_representative/';
$representative_file_path.= get_filename_wo_extension(basename($file_path)).'.';

$representative_ext = 'jpg';
$representative_file_path.= $representative_ext;

$second = 1;
$conf['ffmpeg_dir'].'ffmpeg';
$ffmpeg.= ' -i "'.$file_path.'"';
$ffmpeg.= ' -an -ss '.$second;
$ffmpeg.= ' -t 1 -r 1 -y -vcodec mjpeg -f mjpeg';
$ffmpeg.= ' "'.$representative_file_path.'"';

Et je pense que :
- "representative_file" doit correspondre au nom de fichier de la miniature. On peut y voir d'ailleurs que l'extension  est noté en dur.
- file_path doit correspondre au fichier vidéo
- cette fonction doit extraire l'image de la première seconde (second = 1)

J'ai essayé de retranscrire la commande manuellement comme ci-dessous avec un fichier vidéo pour valider ma trouvaille : 

Code:

$ ffmpeg -i V_20190407_173139_vHDR_On.mp4 -an -ss 1 -t 1 -r 1 -y vcodec mjpeg -f mjpeg toto.jpg

, mais malheureusement j'obtiens l'erreur :
Unable to find a suitable output format for 'vcodec'
... le format de sortie ne lui convient pas pour vcodec :(

Je reste persuadé même si je n'ai pas réussi à le prouver. On peut faire énormément de chose à ce qui parait avec ffmeg. Dernièrement, je devais diminier le son d'un fichier audio (car inécoutable) et après moule recherche comment faire, je me suis tourné vers ffmeg.


Lorsque l'on va sur la page de l'image de la vidéo. Fait amusant, en haut, à gauche, on a le bouton pour choisir le format de l'image (comme pour les photo) et la dimension original correspond à la vidéo.
Lorsque je clique sur Original, la vidéo se lance en popup.

Comme parfois mieux vaut une image pour illustrer ses propos : https://i.imgur.com/3OiA5ko.png

Du coup, je me suis amusé à l'expérience suivante :
1./ Récupérer le lien de ma vidéo et le mettre de côté : "./upload/2021/03/13/20210313104724-cb8a68e8.mp4"
2./ Cliquer sur un format quelconque de photo (exemple M - médium)
3./ Sur la photo :
   3.1./ clique droit puis Inspect Element
   3.2/ l'élement correspondant à la photo est sourligné sur le panneau du bas de Firefox
   3.3/ Clique droit sur l'élement en bleu puis faire Edit as Html
   3.4/ Et remplacer le contenu en copiant collant ce bouton de code que j'ai pu trouver sur le net :

Code:

<video width="400" height="222" controls>
  <source src="./upload/2021/03/13/20210313104724-cb8a68e8.mp4" type="video/mp4" />
  Ici l'alternative à la vidéo : un lien de téléchargement, un message, etc.
</video>

Et on a par magie le petit cadre vidéo pour la lire et cela fonctionne parfaitement.

Cela fait plaisir cette petite trouvaille qui est grande pour moi :). Après reste à générer ces lignes par défaut lorsque le fichier est une vidéo.


Pour le moment, pas de plugin vidéo pour la dernière version de Piwigo. Je vais du coup, continuer à investiguer.


Piwigo 11.5.0
PHP: 7.4.21
Base de donnée: 5.5.5-10.5.11-MariaDB-1 [2021-10-15 11:35:03]
Graphics Library: GD 2.3.0

Hors ligne

#5 2021-03-14 12:18:35

cryopad
Équipe Piwigo
2017-06-25
77

Re: Lecture des vidéos MP4 impossible

Pour info, même s'il ne semble pas être compatible, le plugin VideoJS fonctionne avec Piwigo 11.3.

Hors ligne

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact