사전

Probe 점수는 무엇을 의미합니까?

프로브 점수는 0에서 100 사이의 숫자입니다. 이 점수는 파일의 컨테이너 형식을 FFmpeg가 얼마나 확신하는지를 보여줍니다.

probe-score

Probe 점수는 FFmpeg이 파일의 컨테이너 형식을 얼마나 확신하는지를 의미합니다. FFmpeg은 오디오와 비디오 파일을 읽고 변환하는 멀티미디어 프레임워크이며, 그 프로그램인 ffprobe가 이 점수를 보고합니다.

점수는 0부터 100까지의 정수이며, 숫자가 높을수록 더 잘 맞는다는 뜻입니다. 이 점수는 MKV나 MP4처럼 컨테이너 형식만을 설명합니다. 소리나 영상의 품질을 측정하지는 않습니다.

값이 어디에서 오는지

Probe 점수는 파일 안에 저장되지 않습니다. FFmpeg은 파일을 열 때마다 이 값을 다시 계산합니다.

FFmpeg에는 여러 형식을 위한 작은 감지기가 있습니다. 각 감지기는 파일의 시작 부분을 읽고, 자신의 형식에 해당하는 특징을 찾은 뒤 점수를 반환합니다. 가장 높은 점수를 받은 형식이 선택됩니다.

FFmpeg은 처음에 2048바이트의 데이터를 사용합니다. 어떤 형식도 25점 이상을 얻지 못하면, FFmpeg은 데이터 양을 두 배로 늘려 다시 시도합니다.

기본 제한은 1,048,576바이트, 즉 약 1MB입니다. 마지막 시도에서는 0보다 높은 점수라면 어떤 값이든 충분합니다.

입력에 어떤 형식과 일치하는 MIME type이 보고되면, 해당 형식은 최대 100점까지 30점을 추가로 받습니다. 두 형식이 동일한 최고 점수를 얻으면 FFmpeg은 둘 다 거부합니다. 마지막 시도 후에도 남은 형식이 없으면, FFmpeg은 Invalid data found when processing input 오류를 발생시키고 중지합니다.

파일 확장자가 점수에 어떤 영향을 미치는지

높은 probe 점수가 파일 확장자가 올바르다는 것을 보장하지는 않습니다. 예를 들어, Matroska 감지기는 파일 헤더에 알려진 문서 유형이 있으면 파일 이름이 무엇이든 100점을 반환합니다.

어떤 형식에 감지기가 있는 경우, 확장자가 일치하더라도 보통 0점을 1점으로 올리는 정도에 그칩니다. 감지기가 없는 형식은 확장자에 의존하며, 일치하는 경우 그 형식은 50점을 받습니다. 의심스러운 확장자를 확인하려면, 확장자를 점수 옆에 ffprobe가 보고하는 형식 이름과 비교해 보세요.

값이 어떻게 보이는지

-show_format 옵션을 사용하면, ffprobe는 형식 섹션에 한 줄로 점수를 출력합니다: probe_score=100. ffprobe의 XML 보고서에도 같은 수치가 probe_score라는 이름의 속성으로 포함됩니다.

일반적인 값

이 예시는 FFmpeg 9.0 소스 코드에서 가져왔습니다. 다른 버전에서는 예를 들어 FFmpeg 8.1의 MP3 예시처럼 51점 같은 다른 수치를 줄 수 있습니다.

  • 100: ftyp 또는 moov라는 섹션이 있는 MP4 또는 MOV 파일
  • 100: 알려진 문서 유형이 있는 Matroska 또는 WebM 파일
  • 100: 올바른 스트림 정보가 있는 FLAC 파일
  • 99: 표준 RIFF 헤더가 있는 WAV 파일
  • 52: 시작 부분에 오디오 프레임이 최소 7개 있는 MP3 파일
  • 51: 시작 부분에 오디오 프레임이 최소 3개 있는 ADTS 형식의 AAC 파일
  • 50: 감지기는 없고 확장자로만 일치하는 형식의 파일
  • 0: -f 옵션으로 형식을 강제로 지정하여 FFmpeg이 감지를 건너뛴 파일

내 파일에 왜 중요한지

감지된 점수가 25 이하라면, 결함의 증거라기보다 경고 신호입니다. 이때 FFmpeg은 misdetection possible라는 단어가 포함된 메시지를 출력하는데, 이는 FFmpeg이 잘못된 형식을 선택했을 수도 있다는 뜻입니다.

MP3와 AAC 파일의 점수가 50 근처인 것은 정상입니다. 이 형식의 감지기는 52를 넘는 값을 반환하지 않기 때문입니다. 따라서 51점이나 52점이라고 해서 MP3 파일에 문제가 있다는 뜻은 아닙니다.

감지된 점수가 25 이하인 경우, FFmpeg 개발자 문서는 더 많은 데이터를 사용해 다시 시도할 것을 권장합니다. -formatprobesize 옵션은 형식 감지를 위한 바이트 단위 상한을 설정합니다. -probesize와 -analyzeduration 옵션은 다른 역할을 하며, FFmpeg이 스트림 세부 정보를 찾기 위해 읽는 데이터 양을 제한합니다.

메타 키