pupil-labs / pupil

Open source eye tracking
https://pupil-labs.com
GNU Lesser General Public License v3.0
1.45k stars 673 forks source link

Issue with rendering of frames in the world window that do not have the right yuv-subsampling format #1398

Open euryalus opened 5 years ago

euryalus commented 5 years ago

In the gl_display method of Base_Source, it is not checked what uv-subsampling is used in frame.yuv_buffer. This can lead to problems in the world window, when the uv-subsampling is different than the one assumed in g_pool.image_tex.update_from_yuv_buffer (https://github.com/pupil-labs/pupil/blob/master/pupil_src/shared_modules/video_capture/base_backend.py#L87). This is e.g. the case when the frame's yuv_buffer was generated from an open-cv jpeg_buffer.

Either g_pool.image_tex.update_from_yuv_buffer also needs to get information on the uv-subsampling, or it explicitely could be a given a yuv_buffer with the right subsampling.

papr commented 5 years ago

Yes, this is indeed a problem on which @pointcontrols has been working on already.

pointcontrols commented 5 years ago

I have added some support in pyglui for 420 texrures. We can discuss this when I am in BER next week.

On Thu, Nov 22, 2018, 16:10 Pablo Prietz <notifications@github.com wrote:

Yes, this is indeed a problem on which @pointcontrols https://github.com/pointcontrols has been working on already.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pupil-labs/pupil/issues/1398#issuecomment-441041870, or mute the thread https://github.com/notifications/unsubscribe-auth/AMnuX_bJQiAdJHpfORGCxparEybsy6j2ks5uxrBdgaJpZM4YvavH .