GNOME Bugzilla – Bug 768544
[GST-VAAPI] Gstreamer not able to hardware decode H265 video using vaapidecode and fakesink.
Last modified: 2016-07-21 08:43:21 UTC
Defect Description: try run command: gst-launch-1.0 -v filesrc location=<path/filename> ! matroskademux ! vaapidecode ! fpsdisplaysink video-sink=fakesink text-overlay=false Gstreamer Caught SIGSEGV:
+ Trace 236455
Spinning. Please run 'gdb gst-launch-1.0 5792' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core. Tested with software decode and there is no error found.
Created attachment 331044 [details] [review] patch_initial_pointer_to_zero
Review of attachment 331044 [details] [review]: I would rather prefer to add proper parse/decode of SEI headers if it present in codec_data. It is simple, please add a "case GST_H265_NAL_SUFFIX_SEI: case GST_H265_NAL_PREFIX_SEI: and do like how we handled vps/sps/pps. All necessary internal parse/decode methods are readily available :)
Created attachment 331677 [details] [review] parse/decode SEI nalu in gst_vaapi_decoder_h265_decode_codec_data
Hi Sreerenj, Once the code review done, can code patch provided by Allen Zhang push into 1.8 branch as well? We are using 1.8 branch code base. Thank you.
(In reply to Allen Zhang from comment #3) > Created attachment 331677 [details] [review] [review] > parse/decode SEI nalu in gst_vaapi_decoder_h265_decode_codec_data Pushed your patch, But Please do git format-patch next time with proper commit message :)
(In reply to Lim Siew Hoon from comment #4) > Hi Sreerenj, > > Once the code review done, can code patch provided by Allen Zhang push into > 1.8 branch as well? Yup, make sense, pushed. >We are using 1.8 branch code base. > > Thank you.
Review of attachment 331677 [details] [review]: pushed, Thanks for the patch. commit d9ef88230f3aaf17a6e6556fa4a116c3a3423a1d Author: Allen Zhang <Zhang, Zhangfei> Date: Thu Jul 21 11:24:31 2016 +0300 decoder: h265: handle the SEI NAL units included in codec_data The prefix/suffix SEI nal units can appear in codec_data too which weren't handled before. Parse these SEI headers to fix the segfault. https://bugzilla.gnome.org/show_bug.cgi?id=768544
Closing