ffprobe не работает на определенных видео - PullRequest
0 голосов
/ 19 марта 2020

Я работаю на платформе, которая использует ffprobe как часть конвейера транскодирования видео. Один из наших пользователей пытается и не может загрузить видеоклипы, извлеченные из системы видеонаблюдения, и кажется, что сбой происходит, когда мы анализируем клипы с помощью ffprobe.

Когда я запускаю ffprobe из командной строки, я получаю это:

$ ffprobe file.avi
ffprobe version 4.2.2 Copyright (c) 2007-2019 the FFmpeg developers
  built with Apple clang version 11.0.0 (clang-1100.0.33.17)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.2_2 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
[avi @ 0x7fc22280b800] Invalid sample_size -1 at stream 1 setting it to 0
[avi @ 0x7fc22280b800] Invalid sample_size -1 at stream 2 setting it to 0
[avi @ 0x7fc22280b800] wav header size < 14 is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[avi @ 0x7fc22280b800] If you want to help, upload a sample of this file to ftp://upload.ffmpeg.org/incoming/ and contact the ffmpeg-devel mailing list. (ffmpeg-devel@ffmpeg.org)
file.avi: Invalid data found when processing input

Я, однако, могу проанализировать его с mediainfo, который выводит это:

$ mediainfo file.avi
General
Complete name                            : file.avi
Format                                   : AVI
Format/Info                              : Audio Video Interleave
File size                                : 11.3 MiB
Duration                                 : 5 min 0 s
Overall bit rate                         : 316 kb/s

Video
ID                                       : 0
Format                                   : MPEG-4 Visual
Codec ID                                 : MP43
Codec ID/Info                            : Microsoft MPEG-4 v3 (pre-standard)
Codec ID/Hint                            : Microsoft
Duration                                 : 5 min 0 s
Source duration                          : 5 min 0 s
Bit rate                                 : 308 kb/s
Width                                    : 640 pixels
Height                                   : 480 pixels
Display aspect ratio                     : 4:3
Frame rate                               : 16.000 FPS
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.063
Stream size                              : 11.0 MiB (97%)

Я предполагаю / надеюсь, что есть способ сделать эту работу, передав соответствующие флаги для ffprobe - кто-нибудь может указать мне правильное направление?

...