ffmpeg를 더 조용하고 덜 장황하게 만들려면 어떻게해야합니까? 조용하게 만들 수 있습니까? 나는 시도했다 -v 0(그리고

기본적으로 ffmpeg는 빌드 할 때, 빌드하는 방법, 코덱 등의 모든 로타 메시지를 stderr에 보냅니다.

어떻게 더 조용하게 만들 수 있습니까?

나는 시도했다 -v 0(그리고 -v 10문서 Set the logging verbosity level.는 입력 범위가 무엇인지 표시하지 않고 아늑하게 말했기 때문에 )-여전히 조용하지는 않다.

시도했지만 -loglevel quiet여전히 조용하지 않습니다.

나는 “아무런 결과도 없다”가 아니라 “조용한”을 찾고 있다고 언급해야한다. 오류가 있으면보고 싶지만 ffmpeg의 구성에 대해들을 필요는 없습니다. 단일. 시각.



답변

ffmpeg -hide_banner -loglevel panic

이것은 현재 답변 아래의 의견에서 언급됩니다.

이 옵션 -hide_banner은 2013 년 말에 도입되었습니다-https: //lists.ffmpeg.org/pipermail/ffmpeg-devel/2013-December/152349.html )


답변

테스트하지는 않았지만 맨 페이지에 수행 할 옵션이 있습니다.

ffmpeg -loglevel panic [rest of your ffmpeg stuff]

이론상 심각한 오류 만 기록되도록해야합니다.


답변

여기 소스 코드의 로그 레벨이 있습니다 (FFmpeg 버전 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   },
    };

답변

나는 다음과 같은 성공을 거두었 다 (기록 시점에 최신 FFMPEG 버전).

-nostats -loglevel 0

그런 다음 사용 시나리오에서 절대적으로 조용합니다.


답변

ffmpeg -loglevel error [other commands]

배너를 숨기고 오류 만 표시합니다. -loglevel warning경고를 보려면 사용 하십시오.

Ffmpeg 3.0.2에서 테스트되었습니다.

로부터 문서 :

-loglevel [반복 +] loglevel | -v [반복 +] 로그 레벨

라이브러리가 사용하는 로깅 레벨을 설정하십시오. “repeat +”를 추가하면 반복 된 로그 출력이 첫 번째 줄로 압축되어서는 안되고 “마지막으로 n 번 반복 된 메시지”줄은 생략됩니다. “반복”도 단독으로 사용할 수 있습니다. “반복”이 단독으로 사용되고 사전 로그 수준이 설정되지 않은 경우 기본 로그 수준이 사용됩니다. 여러 로그 수준 매개 변수가 제공되면 ‘반복’을 사용해도 로그 수준이 변경되지 않습니다. loglevel은 문자열 또는 다음 값 중 하나를 포함하는 숫자입니다.

‘조용함, -8’

아무것도 보여주지 마십시오. 조용히하세요

‘공황, 0’

치명적인 오류 만 표시하여 프로세스 중단 및 실패와 같은 프로세스 중단을 초래할 수 있습니다. 이것은 현재 아무것도 사용되지 않습니다.

‘치명적인, 8’

치명적인 오류 만 표시하십시오. 이것은 프로세스가 절대적으로 계속 될 수없는 오류입니다.

‘오류, 16’

복구 할 수있는 오류를 포함하여 모든 오류를 표시하십시오.

‘경고 24’

모든 경고 및 오류를 표시하십시오. 부정확하거나 예상치 못한 이벤트와 관련된 메시지가 표시됩니다.

‘info, 32’

처리하는 동안 유익한 메시지를 표시하십시오. 이것은 경고 및 오류에 추가됩니다. 이것이 기본값입니다.

‘verbose, 40’

info더 자세한 정보를 제외하고 와 동일합니다 .

‘디버그, 48’

디버깅 정보를 포함한 모든 것을 보여줍니다.

‘추적, 56’

기본적으로 프로그램은 stderr에 로그하며, 터미널에서 색상을 지원하는 경우 오류 및 경고를 표시하는 데 색상이 사용됩니다. 로그 색상은 환경 변수를 설정 해제 할 수 있습니다
AV_LOG_FORCE_NOCOLOR하거나 NO_COLOR, 또는 환경 변수를 설정 강제 할 수 있습니다 AV_LOG_FORCE_COLOR. 환경 변수 사용 NO_COLOR은 더 이상 사용되지 않으며 다음 FFmpeg 버전에서 제거됩니다.


답변

다음은 macOS에서 나를 위해 일했습니다.

ffmpeg -v quiet

또는 진행 상황 만 보려면 :

ffmpeg -v quiet -stats

답변

grep을 통해 stderr를 파이프 할 수 있습니다. 예를 들어, 구성 정보를 제거하려는 경우 다음과 같이 수행 할 수 있습니다.

% ffmpeg -i infile.avi -s 640x480 outfile.avi >/dev/null 2>&1 | grep -v configuration: