ffmpeg drawtext et watermark crée uniquement un filigrane mais pas de texte

2

Si j'essaie d'ajouter un texte et un filigrane en même temps, seul le filigrane s'affiche.

ffmpeg -i i.mp4 -vcodec libx264 -f mp4 
  -vf drawtext="fontfile=/[...]/share/fonts/freefont-ttf/FreeSans.ttf
    :text='TESTING':[email protected]:fontsize=36:x=00: y=40" 
  -vf 'watermarkfile.png [watermark]; [in][watermark] overlay=0:0 [out]' o.mp4

(Tout en une ligne. Ici, j'ai ajouté des sauts de ligne pour plus de clarté.)

Si je supprime la partie en filigrane, le texte apparaît à la place, comme suit:

ffmpeg -i i.mp4 -vcodec libx264 -f mp4 
  -vf drawtext="fontfile=/[...]/share/fonts/freefont-ttf/FreeSans.ttf
    :text='TESTING':[email protected]:fontsize=36:x=00: y=40" 
  o.mp4

Mais comment puis-je obtenir le texte et le filigrane en même temps?

tomsv
la source
Vous devez toujours également inclure la sortie complète de la console ffmpeg.
llogan

Réponses:

9

Vous devriez effectuer le filtrage en un seul graphique :

ffmpeg -i i.mp4 -i watermarkfile.png -filter_complex \
"[0:v]drawtext=fontfile=/path/to/fonts/FreeSans.ttf:text='TESTING':[email protected]:fontsize=36:x=00:y=40[text]; \
[text][1:v]overlay[filtered]" -map "[filtered]" \
-map 0:a -codec:v libx264 -codec:a copy output.mp4
  • Utilisez -filter_complexau lieu de -vfavec plusieurs entrées et / ou sorties.
  • Vous n'avez pas besoin d'utiliser le moviefiltre source multimédia.
  • L'audio peut être copié en flux au lieu d'être recodé.
  • Voir le Guide de codage FFmpeg et x264 pour des suggestions de codage.
  • Voir la documentation sur les filtres drawtextet overlayvidéo pour plus d'informations.
llogan
la source
Merci. Voici la suite de cette question: superuser.com/q/706373/217699
tomsv
Comment ajouter un caractère spécial dans mon texte en filigrane? Ici j'ai posté la question. S'il vous plaît répondez-moi - stackoverflow.com/questions/38266469/…
Chinmay235