[Libva] VAAPI h264 h264encode test app fails

Xiang, Haihao haihao.xiang at intel.com
Mon Oct 29 17:27:32 PDT 2012


> ./h264encode r -w 1920 -h 1080 -o test.h264
> 
> result is a assertion fail:
> 
> libva info: VA-API version 0.34.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> libva info: Found init function __vaDriverInit_0_33
> libva info: va_openDriver() returns 0
> Coded 400 frames, 1920x1080, save the coded file into test.h264
> Loading data into surface 15.....
> h264encode: i965_drv_video.c:1506: i965_EndPicture: Assertion
> `obj_context->codec_state.encode.seq_param' failed.
>       |00000000(I)(3240000 bytes coded)
>     Aborted
> 

The is known issue, currently the Intel driver doesn't support the mode
used by h264encode.


> avcenc succeeds but  mplayer fails to play the file:
> 
>  ./avcenc 704 576 /usr/local/bin/SOCCER_704x576_60_orig_02.yuv
> SOCCER_704x576_60_orig_02.mp4
> 
> libva info: VA-API version 0.34.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> libva info: Found init function __vaDriverInit_0_33
> libva info: va_openDriver() returns 0
>  600/600 ...
> done!
> 
> 
> 
> mplayer /workspace/ratin/videos/SOCCER_704x576_60_orig_02.mp4

avcenc is only an example for testing, the output file is a raw video
stream which doesn't include fps information. So you should specify -fps
option  in the command line, such as 

mplayer -fps 30 /workspace/ratin/videos/SOCCER_704x576_60_orig_02.mp4




> On Tue, Oct 23, 2012 at 10:45 PM, Xiang, Haihao <haihao.xiang at intel.com> wrote:
> > On Tue, 2012-10-23 at 09:52 -0700, Charles, Daniel wrote:
> >> On Mon, Oct 22, 2012 at 6:59 PM, ykzhao <yakui.zhao at intel.com> wrote:
> >> > On Mon, 2012-10-22 at 15:12 -0600, Ratin wrote:
> >> >> On Mon, Dec 17, 2012 at 5:04 PM, ykzhao <yakui.zhao at intel.com> wrote:
> >> >> > On Wed, 2012-10-17 at 12:24 -0600, Ratin wrote:
> >> >> >> Reading symbols from /usr/local/bin/h264encode...done.
> >> >> >> (gdb) r -w 1920 -h 1080 -o test.h264
> >> >> >> Starting program: /usr/local/bin/h264encode -w 1920 -h 1080 -o test.h264
> >> >> >> [Thread debugging using libthread_db enabled]
> >> >> >> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> >> >> >> libva info: VA-API version 0.34.0
> >>
> >> VA API version is 0.34.0
> >> >> >> libva info: va_getDriverName() returns 0
> >> >> >> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> >> >> >> libva info: Found init function __vaDriverInit_0_33
> >>
> >> libva is calling version 0.33.0
> >>
> >> And you're using staging branch driver 1.0.19.pre1
> >
> > If the driver is built against libva staging branch, the init function
> > should be __vaDriverInit_0_34. So I think Ratin is using the master
> > branch of Intel driver.
> >
> > Hi, Ratin
> > Could you double check you are using the same branch name of libva and
> > Intel driver ?
> >
> > Thanks
> > Haihao
> >
> 
> Hi Haihao,
>  To avoid confusion, I just got everything fresh again,
> 
> git clone git://anongit.freedesktop.org/vaapi/libva
> git clone git://anongit.freedesktop.org/vaapi/intel-driver
> 
> So they are both from master branches.
> 
> built and make install  libva first , then intel-driver. And ran
> ./h264encode r -w 1920 -h 1080 -o test.h264
> 
> result is a assertion fail:
> 
> libva info: VA-API version 0.34.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> libva info: Found init function __vaDriverInit_0_33
> libva info: va_openDriver() returns 0
> Coded 400 frames, 1920x1080, save the coded file into test.h264
> Loading data into surface 15.....
> h264encode: i965_drv_video.c:1506: i965_EndPicture: Assertion
> `obj_context->codec_state.encode.seq_param' failed.
>       |00000000(I)(3240000 bytes coded)
>     Aborted
> 
> 
> avcenc succeeds but  mplayer fails to play the file:
> 
>  ./avcenc 704 576 /usr/local/bin/SOCCER_704x576_60_orig_02.yuv
> SOCCER_704x576_60_orig_02.mp4
> 
> libva info: VA-API version 0.34.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> libva info: Found init function __vaDriverInit_0_33
> libva info: va_openDriver() returns 0
>  600/600 ...
> done!
> 
> 
> 
> mplayer /workspace/ratin/videos/SOCCER_704x576_60_orig_02.mp4
> MPlayer SVN-r32819-4.6 (C) 2000-2011 MPlayer Team
> mplayer: could not connect to socket
> mplayer: No such file or directory
> Failed to open LIRC support. You will not be able to use your remote control.
> 
> Playing /workspace/ratin/videos/SOCCER_704x576_60_orig_02.mp4.
> H264-ES file format detected.
> FPS not specified in the header or invalid, use the -fps option.
> Load subtitles in /workspace/ratin/videos/
> [gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
> ==========================================================================
> Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
> Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
> ==========================================================================
> Audio: no sound
> Starting playback...
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> [h264 @ 0xce2c00]decode_slice_header error
> [h264 @ 0xce2c00]non-existing PPS 0 referenced
> 
> 
> so __vaDriverInit_0_33 should really be __vaDriverInit_0_34 ?
> 
> Can somebody send me the exact git repo and git options (such as -b
> staging etc) that works?
> 
> Thanks
> 
> Ratin
> 
> >>
> >> Would this affect your testing?
> >>
> >> I saw the same problem when using 1.0.19 and VA API + libva both on 0.33.0
> >>
> >> It works when using driver 1.0.16 though.
> >>
> >>
> >> --
> >> Daniel.
> >>
> >> >> >> libva info: va_openDriver() returns 0
> >> >> >> Coded 400 frames, 1920x1080, save the coded file into test.h264
> >> >> >> Loading data into surface 15.....
> >> >> >> h264encode: i965_drv_video.c:1496: i965_EndPicture: Assertion
> >> >> >> `obj_context->codec_state.encode.seq_param' failed.
> >> >> >>       |00000000(I)(3240000 bytes coded)
> >> >> >> Program received signal SIGABRT, Aborted.
> >> >> >> 0x00007ffff72ff445 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> >> >> >>
> >> >> >>
> >> >> >> The encoded file is there but when I try to play the file with
> >> >> >> mplayer, it has an error :
> >> >> >> mplayer /workspace/ratin/videos/test.h264
> >> >> >> MPlayer SVN-r32819-4.6 (C) 2000-2011 MPlayer Team
> >> >> >> mplayer: could not connect to socket
> >> >> >> mplayer: No such file or directory
> >> >> >> Failed to open LIRC support. You will not be able to use your remote control.
> >> >> >>
> >> >> >> Playing /workspace/ratin/videos/test.h264.
> >> >> >> Invalid seek to negative position!
> >> >> >>
> >> >> >>
> >> >> >> Exiting... (End of file)
> >> >> >
> >> >> > Which platform is used ? Ivybridge or Sandybridge?
> >> >>
> >> >> Sandybridge with GMA 4000
> >> >>
> >> >> > BTW: Are you using the staging branch or master branch for the libva and
> >> >> > the driver?
> >> >>
> >> >> staging branch, is main branch better?
> >> >
> >> > The staging branch is preferred.
> >> >
> >> >>
> >> >> >
> >> >> > It will be better that you can try whether the avcenc encoding tool is
> >> >> > OK in your test.
> >> >>
> >> >> avcenc works but I only get garbled images. It has worked fine before
> >> >> with slightly older versions of both.
> >> >
> >> > If now you get the garbled image while it works fine in the older
> >> > version, it seems that this is a regression.  Will you please file one
> >> > bug in https://bugs.freedesktop.org?
> >> >
> >> >
> >> >>
> >> >> >> How to fix this?
> >> >> >>
> >> >> >> Vainfo:
> >> >> >>
> >> >> >> libva info: VA-API version 0.34.0
> >> >> >> libva info: va_getDriverName() returns 0
> >> >> >> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
> >> >> >> libva info: Found init function __vaDriverInit_0_33
> >> >> >> libva info: va_openDriver() returns 0
> >> >> >> vainfo: VA-API version: 0.34 (libva 1.1.0)
> >> >> >> vainfo: Driver version: Intel i965 driver - 1.0.19.pre1
> >> >> >> vainfo: Supported profile and entrypoints
> >> >> >>       VAProfileMPEG2Simple            :       VAEntrypointVLD
> >> >> >>       VAProfileMPEG2Main              :       VAEntrypointVLD
> >> >> >>       VAProfileH264Baseline           :       VAEntrypointVLD
> >> >> >>       VAProfileH264Baseline           :       VAEntrypointEncSlice
> >> >> >>       VAProfileH264Main               :       VAEntrypointVLD
> >> >> >>       VAProfileH264Main               :       VAEntrypointEncSlice
> >> >> >>       VAProfileH264High               :       VAEntrypointVLD
> >> >> >>       VAProfileH264High               :       VAEntrypointEncSlice
> >> >> >>       VAProfileVC1Simple              :       VAEntrypointVLD
> >> >> >>       VAProfileVC1Main                :       VAEntrypointVLD
> >> >> >>       VAProfileVC1Advanced            :       VAEntrypointVLD
> >> >> >> _______________________________________________
> >> >> >> Libva mailing list
> >> >> >> Libva at lists.freedesktop.org
> >> >> >> http://lists.freedesktop.org/mailman/listinfo/libva
> >> >> >
> >> >> >
> >> >
> >> >
> >> > _______________________________________________
> >> > Libva mailing list
> >> > Libva at lists.freedesktop.org
> >> > http://lists.freedesktop.org/mailman/listinfo/libva
> >> _______________________________________________
> >> Libva mailing list
> >> Libva at lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/libva
> >
> >
> > _______________________________________________
> > Libva mailing list
> > Libva at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/libva




More information about the Libva mailing list