首页 > 解决方案 > ffmpeg 错误与frei0r pixeliz0r 过滤器(重复像素格式)

问题描述

我在 Linux(Arch)上运行 ffmpeg。我试着跑

ffmpeg -i input.mp4 -vf frei0r=pixeliz0r output.mp4 

我有这个错误:

[Parsed_frei0r_0 @ 0x5585b8093280] Duplicated pixel format
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!

--enable-frei0r我编译的时候选择的。

ffmpeg 输出:

ffmpeg version N-99920-g46e362b765 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.2.0 (GCC)
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-nvdec --enable-nvenc --enable-omx --enable-shared --enable-version3 --enable-frei0r

启用调试时日志的结尾

[Parsed_frei0r_0 @ 0x55e92c387280] name:pixeliz0r author:'Gephex crew' explanation:'Pixelize input image.' color_model:packed32 frei0r_version:1 version:1.0 num_params:2
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] Setting 'video_size' to value '640x480'
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] Setting 'pix_fmt' to value '13'
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] Setting 'time_base' to value '1/15360'
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] Setting 'frame_rate' to value '30/1'
[graph 0 input from stream 0:0 @ 0x55e92c3806c0] w:640 h:480 pixfmt:yuvj422p tb:1/15360 fr:30/1 sar:0/1
[format @ 0x55e92c381300] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16|nv21|yuv420p10le|yuv422p10le|yuv444p10le|nv20le|gray|gray10le'
[Parsed_frei0r_0 @ 0x55e92c387280] Duplicated pixel format
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
[AVIOContext @ 0x55e92c1edf00] Statistics: 0 seeks, 0 writeouts
[AVIOContext @ 0x55e92c1e3a40] Statistics: 70706 bytes read, 2 seeks

任何想法如何使它工作?

标签: ffmpeg

解决方案


看起来 vf_frei0r 被69f5f6ea破坏(或者更确切地说,它总是有点坏,但现在有一个检查使它失败)。你可以

  1. 提交错误

  2. 不运行 ffmpeg 的 git —最新版本HEAD中不存在麻烦的提交。n4.3.1


推荐阅读