FFMPEG выдавал ошибку Invalid pixel format '-1'
Кодирование видеофайлов средствами ffmpeg - это хорошо. Но иногда бывают ошибки. В моём случае он не понимал формат пикселей некоторых файлов, так и ругался: Invalid pixel format '-1'.
Командная строка используется такого вида
ffmpeg -i /path/to/original -ar 22050 -ab 32k -f flv -s 900x740 -y /path/to/result.flv
Ниже полный вывод результата
ffmpeg version git-2011-11-14-07c7ffc, Copyright (c) 2000-2011 the FFmpeg developers
built on Feb 20 2013 12:08:53 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51)
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab
libavutil 51. 24. 1 / 51. 24. 1
libavcodec 53. 33. 0 / 53. 33. 0
libavformat 53. 20. 0 / 53. 20. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 48. 1 / 2. 48. 1
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
[avi @ 0x91caa80] parser not found for codec pcm_s16le, packets or times may be invalid.
[avi @ 0x91caa80] max_analyze_duration 5000000 reached at 5000000
Input #0, avi, from '/path/to/original':
Duration: 00:02:02.60, start: 0.000000, bitrate: 30445 kb/s
Stream #0:0: Video: dvvideo (dvsd / 0x64737664), 720x576, 25 tbr, 25 tbn, 25 tbc
Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, 2 channels, s16, 1536 kb/s
[buffer @ 0x91f2560] Invalid pixel format '-1'
Error opening filters!
Опущу лирическую историю, о том как я искала решение и что находила, чему удивлялась и сколько это заняло времени, вам же не интересно, да и мне вспоминать страшно...
Обнаружила, что если в выводе есть (ключевые слова: pcm_s16le и Invalid pixel format, то проблема решается следующими махинациями:
- Кодируем в темповый файл с ключами -vcodec copy -acodec pcm_s16le -f avi
- Потом темповый кодируем в flv
Важно, чтобы ffmpeg понимал, что исходник avi.
Примечательно, что это проблема не охватывает все avi-файлы, только некоторые. В чем дело - не ясно, но эта штука мне помогла.
Комментарии
Отправить комментарий