[FFmpeg-trac] #6411(ffmpeg:new): Unable to use mjpeg_cuvid hardware accelerated decoding

FFmpeg trac at avcodec.org
Mon May 22 20:37:48 EEST 2017

#6411: Unable to use mjpeg_cuvid hardware accelerated decoding
             Reporter:  audvare      |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  ffmpeg       |                  Version:
             Keywords:  mjpeg cuvid  |  unspecified
  mjpeg_cuvid hwaccel                |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
 Summary of the bug:
 When I use `ffmpeg -hwaccel cuvid -c:v mjpeg_cuvid ...`, I get a strange
 error regarding filters when no filters are set.

 My car dashcam records in this format, and produces up to 3 minute files
 that I merge together (they are grouped by day). The same error occurs if
 I use the concat filter.

 How to reproduce:
  $ for i in encoders decoders filters; do echo $i:; ffmpeg -hide_banner
 -${i} | egrep -i "npp|cuvid|nvenc|cuda"; done
  V..... h264_nvenc           NVIDIA NVENC H.264 encoder (codec h264)
  V..... nvenc                NVIDIA NVENC H.264 encoder (codec h264)
  V..... nvenc_h264           NVIDIA NVENC H.264 encoder (codec h264)
  V..... nvenc_hevc           NVIDIA NVENC hevc encoder (codec hevc)
  V..... hevc_nvenc           NVIDIA NVENC hevc encoder (codec hevc)
  V..... h264_cuvid           Nvidia CUVID H264 decoder (codec h264)
  V..... hevc_cuvid           Nvidia CUVID HEVC decoder (codec hevc)
  V..... mjpeg_cuvid          Nvidia CUVID MJPEG decoder (codec mjpeg)
  V..... mpeg1_cuvid          Nvidia CUVID MPEG1VIDEO decoder (codec
  V..... mpeg2_cuvid          Nvidia CUVID MPEG2VIDEO decoder (codec
  V..... mpeg4_cuvid          Nvidia CUVID MPEG4 decoder (codec mpeg4)
  V..... vc1_cuvid            Nvidia CUVID VC1 decoder (codec vc1)
  V..... vp8_cuvid            Nvidia CUVID VP8 decoder (codec vp8)
  V..... vp9_cuvid            Nvidia CUVID VP9 decoder (codec vp9)
  ... hwupload_cuda     V->V       Upload a system memory frame to a CUDA

  $ ffmpeg -hwaccel cuvid -c:v mjpeg_cuvid -i src/10370426/15430025.AVI
 ffmpeg version 3.3 Copyright (c) 2000-2017 the FFmpeg developers
   built with gcc 5.4.0 (Gentoo 5.4.0-r3 p1.3, pie-0.6.5)
   configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64
 --docdir=/usr/share/doc/ffmpeg-3.3/html --mandir=/usr/share/man --enable-
 shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++
 --ar=x86_64-pc-linux-gnu-ar --optflags='-O2 -pipe -march=native -fomit-
 frame-pointer -ggdb' --disable-
 static --enable-avfilter --enable-avresample --disable-stripping --enable-
 nonfree --enable-version3 --disable-indev=oss --disable-indev=jack
 --disable-outdev=oss --enable-version3 --enable-nonfree --enable-bzlib
 --disable-runtime-cpudetect --disable-debug --disable-gcrypt --disable-
 gnutls --disable-gmp --enable-g
 pl --enable-hardcoded-tables --enable-iconv --disable-lzma --enable-
 network --enable-openssl --enable-postproc --enable-libsmbclient --enable-
 ffplay --enable-sdl2 --disable-vaapi --enable-vdpau --enable-xlib
 --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib
 --enable-libcdio --enable-libiec6
 1883 --disable-libdc1394 --enable-libcaca --disable-openal --enable-opengl
 --disable-libv4l2 --disable-libpulse --enable-libopencore-amrwb --enable-
 re-amrnb --enable-libfdk-aac --enable-libopenjpeg --enable-libbluray
 --disable-libcelt --enable-libgme --enable-libgsm --disable-mmal --enable-
 libmodplug --e
 nable-libopus --disable-libilbc --enable-librtmp --enable-libssh --enable-
 libschroedinger --enable-libspeex --enable-libvorbis --enable-libvpx
 bi --disable-libbs2b --enable-chromaprint --enable-libflite --disable-
 frei0r --enable-libfribidi --disable-fontconfig --disable-ladspa --enable-
 libass --enab
 le-libfreetype --enable-librubberband --disable-netcdf --disable-libzmq
 --enable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-
 amrwbenc --enabl
 e-libmp3lame --disable-libkvazaar --enable-nvenc --disable-libopenh264
 --disable-libsnappy --enable-libtheora --enable-libtwolame --enable-
 libwavpack --enabl
 e-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --disable-
 amd3dnow --disable-amd3dnowext --disable-fma4 --disable-xop --cpu=host
 --disable-doc -
 -disable-htmlpages --enable-manpages
   libavutil      55. 58.100 / 55. 58.100
   libavcodec     57. 89.100 / 57. 89.100
   libavformat    57. 71.100 / 57. 71.100
   libavdevice    57.  6.100 / 57.  6.100
   libavfilter     6. 82.100 /  6. 82.100
   libavresample   3.  5.  0 /  3.  5.  0
   libswscale      4.  6.100 /  4.  6.100
   libswresample   2.  7.100 /  2.  7.100
   libpostproc    54.  5.100 / 54.  5.100
 [avi @ 0x22635e0] sample size (1) != block align (2)
 Guessed Channel Layout for Input Stream #0.1 : mono
 Input #0, avi, from 'src/10370426/15430025.AVI':
   Duration: 00:03:02.00, start: 0.000000, bitrate: 24610 kb/s
     Stream #0:0: Video: mjpeg (MJPG / 0x47504A4D), yuvj420p(pc,
 bt470bg/unknown/unknown), 1920x1080, 23105 kb/s, 25 fps, 25 tbr, 25 tbn,
 25 tbc
     Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 32000 Hz, mono,
 s16, 512 kb/s
 File 'out.mp4' already exists. Overwrite ? [y/N] y
 Stream mapping:
   Stream #0:0 -> #0:0 (mjpeg (mjpeg_cuvid) -> h264 (libx264))
   Stream #0:1 -> #0:1 (pcm_s16le (native) -> aac (native))
 Press [q] to stop, [?] for help
 [mjpeg_cuvid @ 0x2267da0] ignoring invalid SAR: 0/0
 Impossible to convert between the formats supported by the filter
 'Parsed_null_0' and the filter 'auto_scaler_0'
 Error reinitializing filters!
 Failed to inject frame into filter network: Function not implemented
 Error while processing the decoded data for stream #0:0
 Conversion failed!

Ticket URL: <https://trac.ffmpeg.org/ticket/6411>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list