Arbeiten an einer Tube- Site. Ich starte Videos über ffmpeg auf einem Linux- Server, um sie in mp4 umzuwandeln .
Die Serverspezifikationen:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Stepping: 3
CPU MHz: 3491.749
BogoMIPS: 6983.49
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 8192K
NUMA node0 CPU(s): 0-7
Das Problem beim Testen ist, dass selbst wenn nur 4-5 auf einmal ausgeführt werden, die Auslastung des Servers schnell auf durchschnittlich 36 steigt. Dies ist nur eine einzelne Person. Ich stelle mir vor, wenn es geöffnet wird, werden viele Leute auf einmal hochladen.
Es scheint ffmpeg versucht, alle verfügbaren Ressourcen pro Conversion zu nutzen.
Ich habe gehört, dass Sie die Einstellung -threads ändern können, aber ich kann sie nicht finden. Ich habe einen 8-CPU-Server. Es wird nur für Konvertierungen verwendet, daher habe ich gehört, dass die beste Einstellung zwischen 2 und 4 liegt. Ich kann es testen.
Aber wie ändere ich diese Einstellung? Alles, was ich online sehe, behandelt diese Einstellung, aber nicht die Schritte, um sie zu ändern.
-threads
vor dem Eingang wenden Sie diese Option auf den Eingang (den Decoder) an. Eine verallgemeinerte Verwendung istffmpeg [global options] [input options] -i input [output options] output
.