2015-07-27 4 views
0

Je veux filigrane, réduire la taille, redimensionner et changer le format pour les vidéos sélectionnées. Aussi je dois garder la qualité aussi haut que possible.Ubuntu réduire la taille de la vidéo avec ffmepg et changer le format

Maintenant ce que j'ai:

ffmpeg -i prepared/video.mp4 -i units/video_watermark.png -filter_complex overlay=10:10 -codec:a copy moved/video_test.mp4 

et je suis watermarking vidéo, mais la qualité laisse tomber beaucoup. Aussi j'ai:

ffmpeg -i prepared/video.mp4 -s 1280x720 -b 512k -vcodec mpeg1video -acodec copy 

mais j'ai aussi besoin de réduire le poids autant que possible. Les vidéos reconstruites seront affichées en tant que films en ligne. Ma question serait - est-il possible de faire une ligne et de changer le format en .mp4?

PS. J'ai construit commande:

ffmpeg -i downloaded/movie/movie.avi -c:v libx264 -acodec libfaac -b:a 64k -preset ultrafast -vf "movie=units/video_watermark.png [watermark]; [in][watermark] overlay=10:10 [out]" -movflags faststart prepared/movie.mp4 

mais il me renvoie l'erreur:

ffmpeg version 2.7.1 Copyright (c) 2000-2015 the FFmpeg developers 
    built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04) 
    configuration: 
    libavutil  54. 27.100/54. 27.100 
    libavcodec  56. 41.100/56. 41.100 
    libavformat 56. 36.100/56. 36.100 
    libavdevice 56. 4.100/56. 4.100 
    libavfilter  5. 16.101/5. 16.101 
    libswscale  3. 1.101/3. 1.101 
    libswresample 1. 2.100/1. 2.100 
Unrecognized option 'preset'. 
Error splitting the argument list: Option not found 
+0

Vous devez inclure la sortie de la console ** complète ** pour la dernière commande. – LordNeckbeard

+0

@LordNeckbeard l'a ajouté ci-dessus. –

Répondre

0

Vous ne pouvez pas conserver la qualité originale de la source d'entrée pendant que vous essayez de réduire la taille du fichier. Encore vous pouvez ajuster les propriétés pour que cela soit fait jusqu'à ce que l'oeil humain ne puisse pas reconnaître la différence de qualité. Eh bien, pour répondre à votre question, vous pouvez filigraner, réduire la taille du fichier (réduire la qualité) et redimensionner la vidéo d'entrée dans une ligne de commande.

Pour cela, vous devez utiliser filter_complex pour chaîner tous les filtres requis en conséquence. Pour filigraner, vous pouvez utiliser le filtre overlay et le positionner sur la vidéo. Le filtre scale redimensionnera la vidéo ou l'image selon sa largeur et sa hauteur spécifiées. Important pour ajuster la qualité de la sortie finale, vous pouvez utiliser crf. Vous pouvez également spécifier explicitement la fréquence d'images et le débit de la vidéo si vous avez besoin de plus de contrôle sur l'ajustement de la taille du fichier.

ffmpeg -y -i input_video -i input_image -filter_complex " 
[0:0]scale=1280:720[scaled]; 
[scaled][1:0]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2[vout]" 
-map [vout] -c:v libx264 -crf 22 -movflags faststart output_video 
  • scale filtre ajuste la vidéo (première entrée) à 1280x720. Vous pouvez trouver plus d'options de mise à l'échelle here. Le filtre positionnera l'image du filigrane sur la vidéo mise à l'échelle en son centre.
  • overlay
  • Vous devez choisir un codec approprié pour l'encodage et ici libx264 est pour la sortie mp4.
  • Vous pouvez également ajuster la valeur crf jusqu'à ce que la sortie soit satisfaisante.

L'erreur que vous avez mentionnée n'apparaît pas ici pour votre commande. J'espère que votre version FFmpeg a un problème. Incluez la console pleine non coupée dehors pour l'analyser plus loin.

Espérons que cela aide!

+0

Cela ressemble à une bonne réponse, mais je reçois maintenant l'erreur 'option non reconnue 'crf'.' –

+0

inclure la sortie complète de la console non coupée pour cette commande dans [pastebin] (http://pastebin.com/) – Chamath

+0

http: //pastebin.com/ufnsDwbi –

0

La ligne de configuration ffmpeg est manquante --enable-libx264, donc votre build ne supporte pas le codage avec libx264.

Vos options:

+0

mais quand j'essaye de l'installer, il dit qu'il est déjà installé - http://pastebin.com/Di6RNL0a –

+0

@ ArnasPečelis L'installation 'libx264-dev' ne fera rien pour aider. J'ai déjà énuméré trois options qui permettront de résoudre votre problème. – LordNeckbeard

+0

donc je devrais réinstaller ffmepg? –