Opened 5 years ago

Closed 5 years ago

#7722 closed defect (invalid)

[FFmpeg-vaapi][mpeg2 decode] failed setup for format vaapi_vld: hwaccel initialisation returned error

Reported by: Andrey Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: vaapi
Cc: eero.t.tamminen@intel.com Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

How to reproduce:

ffmpeg -y -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i <1920x1080p_29.97_6mb_mpeg2_high.mpv> -frames 600 -c:v h264_vaapi -b:v 3000k -minrate:v 3000k -maxrate:v 3000k -compression_level 4 -g 256 -bf 2 0008_HD09_1_0.h264

FFmpeg version:
N-93001-g87c165c237

Output:

[mpeg2video @ 0x5615b85d3180] Failed setup for format vaapi_vld: hwaccel initialisation returned error.
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

Change History (5)

comment:1 by Carl Eugen Hoyos, 5 years ago

Component: ffmpegundetermined
Keywords: vaapi added; ffmpeg-vaapi removed
Priority: importantnormal

This has currently little similarities with a valid ticket: Please provide the command line you tested together with the complete, uncut console output and an input sample that allows to reproduce.

comment:2 by Andrey, 5 years ago

Reproducable only with these streams:
http://fate-suite.ffmpeg.org/mpeg2/hhi_burst_422_short.bits
http://fate-suite.ffmpeg.org/mpeg2/xdcam8mp2-1s_small.ts

With all other from http://fate-suite.ffmpeg.org/mpeg2/ - works fine.

Output log:

ffmpeg -y -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i hhi_burst_422_short.bits -c:v h264_vaapi -b:v 3000k -minrate:v 3000k -maxrate:v 3000k 0008_HD09_1_0.h264
ffmpeg version N-93064-ged20fbcd48 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --prefix=/msdk/FFmpeg/ffmpeg_build --enable-libmfx
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 46.100 / 58. 46.100
  libavformat    58. 26.100 / 58. 26.100
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
[mpegvideo @ 0x5594f5872500] Estimating duration from bitrate, this may be inaccurate
Input #0, mpegvideo, from 'hhi_burst_422_short.bits':
  Duration: 00:00:00.15, bitrate: 49999 kb/s
    Stream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv, top first), 720x608 [SAR 608:405 DAR 16:9], 50000 kb/s, 25 fps, 25                                                       tbr, 1200k tbn, 50 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (h264_vaapi))
Press [q] to stop, [?] for help
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!
ffmpeg -y -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i xdcam8mp2-1s_small.ts -c:v h264_vaapi -b:v 3000k -minrate:v 3000k -maxrate:v 3000k 0008_HD09_1_0.h264
ffmpeg version N-93064-ged20fbcd48 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --prefix=/msdk/FFmpeg/ffmpeg_build --enable-libmfx
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 46.100 / 58. 46.100
  libavformat    58. 26.100 / 58. 26.100
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
Input #0, mpegts, from 'xdcam8mp2-1s_small.ts':
  Duration: 00:00:01.00, start: 1.400000, bitrate: 4058 kb/s
  Program 1
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
    Stream #0:0[0x100]: Video: mpeg2video (4:2:2) ([2][0][0][0] / 0x0002), yuv422p(tv, progressive), 480x270 [SAR 1:1 DAR 1                                                      6:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 384 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (h264_vaapi))
Press [q] to stop, [?] for help
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!
Last edited 5 years ago by Andrey (previous) (diff)

comment:3 by eero-t, 5 years ago

Cc: eero.t.tamminen@intel.com added

comment:5 by Linjie.Fu, 5 years ago

Resolution: invalid
Status: newclosed

4:2:2 profile for mpeg2 is not supported by driver(iHD).

$ mediainfo xdcam8mp2-1s_small.ts
Video
ID : 256 (0x100)
Menu ID : 1 (0x1)
Format : MPEG Video
Format version : Version 2
Format profile : 4:2:2@Main


$ vainfo

VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD

Moreover, ffmpeg only enables hardware decode support for mpeg2 420 in mpeg12dec.c
4:2:2 hardware accelerate is not supported.

static const enum AVPixelFormat mpeg2_hwaccel_pixfmt_list_420[] = {
#if CONFIG_MPEG2_NVDEC_HWACCEL 
    AV_PIX_FMT_CUDA,
#endif
#if CONFIG_MPEG2_XVMC_HWACCEL 
    AV_PIX_FMT_XVMC,
#endif
#if CONFIG_MPEG2_VDPAU_HWACCEL 
    AV_PIX_FMT_VDPAU,
#endif
#if CONFIG_MPEG2_DXVA2_HWACCEL 
    AV_PIX_FMT_DXVA2_VLD,
#endif
#if CONFIG_MPEG2_D3D11VA_HWACCEL 
    AV_PIX_FMT_D3D11VA_VLD,
    AV_PIX_FMT_D3D11,
#endif
#if CONFIG_MPEG2_VAAPI_HWACCEL 
    AV_PIX_FMT_VAAPI,
#endif
#if CONFIG_MPEG2_VIDEOTOOLBOX_HWACCEL 
    AV_PIX_FMT_VIDEOTOOLBOX,
#endif
    AV_PIX_FMT_YUV420P,
    AV_PIX_FMT_NONE
};

static const enum AVPixelFormat mpeg12_pixfmt_list_422[] = {
    AV_PIX_FMT_YUV422P,
    AV_PIX_FMT_NONE
};

So this issue is invalid and could be closed.

Note: See TracTickets for help on using tickets.