Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Extraire la première image d'une vidéo (pour créer un fichier .thm à partir d'une vidéo .avi)

11 réponses
Avatar
Olivier V
Bonjour,

Je souhaiterais créer (de façon automatique via un script) un fichier .thm
(description ci-dessous) à partir de vidéos .avi (320x240).

En effet, sous windows lorsque j'importais des photos depuis mon Canon A40
avec Zoombrowser, il m'importait les vidéos et créait automatiquement un
fichier .thm qui est utilisé par le système pour afficher en vignette le
fichier vidéo.

Digikam ne semble pas faire cela.

S'il n'existe pas un truc déjà tout prêt, il me faudrait donc un script qui,
d'après ce que j'ai pu trouver sur le net sur les fichiers .thm, fasse :
1) extraire la première image du fichier video.avi
2) la convertir en video.jpg de largeur 160 pixels, de hauteur 120 pixels,
et de résolution 72pixels/pouce
3) renommer le fichier video.jpg en video.thm

Merci.

Olivier V

10 réponses

1 2
Avatar
pmxk
"Olivier V" a écrit dans le message de news:

Bonjour,

Je souhaiterais créer (de façon automatique via un script) un fichier .thm
(description ci-dessous) à partir de vidéos .avi (320x240).

En effet, sous windows lorsque j'importais des photos depuis mon Canon A40
avec Zoombrowser, il m'importait les vidéos et créait automatiquement un
fichier .thm qui est utilisé par le système pour afficher en vignette le
fichier vidéo.

Digikam ne semble pas faire cela.

S'il n'existe pas un truc déjà tout prêt, il me faudrait donc un script
qui,
d'après ce que j'ai pu trouver sur le net sur les fichiers .thm, fasse :
1) extraire la première image du fichier video.avi
2) la convertir en video.jpg de largeur 160 pixels, de hauteur 120 pixels,
et de résolution 72pixels/pouce
3) renommer le fichier video.jpg en video.thm

Merci.

Olivier V


Bonsoir,

pour extraire : mplayer -vo jpeg
pour convertir : convert
puis renommer : mv

pmxk

Avatar
jp willm
Bonjour,

Bonjour,

Je souhaiterais créer .../... un
fichier .thm qui est utilisé par le système pour afficher en vignette le
fichier vidéo.

Digikam ne semble pas faire cela.

S'il n'existe pas un truc déjà tout prêt,
Je n'ai peut-être rien compris (y paraît que ça m'arrive), mais si tu

veux un aperçu sous forme de vignette, KDE ou Gwenview le font. Et si tu
veux, tu peux éventuellement récupérer ces vignettes dans un genre de
dossier "thumbs".


--
jp willm
http://perso.orange.fr/willms/index.html

Avatar
Olivier V

Je n'ai peut-être rien compris (y paraît que ça m'arrive), mais si tu
veux un aperçu sous forme de vignette, KDE ou Gwenview le font.


Le but était que je puisse aussi voir mon dossier sous forme de vignettes
avec Zoombrowser ... qui lui a besoin des vignettes en .thm

Ca n'a aucun intérêt sous linux lui même, nous sommes bien d'accord.

Et si tu veux, tu peux éventuellement récupérer ces vignettes dans un
genre de dossier "thumbs".


Dans $home/.thumbnails/, il y a bien des vignettes crées, mais elles n'ont
pas la bonne taille, et aller retrouver le nom correspondant au code donné
est plus que pénible.

De plus, je parle bien de créer/récupérer des vignettes à partir de fichiers
*vidéos*.

Olivier V

Avatar
Olivier V

pour extraire : mplayer -vo jpeg


Ça y va un peu fort, car ça me donne toutes les images du film ...
N'y a-t-il pas un argument permettant de ne récupérer *que* la première ?

Sur le net j'ai trouvé une solution utilisant "convert" :
convert fichier.avi'[0]' image.jpg

Cette commande ne sort que la première image (ce qui est mieux que le
mplayer -vo jpeg ci-dessus) mais elle balaie quand même tout le fichier,
d'où une certaine lenteur.

Peut-on faire mieux avec mplayer ?

pour convertir : convert
puis renommer : mv


Pour le reste c'est bon.

Olivier V

Avatar
Sébastien Monbrun aka TiChou
Dans le message <news:,
*Olivier V* tapota sur f.c.o.l.configuration :

pour extraire : mplayer -vo jpeg


Ça y va un peu fort, car ça me donne toutes les images du film ...
N'y a-t-il pas un argument permettant de ne récupérer *que* la première ?


man mplayer ?

--
Sébastien Monbrun aka TiChou


Avatar
Michel Tatoute
Olivier V wrote:


pour extraire : mplayer -vo jpeg


Ça y va un peu fort, car ça me donne toutes les images du film ...
N'y a-t-il pas un argument permettant de ne récupérer *que* la première ?

Sur le net j'ai trouvé une solution utilisant "convert" :
convert fichier.avi'[0]' image.jpg

Cette commande ne sort que la première image (ce qui est mieux que le
mplayer -vo jpeg ci-dessus) mais elle balaie quand même tout le fichier,
d'où une certaine lenteur.

Peut-on faire mieux avec mplayer ?


heuu..

mplayer -vo jpeg -frames 1

Michel.


Avatar
Olivier V

mplayer -vo jpeg -frames 1


Merci.

Encore quelques détails :

1) Le nom donné par mplayer sera-t-il toujours 00000001.jpg ?
En particulier y aura-t-il toujours 7 zéros avant le 1, ou cela dépend-il de
la longueur du film avi de départ ?
C'est important car si le nom peut varier, mon script ne fonctionnera pas
tout le temps.

2) Peut-on imposer un nom à l'image ?
Je préférerait en effet imposer un nom du type ${file%.avi}_temp.jpg (un peu
tordu) pour éviter, par sécurité, d'écraser d'éventuelles autres photos.

En tout cas, j'ai déjà un script qui à l'air de fonctionner :

#!/bin/bash
# action : créé les fichiers .thm à partir des vidéos .avi du répertoire qui
n'ont pas de .thm associé
# entree : aucun : s'execute dans un repertoire
# sortie : (fichier.thm) pour chaque fichier .avi
for file in *.avi;
do
echo ""
echo "Traitement du fichier $file "
if [[ -e ${file%.avi}.thm ]] ; then
echo "Le fichier ${file%.avi}.thm existe déjà -> On ne fait rien"
else
echo "Le fichier ${file%.avi}.thm n'existe pas -> Création de
${file%.avi}.thm"
mplayer -vo jpeg -frames 1 $file
mogrify -size 160x120 -quality 90 00000001.jpg
mv 00000001.jpg ${file%.avi}.thm
fi
done
echo ""

Olivier V

Avatar
Mihamina Rakotomandimby
Olivier V wrote:
mplayer -vo jpeg -frames 1
Le nom donné par mplayer sera-t-il toujours 00000001.jpg ?



A partir du moment ou tu as les commandes élémentaires à effectuer, tu
peux toujours faire un script qui serait le wrapper de tout ça.


Avatar
Olivier V

Olivier V wrote:
mplayer -vo jpeg -frames 1
Le nom donné par mplayer sera-t-il toujours 00000001.jpg ?



A partir du moment ou tu as les commandes élémentaires à effectuer, tu
peux toujours faire un script qui serait le wrapper de tout ça.


Oui je sais renommer 00000001.jpg en ce que je veux,
mais j'aurais aimé savoir s'il y a un moyen pour que ce nom soit directement
donné par mplayer, comme le faisait le commande basée sur "convert".

Olivier V



Avatar
Michel Tatoute
Olivier V wrote:


Olivier V wrote:
mplayer -vo jpeg -frames 1
Le nom donné par mplayer sera-t-il toujours 00000001.jpg ?



A partir du moment ou tu as les commandes élémentaires à effectuer, tu
peux toujours faire un script qui serait le wrapper de tout ça.


Oui je sais renommer 00000001.jpg en ce que je veux,
mais j'aurais aimé savoir s'il y a un moyen pour que ce nom soit
directement donné par mplayer, comme le faisait le commande basée sur
"convert".


alors bon... man mplayer.


Olivier V


Michel.




1 2