ffmpeg statut & qualité / cuda (CPU/GPU)

ffmpeg suis-je en train de faire?

Beaucoup de temps a passé depuis que j'utilise ffmpeg pour convertir des clips sur mon serveur web, maintenant que mp4 (h264 & aac) est la norme générale (travaux sur chaque console, smartphone, smartTV, pc), j'ai décidé de convertir mes vieux clips à partir de divers appareils photo numériques pour ce nouveau conteneur/codecs.

  1. moins d'espace & de la même qualité.
  2. compatibilité
  3. de soutien pour les balises (subler pour mac)

après quelques recherches, j'ai opté pour ffmpeg, en raison de diverses raisons

  1. ligne de commande (j'ai fait mon interface web simple avec les paramètres par défaut auquel j'execute avec php exec)
  2. la qualité/taille de

J'ai lu que beaucoup de coûteux logiciels de conversion vidéo ne sont pas en mesure de gérer à faible bitrate des vidéos correctement. J'ai aussi testé quelques uns d'entre eux et, personnellement, je ne pouvais pas trouver les bon réglages d'exportation ou je n'étais pas impressionné par les résultats... certains avaient fixes d'exportation par défaut, les réglages, la plupart avaient une plus faible qualité de la vidéo à la même taille. ffmpeg me permet de définir la crf (de 18 à 24 ans en général) et preset (veryslow, rapide..) sorcière me permet de réduire considérablement la taille du fichier maintenir le même
qualité visible.

Dit que je suis en utilisant le preset à veryslow.(il y a aussi le placebo, mais le fichier vidéo final n'est que de 1% de plus petite taille).

Et voici la commande que j'utiliser

ffmpeg
-y //overwrite the file if it exists

-i INPUTFILE //replace with the input file

-metadata title=THETITLE //set a nice title, visible on modern devices
-metadata date=THEDATE //set a nice title, visible on modern devices

-c:v libx264 //use the h264 codec
 -crf 21 //try different numbers between 18-26
 -preset veryslow //placebo,slow,fast,ultrafast==big file 
 -tune film //tune it a little
 -pix_fmt yuv420p //preferred on most modern devices
 -profile:v main //preferred on most modern devices
 -level 3.1 //preferred on most modern devices 
 -refs 4 //preferred on most modern devices

-c:a libfdk_aac //use aac
 -metadata:s:a language=eng //set a language, visible on modern devices 
 -b:a 128k //audio bitrate 128k is like mp3 192k
 -ar 48000 //44100 ... whatever
 -ac 2 //audiochannels
 -movflags +faststart //move the metadata in the front of the video so it loads faster

OUTPUTFILE

certains caméscope clips avec m2ts disposent déjà de l'avc/h264 codec compatible donc j'ai juste copier le flux.
certains ont le ac3/dolby sorround audio. - Je convertir de l'audio, mais garder le ac3 comme seconde piste audio cartographie de la ffmpeg ruisseaux.cela me permet de regarder la mp4 sur les navigateurs et les appareils mobiles, mais je suis capable de garder le son surround à la lecture sur certains téléviseurs, lecteurs media ou des appareils comme l'apple tv.

pas que je ne suis pas heureux avec la vitesse (en utilisant quad core), mais j'ai lu récemment encore sur cuda opencl, et il y a aussi le simple fait que je ne suis pas en utilisant d'autres convertisseurs de ffmpeg depuis beaucoup de temps.

Est ffmpeg (avec le réglage que j'utilise) un bon convertisseur de garder la même qualité de la vidéo que la source de la réduction de l'espace occupé par et de en moyenne de 30 à 40% ?

De la GPU de conversion vraiment mauvais (cuda .. test une gtx970)?
il serait bien d'ajouter un peu plus de vitesse pour les conversions en utilisant à la fois le gpu et le cpu..mais pour ma compréhension, ils ne peuvent pas travailler ensemble??? et en utilisant uniquement le gpu est un drastical perte de qualité...cpu si plus précis, le gpu est plus rapide en calcul sont trop imprécises, ce que j'ai lu.. donc coûteux logiciels utiliser cuda seulement pour la prévisualisation... droit?

Est ffmpeg ou un autre logiciel compatible avec les CPU+GPU de codage?
je ne me souviens pas où, mais j'ai lu que le ffmpeg n'est pas une bonne videoconverter.

je suis vraiment heureux avec la taille/qualité, j'ai obtenu une moyenne de 30% dans l'espace sans perte de qualité visible. Avec quelques paramètres supplémentaires je peux ajuster certaines très anciennes vidéos analogiques qui sont desentrelacé vraiment dans une mauvaise voie.

je pourrais peut-être obtenir plus de la taille/qualité avec un autre logiciel???

note: j'aime ffmpeg.c'est gratuit et c'est en ligne de commande afin que je puisse créer ma propre interface avec php html & js et l'utiliser sur plusieurs machines sans avoir besoin de l'installer dans tous les appareils que j'utilise. je uplad l'idevice clips directement à l'ffmpeg serveur.

btw.: expliquer les downvotes...

EDIT:

@talonmies ...cuda de la balise supprimés :

http://www.nvidia.com/object/cuda_home_new.html

CUDA® est une plateforme d'informatique parallèle et du modèle de programmation inventé
par NVIDIA. Il permet une augmentation spectaculaire dans le calcul de la performance par
en exploitant la puissance de l'unité de traitement graphique (GPU). Avec
des millions de compatible CUDA Gpu vendus à ce jour, les développeurs de logiciels,
les scientifiques et les chercheurs sont de trouver une large variété d'utilisations possibles pour les GPU
le calcul avec CUDA. Voici quelques exemples: - Voyez plus à:
http://www.nvidia.com/object/cuda_home_new.html#sthash.dEYaqae7.dpuf

n'est pas cuda le modèle de programmation théorique bibliothèque ffmpeg doit de soutien pour gérer les GPU de codage sur les cartes nvidia comme la gtx 970?? comme le badaboom logiciel http://www.geforce.com/games-applications/pc-applications/badaboom-media-converter.

Pour faire GPU & CPU, vous pouvez faire les deux dans des processus séparés. Je n'ai pas utiliser FFMPEG, mais j'ai utilisé mencoder qui utilise FFMPEG sous les couvertures et j'ai souvent exécuter plusieurs instances en même temps (j'ai écrit un simple front-end qui le rend très facile à déclencher simultanément plusieurs fois transcodings. (la version de mencoder que j'utilise est ancien et n'est pas multi-thread, ne sais pas si c'est le cas maintenant, mais j'ai détesté la perte de cœurs quand j'ai eu un tas de vidéos de transcoder). Donc, je suppose que vous pourriez faire un GPU d'instance et d'un PROCESSEUR instance simultanément à partir de la ligne de commande.
Désolé, mencoder ne pas utiliser FFMPEG, je ne pense pas. Mais je pense qu'ils utilisent la même bibliothèque sous-jacente. Peut-être que c'était elle. Désolé, été un long temps depuis que j'ai eu à traiter avec autre chose que mon front-end.
avec ffmpeg j'ai tous mes cœurs de travailler correctement et de se déplacer 150fps sur la sd et le double de la valeur par défaut des images sur hd, mais il semble que ffmpeg ne prend pas en charge les GPU de codage
cette aide verylow preset.
ouais mencoder devrait être une alternative à l'ffmpeg ..mais ça n'a bot de soutien multi-threads? ce serait très lente..

OriginalL'auteur cocco | 2014-11-03