Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#5685 closed defect (invalid)

scale_vaapi does not scale full image, but crops to upper left corner instead

Reported by: radek.hvizdos Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: vaapi
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I am using VA-API for H264 encoding, which is work ok on it's own. But when adding scale_vaapi to the parameters to encode a lower resolution video, it performs a crop to the upper left corner instead of resize of the whole image.

Source is a sequence of JPG images (3200x2400), the output is H264 video. I am attaching 3 input frames, and the resultant video file.

time ~/bin/ffmpeg -v 9 -loglevel 99 -thread_queue_size 32768 -framerate 6 -pattern_type glob -i "*.jpg" -vaapi_device /dev/dri/card0 -vf 'format=nv12,hwupload,scale_vaapi=w=640:h=480' -vcodec h264_vaapi -an cropped_video.mp4
ffmpeg version N-80898-g5565e27 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.9.2 (Debian 4.9.2-10)
  configuration: --prefix=/home/radek/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/radek/ffmpeg_build/include --extra-ldflags=-L/home/radek/ffmpeg_build/lib --bindir=/home/radek/bin --enable-gpl --enable-libass --enable-libfreetype --enable-libvpx --enable-libx264 --enable-nonfree
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-thread_queue_size' ... matched as option 'thread_queue_size' (set the maximum number of queued packets from the demuxer) with argument '32768'.
Reading option '-framerate' ... matched as AVOption 'framerate' with argument '6'.
Reading option '-pattern_type' ... matched as AVOption 'pattern_type' with argument 'glob'.
Reading option '-i' ... matched as input file with argument '*.jpg'.
Reading option '-vaapi_device' ... matched as option 'vaapi_device' (set VAAPI hardware device (DRM path or X11 display name)) with argument '/dev/dri/card0'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'format=nv12,hwupload,scale_vaapi=w=640:h=480'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'h264_vaapi'.
Reading option '-an' ... matched as option 'an' (disable audio) with argument '1'.
Reading option 'cropped_video.mp4' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option vaapi_device (set VAAPI hardware device (DRM path or X11 display name)) with argument /dev/dri/card0.
[AVHWDeviceContext @ 0x3c395e0] Opened VA display via DRM device /dev/dri/card0.
libva info: VA-API version 0.36.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_36
libva info: va_openDriver() returns 0
[AVHWDeviceContext @ 0x3c395e0] Initialised VAAPI connection: version 0.36
[AVHWDeviceContext @ 0x3c395e0] Format 0x32315659 -> yuv420p.
[AVHWDeviceContext @ 0x3c395e0] Format 0x30323449 -> unknown.
[AVHWDeviceContext @ 0x3c395e0] Format 0x3231564e -> nv12.
[AVHWDeviceContext @ 0x3c395e0] Format 0x32595559 -> yuyv422.
[AVHWDeviceContext @ 0x3c395e0] Format 0x59565955 -> unknown.
[AVHWDeviceContext @ 0x3c395e0] Format 0x48323234 -> unknown.
[AVHWDeviceContext @ 0x3c395e0] Format 0x58424752 -> rgb0.
[AVHWDeviceContext @ 0x3c395e0] Format 0x58524742 -> unknown.
Successfully parsed a group of options.
Parsing a group of options: input file *.jpg.
Applying option thread_queue_size (set the maximum number of queued packets from the demuxer) with argument 32768.
Successfully parsed a group of options.
Opening an input file: *.jpg.
Probing image2 score:52 size:0
[file @ 0x3c45b60] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x3c47440] Statistics: 342268 bytes read, 0 seeks
[mjpeg @ 0x3c44380] marker=d8 avail_size_in_buf=342266
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=e0 avail_size_in_buf=342264
[mjpeg @ 0x3c44380] marker parser used 16 bytes (128 bits)
[mjpeg @ 0x3c44380] marker=db avail_size_in_buf=342246
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=db avail_size_in_buf=342177
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c2 avail_size_in_buf=342108
[mjpeg @ 0x3c44380] Changing bps from 0 to 8
[mjpeg @ 0x3c44380] sof0: picture: 3200x2400
[mjpeg @ 0x3c44380] component 0 2:2 id: 0 quant:0
[mjpeg @ 0x3c44380] component 1 1:1 id: 1 quant:1
[mjpeg @ 0x3c44380] component 2 1:1 id: 2 quant:1
[mjpeg @ 0x3c44380] pix fmt id 22111100
[mjpeg @ 0x3c44380] marker parser used 17 bytes (136 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=342089
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=342058
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 306791 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=342027
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=306722
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 287983 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=306677
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=287905
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 236458 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=287821
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=236098
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 205550 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=236014
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=205458
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 120675 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=205390
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=120465
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 92981 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=120419
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 70325 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=92838
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=70320
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 56073 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=70275
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=56025
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 39617 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=55980
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=c4 avail_size_in_buf=39539
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] escaping removed 136 bytes
[mjpeg @ 0x3c44380] marker=da avail_size_in_buf=39492
[mjpeg @ 0x3c44380] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44380] marker=d9 avail_size_in_buf=0
[mjpeg @ 0x3c44380] decode frame unused 0 bytes
[file @ 0x3c45840] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x3c47440] Statistics: 349245 bytes read, 0 seeks
[file @ 0x3c47500] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x3c475a0] Statistics: 269957 bytes read, 0 seeks
[image2 @ 0x3c42c80] stream 0: start_time: 0.000 duration: 0.500
[image2 @ 0x3c42c80] format: start_time: 0.000 duration: 0.500 bitrate=0 kb/s
Input #0, image2, from '*.jpg':
  Duration: 00:00:00.50, start: 0.000000, bitrate: N/A
    Stream #0:0, 3, 1/6: Video: mjpeg, 1 reference frame, yuvj420p(pc, bt470bg/unknown/unknown, center), 3200x2400 [SAR 96:96 DAR 4:3], 0/1, 6 fps, 6 tbr, 6 tbn, 6 tbc
Successfully opened the file.
Parsing a group of options: output file cropped_video.mp4.
Applying option vf (set video filters) with argument format=nv12,hwupload,scale_vaapi=w=640:h=480.
Applying option vcodec (force video codec ('copy' to copy stream)) with argument h264_vaapi.
Applying option an (disable audio) with argument 1.
Successfully parsed a group of options.
Opening an output file: cropped_video.mp4.
[file @ 0x3c48dc0] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 2 logical cores
[Parsed_format_0 @ 0x3c480e0] compat: called with args=[nv12]
[Parsed_format_0 @ 0x3c480e0] Setting 'pix_fmts' to value 'nv12'
[Parsed_scale_vaapi_2 @ 0x3c51ae0] Setting 'w' to value '640'
[Parsed_scale_vaapi_2 @ 0x3c51ae0] Setting 'h' to value '480'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'video_size' to value '3200x2400'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'pix_fmt' to value '12'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'time_base' to value '1/6'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'pixel_aspect' to value '96/96'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x3c512e0] Setting 'frame_rate' to value '6/1'
[graph 0 input from stream 0:0 @ 0x3c512e0] w:3200 h:2400 pixfmt:yuvj420p tb:1/6 fr:6/1 sar:96/96 sws_param:flags=2
[format @ 0x3c52680] compat: called with args=[vaapi_vld]
[format @ 0x3c52680] Setting 'pix_fmts' to value 'vaapi_vld'
[auto-inserted scaler 0 @ 0x3c53780] Setting 'flags' to value 'bicubic'
[auto-inserted scaler 0 @ 0x3c53780] w:iw h:ih flags:'bicubic' interl:0
[Parsed_format_0 @ 0x3c480e0] auto-inserting filter 'auto-inserted scaler 0' between the filter 'graph 0 input from stream 0:0' and the filter 'Parsed_format_0'
[AVFilterGraph @ 0x3c48a80] query_formats: 6 queried, 4 merged, 1 already done, 0 delayed
[swscaler @ 0x3c53ea0] deprecated pixel format used, make sure you did set range correctly
[auto-inserted scaler 0 @ 0x3c53780] w:3200 h:2400 fmt:yuvj420p sar:96/96 -> w:3200 h:2400 fmt:nv12 sar:1/1 flags:0x4
[hwupload @ 0x3c51520] Surface format is nv12.
[AVHWFramesContext @ 0x3c53ce0] Created surface 0x4000000.
[AVHWFramesContext @ 0x3c53ce0] Direct mapping possible.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000001.
[AVHWFramesContext @ 0x3c7ace0] Direct mapping possible.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000002.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000003.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000004.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000005.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000006.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000007.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000008.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x4000009.
[AVHWFramesContext @ 0x3c7ace0] Created surface 0x400000a.
[h264_vaapi @ 0x3c47720] Using fixed QP = 20 / 20 / 24 for IDR- / P- / B-frames.
[h264_vaapi @ 0x3c47720] Using nv12 as format of reconstructed frames.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400000b.
[AVHWFramesContext @ 0x3c88820] Direct mapping possible.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400000c.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400000d.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400000e.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400000f.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000010.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000011.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000012.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000013.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000014.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000015.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000016.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000017.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000018.
[AVHWFramesContext @ 0x3c88820] Created surface 0x4000019.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400001a.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400001b.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400001c.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400001d.
[AVHWFramesContext @ 0x3c88820] Created surface 0x400001e.
[mp4 @ 0x3c45c20] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, mp4, to 'cropped_video.mp4':
  Metadata:
    encoder         : Lavf57.41.100
    Stream #0:0, 0, 1/12288: Video: h264 (h264_vaapi) (High), 1 reference frame ([33][0][0][0] / 0x0021), vaapi_vld(center), 640x480 [SAR 1:1 DAR 4:3], 0/1, q=2-31, 6 fps, 12288 tbn, 6 tbc
    Metadata:
      encoder         : Lavc57.48.101 h264_vaapi
Stream mapping:
  Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (h264_vaapi))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mjpeg @ 0x3c44840] marker=d8 avail_size_in_buf=342266
[mjpeg @ 0x3c44840] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44840] marker=e0 avail_size_in_buf=342264
[mjpeg @ 0x3c44840] marker parser used 16 bytes (128 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=342246
[mjpeg @ 0x3c44840] index=0
[mjpeg @ 0x3c44840] qscale[0]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=342177
[mjpeg @ 0x3c44840] index=1
[mjpeg @ 0x3c44840] qscale[1]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=c2 avail_size_in_buf=342108
[mjpeg @ 0x3c44840] sof0: picture: 3200x2400
[mjpeg @ 0x3c44840] component 0 2:2 id: 0 quant:0
[mjpeg @ 0x3c44840] component 1 1:1 id: 1 quant:1
[mjpeg @ 0x3c44840] component 2 1:1 id: 2 quant:1
[mjpeg @ 0x3c44840] pix fmt id 22111100
[mjpeg @ 0x3c44840] marker parser used 17 bytes (136 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=342089
[mjpeg @ 0x3c44840] class=0 index=0 nb_codes=10
[mjpeg @ 0x3c44840] marker parser used 29 bytes (232 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=342058
[mjpeg @ 0x3c44840] class=0 index=1 nb_codes=10
[mjpeg @ 0x3c44840] marker parser used 29 bytes (232 bits)
[mjpeg @ 0x3c44840] escaping removed 306791 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=342027
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 35235 bytes (281873 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=306722
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=129
[mjpeg @ 0x3c44840] marker parser used 43 bytes (344 bits)
[mjpeg @ 0x3c44840] escaping removed 287983 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=306677
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 18693 bytes (149537 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=287905
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=212
[mjpeg @ 0x3c44840] marker parser used 82 bytes (656 bits)
[mjpeg @ 0x3c44840] escaping removed 236458 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=287821
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 51362 bytes (410896 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=236098
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 82 bytes (656 bits)
[mjpeg @ 0x3c44840] escaping removed 205550 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=236014
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 30463 bytes (243704 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=205458
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=212
[mjpeg @ 0x3c44840] marker parser used 66 bytes (528 bits)
[mjpeg @ 0x3c44840] escaping removed 120675 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=205390
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 84714 bytes (677708 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=120465
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 44 bytes (352 bits)
[mjpeg @ 0x3c44840] escaping removed 92981 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=120419
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 27437 bytes (219489 bits)
[mjpeg @ 0x3c44840] escaping removed 70325 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=92838
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 22512 bytes (180096 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=70320
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 43 bytes (344 bits)
[mjpeg @ 0x3c44840] escaping removed 56073 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=70275
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 14201 bytes (113602 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=56025
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=241
[mjpeg @ 0x3c44840] marker parser used 43 bytes (344 bits)
[mjpeg @ 0x3c44840] escaping removed 39617 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=55980
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 16362 bytes (130891 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=39539
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 45 bytes (360 bits)
[mjpeg @ 0x3c44840] escaping removed 136 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=39492
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 39355 bytes (314834 bits)
[mjpeg @ 0x3c44840] marker=d9 avail_size_in_buf=0
[mjpeg @ 0x3c44840] decode frame unused 0 bytes
[AVHWFramesContext @ 0x3c53ce0] Map surface 0x4000000.
[AVHWFramesContext @ 0x3c53ce0] Unmap surface 0x4000000.
[scale_vaapi @ 0x3c51ba0] Filter input: vaapi_vld, 3200x2400 (0).
[scale_vaapi @ 0x3c51ba0] Using surface 0x4000000 for scale input.
[scale_vaapi @ 0x3c51ba0] Using surface 0x400000a for scale output.
[scale_vaapi @ 0x3c51ba0] Pipeline parameter buffer is 0x8000000.
[scale_vaapi @ 0x3c51ba0] Filter output: vaapi_vld, 640x480 (0).
Clipping frame in rate conversion by 0.000008
[h264_vaapi @ 0x3c47720] Encode frame: 640x480 (0).
[h264_vaapi @ 0x3c47720] Issuing encode for pic 0/0 as type IDR.
[h264_vaapi @ 0x3c47720] No reference pictures.
[h264_vaapi @ 0x3c47720] Input surface is 0x400000a.
[h264_vaapi @ 0x3c47720] Recon surface is 0x400001e.
[h264_vaapi @ 0x3c47720] Output buffer is 0x8000000.
[h264_vaapi @ 0x3c47720] Param buffer (22) is 0x8000001.
[h264_vaapi @ 0x3c47720] Param buffer (23) is 0x8000002.
[h264_vaapi @ 0x3c47720] Packed header buffer (1) is 0x8000003/0x8000004 (280 bits).
[h264_vaapi @ 0x3c47720] Packed header buffer (3) is 0x8000005/0x8000006 (61 bits).
[h264_vaapi @ 0x3c47720] Param buffer (24) is 0x8000007.
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mjpeg @ 0x3c44840] marker=d8 avail_size_in_buf=349243
[mjpeg @ 0x3c44840] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44840] marker=e0 avail_size_in_buf=349241
[mjpeg @ 0x3c44840] marker parser used 16 bytes (128 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=349223
[mjpeg @ 0x3c44840] index=0
[mjpeg @ 0x3c44840] qscale[0]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=349154
[mjpeg @ 0x3c44840] index=1
[mjpeg @ 0x3c44840] qscale[1]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=c2 avail_size_in_buf=349085
[mjpeg @ 0x3c44840] sof0: picture: 3200x2400
[mjpeg @ 0x3c44840] component 0 2:2 id: 0 quant:0
[mjpeg @ 0x3c44840] component 1 1:1 id: 1 quant:1
[mjpeg @ 0x3c44840] component 2 1:1 id: 2 quant:1
[mjpeg @ 0x3c44840] pix fmt id 22111100
[mjpeg @ 0x3c44840] marker parser used 17 bytes (136 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=349066
[mjpeg @ 0x3c44840] class=0 index=0 nb_codes=11
[mjpeg @ 0x3c44840] marker parser used 30 bytes (240 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=349034
[mjpeg @ 0x3c44840] class=0 index=1 nb_codes=10
[mjpeg @ 0x3c44840] marker parser used 29 bytes (232 bits)
[mjpeg @ 0x3c44840] escaping removed 314545 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=349003
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 34457 bytes (275653 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=314501
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=129
[mjpeg @ 0x3c44840] marker parser used 42 bytes (336 bits)
[mjpeg @ 0x3c44840] escaping removed 294700 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=314457
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 19756 bytes (158041 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=294672
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=213
[mjpeg @ 0x3c44840] marker parser used 77 bytes (616 bits)
[mjpeg @ 0x3c44840] escaping removed 240440 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=294593
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 54152 bytes (433211 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=240272
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=212
[mjpeg @ 0x3c44840] marker parser used 80 bytes (640 bits)
[mjpeg @ 0x3c44840] escaping removed 191979 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=240190
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 48210 bytes (385676 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=191900
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=213
[mjpeg @ 0x3c44840] marker parser used 66 bytes (528 bits)
[mjpeg @ 0x3c44840] escaping removed 90188 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=191832
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 101643 bytes (813140 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=89765
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 42 bytes (336 bits)
[mjpeg @ 0x3c44840] escaping removed 67053 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=89721
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 22667 bytes (181335 bits)
[mjpeg @ 0x3c44840] escaping removed 44462 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=66975
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 22512 bytes (180096 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=44461
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=130
[mjpeg @ 0x3c44840] marker parser used 36 bytes (288 bits)
[mjpeg @ 0x3c44840] escaping removed 35162 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=44423
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 9260 bytes (74078 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=35126
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=241
[mjpeg @ 0x3c44840] marker parser used 42 bytes (336 bits)
[mjpeg @ 0x3c44840] escaping removed 22393 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=35082
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 12688 bytes (101499 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=22286
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 43 bytes (344 bits)
[mjpeg @ 0x3c44840] escaping removed 33 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=22241
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 22207 bytes (177650 bits)
[mjpeg @ 0x3c44840] marker=d9 avail_size_in_buf=0
[mjpeg @ 0x3c44840] decode frame unused 0 bytes
[AVHWFramesContext @ 0x3c53ce0] Map surface 0x4000000.
[AVHWFramesContext @ 0x3c53ce0] Unmap surface 0x4000000.
[scale_vaapi @ 0x3c51ba0] Filter input: vaapi_vld, 3200x2400 (1).
[scale_vaapi @ 0x3c51ba0] Using surface 0x4000000 for scale input.
[scale_vaapi @ 0x3c51ba0] Using surface 0x4000009 for scale output.
[scale_vaapi @ 0x3c51ba0] Pipeline parameter buffer is 0x8000008.
[scale_vaapi @ 0x3c51ba0] Filter output: vaapi_vld, 640x480 (1).
[h264_vaapi @ 0x3c47720] Encode frame: 640x480 (1).
[h264_vaapi @ 0x3c47720] Pictures: IDR (0/0) B (1/2) B (2/3) P (3/1)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mjpeg @ 0x3c44840] marker=d8 avail_size_in_buf=269955
[mjpeg @ 0x3c44840] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x3c44840] marker=e0 avail_size_in_buf=269953
[mjpeg @ 0x3c44840] marker parser used 16 bytes (128 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=269935
[mjpeg @ 0x3c44840] index=0
[mjpeg @ 0x3c44840] qscale[0]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=db avail_size_in_buf=269866
[mjpeg @ 0x3c44840] index=1
[mjpeg @ 0x3c44840] qscale[1]: 0
[mjpeg @ 0x3c44840] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x3c44840] marker=c2 avail_size_in_buf=269797
[mjpeg @ 0x3c44840] sof0: picture: 3200x2400
[mjpeg @ 0x3c44840] component 0 2:2 id: 0 quant:0
[mjpeg @ 0x3c44840] component 1 1:1 id: 1 quant:1
[mjpeg @ 0x3c44840] component 2 1:1 id: 2 quant:1
[mjpeg @ 0x3c44840] pix fmt id 22111100
[mjpeg @ 0x3c44840] marker parser used 17 bytes (136 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=269778
[mjpeg @ 0x3c44840] class=0 index=0 nb_codes=10
[mjpeg @ 0x3c44840] marker parser used 28 bytes (224 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=269748
[mjpeg @ 0x3c44840] class=0 index=1 nb_codes=10
[mjpeg @ 0x3c44840] marker parser used 29 bytes (232 bits)
[mjpeg @ 0x3c44840] escaping removed 236844 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=269717
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 32872 bytes (262973 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=236776
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=129
[mjpeg @ 0x3c44840] marker parser used 43 bytes (344 bits)
[mjpeg @ 0x3c44840] escaping removed 222330 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=236731
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 14400 bytes (115194 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=222307
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=213
[mjpeg @ 0x3c44840] marker parser used 77 bytes (616 bits)
[mjpeg @ 0x3c44840] escaping removed 181933 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=222228
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 40294 bytes (322349 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=181800
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=213
[mjpeg @ 0x3c44840] marker parser used 75 bytes (600 bits)
[mjpeg @ 0x3c44840] escaping removed 126977 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=181723
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 54745 bytes (437954 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=126765
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=241
[mjpeg @ 0x3c44840] marker parser used 61 bytes (488 bits)
[mjpeg @ 0x3c44840] escaping removed 102444 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=126702
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 24257 bytes (194054 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=102344
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 45 bytes (360 bits)
[mjpeg @ 0x3c44840] escaping removed 75104 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=102297
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 27192 bytes (217532 bits)
[mjpeg @ 0x3c44840] escaping removed 52541 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=75054
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 22512 bytes (180096 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=52540
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=162
[mjpeg @ 0x3c44840] marker parser used 38 bytes (304 bits)
[mjpeg @ 0x3c44840] escaping removed 42297 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=52500
[mjpeg @ 0x3c44840] component: 2
[mjpeg @ 0x3c44840] marker parser used 10202 bytes (81610 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=42270
[mjpeg @ 0x3c44840] class=1 index=1 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 39 bytes (312 bits)
[mjpeg @ 0x3c44840] escaping removed 31393 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=42229                                                                                                                                                                                   21:31
[mjpeg @ 0x3c44840] component: 1
[mjpeg @ 0x3c44840] marker parser used 10835 bytes (86674 bits)
[mjpeg @ 0x3c44840] marker=c4 avail_size_in_buf=31351
[mjpeg @ 0x3c44840] class=1 index=0 nb_codes=242
[mjpeg @ 0x3c44840] marker parser used 44 bytes (352 bits)
[mjpeg @ 0x3c44840] escaping removed 180 bytes
[mjpeg @ 0x3c44840] marker=da avail_size_in_buf=31305
[mjpeg @ 0x3c44840] component: 0
[mjpeg @ 0x3c44840] marker parser used 31124 bytes (248992 bits)
[mjpeg @ 0x3c44840] marker=d9 avail_size_in_buf=0
[mjpeg @ 0x3c44840] decode frame unused 0 bytes
[AVHWFramesContext @ 0x3c53ce0] Map surface 0x4000000.
[AVHWFramesContext @ 0x3c53ce0] Unmap surface 0x4000000.
[scale_vaapi @ 0x3c51ba0] Filter input: vaapi_vld, 3200x2400 (2).
[scale_vaapi @ 0x3c51ba0] Using surface 0x4000000 for scale input.
[scale_vaapi @ 0x3c51ba0] Using surface 0x4000008 for scale output.
[scale_vaapi @ 0x3c51ba0] Pipeline parameter buffer is 0x8000008.
[scale_vaapi @ 0x3c51ba0] Filter output: vaapi_vld, 640x480 (2).
[h264_vaapi @ 0x3c47720] Encode frame: 640x480 (2).
[h264_vaapi @ 0x3c47720] Sync to pic 0/0 (recon surface 0x400001e).
[h264_vaapi @ 0x3c47720] Output buffer: 6585 bytes (status 00000000).
[h264_vaapi @ 0x3c47720] Output read for pic 0/0.
[output stream 0:0 @ 0x3c48b20] EOF on sink link output stream 0:0:default.eed=N/A
No more output streams to write to, finishing.
[h264_vaapi @ 0x3c47720] Pictures at end of stream: IDR (0/0) B (1/2) P (2/1)
[h264_vaapi @ 0x3c47720] Issuing encode for pic 2/1 as type P.
[h264_vaapi @ 0x3c47720] Refers to: 0/0.
[h264_vaapi @ 0x3c47720] Input surface is 0x4000008.
[h264_vaapi @ 0x3c47720] Recon surface is 0x400001d.
[h264_vaapi @ 0x3c47720] Output buffer is 0x8000000.
[h264_vaapi @ 0x3c47720] Param buffer (23) is 0x8000008.
[h264_vaapi @ 0x3c47720] Packed header buffer (3) is 0x8000009/0x800000a (60 bits).
[h264_vaapi @ 0x3c47720] Param buffer (24) is 0x800000b.
[h264_vaapi @ 0x3c47720] Issuing encode for pic 1/2 as type B.
[h264_vaapi @ 0x3c47720] Refers to: 0/0 2/1.
[h264_vaapi @ 0x3c47720] Input surface is 0x4000009.
[h264_vaapi @ 0x3c47720] Recon surface is 0x400001c.
[h264_vaapi @ 0x3c47720] Output buffer is 0x800000c.
[h264_vaapi @ 0x3c47720] Param buffer (23) is 0x800000d.
[h264_vaapi @ 0x3c47720] Packed header buffer (3) is 0x800000e/0x800000f (69 bits).
[h264_vaapi @ 0x3c47720] Param buffer (24) is 0x8000010.
[h264_vaapi @ 0x3c47720] Sync to pic 2/1 (recon surface 0x400001d).
[h264_vaapi @ 0x3c47720] Output buffer: 5780 bytes (status 00000000).
[h264_vaapi @ 0x3c47720] Output read for pic 2/1.
[h264_vaapi @ 0x3c47720] Sync to pic 1/2 (recon surface 0x400001c).
[h264_vaapi @ 0x3c47720] Output buffer: 9133 bytes (status 00000000).
[h264_vaapi @ 0x3c47720] Output read for pic 1/2.
frame=    3 fps=0.0 q=-0.0 Lsize=      22kB time=00:00:00.16 bitrate=1071.2kbits/s speed=0.315x
video:21kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.856173%
Input file #0 (*.jpg):
  Input stream #0:0 (video): 3 packets read (961470 bytes); 3 frames decoded;
  Total: 3 packets (961470 bytes) demuxed
Output file #0 (cropped_video.mp4):
  Output stream #0:0 (video): 3 frames encoded; 3 packets muxed (21498 bytes);
  Total: 3 packets (21498 bytes) muxed
3 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x3c48e40] Statistics: 34 seeks, 29 writeouts

real    0m0.674s
user    0m0.464s
sys     0m0.180s


Attachments (4)

cropped_video.mp4 (21.8 KB) - added by radek.hvizdos 3 years ago.
01.jpg (334.2 KB) - added by radek.hvizdos 3 years ago.
02.jpg (341.1 KB) - added by radek.hvizdos 3 years ago.
03.jpg (263.6 KB) - added by radek.hvizdos 3 years ago.

Download all attachments as: .zip

Change History (9)

Changed 3 years ago by radek.hvizdos

Changed 3 years ago by radek.hvizdos

Changed 3 years ago by radek.hvizdos

Changed 3 years ago by radek.hvizdos

comment:1 Changed 3 years ago by jkqxz

Works correctly for me using exactly that command line.

What hardware, libva version and VA driver version are you using?

I tested with (from vainfo):

vainfo: VA-API version: 0.39 (libva 1.7.2.pre1)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Mobile - 1.7.2.pre1 (1.7.0-53-gbcde10d)

and

vainfo: VA-API version: 0.39 (libva 1.7.2.pre1)
vainfo: Driver version: Intel i965 driver for Intel(R) Skylake - 1.7.2.pre1 (1.7.0-53-gbcde10d)

comment:2 Changed 3 years ago by radek.hvizdos

Hmm, at least I know this feature works for some.

I am on:

Linux ike 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux
Intel(R) Celeron(R) CPU  N2830  @ 2.16GHz
vainfo
error: can't connect to X server!
libva info: VA-API version 0.36.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_36
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.36 (libva 1.4.1)
vainfo: Driver version: Intel i965 driver for Intel(R) Bay Trail - 1.4.1
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileH264StereoHigh         : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileJPEGBaseline           : VAEntrypointVLD

Could this issue be caused by a HW bug, libva version or kernel version? I would like to limit the changes I make to this system, if possible.

Thanks!

comment:3 Changed 3 years ago by jkqxz

I haven't tried on Bay Trail recently and don't have one to hand at the moment, but I'm pretty sure this works there.

Try upgrading libva and the VA driver? (Really the VA driver, but they should be upgraded together.) The kernel itself shouldn't be relevant once it has the platform support, which it clearly does for this to work at all.

comment:4 Changed 3 years ago by radek.hvizdos

  • Resolution set to wontfix
  • Status changed from new to closed

Hi jkqxz,

Thank you very much for your suggestions. I was able to use official Debian packages of libva and i965-va-driver from Debian Stretch on my Jessie installation, and now the video resize works as intended.

wget http://ftp.cz.debian.org/debian/pool/main/libv/libva/libva1_1.7.1-1_amd64.deb
dpkg -i libva1_1.7.1-1_amd64.deb

wget http://ftp.cz.debian.org/debian/pool/main/i/intel-vaapi-driver/i965-va-driver_1.7.1-1_amd64.deb
dpkg -i i965-va-driver_1.7.1-1_amd64.deb

I left vainfo the existing version, it wanted to pull in some extra dependencies...

vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
libva info: VA-API version 0.39.2
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.4.1)
vainfo: Driver version: Intel i965 driver for Intel(R) Bay Trail - 1.7.1
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileH264StereoHigh         : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileJPEGBaseline           : VAEntrypointVLD

So this confirms the bug was in the VA support packages, and not ffmpeg.

Thank you and the ffmpeg team for all your support!

comment:5 Changed 3 years ago by cehoyos

  • Keywords vaapi added; scale_vaapi h264 removed
  • Resolution changed from wontfix to invalid

Thank you for testing again!
wontfix would indicate that there is a bug that could be fixed in FFmpeg.

Note: See TracTickets for help on using tickets.