Comment configurer VLC pour lire correctement le contenu 4K


12

Actuellement, mon principal lecteur multimédia sous Windows (10 Pro x64) est VLC mais j'ai remarqué que lorsque je veux lire du contenu UHD (vidéos 2K, 4K), il se bloque.

Configuration de mon PC: Intel i7 3770, 16 Go de RAM, 512 Go SSD, nVidia GTX 970 4 Go.

Le son est correct mais l'image est gelée (2-3 images par minute ).

J'ai essayé de définir les codecs ou d'activer / désactiver l'accélération GPU sans succès.

Que dois-je régler pour lire ce type de contenu sans flux?

PS: Media Player Classic lit le même fichier de manière fluide mais je veux garder VLC comme lecteur principal.


Est-ce que l'audio continue de jouer sans accroc, seule la vidéo se fige?
Quittez

@dExIT Correct.
Bálint Babics

Avez-vous essayé de modifier les temps de mise en cache et le saut de filtre de boucle FFmpeg, et avez-vous changé vos paramètres de sortie vidéo, disons à DirectX DirectDraw ou OpenGL?
Quittez

Oui, je les ai tous fait, sans succès. Avec OpenGL, l'écran était complètement magenta. J'ai le dernier pilote nV.
Bálint Babics

N'oubliez pas que normalement VLC peut être configuré par défaut. La vidéo est décodée via le processeur, c'est-à-dire les graphiques intégrés. Veuillez voir et essayer de configurer le décodage GPU. wiki.videolan.org/VLC_GPU_Decoding configure le GPU puis les paramètres de sortie doivent être Direct X
dExIT

Réponses:


9

J'ai réussi à reproduire le problème en utilisant VLC version 2.2.4.

Le problème de gel n'existe que si "Décodage accéléré par le matériel" est défini sur autre chose que "Désactiver".

Apparemment, VLC prend désormais en charge le décodage GPU, mais je pense que cela se fait de manière très inefficace.
L'article Comment activer le décodage accéléré gpu dans VLC dit ceci:

les données sont décodées dans le GPU à l'étape de décodage puis retransférées au lecteur afin que les autres étapes, filtrage et streaming par exemple, puissent être traitées.

J'ai réussi à améliorer la fréquence d'images lors de la définition de "Décodage accéléré par le matériel" sur "Désactiver". Cela met tout le fardeau sur le processeur et nécessite donc un processeur solide.

L'utilisateur Journeyman Geek recommande d'augmenter le nombre de threads sous Outils / Préférences / Codecs vidéo "/ FFMPEG / Threads, mais cela a fonctionné pour moi avec la valeur par défaut de 0 qui signifie" Auto ". Vous pouvez expérimenter davantage avec d'autres valeurs pour Threads. Je viens de remarquez que la bibliothèque FFMPEG n'est pas utilisée pour tous les formats vidéo.

VLC ne prend apparemment pas en charge pour le moment (2016) le codec x265, car les vidéos x265 ne sont pas lues lors du téléchargement à partir de 4ksamples.com . Cependant, tout fonctionnait parfaitement avec Media Player Classic.

Edit (2018): VLC fonctionne désormais correctement avec ces fichiers.


Pour une raison quelconque, ma vidéo 4k fonctionne parfaitement lorsque j'ai désactivé l'accélération matérielle. Merci
Chan

1

J'ai expérimenté un peu avec le bain des chiots en vidéo 4k sur 4ksamples.com ainsi que quelques autres. J'ai obtenu une combinaison qui fonctionnait avec ma vidéo de test. Je note qu'un stockage raisonnablement rapide est essentiel pour une lecture de qualité. Étant donné que des essais et des erreurs sont nécessaires, sauvegardez les paramètres actuels. Ces paramètres fonctionnent sur un 3770, 16 Go de RAM et un gforce 980TI dont je sais qu'il est capable de 4K

J'ai changé pas mal de paramètres avancés pour le faire fonctionner. En théorie, je veux que DXVA soit activé mais cela provoque le crash de VLC.

En mode simple dans les préférences, allez dans Outils -> Préférences et entrées / codecs et dans la liste déroulante pour le filtre de déblocage en boucle Skip H.264, changez-le en Tout. Ceci est recommandé par VLC

Basculez pour afficher tout sous les préférences et essayez ces modifications

J'ai désactivé tous les filtres sous Filtres vidéo. Ce fut la dernière chose que je fis et sembla m'aider le plus, alors je commençai ici

Sous "Video Codecs" -> FFMPEG, je mets mes threads à 3. Vous voudrez peut-être expérimenter avec des nombres supérieurs ou inférieurs.

Assurez-vous que tout sous les modules de sortie / DirectX n'est pas coché.

Ces changements semblent avoir fonctionné.

Pour référence, une fois que j'ai supprimé les lignes commentées, mon vlcrc ressemble

[directdraw] 
directx-hw-yuv=0
directx-3buffering=0
[direct3d] 
direct3d-shader=Disabled
[swscale] 
swscale-mode=9
[qt4] 
qt-privacy-ask=0
[x264] 
sout-x264-profile=main
sout-x264-preset=veryfast
sout-x264-tune=film
[qsv] 
sout-qsv-software=1
sout-qsv-h264-profile=decide
sout-qsv-h264-level=decide
sout-qsv-mpeg2-profile=decide
sout-qsv-mpeg2-level=decide
[avcodec] 
avcodec-skiploopfilter=4
avcodec-hw=any
avcodec-threads=3
[waveout] 
waveout-volume=0.700000
[directsound] 
directx-volume=0.700000
[filesystem] 
filetypes=m3u,db,nfo,ini,jpg,jpeg,ljpg,gif,png,pgm,pgmyuv,pbm,pam,tga,bmp,pnm,xpm,xcf,pcx,tif,tiff,lbm,sfv,txt,sub,idx,srt,cue,ssa
[core] 
aout=any
video-deco=0
vout=direct3d
video-filter=swscale
vod-server=any

J'ai un aperçu avec mon vlcrc complet pour 4k ici


1
Malheureusement, cela n'a pas résolu mon problème. J'ai essayé de lire des vidéos 4k à partir de 4ksamples mais cela ne fonctionne pas. J'ai essayé avec seulement vous avez écrit et essayé avec les gits vlcrc aussi. Et je crois qu'il n'utilise pas le GPU.
Bálint Babics

Oui, son processeur uniquement. C'est étrange cependant, j'ai le même processeur et ces paramètres fonctionnent à la fois sur ceux-ci et avec d'autres fichiers
Journeyman Geek

J'ai remarqué que le paramètre Skip Frame sous Input / Codecs-> Video codecs-> ffmpeg a fait une grande différence pour moi. Sauter TOUT se traduit simplement par l'absence d'images sur la sortie, ce qui signifie que seul le son sera lu sans image. BiDir et Non-ref m'ont apporté les plus grandes améliorations de vitesse de lecture.
Tony Sepia
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.