Re: [FFmpeg-trac] #6073(avcodec:new): QSV (h264) encodes via CPU instead of GPU

2017-01-11 Thread FFmpeg
#6073: QSV (h264) encodes via CPU instead of GPU
-+-
 Reporter:  milanc   |Owner:
 Type:  defect   |   Status:  new
 Priority:  important|Component:  avcodec
  Version:  git-master   |   Resolution:
 Keywords:  qsv  |   Blocked By:
  regression |  Reproduced by developer:  0
 Blocking:   |
Analyzed by developer:  0|
-+-

Comment (by milanc):

 Linux stream 4.4.0 #1 SMP Fri Oct 14 22:04:02 CEST 2016 x86_64 x86_64
 x86_64 GNU/Linux

 Intel Media SDK 2017
 nvidia-370; cuda_8.0-44; nvidia_video_sdk_7.0.1; intel-opencl-16.5


 {{{
 # vainfo
 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.5.55964-ubit
 vainfo: Supported profile and entrypoints
   VAProfileH264ConstrainedBaseline: VAEntrypointVLD
   VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
   VAProfileH264ConstrainedBaseline: 
   VAProfileH264ConstrainedBaseline: 
   VAProfileH264Main   : VAEntrypointVLD
   VAProfileH264Main   : VAEntrypointEncSlice
   VAProfileH264Main   : 
   VAProfileH264Main   : 
   VAProfileH264High   : VAEntrypointVLD
   VAProfileH264High   : VAEntrypointEncSlice
   VAProfileH264High   : 
   VAProfileH264High   : 
   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  : 
   VAProfileHEVCMain   : VAEntrypointVLD
   VAProfileHEVCMain   : VAEntrypointEncSlice
   VAProfileVP9Profile0: 
  : VAEntrypointVideoProc
   VAProfileNone   : VAEntrypointVideoProc
   VAProfileNone   : 
 }}}


 {{{
 # ./sys_analyzer_linux.py
 --
 Hardware readiness checks:
 --
  [ OK ] Processor name: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
 --
 OS readiness checks:
 --
  [ OK ] GPU visible to OS
 --
 Intel(R) Media Server Studio Install:
 --
  [ OK ] user is root
  [ OK ] libva.so.1 found
  [ OK ] vainfo reports valid codec entry points
  [ OK ] /dev/dri/renderD128 connects to Intel i915
  [ ERROR ] could not open /dev/dri/renderD129

 --
 Media SDK Plugins available:
 (for more info see /opt/intel/mediasdk/plugins/plugins.cfg)
 --
 H264LA Encoder  = 588f1185d47b42968dea377bb5d0dcb4
 VP8 Decoder = f622394d8d87452f878c51f2fc9b4131
 HEVC Decoder= 33a61c0b4c27454ca8d85dde757c6f8e
 HEVC Encoder= 6fadc791a0c2eb479ab6dcd5ea9da347
 --
 Component Smoke Tests:
 --
  [ OK ] Media SDK HW API level:1.19
  [ OK ] Media SDK SW API level:1.19
  [ OK ] OpenCL check:./oclcheck: /usr/local/cuda/lib64/libOpenCL.so.1: no
 version information available (required by ./oclcheck)
 platform:Intel(R) OpenCL GPU OK CPU OK
 platform:NVIDIA CUDA GPU OK CPU FAIL
 }}}

--
Ticket URL: 
FFmpeg 
FFmpeg issue tracker
___
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-trac


Re: [FFmpeg-trac] #6073(avcodec:new): QSV (h264) encodes via CPU instead of GPU

2017-01-11 Thread FFmpeg
#6073: QSV (h264) encodes via CPU instead of GPU
-+-
 Reporter:  milanc   |Owner:
 Type:  defect   |   Status:  new
 Priority:  important|Component:  avcodec
  Version:  git-master   |   Resolution:
 Keywords:  qsv  |   Blocked By:
  regression |  Reproduced by developer:  0
 Blocking:   |
Analyzed by developer:  0|
-+-

Comment (by jkqxz):

 Can you offer more detail about the platform you are using?

 The command as-is doesn't work for me with current libmfx on Skylake
 because AVBR without look-ahead isn't supported there.  Either re-adding
 the look-ahead or adding a maxrate both work (with AVBR+LA and VBR
 respectively), and have full hardware acceleration.

--
Ticket URL: 
FFmpeg 
FFmpeg issue tracker
___
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-trac


Re: [FFmpeg-trac] #6073(avcodec:new): QSV (h264) encodes via CPU instead of GPU

2017-01-11 Thread FFmpeg
#6073: QSV (h264) encodes via CPU instead of GPU
-+-
 Reporter:  milanc   |Owner:
 Type:  defect   |   Status:  new
 Priority:  important|Component:  avcodec
  Version:  git-master   |   Resolution:
 Keywords:  qsv  |   Blocked By:
  regression |  Reproduced by developer:  0
 Blocking:   |
Analyzed by developer:  0|
-+-
Changes (by cehoyos):

 * keywords:   => qsv regression
 * priority:  normal => important


Comment:

 Please find the change introducing the regression.

--
Ticket URL: 
FFmpeg 
FFmpeg issue tracker
___
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-trac


[FFmpeg-trac] #6073(avcodec:new): QSV (h264) encodes via CPU instead of GPU

2017-01-11 Thread FFmpeg
#6073: QSV (h264) encodes via CPU instead of GPU
-+--
 Reporter:  milanc   | Type:  defect
   Status:  new  | Priority:  normal
Component:  avcodec  |  Version:  git-master
 Keywords:   |   Blocked By:
 Blocking:   |  Reproduced by developer:  0
Analyzed by developer:  0|
-+--
 Summary of the bug:
 QSV h264_qsv encodes via CPU instead of GPU (without HW accel.).

 In output "[h264_qsv @ 0x352d1e0] Encoder will work with partial HW
 acceleration"
 Test via Intel Media SDK passed OK.

 Problem is on version: N-83042-g107b306 (and some older)
 But in older version N-82007-g1a9513b qsv works fine (I see load in
 intel_gpu_top).


 How to reproduce:
 {{{
 % ffmpeg -y -v debug -i
 "udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1" -map v:0
 -profile:v main -c:v h264_qsv -look_ahead 0 -an /a.mp4
 }}}

 Full output:
 {{{
 /# ffmpeg -y -v debug -i
 "udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1" -map v:0
 -profile:v main -c:v h264_qsv -look_ahead 0 -an /a.mp4
 ffmpeg version N-83042-g107b306 Copyright (c) 2000-2017 the FFmpeg
 developers
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
   configuration: --prefix=./ffmpeg-build --pkg-config-flags=--static
 --bindir=/root/bin --enable-gpl --enable-nonfree --enable-libfdk-aac
 --enable-libvorbis --enable-libmp3lame --enable-libx264 --enable-libx265
 --enable-libvpx --enable-nvenc --enable-libmfx --enable-version3 --enable-
 pthreads --enable-runtime-cpudetect --disable-ffserver --enable-
 libfreetype --enable-filter=drawtext
   libavutil  55. 43.100 / 55. 43.100
   libavcodec 57. 71.101 / 57. 71.101
   libavformat57. 62.100 / 57. 62.100
   libavdevice57.  2.100 / 57.  2.100
   libavfilter 6. 68.100 /  6. 68.100
   libswscale  4.  3.101 /  4.  3.101
   libswresample   2.  4.100 /  2.  4.100
   libpostproc54.  2.100 / 54.  2.100
 Splitting the commandline.
 Reading option '-y' ... matched as option 'y' (overwrite output files)
 with argument '1'.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument 'debug'.
 Reading option '-i' ... matched as input url with argument
 'udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1'.
 Reading option '-map' ... matched as option 'map' (set input stream
 mapping) with argument 'v:0'.
 Reading option '-profile:v' ... matched as option 'profile' (set profile)
 with argument 'main'.
 Reading option '-c:v' ... matched as option 'c' (codec name) with argument
 'h264_qsv'.
 Reading option '-look_ahead' ... matched as AVOption 'look_ahead' with
 argument '0'.
 Reading option '-an' ... matched as option 'an' (disable audio) with
 argument '1'.
 Reading option '/a.mp4' ... matched as output url.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option y (overwrite output files) with argument 1.
 Applying option v (set logging level) with argument debug.
 Successfully parsed a group of options.
 Parsing a group of options: input url
 udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1.
 Successfully parsed a group of options.
 Opening an input file:
 udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1.
 [udp @ 0x3338a80] No default whitelist set
 [udp @ 0x3338a80] end receive buffer size reported is 131072
 [mpegts @ 0x3338160] Format mpegts probed with size=2048 and score=50
 [mpegts @ 0x3338160] stream=0 stream_type=2 pid=301 prog_reg_desc=
 [mpegts @ 0x3338160] stream=1 stream_type=3 pid=311 prog_reg_desc=
 [mpegts @ 0x3338160] stream=2 stream_type=3 pid=313 prog_reg_desc=
 [mpegts @ 0x3338160] stream=3 stream_type=6 pid=321 prog_reg_desc=
 [mpegts @ 0x3338160] Before avformat_find_stream_info() pos: 0 bytes
 read:123704 seeks:0 nb_streams:4
 [mpegts @ 0x3338160] parser not found for codec dvb_teletext, packets or
 times may be invalid.
 Last message repeated 1 times
 [mpeg2video @ 0x335d080] Invalid frame dimensions 0x0.
 Last message repeated 9 times
 [mpegts @ 0x3338160] max_analyze_duration 500 reached at 500
 microseconds st:3
 [mpegts @ 0x3338160] After avformat_find_stream_info() pos: 1932640 bytes
 read:1933204 seeks:0 frames:663
 Input #0, mpegts, from
 'udp://@239.255.0.103:1234?fifo_size=100_nonfatal=1':
   Duration: N/A, start: 4999.876978, bitrate: N/A
   Program 259
 Stream #0:0[0x301], 128, 1/9: Video: mpeg2video (Main), 1
 reference frame ([2][0][0][0] / 0x0002), yuv420p(tv, top first, left),
 720x576 [SAR 64:45 DAR 16:9], 0/1, 25 fps, 25 tbr, 90k tbn, 50 tbc
 Stream #0:1[0x311](cze), 208, 1/9: Audio: mp2 ([3][0][0][0] /
 0x0003), 48000 Hz, stereo, s16p, 192 kb/s
 Stream #0:2[0x313](cze), 200, 1/9: Audio: mp2 ([3][0][0][0] /
 0x0003), 48000 Hz, mono, s16p, 64 kb/s