GNOME Bugzilla – Bug 767008
[Encode][avc][mpeg2][mvc] core dumped on BSW&BDW.
Last modified: 2016-10-31 14:24:25 UTC
1. AVC encode: gst-launch-1.0 -v filesrc location=/media/encoderbitstreams/CITY_704x576_30_orig_01.yuv ! videoparse format=i420 width=704 height=576 ! vaapih264enc rate-control=cqp init-qp=8 keyframe-period=1 max-bframes=0 cabac=true ! qtmux faststart=true ! filesink location=CITY_704x576_30_orig_01.yuv.enc.mp4 Setting pipeline to PAUSED ... libva info: VA-API version 0.39.2 libva info: va_getDriverName() returns 0 libva info: Trying to open /opt/X11R7/lib/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_0_39 libva info: va_openDriver() returns 0 Pipeline is PREROLLING ... Got context from element 'vaapiencodeh264-0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)NULL; /GstPipeline:pipeline0/GstVideoParse:videoparse0.GstPad:src: caps = video/x-raw, format=(string)I420, width=(int)704, height=(int)576, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 /GstPipeline:pipeline0/GstVaapiEncodeH264:vaapiencodeh264-0.GstPad:sink: caps = video/x-raw, format=(string)I420, width=(int)704, height=(int)576, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 gst-launch-1.0: intel_batchbuffer.c:333: intel_batchbuffer_advance_batch: Assertion `batch->emit_total == (batch->ptr - batch->emit_start)' failed. Aborted (core dumped) MPEG2 encode: gst-launch-1.0 -v filesrc location=/media/encoderbitstreams/CITY_704x576_30_orig_01.yuv '!' videoparse format=i420 width=704 height=576 '!' vaapimpeg2enc rate-control=cqp quantizer=4 keyframe-period=1 max-bframes=0 '!' mpegvideoparse '!' mpegtsmux '!' filesink location=/home/work.dir/MPEG2_encoding/CITY_704x576_30_orig_01.yuv.enc.mpg Setting pipeline to PAUSED ... libva info: VA-API version 0.39.2 libva info: va_getDriverName() returns 0 libva info: Trying to open /opt/X11R7/lib/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_0_39 libva info: va_openDriver() returns 0 Pipeline is PREROLLING ... Got context from element 'vaapiencodempeg2-0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)NULL; /GstPipeline:pipeline0/GstVideoParse:videoparse0.GstPad:src: caps = video/x-raw, format=(string)I420, width=(int)704, height=(int)576, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 /GstPipeline:pipeline0/GstVaapiEncodeMpeg2:vaapiencodempeg2-0.GstPad:sink: caps = video/x-raw, format=(string)I420, width=(int)704, height=(int)576, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 WARNING: Incorrect Mpeg2 level setting! gst-launch-1.0: intel_batchbuffer.c:333: intel_batchbuffer_advance_batch: Assertion `batch->emit_total == (batch->ptr - batch->emit_start)' failed. Aborted (core dumped) MVC encode: gst-launch-1.0 -v filesrc location=/tmp/workdir.gst_main/JMVCdump.yuv '!' videoparse format=i420 width=640 height=480 '!' vaapih264enc num-views=2 keyframe-period=30 '!' filesink location=/tmp/workdir.gst_main/gstEncJMVCdump.264 Setting pipeline to PAUSED ... libva info: VA-API version 0.39.2 libva info: va_getDriverName() returns 0 libva info: Trying to open /opt/X11R7/lib/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_0_39 libva info: va_openDriver() returns 0 Pipeline is PREROLLING ... Got context from element 'vaapiencodeh264-0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)NULL; /GstPipeline:pipeline0/GstVideoParse:videoparse0.GstPad:src: caps = video/x-raw, format=(string)I420, width=(int)640, height=(int)480, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 /GstPipeline:pipeline0/GstVaapiEncodeH264:vaapiencodeh264-0.GstPad:sink: caps = video/x-raw, format=(string)I420, width=(int)640, height=(int)480, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)25/1 gst-launch-1.0: intel_batchbuffer.c:333: intel_batchbuffer_advance_batch: Assertion `batch->emit_total == (batch->ptr - batch->emit_start)' failed. Aborted (core dumped)
commit info: libva:commit 18c049a226de085c8690c6a925a57710ab8b107d libva-intel:commit b4da4f50bd8bd73eca778b799eba5e6aa1ef147f gst-vaapi:commit 765a53d4c27865aafa73ecbe17b654a938980413
If it is only reproducible in a specific platform, most likely it indicates driver issue. The error log also showing driver abort. Does "libva/test/encode/avenc" working for you ??
(In reply to sreerenj from comment #2) > If it is only reproducible in a specific platform, most likely it indicates > driver issue. The error log also showing driver abort. > > Does "libva/test/encode/avenc" working for you ?? I test with "avcenc 704 576 /media/encoderbitstreams/CITY_704x576_30_orig_01.yuv city.h264", and it seems works. I will check whether libyami also has this issue.
This behavior starts with vaapi/intel-driver commit: 36a3e77 Use the buffer allocated externally to configure dynamic state for gpe_context on Gen8+
Sorry, grabbed the wrong commit id. The behavior _actually_ starts with vaapi/intel-driver commit: a82f0be Fix the 48-bit address issue for gpe_util functions on gen8+
This patch on the libva list fixes the issue for me: https://lists.freedesktop.org/archives/libva/2016-May/004010.html
verified OK: libva: commit aa8df4c3d10d0609ffac235ffdc76c5e05763a23 libva-intel: commit 8b1e436793360880f54402161a9f469e9b42e143 gst-vaapi: commit fec82052d54daf1338f30d655a12fe6a72ea0a7f