Få MCEBuddy til at bruge NVidia GPU i stedet for Intel Integrated

Hej, jeg laver nogle konverteringer med MCEBuddy, og hver gang jeg kigger i Task Manager, kan jeg se, at Intel Graphics GPU kører på fuld knald, men NVidia GPU næsten aldrig bliver brugt. Synderen er HandBrake CLI… hvordan kan jeg få den til at bruge min kraftfulde nvidia i stedet for min kraftløse intel?

Tak!

Handbrake bruger Intel QuickSync, og FFMpeg bruger NVidia-acceleration.

Hvis du bruger en profil, der anvender både ffmpeg og handbrake, vil MCEBuddy undersøge, hvilke hardware-kodningsmuligheder der findes, og vil automatisk bruge den hardware-accelererede encoder først. Så hvis din profil har både ffmpeg og handbrake, vil den teste, om NVidia-acceleration understøttes, og derefter bruge ffmpeg først.
De fleste profiler har både ffmpeg og handbrake, så den burde vælge det automatisk, hvis acceleration fungerer.

Logfilerne vil give dig mere information om, hvad der foregår.

Flere detaljer her:

Jeg bruger MKV-profil med høj kvalitet… Jeg vil have 720-videoer så små som muligt med den bedst mulige billedkvalitet.

Hvilken profil vil du anbefale? Hvordan kan jeg finde ud af, om mkv bruger nvidia… det gør den sandsynligvis ikke

2019-01-01T21:01:22 MCEBuddy.AppWrapper.NVidiaQuery → deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 8.0, CUDA Runtime Version = 7.5, NumDevs = 1, Device0 = GeForce GTX 960M
2019-01-01T21:01:22 MCEBuddy.AppWrapper.NVidiaQuery → Result = PASS
→ Process exited with code 0
→ NVidia H.264 Hardware Encoder Detected : True
→ NVidia H.265 Hardware Encoder Detected : False
2019-01-01T21:01:24 MCEBuddy.Transcode.ConvertWithFfmpeg → FFMpeg profile disable software encoder fallback after hardware encoding failure (ffmpeg-DisableSoftwareEncoderFallback) : False
2019-01-01T21:01:24 MCEBuddy.Transcode.ConvertWithFfmpeg → FFMpeg profile optimized for hardware decoding/encoding, disable auto hardware optimization (ffmpeg-UsingHardwareEncoding) : False
→ Ny encoder-værktøjsrækkefølge → handbrake,ffmpeg,mencoder

Vedhæft din konverteringslogfil, så jeg kan se mere detaljeret, hvad der foregår.

A Certain Scientific Railgun - S01E08 - Level Upper.mp4-Converto-2019-01-01T12-30-01.4727138-06-00.log (614,1 KB)

Fra dine logs kan du, hvis du kigger lidt over din NVidia-hardwareforespørgsel, se, at den leder efter Intel QuickSync:

INFORMATION> 2019-01-01T12:31:44 MCEBuddy.AppWrapper.Handbrake → QuickSync encoding support available → True
INFORMATION> 2019-01-01T12:31:44 MCEBuddy.AppWrapper.Handbrake → H.264 encoding support available → True
INFORMATION> 2019-01-01T12:31:44 MCEBuddy.AppWrapper.Handbrake → H.265 encoding support available → True

Den finder ud af, at din grafikdriver rapporterer, at den understøtter Intel QuickSync-hardwareacceleration.

Den finder også ud af, at din grafikdriver rapporterer, at den understøtter NVidia CUDA:

2019-01-01T12:31:45 MCEBuddy.AppWrapper.NVidiaQuery → Result = PASS
→ Process exited with code 0
→ NVidia H.264 Hardware Encoder Detected : True
→ NVidia H.265 Hardware Encoder Detected : False

Du har altså en opsætning, der understøtter både QuickSync og CUDA, hvorfor MCEBuddy ikke ændrer encoder-rækkefølgen, og den bruger encoderne som defineret i profilen (bevarer encoder-rækkefølgen).

→ New encoder tool order → handbrake,ffmpeg,mencoder

Derfor bruger den handbrake til at konvertere din video; og handbrake bruger din Intel-grafik-hardwareencoder og opnår en hastighed på 145 fps:

2019-01-01T12:31:55 MCEBuddy.AppWrapper.Handbrake → [12:31:55] qsv_enc_init: using ‘hardware (1)’ implementation, API: 1.19
2019-01-01T12:31:55 MCEBuddy.AppWrapper.Handbrake → [12:31:55] compute_init_delay: 6006 (2 frames)
2019-01-01T12:31:58 MCEBuddy.AppWrapper.Handbrake → Encoding: task 1 of 2, 0.56 %
2019-01-01T12:32:00 MCEBuddy.AppWrapper.Handbrake → Encoding: task 1 of 2, 1.24 %
2019-01-01T12:32:02 MCEBuddy.AppWrapper.Handbrake → Encoding: task 1 of 2, 1.89 % (148.02 fps, avg 143.78 fps, ETA 00h05m04s)

Så teknisk set bruger den hardware-encoding – bare ikke den encoder, du ønsker.

Hvis du vil have den til at bruge NVIDIA i stedet for QuickSync, skal du ændre din encoder-rækkefølge i profilen:

fra:

order=handbrake,ffmpeg,mencoder

til:

order=ffmpeg,handbrake,mencoder

Jeg skiftede profilerne og havde en vis succes med at fremskynde processen, selvom opgaven udføres af CPU’en i stedet for NVidia GPU’en…

2019-01-02T18:10:46 MCEBuddy.Transcode.ConvertWithFfmpeg --> FFMpeg profile disable software encoder fallback after hardware encoding failure (ffmpeg-DisableSoftwareEncoderFallback) : False
2019-01-02T18:10:46 MCEBuddy.Transcode.ConvertWithFfmpeg --> FFMpeg profile optimized for hardware decoding/encoding, disable auto hardware optimization (ffmpeg-UsingHardwareEncoding) : False
INFORMATION> 2019-01-02T18:10:46 MCEBuddy.Transcode.Convert --> Converting with FFMpeg

Christmas Belle.mp4-Converto-2019-01-02T16-47-21.6000112-06-00.log (2.2 MB)

Nogen andre forslag :frowning: … please

Det ligner ikke, at du har foretaget nogen ændringer i din profil. Den viser den oprindelige rækkefølge:

→ order=handbrake,ffmpeg,mencoder

Du skal redigere profles.conf og ændre rækkefølgen for den profil, du bruger (MKV High Quality)