Ako opraviť chybu „Minulé trvanie príliš veľké“ v programe FFmpeg?



Vyskúšajte Náš Nástroj Na Odstránenie Problémov

FFmpeg je bezplatný program s otvoreným zdrojovým kódom, ktorý sa používa na prácu s videom, zvukom a inými multimediálnymi prúdmi. Program bol navrhnutý tak, aby spracovával spracovanie obrazových a zvukových súborov pomocou príkazového riadku. Avšak pomerne nedávno prichádza veľa správ o „ Minulé trvanie je príliš veľké ”Chyba pri kódovaní alebo zmene mierky videa.



Logo FFmpeg



Čo spôsobuje chybu „Minulé trvanie príliš veľké“ vo FFmpeg?

Po prijatí mnohých správ od viacerých používateľov sme sa rozhodli problém prešetriť a vyvinuli sme súbor riešení, ktoré ho majú úplne napraviť. Pozreli sme sa tiež na dôvody, kvôli ktorým sa táto chyba spúšťa, a uviedli sme ich takto:



  • Chýba rámcové rozlíšenie: Vo väčšine prípadov je problém spôsobený nezadaním vstupnej snímkovej rýchlosti pre obrázky. To má za následok, že program predpokladá, že vstupný snímkový kmitočet je 25 snímok za sekundu, čo môže spôsobiť problémy, ak to tak nie je.
  • Nastavenia synchronizácie nie sú implementované: U väčšiny používateľov problém vyriešila implementácia určitých nastavení synchronizácie. Niekedy sa nemusí stať, že sa rámce synchronizujú správne, kvôli čomu by mohli niektoré rámce vypadnúť a mohla by sa spustiť táto chyba.

Teraz, keď máte základné znalosti o povahe problému, prejdeme k riešeniam. Nezabudnite ich implementovať v konkrétnom poradí, v akom sú predložené, aby ste sa vyhli konfliktom.

Riešenie 1: Pridanie vstupných rámcov

Ak nebola pridaná snímková rýchlosť videa, mohlo by to mať za následok vynechanie niektorých snímok a spustila sa chyba. Preto v tomto kroku pridáme vstupné rámce pre toto:

  1. Sledujte zhromaždenie, ktoré ste použili na konverziu videa podobný k nasledujúcemu
    ffmpeg -i% 05d.png -r 24 -c: v libx264 -crf 5 out.mkv
  2. Teraz jednoducho pridať the snímok za sekundu na zvolanie použité nasledovne
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5 out.mkv
  3. Skontrolujte, či problém pretrváva.

Riešenie 2: Používanie synchronizačných príznakov

Pridanie príznakov synchronizácie môže pomôcť synchronizovať výstupné a vstupné video podľa počiatočných snímkových frekvencií videa. Ak teda neboli pridané synchronizačné príkazy, je možné, že sa rámce nesynchronizujú správne. V tomto kroku pridáme synchronizačné príkazy



  1. V tejto fáze asi musíte byť použitím nasledujúce zvolanie
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5 out.mkv
  2. Namiesto toho však použitie nasledujúce zvolanie
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5 out.mkv -async 1 -vsync 1
  3. Upozorňujeme, že sme práve pridali „ -async 1 -vsync1 ”K zvolaniu a toto je potrebné pridať na konci zvolania, ktoré používate.
    Poznámka: Vaše pôvodné zvolanie sa môže líšiť od toho, ktorý ste použili ako príklad. Zmeny pridané k zvolaniu by sa však nemali líšiť.
2 minúty prečítané