Opened 7 years ago
Last modified 7 years ago
#8457 open defect
make fate HWACCEL=auto fails wih CUDA_ERROR_INVALID_IMAGE
| Reported by: | Slava Andrejev | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | fate |
| Version: | git-master | Keywords: | |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description
I tried to run make fate HWACCEL=auto. It failed on ljpeg test.
Here is the command line that the test is using:
% ffmpeg -nostdin -nostats -cpuflags all -flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact -fflags +bitexact -threads 1 -hwaccel auto -threads 1 -
thread_type frame+slice -i tests/data/fate/vsynth1-ljpeg.avi -flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact -fflags +bitexact -threads 1 -dct f
astint -s 352x288 -pix_fmt yuv420p -vsync 0 -flags +bitexact -sws_flags +accurate_rnd+bitexact -fflags +bitexact -f rawvideo -y tests/data/fate/vsynth1-ljpeg.ou
t.rawvideo
ffmpeg version N-96270-gc3a17ffff6 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.2.1-9ubuntu2)
configuration: --enable-shared --enable-cuda-nvcc --enable-libnpp --enable-cuda --enable-cuvid --enable-nvdec --enable-nvenc --enable-nonfree --enable-opengl
--samples=$HOME/fate-suite --prefix=$HOME/ffmpegenv
libavutil 56. 38.100 / 56. 38.100
libavcodec 58. 65.102 / 58. 65.102
libavformat 58. 35.101 / 58. 35.101
libavdevice 58. 9.103 / 58. 9.103
libavfilter 7. 70.101 / 7. 70.101
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
Input #0, avi, from 'tests/data/fate/vsynth1-ljpeg.avi':
Duration: 00:00:02.00, start: 0.000000, bitrate: 25237 kb/s
Stream #0:0: Video: mjpeg (Lossless) (LJPG / 0x47504A4C), yuv420p(tv, bt470bg/unknown/unknown), 352x288, lossless, 25724 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tb
c
[mjpeg @ 0x55ef7dccd400] Using auto hwaccel type cuda with new default device.
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> rawvideo (native))
[mjpeg @ 0x55ef7dccd400] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_IMAGE: device kernel image is invali
d
Error while decoding stream #0:0: Generic error in an external library
cuvidGetDecoderCaps returned that the format is supported:
[mjpeg @ 0x5555555fcf00] Calling decoder->cvdl->cuvidGetDecoderCaps(&caps) [mjpeg @ 0x5555555fcf00] NVDEC capabilities: [mjpeg @ 0x5555555fcf00] format supported: yes, max_mb_count: 67108864 [mjpeg @ 0x5555555fcf00] min_width: 64, max_width: 32768 [mjpeg @ 0x5555555fcf00] min_height: 64, max_height: 16384
GPU: GP107-400
OS: Linux x64
NVIDIA Driver version: 435.21
cuvidCreateDecoder also was successful, CUVIDDECODECREATEINFO:
ulWidth = 352,
ulHeight = 288,
ulNumDecodeSurfaces = 6,
CodecType = cudaVideoCodec_JPEG,
ChromaFormat = cudaVideoChromaFormat_420,
ulCreationFlags = 0,
bitDepthMinus8 = 0,
ulIntraDecodeOnly = 0,
ulMaxWidth = 0,
ulMaxHeight = 0,
Reserved1 = 0,
display_area = {left = 0, top = 0, right = 0, bottom = 0},
OutputFormat = cudaVideoSurfaceFormat_NV12,
DeinterlaceMode = cudaVideoDeinterlaceMode_Weave,
ulTargetWidth = 352,
ulTargetHeight = 288,
ulNumOutputSurfaces = 6,
vidLock = 0x0,
target_rect = {left = 0, top = 0, right = 0, bottom = 0},
Reserved2 = {0, 0, 0, 0, 0}
cuvidDecodePicture fails, CUVIDPICPARAMS:
PicWidthInMbs = 22,
FrameHeightInMbs = 18,
CurrPicIdx = 0,
field_pic_flag = 0,
bottom_field_flag = 0,
second_field = 0,
nBitstreamDataLen = 126392,
pBitstreamData = 0x5555556106c2 "\377\376",
nNumSlices = 1,
pSliceDataOffsets = 0x555555ad8690,
ref_pic_flag = 0,
intra_pic_flag = 1,
Reserved = {0 <repeats 30 times>},
CodecSpecific = {
mpeg2 = { ... },
h264 = { ... },
vc1 = { ... },
mpeg4 = { ... },
jpeg = {Reserved = 0},
hevc = { ... },
vp8 = { .... },
vp9 = { ... },
CodecReserved = {0 <repeats 1024 times>}
}
Change History (4)
comment:1 by , 7 years ago
comment:2 by , 7 years ago
| Component: | undetermined → fate |
|---|---|
| Status: | new → open |
No GPU supports lossless jpeg.
comment:3 by , 7 years ago
This https://en.wikipedia.org/wiki/Lossless_JPEG is I think not supported by Nvidia... You can ask them https://devtalk.nvidia.com/default/topic/379117/cuda-programming-and-performance/lossless-jpeg-fast-decompression-on-cuda/post/2704877/#2704877
Anyway ffmeg still does not do Cuda Flac! And that one much more better vs simple flac! But they do not care...
comment:4 by , 7 years ago
I asked, it's not supported. The question is not about the support, the question is how to make make fate run giving the circumstances.



I have information that lossless JPEG is not supported by the GPU. How to make this regression test run in software even if
HWACCELis specified?