Profil H254 avec ffmpeg

Le
Alf92
Bonjour,

Quand j'encode avec ffmpeg en H264 j'utilise le paramètre -vcodec libx264, et
j'obtiens un fichier aux caractéristiques suivantes (Mediainfo) :
Format/Info : Advanced Video Codec
Profil du format : High@L2.1
Ce fichier n'est pas lisible sur le player de ma Freebox HD (V5).

Comment faire pour obtenir avec ffmpeg un fichier aux caractéristiques
suivantes, qui lui passe sur la Freebox :
Format/Info : Advanced Video Codec
Profil du format : Baseline@L1.3

Merci
Publicité
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Stephane Legras-Decussy
Le #24468591
Le 11/05/2012 11:56, Alf92 a écrit :
Bonjour,

Quand j'encode avec ffmpeg en H264 j'utilise le paramètre -vcodec
libx264, et j'obtiens un fichier aux caractéristiques suivantes
(Mediainfo) :
Format/Info : Advanced Video Codec
Profil du format :
Ce fichier n'est pas lisible sur le player de ma Freebox HD (V5).

Comment faire pour obtenir avec ffmpeg un fichier aux caractéristiques
suivantes, qui lui passe sur la Freebox :
Format/Info : Advanced Video Codec
Profil du format :




à priori il faut utiliser les presets avec l'option

-vpre xxxx

http://en.wikibooks.org/wiki/FFMPEG...uide/h.264

(c'est pas garanti que ça marche pareil dans win et linux... grrr)

c'est pas normal amha que la freebox refuse du high ou du main

et level 1.3 c'est 320x288 @30fps ... c'est genre pour les ipods.

je persiste à penser que ffmpeg est inutilisable sans des
-target clairs et testés...

s'en servir à la main et un peu au pif, c'est jouer au testeur fou...
Stephane Legras-Decussy
Le #24468801
Le 11/05/2012 13:38, Stephane Legras-Decussy a écrit :




sinon tu as cette version de ffmpeg qui contient pas
mal de fichiers preset.

la version officielle ffmpeg.org binaire pour windows
ne contient quasi rien en fichiers preset.

le mec a fait un .bat qu'il est assez facile de décortiquer.

et aussi tu ouvres les fichiers preset avec le bloc note pour
voir les options mystérieuses.

par exemple profil baseline c'est ça :

coder=0
bf=0
flags2=-wpred-dct8x8
wpredp=0
Stephane Legras-Decussy
Le #24468791
Le 11/05/2012 14:23, Stephane Legras-Decussy a écrit :




le lien :

http://numericapassion.online.fr/?a...s-ou-moins
Alf92
Le #24469361
"Stephane Legras-Decussy" de discussion : joj0m6$sbq$
Le 11/05/2012 14:23, Stephane Legras-Decussy a écrit :




le lien :

http://numericapassion.online.fr/?a...s-ou-moins



tout ceci a l'air très intéressant mais lorsque je mets les arguments suivants :
-vcodec libx264 -vpre libx264-baseline
j'ai immanquablement la réponse suivante :
File for preset 'libx264-baseline' not found

j'ai essayé dans tout les sens, impossible à faire fonctionner...
Stephane Legras-Decussy
Le #24469751
Le 11/05/2012 18:58, Alf92 a écrit :


tout ceci a l'air très intéressant mais lorsque je mets les arguments
suivants :
-vcodec libx264 -vpre libx264-baseline
j'ai immanquablement la réponse suivante :
File for preset 'libx264-baseline' not found

j'ai essayé dans tout les sens, impossible à faire fonctionner...



tu as ouvert le preset baseline avec le notepad ?

tu as ça :
coder=0
bf=0
flags2=-wpred-dct8x8
wpredp=0

donc tu le fais toi même à la main :

ffmpeg -i source -vcodec libx264 -coder 0 -bf 0 ... etc

à noter que -bf 0 ça désactive les B-frame qui sont les trucs les
plus lourds à décoder... d'où l'utilisation du baseline dans les
engins à puissance modeste.
Alf92
Le #24470001
"Stephane Legras-Decussy"
tout ceci a l'air très intéressant mais lorsque je mets les arguments
suivants :
-vcodec libx264 -vpre libx264-baseline
j'ai immanquablement la réponse suivante :
File for preset 'libx264-baseline' not found

j'ai essayé dans tout les sens, impossible à faire fonctionner...



tu as ouvert le preset baseline avec le notepad ?

tu as ça :
coder=0
bf=0
flags2=-wpred-dct8x8
wpredp=0

donc tu le fais toi même à la main :

ffmpeg -i source -vcodec libx264 -coder 0 -bf 0 ... etc



oui, j'ai fait ça "à la mano", mais en sortie le fichier est encore en high
profil 2.1.
en tout cas c'est ce qui est indiqué par MediaInfo.

à noter que -bf 0 ça désactive les B-frame qui sont les trucs les
plus lourds à décoder... d'où l'utilisation du baseline dans les
engins à puissance modeste.



oui.

c'est merdique cette gestion de preset dans ffmpeg.
dommage...

de toute manière le problème initial ne vient pas de là.
j'ai remuxé mon fichier MKV (encodé par ffmpeg en H264 high profile / AAC) en
direct stream copy avec MKVtoolnix : ça marche sur la Freebox HD V5.
ce n'était donc pas un pb de profil H264, mais plutot un pb de container MKV ou
d'entête de fichier...


- note 1 : en revanche le même fichier remuxé en direct stream copy avec
MediaCoder ne passe pas sur la FbxHD.

- note 2 : le même fichier réencodé par MediaCoder avec la librairie X264 (et
non ffmpeg) passe correctement sur la FbxHD, toujours en MKV.

- note 3 : le pb venant du container ou de l'entête, j'ai tenté un changement de
container MKV vers AVI.
je n'y suis pas parvenu.
il semble donc, comme je l'ai déjà signalé ici, qu'il soit impossible de mettre
du H264/AAC dans de l'AVI.
Stephane Legras-Decussy
Le #24469981
Le 12/05/2012 00:28, Alf92 a écrit :

oui, j'ai fait ça "à la mano", mais en sortie le fichier est encore en
high profil 2.1.
en tout cas c'est ce qui est indiqué par MediaInfo.



grrr... voilà pourquoi il m'énerve cet ffmpeg, il fait jamais ce qu'on
pense...

j'ai enfin trouvé ce qui devrait marcher, il suffit de
faire :

-vcodec libx264 -vprofile baseline

ça encode sans erreur chez moi.
ça n'utilise pas les ffpreset mais les preset intégrés dans x264.

(un beau merdier hein ! )


de toute manière le problème initial ne vient pas de là.
j'ai remuxé mon fichier MKV (encodé par ffmpeg en H264 high profile /
AAC) en direct stream copy avec MKVtoolnix : ça marche sur la Freebox HD
V5.
ce n'était donc pas un pb de profil H264, mais plutot un pb de container
MKV ou d'entête de fichier...


- note 1 : en revanche le même fichier remuxé en direct stream copy avec
MediaCoder ne passe pas sur la FbxHD.

- note 2 : le même fichier réencodé par MediaCoder avec la librairie
X264 (et non ffmpeg) passe correctement sur la FbxHD, toujours en MKV.

- note 3 : le pb venant du container ou de l'entête, j'ai tenté un
changement de container MKV vers AVI.
je n'y suis pas parvenu.
il semble donc, comme je l'ai déjà signalé ici, qu'il soit impossible de
mettre du H264/AAC dans de l'AVI.



l'ensemble reste donc un beau merdier absolument pas fiable.

pour moi la conclusion c'est qu'il vaut mieux un soft graphique
fiable qui a fait tout ce boulot à notre place...

mpegStreamclip a bonne réputation, à voir...
Alf92
Le #24470031
"Stephane Legras-Decussy"
oui, j'ai fait ça "à la mano", mais en sortie le fichier est encore en
high profil 2.1.
en tout cas c'est ce qui est indiqué par MediaInfo.



grrr... voilà pourquoi il m'énerve cet ffmpeg, il fait jamais ce qu'on
pense...

j'ai enfin trouvé ce qui devrait marcher, il suffit de
faire :

-vcodec libx264 -vprofile baseline

ça encode sans erreur chez moi.
ça n'utilise pas les ffpreset mais les preset intégrés dans x264.



je vais tenter.
mais on peut qd même spécifier la résolution ou autres paramètres ?

(un beau merdier hein ! )


de toute manière le problème initial ne vient pas de là.
j'ai remuxé mon fichier MKV (encodé par ffmpeg en H264 high profile /
AAC) en direct stream copy avec MKVtoolnix : ça marche sur la Freebox HD
V5.
ce n'était donc pas un pb de profil H264, mais plutot un pb de container
MKV ou d'entête de fichier...


- note 1 : en revanche le même fichier remuxé en direct stream copy avec
MediaCoder ne passe pas sur la FbxHD.

- note 2 : le même fichier réencodé par MediaCoder avec la librairie
X264 (et non ffmpeg) passe correctement sur la FbxHD, toujours en MKV.

- note 3 : le pb venant du container ou de l'entête, j'ai tenté un
changement de container MKV vers AVI.
je n'y suis pas parvenu.
il semble donc, comme je l'ai déjà signalé ici, qu'il soit impossible de
mettre du H264/AAC dans de l'AVI.



l'ensemble reste donc un beau merdier absolument pas fiable.

pour moi la conclusion c'est qu'il vaut mieux un soft graphique
fiable qui a fait tout ce boulot à notre place...

mpegStreamclip a bonne réputation, à voir...



essaye MediaEncoder : très propre et très complet.
mais imbitable pour celui qui n'a pas des notions sur l'encodage.
Alf92
Le #24470571
"Alf92"
j'ai enfin trouvé ce qui devrait marcher, il suffit de
faire :

-vcodec libx264 -vprofile baseline

ça encode sans erreur chez moi.
ça n'utilise pas les ffpreset mais les preset intégrés dans x264.



je vais tenter.



bien vu ! ça marche avec la distribution officielle (ffmpeg zeranoe).

mais on peut qd même spécifier la résolution ou autres paramètres ?



je me réponds : oui.


au passage :
j'ai fait des test de qualité en SD et à fort taux de compression.
il n'y a quasiment pas de différence entre H264baseline et H264high.
en revanche pour atteindre la même qualité en Xvid il faut quasiment un bitrate
deux fois supérieur.
Stephane Legras-Decussy
Le #24470951
Le 12/05/2012 11:56, Alf92 a écrit :


bien vu ! ça marche avec la distribution officielle (ffmpeg zeranoe).

mais on peut qd même spécifier la résolution ou autres paramètres ?



je me réponds : oui.




faut bien comprendre la différence entre profil et level.

le moteur H264 est modulable à volonté, c'est comme
si tu pouvais choisir turbo ou pas, double-turbo, echappement
libre, 2 soupapes, 4 soupapes, 5 soupapes... etc

le moteur que tu construis c'est ça le profil.

plus le profil est leger plus c'est leger en consommation CPU
en décodage/encodage.


ensuite le level, c'est le niveau où tu pousses le moteur,
c'est à dire la résolution et fps.

on peut faire du baseline (mono-cylindre 2 temps) poussé
en full HD ... :-)


en pratique aujourd'hui le high 4.0 passe
quasi partout donc c'est juste pour comprendre...
Publicité
Suivre les réponses
Poster une réponse
Anonyme