ffmpeg дістається до формату Unhandled pixel 0x11111111 лише з деякими зображеннями


1

Привіт, я використовую ffmpeg для перетворення зображень у відео. Мені потрібно 1 нерухоме зображення для відео за 2 секунди, я використовую цей дзвінок:

ffmpeg -loop 1 -i img.jpg -t 2 -vcodec mpeg2video result.avi

Якщо я використовую кілька тестових зображень (згенерованих у форматі 200x200px одноколірних зображень за допомогою Photoshop), він отримує такий вихід:

ffmpeg version 1.2.1 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jul 26 2013 20:18:03 with Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
  libavutil      52. 18.100 / 52. 18.100
  libavcodec     54. 92.100 / 54. 92.100
  libavformat    54. 63.104 / 54. 63.104
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 42.103 /  3. 42.103
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[mjpeg @ 0x7fba0901e800] Unhandled pixel format 0x11111111
    Last message repeated 8 times
[image2 @ 0x7fba09006600] decoding for stream 0 failed
[image2 @ 0x7fba09006600] Could not find codec parameters for stream 0 (Video: mjpeg, 200x200): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
1.jpg: could not find codec parameters

зауважте, що та сама команда з деякими випадковими зображеннями, завантаженими з Інтернету, працює добре.

це тестове зображення, яке не вдається: введіть тут опис зображення

якісь ідеї?


1
Якщо зображення несправне, ви спробували його повторно генерувати?
— slhck

як ви можете сказати це, я маю на увазі, чи намагалися ви скачати і щось зробити, або просто через помилку ffmpe у мене
— nkint

Відповіді:


0

Ви можете зіткнутися з помилкою: Білет № 896: ljpeg - підтримка RGBA 32bpp . На щастя, це було зафіксовано з командою 6db57fa близько тижня тому 2013-07-25:

$ cd ~/ffmpeg; git log 6db57fa
commit 6db57fa8bc1a40c16293f9224d195e43ae52aabd
Author: Michael Niedermayer <michaelni@gmx.at>
Date:   Thu Jul 25 00:32:44 2013 +0200

    avcodec/mjpegdec: Support RGBA lpegs

    Fixes Ticket896

    Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Це просто означає, що ви повинні отримати новішу збірку ffmpeg. Див. Сторінку завантаження FFmpeg для посилань на версії для OSX, Windows та Linux. Звичайно, ви завжди можете також компілювати ffmpeg .


@nkint Firefox показує зображення як синє, але ffmpeg показує його як червоне. Чи можете ви підтвердити, що таке правильний колір?
— llogan

ммм ... це повинно бути блакитним ... так протилежне червоному, що для наших очей схоже на світло-блакитний .. en.wikipedia.org/wiki/Cyan
— nkint

@nkint Тоді я був передчасним у своїй відповіді. Вибач за те. Здається, ви зараз стикаєтесь із ймовірною пов’язаною помилкою №2799: Немає підтримки для cmyk jpeg, який наразі є відкритою помилкою.
— логіан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.