Summary: | [master gst-vaapi]Decoding error with some AVC raw stream. | ||
---|---|---|---|
Product: | libva | Reporter: | Du Yan <yanx.du> |
Component: | intel | Assignee: | Gwenole Beauchesne <gb.devel> |
Status: | VERIFIED INVALID | QA Contact: | Sean V Kelley <seanvk> |
Severity: | major | ||
Priority: | medium | CC: | gb.devel, ouping.zhang |
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Du Yan
2013-01-17 03:26:10 UTC
BA3_SVA_C.264 is a bitstream conforming to the Extended Profile (profile_idc == 88), which is normally not supported by the hardware. I don't know for the others. Please try to categorize the issues better. For example, SVA_CL1_E.264 could be an h264parse element issue since gst-vaapi can decode the stream if you don't use that element in-between. e.g. $ gst-launch-0.10 filesrc location=/Videos/h264/conformance/SVA_CL1_E.264 ! video/x-h264,width=176,height=144,framerate=25/1 ! vaapidecode ! vaapisink SVA_CL1_E.264. This is a codec parser issue. VUI parameters were wrong. IIRC, a fix for appeared in upstream 0.10 branch a couple of days ago. It's about memset() VUI parameters to zero, or the video parser would compare garbage values. SVA_CL1_E.264 is fixed with an update of the built-in codecparsers. I suggest you open as many bug reports as failing bitstreams since the causes can be different, so the solutions could be different. Except if they have a specific error in common. Here, "can't be decoded" is not a valid common error. It's too vague. Thanks. Good categories could be: - Unsupported profile_idc = 88 (Extended Profile) - Number of decoded frames mismatch with number of rendered frames (probably a common reset/flush issue) - vaapidecode reports "video sink rejected the video buffer" with error = -4 ("not negotiated") - ... the same with error = XX (something else) Note: for the vaapidecode errors, this currently requires to GST_DEBUG=vaapidecode:5 and grep for this kind of error. etc. I categorized different error with the stream which can't be decoded and found that: 1. ** (gst-launch-0.10:11570): CRITICAL **: gst_video_calculate_display_ratio: assertion `num > 0' failed Manually set resolution can solve the problem. e.g. SVA_CL1_E.264 , BANM_MW_D.264 , HCHP2_HHI_A.264. and we don't need to set resolution in qa branch, clips can be decoded normally. 2. Pipeline is PREROLLING ... 0:00:00.191657617 11521 0x18365e0 ERROR vaapi gstvaapidecoder_h264.c:838:ensure_context: unsupported chroma_format_idc 0 0:00:00.191681530 11521 0x18365e0 ERROR vaapidecode gstvaapidecode.c:250:gst_vaapidecode_handle_frame: decode error 10 BA3_SVA_C.264 alphaconformanceG.264 HPCVMOLQ_BRCM_B.264 HPCAMOLQ_BRCM_B.264 There 4 files has the above error. and they can be decoded by mplayer. but fail to decode with gst-vaapi. 3. no error and no disply when decoding some files, and i have filed another bug about this. pls refer to #bug 59545 Hi, (In reply to comment #5) > I categorized different error with the stream which can't be decoded and > found that: > > 1. ** (gst-launch-0.10:11570): CRITICAL **: > gst_video_calculate_display_ratio: assertion `num > 0' failed > > Manually set resolution can solve the problem. > e.g. SVA_CL1_E.264 , BANM_MW_D.264 , HCHP2_HHI_A.264. This was fixed in git master branch yesterday. Please update and make sure the installed gstreamer-vaapi libs and elements are the latest (at least commit319f87f142ec49677b4e22aeec07468a2ab4eeae). Just git pull, build and install appropriately. This cannot be reproduced with those changes. > 2. Pipeline is PREROLLING ... > 0:00:00.191657617 11521 0x18365e0 ERROR vaapi > gstvaapidecoder_h264.c:838:ensure_context: unsupported chroma_format_idc 0 > 0:00:00.191681530 11521 0x18365e0 ERROR vaapidecode > gstvaapidecode.c:250:gst_vaapidecode_handle_frame: decode error 10 > > BA3_SVA_C.264 No, BA3_SVA_C will fail before with an unsupported profile_idc = 88 error. As to chroma_format_idc = 0 (monochrome), this doesn't seem to be supported by the HW either: only 4:2:0 as NV12. VA-API is also missing some appropriate VA_RT_FORMAT_YUV800 format anyway. > alphaconformanceG.264 > HPCVMOLQ_BRCM_B.264 > HPCAMOLQ_BRCM_B.264 > There 4 files has the above error. and they can be decoded by mplayer. > but fail to decode with gst-vaapi. With VA-API enabled too and chroma_format_idc = 0? Please check -msglevel vo=9 or whether there is something in the logs with LIBVA_TRACE set to some sensible output file. 1. Test with commit b24752da4ff7dec70390912de4bc8568680cb8f5 SVA_CL1_E.264 , BANM_MW_D.264 , HCHP2_HHI_A.264 have fixed. 2. we check the profile BA3_SVA_C.264 with elecard, it is not monochrome BA3_SVA_C.264 profile,level:Extend2.1 resolution176x144 chroma format4:2:0 not support Extended and morochroma. |
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.