Zou HW-encoding ervoor kunnen zorgen dat de keyframe-interval van 8/10 seconde naar bijna 9 seconden gaat?

Ik heb een onderwerp geplaatst in de algemene discussie, maar nu vraag ik me af of dit een HW-coderingsprobleem is. Het onderwerp waar ik het over heb is HIER. De enige wijzigingen aan mijn systeem waren als volgt:

  1. Windows 8.1 heeft een paar dagen geleden een nieuwe Nvidia-driver geïnstalleerd, maar dit had geen direct effect

  2. Gisteren heb ik MCEBuddy 2.5.4 volledig verwijderd, inclusief alle configuratiebestanden, en NET Framework 4 en 3

  3. Ik heb 2.4.11 opnieuw geïnstalleerd en voor het eerst op dit systeem werkte HW-acceleratie; mijn encodeertijden zijn nu minder dan een uur voor een film van 2 uur, terwijl ze daarvoor 4-6 uur waren… behalve dat mijn keyframes nu bijna 9 seconden zijn in plaats van 8/10 seconden

  4. Vandaag ben ik teruggegaan naar NET Framework 3, vervolgens 4, zonder verandering in snelheid of keyframes.

Ik heb geen idee wat ik moet doen om dit probleem op te lossen. Ik kan sommige van mijn bestanden nu niet goed bewerken vanwege de grote keyframes, maar ik ben dol op de enorme snelheidswinst. Ik gebruik hetzelfde profiel, MKV Normal Quality, waarin een keyframe-interval van 25 wordt vermeld, wat overeenkomt met ongeveer 8/10 seconde bij 30 FPS-video… maar ik krijg keyframes die tien keer zo groot zijn, zonder enig idee wat er is gebeurd.

Alle hulp wordt op prijs gesteld en alvast bedankt.

Ik zou aanraden om de nieuwste BETA-versie te downloaden en vervolgens de logs van die versie mee te sturen. Zo kunnen we een baseline vaststellen en zien wat er aan de hand is voordat we terugkeren naar oudere versies.

Ik deed wat je voorstelde. Ik installeerde de nieuwste BETA en nu zijn de keyframes weer in orde, maar ik ben terug bij erbarmelijke prestaties en superlange encodeertijden. Eén bestand duurde 4 uur 47 minuten, een ander 3 uur 36 minuten en één 2 uur 18 minuten. Met 2.4.11 opnieuw geïnstalleerd had ik gemiddeld minder dan een uur per film, met de langste 1 uur 7 minuten… Ik heb 41 films geconverteerd in 36 uur, maar met de verkeerde keyframe-interval. Ik zal de logs toevoegen van de drie die ik gisteravond met 2.5.5 heb geconverteerd.

4 uur 47 minuten

3 uur 36 minuten

2 uur 18 minuten

De logs waren nuttig. Het verschil tussen de oude en nieuwe versie van MCEBuddy is dat de nieuwe versie nu zowel handbrake als ffmpeg kan gebruiken voor hardware-conversies met NVidia.

Er zijn kleine verschillen in de handbrake- en ffmpeg-instellingen voor hetzelfde profiel, wat in jouw geval lijkt te zorgen voor problemen met je hardware-encoder; deze kan de handbrake-videofilters niet aan.

De oplossing is eenvoudig: open je profiel en verander de volgorde voor je profiel van

order=handbrake,ffmpeg,mencoder

naar

order=ffmpeg,handbrake,mencoder

en ik denk dat dit je probleem zal oplossen.

Dank je, ik zal dat nu proberen en terugkoppelen.

Nou, dat is ook geen goede oplossing; het is beter, maar het is nog steeds een verspilling van tijd en elektriciteit. Ik encodeer dezelfde film die 4 uur en 47 minuten duurde, de log die ik al in mijn oorspronkelijke post had opgenomen. Ik heb tijdens het wachten op je reactie 2.4.11 opnieuw geïnstalleerd en de log staat hieronder.

Dezelfde film gecodeerd met 2.4.11 duurde slechts 33 minuten

Op dit moment gebruik ik 2.5.5 om dezelfde film opnieuw te encoderen en het staat op meer dan 4 keer zo lang te duren als met 2.4.11, en iets minder dan de helft van de tijd die het kostte voordat ik de profielwijziging doorvoerde die je suggereerde.

Is er een manier om het keyframe-intervalprobleem in 2.4.11 gewoon op te lossen? Ik heb films opnieuw gecodeerd die ik eerder had gedaan en als er een kwaliteitsverschil is, kan ik het niet zien, maar het duurt 5 tot 10 keer minder lang, dus ik heb geen nieuwere versie nodig als die zo slecht presteert.

Kun je de logs met het bijgewerkte profiel toevoegen zodat we kunnen vergelijken wat er tussen de twee gebeurt. Als ze allebei ffmpeg gebruiken zou er geen verschil mogen zijn.

My Bloody Valentine 4 uur 47 seconden met 2.5.5

My Bloody Valentine 33 minuten met 2.4.11 maar verkeerde keyframe-interval

Ik ben momenteel dezelfde film aan het encoderen met de profielwijzigingen die je me hebt laten maken en het zal ongeveer nog 2 uur duren, dus ik zal dat logbestand toevoegen wanneer het klaar is

Bedankt

Je hebt de volgorde in je profiles.conf-bestand niet gewijzigd, dus er zal geen verandering optreden.

Je moet profiles.conf openen in je MCEBuddy-installatieconfiguratiemap, je profiel vinden (je gebruikt MKV Normal Quality) en vervolgens

order=handbrake,ffmpeg,mencoder

aanpassen naar

order=ffmpeg,handbrake,mencoder

Na deze wijziging sla je het bestand op (houd er rekening mee dat dit een administratieve map is, dus je moet het bestand mogelijk naar je bureaublad kopiëren, het daar bewerken en daarna terugzetten). Zodra dit is gebeurd, voer je de conversie opnieuw uit en zal deze net zo snel verlopen als 2.4.11. Je gebruikt oudere hardware, een GeForce GT 730, die niet goed werkt met handbrake-filters en beter presteert met ffmpeg.

Ik heb gedaan wat je zei, maar ik heb nog geen taak voltooid met die instellingen omdat het meer dan vier keer langer duurt dan 2.4.11. Ik heb zojuist het configuratiebestand gecontroleerd en de wijziging staat erin. Ik zal dat logbestand toevoegen zodra het over anderhalf uur klaar is.

U hoeft niet te wachten tot het klaar is. U kunt het stoppen en het logboek uploaden.

OK, hier is het logboek voor dezelfde film waar ik eerder de twee andere logboeken voor heb geplaatst. Deze is met de wijziging aan het profiel die je me vroeg aan te brengen. Het zou ongeveer 2 uur en 25 minuten hebben geduurd om te voltooien, ongeveer de helft met 2.5.5 zoals gedownload en geïnstalleerd, en ongeveer 4,5 keer langer dan 2.4.11.

My Bloody Valentine

Zeer nuttig. Versie 2.5.5 gebruikt een nieuwe versie van ffmpeg die een nieuwe driver voor nvidia vereist. Uw driver is te oud en daarom mislukt het en valt het terug op handbrake:

2020-06-16T16:53:27 MCEBuddy.AppWrapper.FFmpeg → [h264_nvenc @ 000000cbe0959800] Driver ondersteunt de vereiste nvenc API-versie niet. Vereist: 9.0 Gevonden: 8.1
2020-06-16T16:53:27 MCEBuddy.AppWrapper.FFmpeg → [h264_nvenc @ 000000cbe0959800] De minimaal vereiste Nvidia-driver voor nvenc is 418.81 of nieuwer
2020-06-16T16:53:27 MCEBuddy.AppWrapper.FFmpeg → Fout bij initialiseren van uitvoerstream 0:0 – Fout bij openen van encoder voor uitvoerstream #0:0 - mogelijk incorrecte parameters zoals bit_rate, rate, width of height

U kunt dus ofwel uw driver updaten of de ffmpeg-versie van 2.4.11 kopiëren en deze in de ffmpeg-map van 2.5.5 plaatsen, dan zou het voor u moeten werken. Idealiter is het echter beter om uw drivers te updaten.

Ik installeer nu de nieuwste driver van de website van Nvidia, maar als het een driverprobleem is, zou ik dan Handbrake prioriteit moeten geven nadat ik de nieuwe videodriver heb geïnstalleerd?.. in versie 2.4.11 heeft Handbrake prioriteit en werkt het het snelst op mijn systeem.

Waarom krijg ik geen e-mailmeldingen wanneer je op dit onderwerp reageert? Ik had je veel sneller kunnen antwoorden.

De nieuwe Nvidia-driver heeft de encodeertijden met ffmpeg weer teruggebracht tot ongeveer een uur, zoals gisteren; ik comprimeer nu een andere film dan eerder. Zou je aanbevelen om eerst Handbrake te proberen boven ffmpeg, zoals de prioriteit standaard is ingesteld in MCEBuddy? Is Handbrake beter dan ffmpeg?

Het enige probleem is dat ik nu 2.5.5 gebruik met goede snelheid, maar de reden waarom ik hier kwam is niet opgelost… de keyframe-interval is nog steeds verkeerd, bijna 9 seconden.

De drie films die ik eerder vandaag met 2.5.5 heb gecodeerd, voordat jij het probleem met mijn snelheid ontdekte, gebruikten allemaal software-encoding en het keyframe-interval is correct… elk bestand dat ik met HW-acceleratie heb gecodeerd, heeft een verkeerd keyframe-interval van bijna 9 seconden. Hoe lossen we dit op?

Ik merkte ook dat mediainfo-analyse van het bestand 1 referentieframes toont, in plaats van 3 zoals in de instellingen. Is er een manier waarop de configuraties niet correct worden doorgegeven bij gebruik van HW-acceleratie?

Bedankt voor al je hulp tot nu toe

Ik heb het keyframe-interval in het configuratiebestand naar 2 gewijzigd en het minimum naar 2, maar er was helemaal geen verandering in het keyframe-interval van het volgende bestand dat ik heb gecodeerd.

Wat doen we nu? De hardware-codering lijkt zijn eigen gang te gaan en negeert het configuratiebestand. Alle hardware-gecodeerde bestanden die ik heb gecontroleerd, hadden slechts 1 referentieframe terwijl het configuratiebestand 3 voorschrijft, en het keyframe-interval is met een factor 10 langer dan het zou moeten zijn.

Dit maakt de resulterende bestanden onbruikbaar, ongeacht hoe snel ze worden gecodeerd.