#1 Le 15/11/2012, à 14:42
- Le Goss
ffmpeg2theora extrêment lent
Bonjour à tous,
J'ai essayé ffmpeg, mencoder. Maintenant, c'est le tour de ffmpeg2theora.
Je lui ai demandé de m'encoder 5mn d'une vidéo
ffmpeg2theora film.mpg --videobitrate 700 --audiobitrate 96 -smarttime 30 --endtime 300 --two-pass -o sortie.ogv
Outre le fait que l'encodage commence au début de la vidéo et non à la 30è seconde, l'encodage dure, lui, plus d'1/4 d'heure...
La lenteur se trouve même si je retire les options.
Je ne rencontre pas cette lenteur avec ffmpeg ou mencoder si je cherche à obtenir un avi.
Ma config:
Version 11.10
mémoire 3,9Gio
Intel(R) Core(TM)2 Duo CPU t6400 2.00GHz
Merci pour vos lumières!
Cordialement
Si je pose une question sur le forum, ce n'est pas par paresse ou pour faire faire "mes devoirs"; c'est par ignorance: j'ai 52 berges. Et, par principe, je préfère être traité d'ignare que de fainéant.
Samsung i7-3630QM CPU @ 2.40GHz × 8 - 64 bits - RAM 7,7 Gio - DD 976 Go - Bodhi 6.0.0 Ubuntu 20.04
Allergique au wysiwyg; traitement à vie: Lilypond - LaTeX - markdown
Hors ligne
#2 Le 16/11/2012, à 22:57
- Haleth
Re : ffmpeg2theora extrêment lent
###Installation, à faire une fois
aptitude install git libtheora-dev yasm
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-libtheora
make -j8
sudo make install
echo "PATH=/usr/local/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
###Utilisation, en fonction des cas..
#Flux -> theora (ne prend que la video)
ffmpeg -i film.mpg -c:v theora output.ogv
#Flux -> video. Ne prend que l'audio et la video. Encode la video en theora, n'encode pas le flux audio
ffmpeg -i film.mpg -c:v theora -c:a copy output.mkv
#Prend un flux audio, un flux video (stream) et fait une video (fichier). N'encode pas les flux
ffmpeg -i sound.mp3 -i video.ts -map 0:0 -c:a copy -map 1:0 -c:v copy output.mkv
Note:
- Encodage des sous-titres: -c:s
- Matroska rulz!
- En fonction de ton utilisation, je te conseille grandement d'utiliser x264: qualité de rendu monstrueuse, encodage multithreadé, compression des données intenses
- Le temps d'encodage est fonction de la durée du stream, mais surtout de l'algo (thread ou pas), des IO (si tu as un raw en source) et de la résolution (5min en SD, c'est pas 5min en fullHD)
Dernière modification par Haleth (Le 17/11/2012, à 17:02)
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
#3 Le 17/11/2012, à 16:58
- Le Goss
Re : ffmpeg2theora extrêment lent
C'est très intéressant... mais je n'ai pas tout compris.
J'aime bien comprendre ce que je fais et je suis parfois long à la détente.
pourrais-tu me donner quelques explications... correspondant à mon problème si possible?
Merci pour ton aide !
Si je pose une question sur le forum, ce n'est pas par paresse ou pour faire faire "mes devoirs"; c'est par ignorance: j'ai 52 berges. Et, par principe, je préfère être traité d'ignare que de fainéant.
Samsung i7-3630QM CPU @ 2.40GHz × 8 - 64 bits - RAM 7,7 Gio - DD 976 Go - Bodhi 6.0.0 Ubuntu 20.04
Allergique au wysiwyg; traitement à vie: Lilypond - LaTeX - markdown
Hors ligne
#4 Le 17/11/2012, à 17:11
- Haleth
Re : ffmpeg2theora extrêment lent
Bon, je considère que l'installation est comprise
Niveau utilisation:
En premier, tu lui donnes le ou les fichiers d'entrées, ceux qui contiennent les flux d'origines, avec l'option -i
Tu selectionnes ensuite les flux que tu souhaites conserver, avec l'option -map. Si tu n'as qu'un flux audio par exemple, l'option -map est inutile: il va te selectionner automatiquement ce flux. L'option -map fonctionne comme ceci : -map fichier:flux. fichier est un numéro, commencant par 0, en lien avec le ou les fichiers d'entrées précédants (-i). flux est le numéro du flux.
Lorsque tu lui as dit quels sont les fichiers sources, et quels flux sont selectionnés, tu peux lui dire comment transformer les flux, avec l'option -c
Cette option se divise en sous-catégorie:
-c:a pour l'audio
-c:s pour les subtitles
-c:v pour la video
Cette option est suivi par le nom de l'algo utilisé pour la compression (+ options eventuelles)
Enfin, tu lui dit où placer les nouveaux flux: machin.mkv, bidule.mp3, truc.ogv etc
Le nom du fichier de sortie défini le format du fichier
Bref, pour résumer (les blocs entre crochet sont optionnels):
ffmpeg -i entree1 [-i entree2 ..] [-map x:y ..] [-c:a algo_audio [option_audio]] [-c:v algo_video[option_video]] [-c:s algo_subtitle[option_subtitle]] sortie.format
Bref, dans ton cas, tu as un film en mpg, tu souhaites le transformer en ogv. Tu souhaites encoder la video en theora:
ffmpeg -i film.mpg -c:v theora output.ogv
Pas besoin de -map: fichier unique, tu prend tout les flux
Pas besoin de plusieurs -i, tu n'as qu'un fichier
Pas besoin de -c:a et -c:s, il va juste les copier
Tu peux, si tu veux, lui donner des options parmis celle que tu as écrite plus haut .. m'enfin, franchement, j'en ai jamais eu besoin
Hésite pas si un point n'est pas clair
Je te conseille également d'essaye (si c'est pas déjà fait), pour avoir une idée du fonctionnement et des possibilités de l'outil
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne