OVH Community, votre nouvel espace communautaire.

Encoder un .avi en .flv avec FFmpeg


virgil
23/07/2010, 07h46
Ah, résolu pour le x264, j'ai fait un
aptitude remove ffmpeg
puis
aptitude install libx264 x264
et un
aptitude install ffmpeg

et ça roule

Ca m'a évité de compiler moi même ffmpeg, vu que à chaque fois que je compile un truc, je fais ça à l'arrache et ça marche jamais ...

virgil
23/07/2010, 06h15
Hello les loulous

Ok, de mon coté je suis en train de mettre ça au point dans une petite class qui va bien ... histoire de faire un petit truc sympa genre
$video->encode('iphone')
$video->encode('ipad')
$video->encode('flv')
avec en return l'url ... classique quoi

Deux petites questions les amis, déjà je me bas avec libx264 que j'ai réussi à installé mais qui n'est pas prit en compte par ffmpeg, une idée de quoi je dois bricoler ? si quelqu'un a déjà eu le problème ... sinon je trouverais tout seul ^^

Sinon autre chose, comment je peux avoir un retour de ma commande ? histoire de savoir si tout c'est bien passé, car exec ne me renvoit rien quand je le passe en variable :

$result = exec('ffmpeg....')
echo $result => rien

Une idée ?

Et btw, merci pour tout ce qui est dit dans ce post, très instructif ^^

steph22
21/07/2010, 12h08
Là au moins ca a le mérite d'être clair

j'ai juste rajouté le -y et le -s sinon la commande bug

voila ce que ca donne :
Code:
$ffmpegPath . " -i " . $srcFile . " -y -acodec libfaac -ar 44100 -ab 160k -ac 2 -vcodec libx264 -b 1500k -minrate 1000k -maxrate 4000k -s " . $srcWidth . "x" . $srcHeight . " " . $destFile;
J'ai fait quelques tests et c'est parfait

Pour ce qui est de l'install, je suis sur un serveur dédiée dedian et j'ai suivi une partie d'un tuto sur dedigames sur l'install de phpmotion.
Etonnant ce rapport entre ton pseudo et le nom du site

En tout cas maintenant tout marche nickel ! Merci !

steph22
20/07/2010, 14h29
la commande est faite en php donc voila :
Code:
$ffmpegPath = "/usr/bin/ffmpeg";
$flvtool2Path = "/usr/bin/flvtool2";
$ffmpegObj = new ffmpeg_movie($srcFile);	   
$srcWidth = $this->makeMultipleTwo($ffmpegObj->getFrameWidth());
$srcHeight = $this->makeMultipleTwo($ffmpegObj->getFrameHeight());
$commande1 = $ffmpegPath . " -i " . $srcFile . " -ar 22050 -ab 64000 -y -f flv -s " . $srcWidth . "x" . $srcHeight . " " . $destFile;
$commande2 = $flvtool2Path . " -U stdin " . $destFile;
exec($commande1 . ' | ' . $commande2);

steph22
20/07/2010, 14h03
C'est bon, j'ai trouvé d'où venait le problème

il faut rajouter -y à la commande ffmpeg. J'ai vu dans les logs qu'il n'écrasait pas le fichier flv créé. le -y force l'écrasement du fichier de sortie

Maintenant à savoir pourquoi ca marche sans le '-y' sur des fichiers de moins de 2Mo, j'en sais rien du tout du moment que ca marche

steph22
20/07/2010, 12h43
Pas de souci du côté de l'upload, j'ai bien modifié toutes les valeurs dans le php.ini. Par contre j'ai limité à 20M.
Le problème doit surement venir de ffmpeg puisque je passe par une étape intermédiaire pour voir si tout marche bien. D'abord la vidéo est analysée puis si elle est valide elle est envoyée dans un répertoire. une fois dans le répertoire, ffmpeg prend la relève pour convetir en flv.
Don en gros je me retrouve avec 2 fichier dans mon répertoire: un mpg de 8Mo et 1 flv de 0ko

Sébastien Ferry
20/07/2010, 08h08
Citation Envoyé par steph22
C...mais dès que j'essaie d'uploader un fichier de + de 2 Mo ...
...en retapant la commande a la mimine en SSH et là le fichier est bien créé ... peu importe la taille du fichier...
...
http://www.php.net/manual/fr/feature...n-pitfalls.php
Erreurs classiques

La variable MAX_FILE_SIZE ne peut pas spécifier une taille de fichier plus grande que la taille qui a été fixée par upload_max_filesize, dans le php.ini. La valeur par défaut est 2 megaoctets.
À priori, ce serait plutôt un problème d'upload que de ffmpeg.

Il faut que tu changes la valeur upload_max_filesize "taille maximale en octets d'un fichier à charger." (cf: http://www.php.net/manual/fr/ini.cor...d-max-filesize) dans les fichiers php.ini, .htaccess ou httpd.conf (cf: http://php.net/manual/fr/configurati...nges.modes.php).

steph22
20/07/2010, 03h46
Coucou,
désolé de déterrer le topic mais j'ai le même problème que toi laipreu.
La conversion marche bien pour les petits fichiers mais dès que j'essaie d'uploader un fichier de + de 2 Mo je me retrouve avec un fichier flv vide.
J'ai essayé en retapant la commande a la mimine en SSH et là le fichier est bien créé sans aucun message d'erreur et peu importe la taille du fichier...
As-tu trouvé une solution a ce problème ?

Grag38
12/02/2010, 11h19
Merci beaucoup de ta discussion 'toute' seule elle m'a beaucoup aidé.

Grag

laipreu
18/06/2009, 10h04
Bon après quelques tests que j'avais omis, apparemment il faut respecter le format 16/9 ou 4/3, et ça passe.

Je fais ma discution en solo, mais sûrement cela servira à d'autre ^^

laipreu
18/06/2009, 09h51
Bien le bonjour,

J'ai résolu mon problème mais ça ne me plait pas comme fonctionnement.
Ou peut être j'ai raté quelque chose.
Désolé d'insister sur ce topic, mais la doc sur FFMPEG est hyper rare.

Alors mon problème faisait qu'il m'était impossible de traiter des vidéos avec FFMPEG. Et j'ai compris après de nombreux essai qu'on ne peut pas mettre n'importe quelle taille de vidéo. Il faut respecter un certain format sinon FFMPEG en traite pas la vidéo en cours.

J'ai vu ça ici :
http://www.ffmpeg.org/ffmpeg-doc.html
Sur vidéos options.

Ainsi donc j'aimerai savoir si il n'y a pas un moyen de mettre la taille qu'on veut? J'ai une webTV qui à un lecteur de 520 de large, mais ce format n'existe pas dans la doc :'(

Suis-je condamné à resizer mon lecteur?
Je trouve ça étrange.

Merci de votre aide

laipreu
16/06/2009, 16h33
yoyo les gens, bon je retente un nouveau problème ou là je suis mais totalement largué....

Mon exec ne veut pas fonctionner.

Code PHP:
exec('ffmpeg -i /videos/upload/'.$name.' -y '.$new_file.'')or die("erreur exec" ); 

Je fais cela et il me sort l'erreur, alors que tout les chemins sont bon, ffmpeg est bien installé, les droits sont a 755, le safe_mode est désactivé...
Je suis totalement perdu, ça pourrait venir d'ou à votre avis?

Merci

totoland
06/06/2009, 19h31
Bonjour le forum,

Je suis un debutant , j'ai un serveur dedier chez OVH et je veux evaluer FFmpeg je viens d'essayer d'installer FFmpeg j'ai trouve des anciens HOW To pour la partie instal de FFMPEG ca marche mais je bug sur l'instal de l'extension PHP.
J'arrive bien a localiser phpize et php config
home #ln -s /usr/local/php5/bin/phpize /bin
ln: creating symbolic link `/bin/phpize': File exists
home # ln -s /usr/local/php5/bin/php-config /bin
ln: creating symbolic link `/bin/php-config': File exists
Mais lors de l'etape suivante
cd ffmpeg-php-0.6.0
phpize j'ai comme reponse du serveur
-bash: phpize: command not found

Je capte pas, mais en bon debutant je dois surement avoir fait une grosse connerie pouvez vous m'aider??

Merci

laipreu
05/06/2009, 11h33
petit up!
Personne n'a d'idée?

Je ne comprend vraiment pas...
A croire que php n'a pas le temps de faire le calcul des dimensions et qu'il arrive sur la conversion en flv.

Mais php est un langage synchrone pourtant? Je me trompe peut être

laipreu
03/06/2009, 16h42
Bien le bonjour, je me permet de déterrer le topic car j'ai un problème qui convient tout à fait au sujet.

Je veux convertir online, n'importe quelle vidéo en .flv
Jusque la aucun souci.

Le problème est que je veux redimensionner ma vidéo selon sa taille initiale.
Je prend donc une largeur fixe, et la hauteur s'adapte, avec un joli produit en croix.

Et là... Quand les vidéo dépasse 1Mo et quelque ça ne marche pas
Je pensais que $dimensions aprés l'opération devenait un number, donc je converti cette variable en string avec strval.
Mais rien n'y fait

Si vous avez une idée je suis preneur.

Merci à vous

Voici mon code :

Code PHP:
$mov = new ffmpeg_movie('/uploads'.$name.'');                        
$file '/uploads/'.$name.'';

$bitrate =  $mov->getBitRate();
$width_video $mov->getFrameWidth();
$height_video $mov->getFrameHeight();

$width 492;
$height $height_video*$width/$width_video;
$dimensions strval($width.'x'.$height);
$img_sec '25';


exec('ffmpeg -i '.$file.' -ab 56 -ar 44100 -b '.$bitrate.' -r '.$img_sec.' -s '.$dimensions.' -f flv /videos/'.$id_der.'.flv'); 

Dga
24/02/2009, 12h16
Certains serait comment installer le codec mp3 pour le son ? (sous debian)

Unknown encoder 'mp3'

:s

Caqui
11/01/2009, 10h15
Content pour toi que tout fonctionne parfaitement ^^
Je regarderai de plus prêt se PhpMotion.. Qui a l'aire bien complet et gratuit !

tiffoun
11/01/2009, 10h04
Re,
Ecoute ça ...
J'ai cherché tous les ffmpeg que j'avais sur mon ddur.
J'en ai trouvé 3, de tailles différentes.
1er chemin /usr/bin/ffmpeg taille 69 ko date juillet 2008
2e chemin /usr/local/bin/ffmpeg taille 78 ko date 04 janvier 2009
3e chemin /root/ffmpeg/ffmpeg taille 5 Mo date 09 janvier 2009

le 1 me paraissait vieux, et donc correspondre à la version utilisée par le cms (2000-2007) avec le SVN-rUNKNOWN et c'est sur ce chemin que pointe le cms (d'après le fichier de config de PHPmotion, le cms)

le 2 plus récent date de mes fouilles le 4 janvier, je me souviens d'avoir trouvé des trucs sur une installation correcte de ffmpeg pour prendre en compte je sais plus quoi.. à l'époque j'essayais tout.

le 3, j'avais déjà essayé de pointer dessus il y a 2 jours(car dans la procédure c'était clair que tout se retrouvait dans root), avec erreur à la clé, même pas voulu encoder. Mais , découragé, j'avais même pas essayé de voir si j'avais une autre version,..

Bref tu devines la suite, j'ai changé le $config[path_to_mpeg] à partir de l'admin du CMS, relancé le serveur. Et essayé avec la ligne initiale de l'avi :
Code:
$ffmpeg_cmd2 = "$config[path_to_ffmpeg] -i $raw_video_path -copyts -ar 44100 -s 320x240 $new_flv";
Nickel, encodage se fait. Et dans le cms, j'ai le son !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Trop content !
Comme un grand dis-donc !
Je ferai d'autres tests mais là c'est clair , c'est la ligne de départ, originale, qui n'avait donc aucun souci d'argument.
Maintenant je vais essayer avec un wmv (sans changer la ligne originale des wmv)puis ensuite si c'est ok je vais pousser un peu la qualité.

Je te tiens au courant.

Tiffoun

Caqui
11/01/2009, 08h15
Question bete.. As-tu tester avec une autre vidéo ? Pour voir si tu as aussi les erreurs.

Il se peut que ta vidéo soit encodé avec quelque chose que ton serveur ne reconnait pas et du coup, il ne peut pas l'encoder en flv.

tiffoun
11/01/2009, 08h06
Tiens, je trouve que les 2 ffmpeg ne sont pas identiques ? ou en tous cas pas avec la même configuration lancé !
En reprenant la ligne
Code:
ffmpeg -i tesvdo_avi.avi -copyts -ar 44100 -s 320x240 testavi_copyts.flv
Dans le cms :
FFmpeg version SVN-rUNKNOWN, Copyright (c) 2000-2007 Fabrice Bellard, et al.
configuration: --enable-gpl --enable-pp --enable-swscaler --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libogg --enable-libgsm --enable-dc1394 --disable-debug --enable-shared --prefix=/usr
libavutil version: 1d.49.3.0
libavcodec version: 1d.51.38.0
libavformat version: 1d.51.10.0
built on Jul 23 2008 22:38:24, gcc: 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
Input #0, avi, from '/var/www/PHPmotion/uploads/avi/kCX5IgVNmPilnNEuywud.avi':
Duration: 00:00:49.3, start: 0.000000, bitrate: 4042 kb/s
Stream #0.0: Video: cinepak, yuv420p, 480x384, 25.00 fps(r)
Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, 1536 kb/s
Output #0, flv, to '/var/www/PHPmotion/uploads/kCX5IgVNmPilnNEuywud.flv':
Stream #0.0: Video: flv, yuv420p, 320x240, q=2-31, 200 kb/s, 25.00 fps(c)
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding

------------- passage pas intéressant----------

video:1366kB audio:0kB global headers:0kB muxing overhead 1.425296%
Directement dans la console :
FFmpeg version SVN-r16421, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared --enable-libamr-nb --enable-libamr-wb --enable-nonfree --enable-libtheora
libavutil 49.12. 0 / 49.12. 0
libavcodec 52.10. 0 / 52.10. 0
libavformat 52.23. 1 / 52.23. 1
libavdevice 52. 1. 0 / 52. 1. 0
built on Jan 4 2009 12:30:06, gcc: 4.2.4 (Ubuntu 4.2.4-1ubuntu3)
Input #0, avi, from 'tesvdo_avi.avi':
Duration: 00:00:49.36, start: 0.000000, bitrate: 4042 kb/s
Stream #0.0: Video: cinepak, yuv420p, 480x384, 25.00 tb(r)
Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Output #0, flv, to 'testavi_copyts.flv':
Stream #0.0: Video: flv, yuv420p, 320x240, q=2-31, 200 kb/s, 25.00 tb(c)
Stream #0.1: Audio: libmp3lame, 44100 Hz, stereo, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 1234 fps= 22 q=16.7 Lsize= 1803kB time=49.36 bitrate= 299.3kbits/s
video:1368kB audio:386kB global headers:0kB muxing overhead 2.798936%
Pas les mêmes librairies, même la version a un unknown dans l'un des deux cas, et le copyright diffère !
C'est quoi cette pagaille ?

Tiffoun

tiffoun
11/01/2009, 07h54
Bon,
Avant tout, excuse mon didiotie ! J'avais même pas réalisé que la ligne que tu m'a faite essayer était elle du cms !LOL
Donc inutile que je la réessaye dans le cms !

Sinon ben là moi je sais pas quoi faire.... Comment se fait-il que les mêmes instructions donnent deux choses différentes ? ....

Tiffoun

tiffoun
11/01/2009, 06h58
salut et merci de ta réponse.
Voilà comment j'ai fait (tu me diras si c'est ok) :
j'ai uploadé la fichier avi sur mon serveur, dans le www dans un dossier essais. je me suis mis dans ce dossier
1. j'ai tapé direct :
ffmpeg -i tesvdo_avi.avi -copyts -ar 44100 -s 320x240 testavi_copyts.flv
Voici ce qu'il a écrit :

FFmpeg version SVN-r16421, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared --enable-libamr-nb --enable-libamr-wb --enable-nonfree --enable-libtheora
libavutil 49.12. 0 / 49.12. 0
libavcodec 52.10. 0 / 52.10. 0
libavformat 52.23. 1 / 52.23. 1
libavdevice 52. 1. 0 / 52. 1. 0
built on Jan 4 2009 12:30:06, gcc: 4.2.4 (Ubuntu 4.2.4-1ubuntu3)
Input #0, avi, from 'tesvdo_avi.avi':
Duration: 00:00:49.36, start: 0.000000, bitrate: 4042 kb/s
Stream #0.0: Video: cinepak, yuv420p, 480x384, 25.00 tb(r)
Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Output #0, flv, to 'testavi_copyts.flv':
Stream #0.0: Video: flv, yuv420p, 320x240, q=2-31, 200 kb/s, 25.00 tb(c)
Stream #0.1: Audio: libmp3lame, 44100 Hz, stereo, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 1234 fps= 22 q=16.7 Lsize= 1803kB time=49.36 bitrate= 299.3kbits/s
video:1368kB audio:386kB global headers:0kB muxing overhead 2.798936%

Ensuite j'ai downloadé ça sur mon pc, écouté et... y a le son ! D'ailleurs on voit bien le output stream . (alors que dans le cms quand je fouille les logs, output stream ne marque video: etc......)

2. j'ai aussi essayé

ffmpeg -i tesvdo_avi.avi -copyts -ar 44100 -s 320x240 -acodec mp3 -ab 64 testavi_copyts.flv

il m'a écrit ça (ça a merdé en fait):
FFmpeg version SVN-r16421, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared --enable-libamr-nb --enable-libamr-wb --enable-nonfree --enable-libtheora
libavutil 49.12. 0 / 49.12. 0
libavcodec 52.10. 0 / 52.10. 0
libavformat 52.23. 1 / 52.23. 1
libavdevice 52. 1. 0 / 52. 1. 0
built on Jan 4 2009 12:30:06, gcc: 4.2.4 (Ubuntu 4.2.4-1ubuntu3)
Input #0, avi, from 'tesvdo_avi.avi':
Duration: 00:00:49.36, start: 0.000000, bitrate: 4042 kb/s
Stream #0.0: Video: cinepak, yuv420p, 480x384, 25.00 tb(r)
Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
WARNING: The bitrate parameter is set too low. It takes bits/s as argument, not kbits/s
Unknown encoder 'mp3'

Cette fois mp3, connais pas !? (pourtant j'ai LAME et quand je fais ffmpeg -formats mp3 est bien dans la liste)

3. j'ai aussi essayé
ffmpeg -i tesvdo_avi.avi -s 480x384 -ar 44100 -aspect 4:3 -pass 1 -b 500k -r 24 -ab 64 -f flv -y testavi.flv
Mais là j'ai plus le log... . Par contre, y avait le son aussi !!!!

Je ne sais pas ce que tu en penses. En attendant ta réponse
Je vais tenter de recopier ta commande (la 1ère, qui a fonctionné) dans le convertor.php du cms, à la place de la leur (comme il faut bien sûr).Je te tiens au courant... (je sais pas si on peut poster 2 fois de suite ici)

à +

Tiffoun

Caqui
11/01/2009, 05h52
En partant de ta ligne de commande :
en partant d'un avi :
Code:
$ffmpeg_cmd2 = "$config[path_to_ffmpeg] -i $raw_video_path -copyts -ar 44100 -s 320x240 $new_flv";
Essais de mettre ceci, en rajoutant "-acodec mp3 -ab 64" :
Code:
$ffmpeg_cmd2 = "$config[path_to_ffmpeg] -i $raw_video_path -copyts -ar 44100 -s 320x240 -acodec mp3 -ab 64 $new_flv";
Dit moi si ça te mets le son ^^

tiffoun
10/01/2009, 23h24
Salut,
moi aussi je débarque après de longs mois... mais je nage complet sur un problème. J'ai installé sur un serveur dédié ce qu'il faut pour encoder en flv. C'est nickel sauf pour l'audio. Pas de son !!!
Sauf si la source est en flv déjà...là le son reste ...
C'est dans le cms PHPmotion en fait (que j'ai installé). J suis le seul du forum de ce cms à avoir ce souci.
De quoi ça peut venir ? Voici la commande du cms ..

en partant d'un avi :
$ffmpeg_cmd2 = "$config[path_to_ffmpeg] -i $raw_video_path -copyts -ar 44100 -s 320x240 $new_flv";

d'un wmv :
$ffmpeg_cmd2 = "$config[path_to_ffmpeg] -i $raw_video_path -copyts -ar 44100 -s 320x240 $new_flv";

Merci d'avance si tu as une idée...
Est-ce que ça vient de ffmpeg, même pas sûr.

Tiffoun

Caqui
02/07/2008, 13h23
Normalement oui, tu devra juste lui dire avec la fonction -f mp4
-f : Sous FFmpeg il appel ça le "Force format" comme pour dans notre exemple si l'on veut encoder en *.flv

Aurao
02/07/2008, 11h14
Bonjour, je suis désolé de réveiller un topic aussi ancien, mais j'aimerais une information supplémentaire.

Cette méthode accepte-t-elle d'autres formats vidéos en entrée ? (mp4,ogg,mpg...) Si oui, faut-il le préciser ?

J'ai essayer de chercher sur la doc mais je suis nouveau dans le monde de linux, et j'ai encore un peu de mal

Merci

Caqui
17/10/2007, 11h16
Le truc la c'est que tu ne le fait pas sur ton pc avec windows mais c'est ton serveur linux qui fait tout, tout seul

jasper
16/10/2007, 08h32
J'utilise Video To Flash Converter PRO convertir avi en flv...

Caqui
07/03/2007, 00h09
Je viens de renommer en ma_video.avi

sadkun
07/03/2007, 00h01
Eheh Shippûden monsieur a bon goût

Bien sympas le tuto jle garde sous la main pourrait m'être utile

Merci

Caqui
06/03/2007, 23h59
Une fois que vous avez installé ffmpeg sur votre serveur linux, comment faire pour encoder un avi en flv ?
Pour installer ffmpeg vous pouvez suivre ce HOW-TO sur ce même forum fort bien fait !

- Pour faire simple je vous donne une commande que j'utilise tout les jours depuis peu, puis nous allons expliquer chaque options. C'est le plus simple pour apprendre.

Voici la commande :
ffmpeg -i ma_video.avi -s 640x480 -ar 44100 -aspect 4:3 -pass 1 -b 768k -r 24 -acodec mp3 -ab 64 -f flv -y ma_video.flv
Nous allons vous expliquer ce que fond chaque options :
-i : C'est le nom de votre vidéo / exemple : ma_video.avi
-i ma_video.avi
-s : C'est le format de votre vidéo "wxh" / exemple : 640x480
-s 640x480
-ar : C'est la frequence audio / exemple : 44100 Hz par default sous ffmpeg
-ar 44100
-aspect : C'est "aspect ratio" / exemple : 4:3 ou 16:9
-aspect 4:3
-pass : C'est une option FFmpeg soit 1 ou 2, à ce que j'ai compris si vous le mettez à 1 il vas légèrement modifier le bitrate demander, et en option 2 la vidéo est produite au bitrate demandé exact. Je vous conseil de le laisser en 1.
-pass 1
-b : C'est le bitrate que vous voulez.. Plus la valeur est haute, plus la qualitée de l'image sera net mais la vidéo beaucoup plus lourd / exemple: 200k (par default sous ffmpeg) Moi qui encode des vidéo en 640x480 je mets cette option à 768k ce qui me réduit de très peu la taille de la vidéo. 200Mo en avi pour 175Mo en flv.
-b 768k
-r : C'est le nombre FPS (images par secondes).. Tout dépends si votre vidéo est rapide ou pas et si elle demande beaucoup en image ou pas.. Pour etre sur vous pouvez mettre 24. Mais parreil que le bitrate plus il y aura d'FPS plus la vidéo sera lourde.
-r 24
-acodec : C'est le codec pour le son / exemple : Mp3
-acodec mp3
-ab : C'est le bitrate audio / exemple 32 ou 64 par default sous FFMpeg
-ab 64
-f : Sous FFmpeg il appel ça le "Force format" comme pour dans notre exemple si l'on veut encoder en *.flv
-f flv
-y : C'est le nom final que vas porter votre vidéo, vous pouvez lui donner un nom completement différent de celui en *.avi
-y ma_video.flv
Il existe beaucoup d'autres options, elles sont disponible sur la doc officiel (en anglais) : C'est pas la !
Désoler d'avance des fautes.. Si les modérateurs veulent les corriger, pas de problème ! ^^