2014-08-12 4 views
3

Учитывая медиа-файл, после запуска ffprobe -i input.mp4 -show_format -print_format json, я получил что-то вроде этого:Что означает «probe_score» из вывода ffprobe?

{ 
    "format": { 
     "filename": "ooxx.mp4", 
     "nb_streams": 2, 
     "nb_programs": 0, 
     "format_name": "mov,mp4,m4a,3gp,3g2,mj2", 
     "format_long_name": "QuickTime/MOV", 
     "start_time": "0.000000", 
     "duration": "231.210000", 
     "size": "65133325", 
     "bit_rate": "2253650", 
     "probe_score": 100, 
     "tags": { 
      "major_brand": "isom", 
      "minor_version": "512", 
      "compatible_brands": "isomiso2avc1mp41", 
      "encoder": "Lavf55.33.100", 
     } 
    } 
} 

Я задаюсь вопросом, что делает probe_score значит здесь? Как он рассчитывается?

ответ

5

Ввод (файл в этом случае) может иметь расширение (например, «.avi») и иметь другой формат (например, файл wav). FFmpeg может определять реальный формат ввода (с ffprobe). Для этого он открывает файл и читает его (первые 5 секунд, заданные опцией analyzeduration, если я правильно помню). Затем он присваивает оценку каждому формату: низкий балл, если данные не имеют ничего общего с входом, высокий балл, если формат кажется правильным.

Возвращенный формат - тот, который имеет наивысший балл. probe_score это оценка.

100 - максимальный балл, что означает, что FFmpeg уверен, что формат является реальным. С оценкой ниже 25, рекомендуется увеличить продолжительность зонда.