NVENC HEVC x264 encoder ffdshow - Traitement Vidéo - Video & Son
Marsh Posté le 05-03-2017 à 10:45:13
Tu es sûr qu'il faut bien choisir le x264 vfw pour un encodage GPU ?
Marsh Posté le 05-03-2017 à 10:59:36
Les autres sélections ne proposent pas d'encodage GPU.
le mmpeg devrait le supporter mais celui que j'ai ne le propose pas:
Marsh Posté le 05-03-2017 à 12:42:07
Et si tu choisis ffdshow video encoder, tu n'as pas accès à d'autres réglages ?
Marsh Posté le 05-03-2017 à 13:03:38
j'ai essayé l'encodage manuel en utilisant cuda,
la sortie est juste dégueulasse, je vais rester au cpu je crois ^^
Note: j'accélère la vidéo par 30x
La commande GPU qui donne un fichier de 73 MB de qualité dégueux:
ffmpeg.exe -loglevel warning -y -hwaccel cuvid -c:v h264_cuvid -vsync 0 -i C:\Fraps\Movies\first_test_20A.avi -vf "setpts=(PTS-STARTPTS)/30" -q:v 1 -vcodec h264_nvenc C:\Fraps\Movies\fastvideo_gpu.avi
Et ici avec le CPU (fichier de 188 MB parfait)
ffmpeg.exe -loglevel warning -y -i C:\Fraps\Movies\first_test_20A.avi -vf "setpts=(PTS-STARTPTS)/30" -q:v 1 C:\Fraps\Movies\fastvideo.avi
Marsh Posté le 05-03-2017 à 14:31:19
Et tu ne peux pas encoder en mode CRF avec le GPU ? Si non il doit y avoir moyen de changer le débit.
Marsh Posté le 05-03-2017 à 14:53:08
1, cfr
Frames will be duplicated and dropped to achieve exactly the requested constant frame rate.
https://ffmpeg.org/ffmpeg.html#Video-Options
je ne vois pas en quoi ça changerai la qualité.
Tu voulais peut être dire constant bit rate (CBR) ?
De toute façon l'encodage GPU prends plus de temps que le CPU.
Marsh Posté le 05-03-2017 à 15:03:26
J'ai mis CRF (Constant Rate Factor), pas cfr.
https://trac.ffmpeg.org/wiki/Encode/H.264
Marsh Posté le 05-03-2017 à 15:25:34
mea culpa, j'essaie ça de suite
Edit: Il ignore l'option mais la qualité est meilleur.
L'utilisation GPU est basse (bcp plus basse que mon encodeur Vidéo séparé).
Je laisse tomber.
ffmpeg.exe -y -hwaccel cuvid -c:v h264_cuvid -vsync 0 -i C:\Fraps\Movies\short_movie.avi -vcodec h264_nvenc -crf 22 C:\Fraps\Movies\short_movie_gpu.avi
Codec AVOption crf (Select the quality for constant quality mode) specified for output file #0 (C:\Fraps\Movies\short_movie_gpu.avi) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
Output #0, avi, to 'C:\Fraps\Movies\short_movie_gpu.avi':
Metadata:
ISFT : Lavf57.66.102
Stream #0:0: Video: h264 (h264_nvenc) (Main) (H264 / 0x34363248), cuda, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 2000 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.81.100 h264_nvenc
Side data:
cpb: bitrate max/min/avg: 0/0/2000000 buffer size: 4000000 vbv_delay: -1
Stream mapping:
Stream #0:0 -> #0:0 (h264 (h264_cuvid) -> h264 (h264_nvenc))
P
Marsh Posté le 05-03-2017 à 09:38:43
Hello,
J'utilise les filtres ffdshow encoder pour pouvoir convertir les sessions teamviewer
vers du 264.
Avec l'outil intégré de teamviewer (dispo en ouvrant une sesssion sauvegardée).
La conversion se passe bien mais n'utilise pas les GPU Pascal.
Y aurait-il un codec ou une version spécifique pour compresser en utilisant les GPU NVIDIA PASCAL ?
Sinon je dois exporter en non compressé et puis utiliser mon soft de compression qui lui utilise les cartes graphiques,
mais bon, comme c'est en deux étapes, on ne gagne plus grand chose.
Merci d'avance pour vos réponses.