Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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 smile
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