Bug 94007 - Assertion `pic_param->CurrPic.picture_id == decode_state->current_render_target' failed
Summary: Assertion `pic_param->CurrPic.picture_id == decode_state->current_render_targ...
Alias: None
Product: libva
Classification: Unclassified
Component: intel (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: haihao
QA Contact: Sean V Kelley
Depends on:
Reported: 2016-02-05 13:03 UTC by Yuval Adam
Modified: 2016-08-10 02:25 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Description Yuval Adam 2016-02-05 13:03:16 UTC
When running an MPEG4 stream (DVB-T) through VLC, the libva intel driver dumps core:

$ vlc dvb://frequency=567000000
VLC media player 2.2.1 Terry Pratchett (Weatherwax) (revision 2.2.1-0-ga425c42)
[000000000146d158] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007fa37c005eb8] ts demux error: libdvbpsi error (PSI decoder): TS discontinuity (received 13, expected 4) for PID 0
[00007fa37c005eb8] ts demux: MPEG-4 descriptor not found for pid 0xa02 type 0x11
[00007fa37c1f4898] packetizer_mpeg4audio packetizer: AAC channels: 1 samplerate: 24000
[VS] Software VDPAU backend library initialized
libva info: VA-API version 0.38.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
[00007fa37c0a5518] avcodec decoder: Using OpenGL/VAAPI/libswscale backend for VDPAU for hardware decoding.
vlc: i965_decoder_utils.c:963: intel_decoder_check_avc_parameter: Assertion `pic_param->CurrPic.picture_id == decode_state->current_render_target' failed.
Aborted (core dumped)

$ inxi -b
System:    Host: hostname Kernel: 4.4.1-2-ARCH x86_64 (64 bit) Desktop: i3 4.11 Distro: Arch Linux
Machine:   Mobo: Intel model: NUC6i5SYB v: H81131-502
           Bios: Intel v: SYSKLi35.86A.0028.2015.1112.1822 date: 11/12/2015
CPU:       Dual core Intel Core i5-6260U (-HT-MCP-) speed/max: 411/2900 MHz
Graphics:  Card: Intel Sky Lake Integrated Graphics
           Display Server: X.Org 1.18.0 driver: N/A Resolution: 2560x1440@59.95hz
           GLX Renderer: Mesa DRI Intel HD Graphics 535 (Skylake GT3) GLX Version: 3.0 Mesa 11.1.1
Network:   Card-1: Intel Ethernet Connection I219-V driver: e1000e
           Card-2: Intel Wireless 8260 driver: iwlwifi
Drives:    HDD Total Size: NA (-)
Info:      Processes: 139 Uptime: 1:05 Memory: 856.2/15940.9MB Client: Shell (bash) inxi: 2.2.32

Tracking on https://trac.videolan.org/vlc/ticket/16520 as well
Comment 1 haihao 2016-08-05 05:28:40 UTC
https://lists.freedesktop.org/archives/libva/2016-August/004241.html can avoid the assertion failure in the driver, but the upper layer library should check why are the invalid parameters passed to libva.
Comment 2 haihao 2016-08-10 02:25:02 UTC
commit fb7d6f56ad3000734390279a55b5c7f54ed9e3a3
Author: Xiang, Haihao <haihao.xiang@intel.com>
Date:   Fri Aug 5 13:25:58 2016 +0800

    decoder/h264: don't assert on invalid parameter

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.