Wie kann ich ffmpeg leiser/weniger wortreich machen?

Wie kann ich ffmpeg leiser/weniger wortreich machen?

Standardmäßig sendet ffmpeg eine ganze Menge Nachrichten an stderr: wann es erstellt wurde, wie es erstellt wurde, Codecs usw. usw. usw.

Wie kann ich es leiser machen?

Ich habe es versucht -v 0(und -v 10da in der Dokumentation nur schüchtern davon die Rede ist, Set the logging verbosity level.ohne einen Hinweis auf den Eingabebereich zu geben), ist es immer noch nicht leise.

Ich habe es versucht -loglevel quiet, aber es ist immer noch nicht leise.

Ich sollte erwähnen, dass ich nach „leiser“ suche, nicht nach „niemals einer Ausgabe“. Wenn ein Fehler auftritt, möchte ich ihn sehen, aber ich muss nicht jedes Mal etwas über die Konfiguration von ffmpeg hören.

Antwort1

ffmpeg -hide_banner -loglevel error

Darauf wird in einem Kommentar unter der aktuellen Antwort angespielt.

Die Option -hide_bannerwurde Ende 2013 eingeführt -https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2013-December/152349.html)

-loglevel warningführt zu mehr Ausgabe als die errorEbene (aber weniger als die Standardebene info), da alle Warnmeldungen angezeigt werden.

-loglevel panicist die am wenigsten ausführliche Ausgabe (sogar Fehlermeldungen werden weggelassen), ist aber nicht dokumentiert.

Die offizielle -loglevelDokumentation finden Sie imffmpeg-DokumentationunterAllgemeine Optionen, Unterabschnitt-loglevel [flags+]loglevel | -v [flags+]loglevel.

Antwort2

Ich habe es nicht ausprobiert, sehe aber auf der Manpage eine Option:

ffmpeg -loglevel panic [rest of your ffmpeg stuff]

Sollte theoretisch dafür sorgen, dass nur schwerwiegende Fehler protokolliert werden.

Antwort3

Hier sind die Loglevels aus dem Quellcode (FFmpeg Version 0.10.2.git)

const struct { const char *name; int level; } log_levels[] = {
        { "quiet"  , AV_LOG_QUIET   },
        { "panic"  , AV_LOG_PANIC   },
        { "fatal"  , AV_LOG_FATAL   },
        { "error"  , AV_LOG_ERROR   },
        { "warning", AV_LOG_WARNING },
        { "info"   , AV_LOG_INFO    },
        { "verbose", AV_LOG_VERBOSE },
        { "debug"  , AV_LOG_DEBUG   },
    };

Antwort4

ffmpeg -loglevel error [other commands]

Dadurch wird das Banner ausgeblendet und nur Fehler angezeigt. Verwenden Sie diese Option, -loglevel warningwenn Sie Warnungen sehen möchten.

Getestet in Ffmpeg 3.0.2.

Von demDokumentation:

-loglevel [Wiederholung+]Loglevel | -v [Wiederholung+]Loglevel

Legen Sie die von der Bibliothek verwendete Protokollierungsebene fest. Das Hinzufügen von „repeat+“ gibt an, dass wiederholte Protokollausgaben nicht auf die erste Zeile komprimiert werden sollen und die Zeile „Letzte Nachricht n-mal wiederholt“ weggelassen wird. „repeat“ kann auch allein verwendet werden. Wenn „repeat“ allein verwendet wird und keine vorherige Protokollierungsebene festgelegt wurde, wird die Standardprotokollierungsebene verwendet. Wenn mehrere Protokollierungsebenenparameter angegeben sind, ändert die Verwendung von „repeat“ die Protokollierungsebene nicht. Die Protokollierungsebene ist eine Zeichenfolge oder eine Zahl, die einen der folgenden Werte enthält:

'ruhig, -8'

Zeigen Sie überhaupt nichts; schweigen Sie.

'Panik, 0'

Zeigt nur schwerwiegende Fehler an, die zum Absturz des Prozesses führen könnten, wie z. B. Assert-Fehler. Dies wird derzeit für nichts verwendet.

'tödlich, 8'

Nur schwerwiegende Fehler anzeigen. Das sind Fehler, nach denen der Vorgang auf keinen Fall fortgesetzt werden kann.

'Fehler, 16'

Alle Fehler anzeigen, auch solche, die behoben werden können.

'Warnung, 24'

Alle Warnungen und Fehler anzeigen. Alle Meldungen zu möglicherweise falschen oder unerwarteten Ereignissen werden angezeigt.

'Info, 32'

Während der Verarbeitung informative Meldungen anzeigen. Dies gilt zusätzlich zu Warnungen und Fehlern. Dies ist der Standardwert.

„ausführlich, 40“

Dasselbe wie info, nur ausführlicher.

'Debuggen, 48'

Alles anzeigen, einschließlich Debuginformationen.

'Spur, 56'

Standardmäßig loggt das Programm in stderr. Wenn die Farbgebung vom Terminal unterstützt wird, werden Farben verwendet, um Fehler und Warnungen zu markieren. Die Farbgebung des Protokolls kann durch Festlegen der Umgebungsvariable AV_LOG_FORCE_NOCOLORoder deaktiviert NO_COLORoder durch Festlegen der Umgebungsvariable erzwungen werden AV_LOG_FORCE_COLOR. Die Verwendung der Umgebungsvariable NO_COLORist veraltet und wird in einer der nächsten FFmpeg-Versionen wegfallen.

verwandte Informationen