Opened 8 years ago
Last modified 6 years ago
#6347 new defect
[h264_qsv @ 0x22fc7a0] Warning in encoder initialization: partial acceleration (4)
Reported by: | Anton | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avcodec |
Version: | unspecified | Keywords: | qsv |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
h264_qsv encoder is to very slow (slower than libx264 on same CPU)
Mybe it related with warning:
[h264_qsv @ 0x38027a0] Warning in encoder initialization: partial acceleration (4)
What does it mean?
binary builded with MediaServerStudioEssentials2017R2.tar.gz on core 4.4
All output:
root@DS5098:~# ./ffmpeg-3.3/ffmpeg -v verbose -i porno2.mp4 -strict -2 -y -vcodec h264_qsv -acodec aac -f mp4 -profile:v baseline -force_fps -look_ahead 0 -movflags faststart out.mp4 ffmpeg version 3.3 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609 configuration: --disable-shared --enable-static --enable-gpl --enable-nonfree --enable-fontconfig --enable-libfreetype --enable-libmp3lame --enable-librtmp --enable-libx264 --enable-version3 --enable-ffplay --disable-doc --disable-ffserver --enable-pthreads --enable-filters --enable-libvorbis --enable-libtheora --enable-runtime-cpudetect --enable-libass --enable-bzlib --enable-zlib --prefix=/opt/ffmpeg_qsv/ --enable-libmfx 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 libswscale 4. 6.100 / 4. 6.100 libswresample 2. 7.100 / 2. 7.100 libpostproc 54. 5.100 / 54. 5.100 Routing option strict to both codec and muxer layer [h264 @ 0x37d9760] Reinit context to 1280x720, pix_fmt: yuv420p Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'porno2.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: isommp42 creation_time : 2016-06-22T19:04:31.000000Z Duration: 00:13:00.89, start: 0.000000, bitrate: 1582 kb/s Stream #0:0(und): Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, left), 1280x720 [SAR 1:1 DAR 16:9], 1388 kb/s, 30 fps, 30 tbr, 30 tbn, 60 tbc (default) Metadata: handler_name : VideoHandler Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 191 kb/s (default) Metadata: creation_time : 2016-06-22T19:04:35.000000Z handler_name : IsoMedia File Produced by Google, 5-11-2011 Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_qsv)) Stream #0:1 -> #0:1 (aac (native) -> aac (native)) Press [q] to stop, [?] for help [h264 @ 0x3806220] Reinit context to 1280x720, pix_fmt: yuv420p [graph 0 input from stream 0:0 @ 0x3b83be0] w:1280 h:720 pixfmt:yuv420p tb:1/30 fr:30/1 sar:1/1 sws_param:flags=2 [auto_scaler_0 @ 0x3d2c520] w:iw h:ih flags:'bicubic' interl:0 [format @ 0x3d2bba0] auto-inserting filter 'auto_scaler_0' between the filter 'Parsed_null_0' and the filter 'format' [auto_scaler_0 @ 0x3d2c520] w:1280 h:720 fmt:yuv420p sar:1/1 -> w:1280 h:720 fmt:nv12 sar:1/1 flags:0x4 [h264_qsv @ 0x38027a0] Initialized an internal MFX session using hardware accelerated implementation [h264_qsv @ 0x38027a0] Using the average variable bitrate (AVBR) ratecontrol method [h264_qsv @ 0x38027a0] Warning in encoder initialization: partial acceleration (4) [h264_qsv @ 0x38027a0] profile: baseline; level: 32 [h264_qsv @ 0x38027a0] GopPicSize: 250; GopRefDist: 1; GopOptFlag: closed ; IdrInterval: 0 [h264_qsv @ 0x38027a0] TargetUsage: 4; RateControlMethod: AVBR [h264_qsv @ 0x38027a0] TargetKbps: 1000; Accuracy: 0; Convergence: 0 [h264_qsv @ 0x38027a0] NumSlice: 0; NumRefFrame: 1 [h264_qsv @ 0x38027a0] RateDistortionOpt: OFF [h264_qsv @ 0x38027a0] RecoveryPointSEI: unknown IntRefType: 0; IntRefCycleSize: 0; IntRefQPDelta: 0 [h264_qsv @ 0x38027a0] MaxFrameSize: 0; MaxSliceSize: 0; [h264_qsv @ 0x38027a0] BitrateLimit: unknown; MBBRC: unknown; ExtBRC: unknown [h264_qsv @ 0x38027a0] Trellis: auto [h264_qsv @ 0x38027a0] RepeatPPS: unknown; NumMbPerSlice: 0; LookAheadDS: unknown [h264_qsv @ 0x38027a0] AdaptiveI: unknown; AdaptiveB: unknown; BRefType: auto [h264_qsv @ 0x38027a0] MinQPI: 0; MaxQPI: 0; MinQPP: 0; MaxQPP: 0; MinQPB: 0; MaxQPB: 0 [h264_qsv @ 0x38027a0] Entropy coding: CAVLC; MaxDecFrameBuffering: 0 [h264_qsv @ 0x38027a0] NalHrdConformance: OFF; SingleSeiNalUnit: ON; VuiVclHrdParameters: OFF VuiNalHrdParameters: OFF [graph_1_in_0_1 @ 0x3a93960] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3 Output #0, mp4, to 'out.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: isommp42 encoder : Lavf57.71.100 Stream #0:0(und): Video: h264 (h264_qsv), 1 reference frame ([33][0][0][0] / 0x0021), nv12(progressive, left), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 1000 kb/s, 30 fps, 15360 tbn, 30 tbc (default) Metadata: handler_name : VideoHandler encoder : Lavc57.89.100 h264_qsv Side data: cpb: bitrate max/min/avg: 0/0/1000000 buffer size: 0 vbv_delay: -1 Stream #0:1(eng): Audio: aac (LC) ([64][0][0][0] / 0x0040), 44100 Hz, stereo, fltp, delay 1024, 128 kb/s (default) Metadata: creation_time : 2016-06-22T19:04:35.000000Z handler_name : IsoMedia File Produced by Google, 5-11-2011 encoder : Lavc57.89.100 aac [mp4 @ 0x3803120] Starting second pass: moving the moov atom to the beginning of the file.24x frame= 565 fps= 97 q=-0.0 Lsize= 2632kB time=00:00:19.04 bitrate=1132.3kbits/s speed=3.28x video:2317kB audio:297kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.688684% Input file #0 (porno2.mp4): Input stream #0:0 (video): 573 packets read (2498482 bytes); 566 frames decoded; Input stream #0:1 (audio): 820 packets read (457384 bytes); 820 frames decoded (839680 samples); Total: 1393 packets (2955866 bytes) demuxed Output file #0 (out.mp4): Output stream #0:0 (video): 565 frames encoded; 565 packets muxed (2372316 bytes); Output stream #0:1 (audio): 820 frames encoded (839680 samples); 821 packets muxed (304240 bytes); Total: 1386 packets (2676556 bytes) muxed [aac @ 0x3805900] Qavg: 1260.849 Exiting normally, received signal 2.
Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.
Change History (8)
comment:1 by , 8 years ago
comment:3 by , 8 years ago
Sounds to me like your hardware is not capable of full hardware acceleration. Providing details about your hardware might help.
comment:4 by , 8 years ago
No problem in 3.1 and 3.2
I think this is bug of 3.3
libva info: VA-API version 0.99.0 libva info: va_getDriverName() returns 0 libva info: User requested driver 'iHD' libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so libva info: Found init function __vaDriverInit_0_32 libva info: va_openDriver() returns 0 vainfo: VA-API version: 0.99 (libva 1.67.0.pre1) vainfo: Driver version: 16.4.4.47109-ubit vainfo: Supported profile and entrypoints VAProfileH264Baseline : VAEntrypointEncSlice VAProfileH264Baseline : <unknown entrypoint> VAProfileH264Baseline : <unknown entrypoint> VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice VAProfileH264ConstrainedBaseline: <unknown entrypoint> VAProfileH264ConstrainedBaseline: <unknown entrypoint> VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSlice VAProfileH264Main : <unknown entrypoint> VAProfileH264Main : <unknown entrypoint> VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSlice VAProfileH264High : <unknown entrypoint> VAProfileH264High : <unknown entrypoint> VAProfileMPEG2Simple : VAEntrypointEncSlice VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointEncSlice VAProfileMPEG2Main : VAEntrypointVLD VAProfileVC1Advanced : VAEntrypointVLD VAProfileVC1Main : VAEntrypointVLD VAProfileVC1Simple : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointEncPicture VAProfileVP8Version0_3 : VAEntrypointEncSlice VAProfileVP8Version0_3 : VAEntrypointVLD VAProfileVP8Version0_3 : <unknown entrypoint> VAProfileHEVCMain : VAEntrypointEncSlice VAProfileVP9Profile0 : VAEntrypointEncSlice VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile0 : <unknown entrypoint> <unknown profile> : VAEntrypointVideoProc VAProfileNone : VAEntrypointVideoProc VAProfileNone : <unknown entrypoint>
comment:5 by , 7 years ago
I have same issue with MSS 2017 R3 and last ffmpeg N-87031-gf3913dc.
With older ffmpeg version N-82007-g1a9513b QSV works.
Hardware is capable of full hardware acceleration, this is any bug in ffmpeg. :/
comment:8 by , 6 years ago
Replying to zoolog:
any news about issue?
Current command line as above is to use software decoding + qsv HW encoding.
It is remembered to use pure qsv transcoding pipeline: qsv decoding + qsv encoding. Thus will be helpful for performance. More details please refer https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples
If you think it is a regression, please help to use git bisect to find out the regression commit ID.
Same here cpu usage very high
It maybe not use hwaccel