GPU error attempting to render with EGL_image_external

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

GPU error attempting to render with EGL_image_external

ソリューションへジャンプ
147件の閲覧回数
Brainsnacks
Contributor II

Running on an iMX.8QuadMax, I am trying to deploy a Gstreamer pipeline that decodes HEVC frames that are then passed to "glupload", a Gstreamer element capable of producing EGL_image-backed GL textures.

glupload appears to be setting the correct parameters when creating the EGL image from the DMA buffer, based on its debug and logging output.

However, when I attempt to render the decoded frame inside GLES, sampling from the EGL_image-backed texture, I get the error:

[ 1] ES30: some draw get error and skipped during validation

Also, it will occasionally SEGFAULT during the draw which samples from the texture. The call stack is:

#0 0x0000fffff5a48e68 in ?? () from /usr/lib/libGAL.so
#1 0x0000fffff59edcb4 in gcoSURF_DisableTileStatus () from /usr/lib/libGAL.so
#2 0x0000fffff5a036e8 in gco3D_SetTarget () from /usr/lib/libGAL.so

Can I get some help figuring out what is wrong?

0 件の賞賛
返信
1 解決策
74件の閲覧回数
Brainsnacks
Contributor II

I solved the issue. The Gstreamer plugins were using their own GL context instead of sharing my render context, so the texture IDs I was getting, despite being valid texture IDs in the render context, were not actually the same objects. Hence, attempting to sample those textures as EGLImage external backed textures was an error. 

元の投稿で解決策を見る

3 返答(返信)
75件の閲覧回数
Brainsnacks
Contributor II

I solved the issue. The Gstreamer plugins were using their own GL context instead of sharing my render context, so the texture IDs I was getting, despite being valid texture IDs in the render context, were not actually the same objects. Hence, attempting to sample those textures as EGLImage external backed textures was an error. 

114件の閲覧回数
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

For supported formats one can refer to the Release Notes, and the graphics user guide.

pay attention to Table 15. i.MX GStreamer 1.0 plugins.

Also if you are receiving segmentation fault is due to your don't have enough memory to run the graphics check this part.

 

Regards

 

0 件の賞賛
返信
111件の閲覧回数
Brainsnacks
Contributor II

I really don't think it's a memory space limitation. The texture is 200x200 RGBA. The video stream I'm playing back has 3 frames in it. That is only 160KB total.

I've read the Gstreamer guide. It mostly talks about constructing pipelines with gst-launch and isn't helpful here.

What does "some draw get error and skipped during validation" mean? How do I get more details on the actual *error*?

I also tried VIV_DEBUG=-MSG_LEVEL:WARNING and that didn't print anything new.

0 件の賞賛
返信