Próbuję wykonać screencasting, ale ponieważ mój komputer jest o wiele za stary i wolny, wytwarzane wideo jest opóźnione, a aplikacja, którą próbuję nagrać, przestaje odpowiadać z powodu zużycia procesora. Ponieważ w tej chwili nie mogę dokonać aktualizacji, staram się zoptymalizować to, co mam.
Przełączyłem się z GNOME na OpenBox i zabiłem niepotrzebne procesy itp. Nadal nic dobrego. Zoptymalizowałem także aplikację, którą nagrywam, więc jedyną rzeczą, która pozostanie, będzie sam rejestrator, czyli FFMpeg.
Jakie są opcje i flagi, których można użyć, aby uzyskać najlepszą wydajność FFMpeg? Czy są jakieś konkretne kodeki, które są łatwiejsze do przetworzenia niż inne? Będę nagrywać około 10-15 minut na raz, więc coś, co nie wytwarza OGROMNYCH rozmiarów plików, będzie również mile widziane. Jakieś pomysły?
źródło
Odpowiedzi:
Jeśli masz stary komputer, dowolny kodek spowoduje problemy z kodowaniem w czasie rzeczywistym (nie tylko procesor, ale także dysk). Proponuję znaleźć rozdzielczość, która jest wystarczająco niska, aby zmniejszyć rozmiar pliku. Chcę mieć niestandardowe rozdzielczości i liczbę klatek na sekundę (nie można używać mpeg1 / mpeg2). Rozdzielczość i ilość klatek na sekundę wybierz mądrze.
Oto moje sugestie dotyczące przełączników w ffmpeg:
tutaj ustawiłem 800x600 (to może być za mało) i szybkość klatek to 15 fps. Dla lepszej wydajności ustaw liczbę klatek na sekundę od 15 do 10 FPS. Z mojego doświadczenia wynika, że x264 jest szybkim kodekiem i pozwala na niestandardowe resolutiny i prędkości klatek.
Oto konfiguracja MPEG2 (która jest szybsza, ale jest ograniczona rozdzielczością i liczbą klatek na sekundę)
źródło