Opened 7 years ago

Last modified 2 years ago

#6077 new defect

openCL cannot be run simultaneously with h264_qsv ?

Reported by: laurfb Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: openCL, qsv
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Hi.
Trying to run:
ffmpeg -i input.avi -vf unsharph=opencl=1 -f mp4 -c:v h264_qsv output.mp4

ffmpeg hang with error message:
"Display driver stopped responding and has recovered.
Display Driver Intel HD Graphics Driver for Windows 8(R) stopped responding and has recovered"

Seems to run normally with either opencl or qsv alone.

My system: i7-4790K, Intel HD 4600 graphics with latest driver installed.

Bug or am I doing something wrong?
regards,
laur

The uncut console output:
ffmpeg started on 2017-01-13 at 11:04:21
Report written to "ffmpeg-20170113-110421.log"
Command line:
ffmpeg -i input.avi -vf unsharp=opencl=1 -f mp4 -c:v h264_qsv -y output.mp4" -report
ffmpeg version N-83096-g6596b34 Copyright (c) 2000-2017 the FFmpeg developers

built with gcc 6.2.0 (Rev2, Built by MSYS2 project)
configuration: --enable-avisynth --enable-gcrypt --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libx264 --enable-libx265 --enable-cuda --enable-cuvid --enable-schannel --enable-sdl2 --disable-w32threads --enable-decklink --enable-fontconfig --enable-libbs2b --enable-libfreetype --enable-libfribidi --enable-libmfx --enable-libsoxr --enable-libspeex --enable-libtwolame --enable-libvidstab --enable-libwavpack --enable-libxvid --enable-libzimg --enable-gmp --enable-nvenc --enable-opencl --enable-libfdk-aac --enable-gpl --enable-version3 --enable-nonfree --disable-debug
libavutil 55. 43.100 / 55. 43.100
libavcodec 57. 72.100 / 57. 72.100
libavformat 57. 62.100 / 57. 62.100
libavdevice 57. 2.100 / 57. 2.100
libavfilter 6. 69.100 / 6. 69.100
libswscale 4. 3.101 / 4. 3.101
libswresample 2. 4.100 / 2. 4.100
libpostproc 54. 2.100 / 54. 2.100

Splitting the commandline.
Reading option '-i' ... matched as input url with argument 'input.avi'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'unsharp=opencl=1'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'mp4'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'h264_qsv'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'E:\opencl_1.mp4' ... matched as output url.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url input.avi.
Successfully parsed a group of options.
Opening an input file: input.avi.
[file @ 000000000058ac00] Setting default whitelist 'file,crypto'
[avi @ 0000000000347ee0] Format avi probed with size=2048 and score=100
[avi @ 0000000000349a00] use odml:1
[avi @ 0000000000347ee0] Before avformat_find_stream_info() pos: 132096 bytes read:458752 seeks:16 nb_streams:2
[avi @ 0000000000347ee0] parser not found for codec dvvideo, packets or times may be invalid.
[avi @ 0000000000347ee0] parser not found for codec pcm_s16le, packets or times may be invalid.
[avi @ 0000000000347ee0] parser not found for codec dvvideo, packets or times may be invalid.
[avi @ 0000000000347ee0] parser not found for codec pcm_s16le, packets or times may be invalid.
[avi @ 0000000000347ee0] All info found
[avi @ 0000000000347ee0] After avformat_find_stream_info() pos: 4760328 bytes read:5115648 seeks:16 frames:33
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, avi, from 'input.avi':

Duration: 00:04:43.60, start: 0.000000, bitrate: 30346 kb/s

Stream #0:0, 32, 1/25: Video: dvvideo (dvsd / 0x64737664), yuv420p, 720x576 [SAR 64:45 DAR 16:9], 28804 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream #0:1, 1, 1/48000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, s16, 1536 kb/s

Successfully opened the file.
Parsing a group of options: output url E:\opencl_1.mp4.
Applying option vf (set video filters) with argument unsharp=opencl=1.
Applying option f (force format) with argument mp4.
Applying option c:v (codec name) with argument h264_qsv.
Successfully parsed a group of options.
Opening an output file: E:\opencl_1.mp4.
[file @ 0000000000590ca0] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 8 logical cores
[Parsed_unsharp_0 @ 0000000000601460] Setting 'opencl' to value '1'
[opencl @ 00000001411b4d40] Platform Name: Intel(R) Corporation, Device Name: Intel(R) HD Graphics 4600
[opencl @ 00000001411b4d40] Compilation log:
fcl build 1 succeeded.
fcl build 2 succeeded.
bcl build succeeded.

[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'video_size' to value '720x576'
[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'time_base' to value '1/25'
[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'pixel_aspect' to value '64/45'
[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0000000000600300] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0000000000600300] w:720 h:576 pixfmt:yuv420p tb:1/25 fr:25/1 sar:64/45 sws_param:flags=2
[format @ 00000000005916e0] compat: called with args=[nv12|qsv]
[format @ 00000000005916e0] Setting 'pix_fmts' to value 'nv12|qsv'
[auto_scaler_0 @ 0000000003198720] Setting 'flags' to value 'bicubic'
[auto_scaler_0 @ 0000000003198720] w:iw h:ih flags:'bicubic' interl:0
[format @ 00000000005916e0] auto-inserting filter 'auto_scaler_0' between the filter 'Parsed_unsharp_0' and the filter 'format'
[AVFilterGraph @ 0000000002eb1e80] query_formats: 4 queried, 2 merged, 1 already done, 0 delayed
[Parsed_unsharp_0 @ 0000000000601460] effect:sharpen type:luma msize_x:5 msize_y:5 amount:1.00
[Parsed_unsharp_0 @ 0000000000601460] effect:none type:chroma msize_x:5 msize_y:5 amount:0.00
[auto_scaler_0 @ 0000000003198720] w:720 h:576 fmt:yuv420p sar:64/45 -> w:720 h:576 fmt:nv12 sar:64/45 flags:0x4
[h264_qsv @ 0000000002cc7100] Initialized an internal MFX session using hardware accelerated implementation
[h264_qsv @ 0000000002cc7100] Using the VBR with lookahead (LA) ratecontrol method
[h264_qsv @ 0000000002cc7100] profile: high; level: 30
[h264_qsv @ 0000000002cc7100] GopPicSize: 250; GopRefDist: 4; GopOptFlag: closed ; IdrInterval: 0
[h264_qsv @ 0000000002cc7100] TargetUsage: 4; RateControlMethod: LA
[h264_qsv @ 0000000002cc7100] TargetKbps: 1000; LookAheadDepth: 40
[h264_qsv @ 0000000002cc7100] NumSlice: 1; NumRefFrame: 2
[h264_qsv @ 0000000002cc7100] RateDistortionOpt: OFF
[h264_qsv @ 0000000002cc7100] RecoveryPointSEI: OFF IntRefType: 0; IntRefCycleSize: 0; IntRefQPDelta: 0
[h264_qsv @ 0000000002cc7100] MaxFrameSize: 311040; MaxSliceSize: 0;
[h264_qsv @ 0000000002cc7100] BitrateLimit: ON; MBBRC: OFF; ExtBRC: unknown
[h264_qsv @ 0000000002cc7100] Trellis: auto
[h264_qsv @ 0000000002cc7100] RepeatPPS: ON; NumMbPerSlice: 0; LookAheadDS: unknown
[h264_qsv @ 0000000002cc7100] AdaptiveI: unknown; AdaptiveB: unknown; BRefType: off
[h264_qsv @ 0000000002cc7100] MinQPI: 0; MaxQPI: 0; MinQPP: 0; MaxQPP: 0; MinQPB: 0; MaxQPB: 0
[h264_qsv @ 0000000002cc7100] Entropy coding: CABAC; MaxDecFrameBuffering: 2
[h264_qsv @ 0000000002cc7100] NalHrdConformance: OFF; SingleSeiNalUnit: ON; VuiVclHrdParameters: OFF VuiNalHrdParameters: OFF
[graph_1_in_0_1 @ 0000000002c99a60] Setting 'time_base' to value '1/48000'
[graph_1_in_0_1 @ 0000000002c99a60] Setting 'sample_rate' to value '48000'
[graph_1_in_0_1 @ 0000000002c99a60] Setting 'sample_fmt' to value 's16'
[graph_1_in_0_1 @ 0000000002c99a60] Setting 'channel_layout' to value '0x3'
[graph_1_in_0_1 @ 0000000002c99a60] tb:1/48000 samplefmt:s16 samplerate:48000 chlayout:0x3
[format_out_0_1 @ 0000000002c99c00] Setting 'sample_fmts' to value 'fltp'
[format_out_0_1 @ 0000000002c99c00] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350'
[format_out_0_1 @ 0000000002c99c00] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_1'
[AVFilterGraph @ 0000000002eb1fa0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto_resampler_0 @ 0000000002c99ce0] [SWR @ 0000000002c000a0] Using s16p internally between filters
[auto_resampler_0 @ 0000000002c99ce0] ch:2 chl:stereo fmt:s16 r:48000Hz -> ch:2 chl:stereo fmt:fltp r:48000Hz
Output #0, mp4, to 'E:\opencl_1.mp4':

Metadata:

encoder : Lavf57.62.100
Stream #0:0, 0, 1/12800: Video: h264 (h264_qsv) ([33][0][0][0] / 0x0021), nv12, 720x576 [SAR 64:45 DAR 16:9], q=2-31, 1000 kb/s, 25 fps, 12800 tbn, 25 tbc
Metadata:

encoder : Lavc57.72.100 h264_qsv

Side data:

cpb: bitrate max/min/avg: 0/0/1000000 buffer size: 0 vbv_delay: -1

Stream #0:1, 0, 1/48000: Audio: aac (LC) ([64][0][0][0] / 0x0040), 48000 Hz, stereo, fltp, 128 kb/s
Metadata:

encoder : Lavc57.72.100 aac

Stream mapping:

Stream #0:0 -> #0:0 (dvvideo (native) -> h264 (h264_qsv))
Stream #0:1 -> #0:1 (pcm_s16le (native) -> aac (native))

Press [q] to stop, ? for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000008
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)

Received windows signal 2

Change History (2)

comment:1 by laurfb, 7 years ago

Component: undeterminedavcodec
Keywords: qsv added
Version: unspecifiedgit-master

comment:2 by Balling, 2 years ago

Does it work with nvidia's opencl, so different devices?

Note: See TracTickets for help on using tickets.