Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opengl client window rendering bugs #150

Closed
totaam opened this issue Jun 22, 2012 · 29 comments
Closed

opengl client window rendering bugs #150

totaam opened this issue Jun 22, 2012 · 29 comments

Comments

@totaam
Copy link
Collaborator

totaam commented Jun 22, 2012

Issue migrated from trac ticket # 150

component: client | priority: major | resolution: duplicate

2012-06-22 10:08:21: antoine created the issue


  1. pyopengl glTexSubImage2D GL_TEXTURE_RECTANGLE_ARB error: 1281 invalid value

Got a bug when resizing paraview with x264 + opengl client window (see #147 and #107):

_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1339, 735)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=2, y=23, width=1339, height=735>): new geometry=(2, 23, 1339, 735)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1340, 735)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=2, y=23, width=1340, height=735>): new geometry=(2, 23, 1340, 735)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1422, 735)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=2, y=23, width=1422, height=735>): new geometry=(2, 23, 1422, 735)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1340,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1504, 735)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1536, 735)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1422,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=2, y=23, width=1536, height=735>): new geometry=(2, 23, 1536, 735)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1538, 735)
_process_window_resized resizing window <GLClientWindow object at 0x3593230 (xpra+client_window+ClientWindow at 0x34252e0)> (id=3) to (1562, 735)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=430, y=195, width=1562, height=735>): new geometry=(430, 195, 1536, 735)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=430, y=195, width=1536, height=735>): new geometry=(430, 195, 1536, 735)
do_configure_event(<gtk.gdk.Event at 0x3507c38: GDK_CONFIGURE x=430, y=195, width=1536, height=735>): new geometry=(430, 195, 1536, 735)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd3\xd3\xd3\xd3\xd4\xd4\xd4\xd4\xd4...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	)
)
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 183, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 124, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 166, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 254, in update_texture_yuv420
    glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, img_data[0])
  File "/usr/lib/python2.7/site-packages/OpenGL/latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/site-packages/OpenGL/wrapper.py", line 791, in wrapperCall
    raise err
GLError: GLError(
	err = 1281,
	description = 'invalid value',
	baseOperation = glTexSubImage2D,
	pyArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArgs = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	),
	cArguments = (
		GL_TEXTURE_RECTANGLE_ARB,
		0,
		0,
		0,
		1536,
		734,
		GL_LUMINANCE,
		GL_UNSIGNED_BYTE,
		'\xd5\xd5\xd5\xd5\xd4\xd4\xd4\xd5\xd5...,
	)
)
  1. this one when trying to run nexuiz (nothing on screen at all):
Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 491, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 764, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 182, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 686, in _process_draw
    window.draw_region(x, y, width, height, coding, data, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 131, in draw_region
    self.paint_with_video_decoder(DECODERS, Decoder, "x264", img_data, x, y, width, height, rowstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 173, in paint_with_video_decoder
    update_texture(data, x, y, width, height, outstride)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 211, in update_texture_yuv420
    assert self.textures is not None
AssertionError
@totaam
Copy link
Collaborator Author

totaam commented Jun 25, 2012

2012-06-25 18:47:11: antoine edited the issue description

@totaam
Copy link
Collaborator Author

totaam commented Jun 25, 2012

2012-06-25 18:47:11: antoine changed title from pyopengl glTexSubImage2D GL_TEXTURE_RECTANGLE_ARB error: 1281 invalid value to opengl client window rendering bugs

@totaam
Copy link
Collaborator Author

totaam commented Jul 3, 2012

2012-07-03 15:53:02: ahuillet commented


The first problem should be OK with trunk as of this writing.

As for the second problem, please try the following:

diff --git a/src/xpra/gl_client_window.py b/src/xpra/gl_client_window.py
index 7dbd2d7..fa78bd0 100644
--- a/src/xpra/gl_client_window.py
+++ b/src/xpra/gl_client_window.py
@@ -75,6 +75,13 @@ class GLClientWindow(ClientWindow):
         self._on_close = []
         self.textures = None # OpenGL texture IDs
         self.current_mode = GLClientWindow.MODE_UNINITIALIZED
+        drawable = self.glarea.get_gl_drawable()
+        context = self.glarea.get_gl_context()
+        if not drawable.gl_begin(context):
+            raise Exception("** Cannot create OpenGL rendering context!")
+        if self.textures is None:
+            self.textures = glGenTextures(3)
+        drawable.gl_end()
 
     def do_configure_event(self, event):
         ClientWindow.do_configure_event(self, event)

@totaam
Copy link
Collaborator Author

totaam commented Jul 4, 2012

2012-07-04 09:57:45: antoine commented


FYI: I still get errors during resizing:

Error while decoding frame
paint_with_video_decoder: ouch, decompression error 2
[h264 @ 0x2e54520] non-existing PPS 0 referenced
[h264 @ 0x2e54520] decode_slice_header error
[h264 @ 0x2e54520] no frame!

But these are not specific to gl rendering.

@totaam
Copy link
Collaborator Author

totaam commented Jul 4, 2012

2012-07-04 09:57:45: antoine

@totaam
Copy link
Collaborator Author

totaam commented Jul 4, 2012

2012-07-04 10:06:15: antoine commented


Sorry, I was wrong:

found valid OpenGL: 2.1
GL Extension GL_ARB_fragment_program available

(xpra:28451): GtkGLExt-CRITICAL **: gtk_widget_get_gl_window: assertion `gtk_widget_get_realized (widget)' failed

(xpra:28451): GtkGLExt-CRITICAL **: gtk_widget_get_gl_context: assertion `gtk_widget_get_realized (widget)' failed

Unhandled error while processing packet from peer
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/protocol.py", line 496, in _process_packet
    self._process_packet_cb(self, decoded)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 783, in process_packet
    XpraClientBase.process_packet(self, proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client_base.py", line 191, in process_packet
    handler(packet)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 676, in _process_new_window
    self._process_new_common(packet, False)
  File "/usr/lib64/python2.7/site-packages/xpra/client.py", line 670, in _process_new_common
    window = ClientWindowClass(self, wid, x, y, w, h, metadata, override_redirect)
  File "/usr/lib64/python2.7/site-packages/xpra/gl_client_window.py", line 80, in __init__
    if not drawable.gl_begin(context):
AttributeError: 'NoneType' object has no attribute 'gl_begin'

Maybe because the widget is not realized yet? (just make it so?)

@totaam
Copy link
Collaborator Author

totaam commented Jul 4, 2012

2012-07-04 10:06:15: antoine

@totaam
Copy link
Collaborator Author

totaam commented Jul 10, 2012

2012-07-10 18:59:32: antoine commented


New one today:

Mesa 8.0.3 implementation error: Unexpected program target 0x0 in destroy_program_variants_cb()
Please report at bugs.freedesktop.org

@totaam
Copy link
Collaborator Author

totaam commented Sep 27, 2012

2012-09-27 16:21:04: antoine changed status from new to accepted

@totaam
Copy link
Collaborator Author

totaam commented Sep 27, 2012

2012-09-27 16:21:04: antoine changed owner from ahuillet to antoine

@totaam
Copy link
Collaborator Author

totaam commented Sep 27, 2012

2012-09-27 16:21:04: antoine

@totaam
Copy link
Collaborator Author

totaam commented Oct 31, 2012

2012-10-31 15:23:33: antoine changed status from accepted to closed

@totaam
Copy link
Collaborator Author

totaam commented Oct 31, 2012

2012-10-31 15:23:33: antoine changed resolution from ** to fixed

@totaam
Copy link
Collaborator Author

totaam commented Oct 31, 2012

2012-10-31 15:23:33: antoine commented


All these bugs have now been dealt with - I think.

A number of those were not actually directly caused by GL rendering, maybe just made worse? ie: there were a number of races in the video decoder's setup/cleanup code (all fixed before 0.7 release)

The rest will be followed up in #149

@totaam
Copy link
Collaborator Author

totaam commented Nov 1, 2012

2012-11-01 14:19:43: antoine changed status from closed to reopened

@totaam
Copy link
Collaborator Author

totaam commented Nov 1, 2012

2012-11-01 14:19:43: antoine changed resolution from fixed to **

@totaam
Copy link
Collaborator Author

totaam commented Nov 1, 2012

2012-11-01 14:19:43: antoine commented


the bug in comment:5 is still present, and it happens for others too: upstream bug

We will need to run in gdb and "poke around".

@totaam
Copy link
Collaborator Author

totaam commented Nov 3, 2012

2012-11-03 06:21:37: antoine changed status from reopened to assigned

@totaam
Copy link
Collaborator Author

totaam commented Nov 3, 2012

2012-11-03 06:21:37: antoine changed owner from antoine to ahuillet

@totaam
Copy link
Collaborator Author

totaam commented Nov 3, 2012

2012-11-03 06:21:37: antoine commented


meh, I don't understand where I am supposed to find this destroy_program_variants_cb function loaded.
I attached gdb to both xpra and Xorg, and neither of them has this function loaded... ideas?

@totaam
Copy link
Collaborator Author

totaam commented Nov 3, 2012

2012-11-03 08:06:12: antoine commented


New one today (gedit right click? - caused by transient window?):

Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/gl_window_backing.py", line 148, in do_paint
    if self.update_texture_yuv(img_data, x, y, width, height, rowstrides, pixel_format):
  File "/usr/lib64/python2.7/site-packages/xpra/gl_window_backing.py", line 170, in update_texture_yuv
    assert self.textures is not None
AssertionError

@totaam
Copy link
Collaborator Author

totaam commented Dec 21, 2012

2012-12-21 09:00:37: antoine commented


Now I can get destroy_program_variants_cb to break, here's what I found:

Breakpoint 1, 0x00007fc60766c940 in destroy_program_variants_cb () from /usr/lib64/dri/nouveau_dri.so
(gdb) bt
#0  0x00007fc60766c940 in destroy_program_variants_cb () from /usr/lib64/dri/nouveau_dri.so
#1  0x00007fc6075f9f00 in _mesa_HashWalk () from /usr/lib64/dri/nouveau_dri.so
#2  0x00007fc60766ddf1 in st_destroy_program_variants () from /usr/lib64/dri/nouveau_dri.so
#3  0x00007fc60766a4fa in st_destroy_context () from /usr/lib64/dri/nouveau_dri.so
#4  0x00007fc6074edd8a in dri_destroy_context () from /usr/lib64/dri/nouveau_dri.so
#5  0x00007fc6074e9f23 in driDestroyContext () from /usr/lib64/dri/nouveau_dri.so
#6  0x00007fc60ec4500c in dri2_destroy_context (context=0x29b8090) at dri2_glx.c:132
#7  0x00007fc60ec18021 in glXDestroyContext (ctx=0x29b8090, dpy=0x18fa540) at glxcmds.c:424
#8  glXDestroyContext (dpy=0x18fa540, ctx=0x29b8090) at glxcmds.c:405
#9  0x00007fc60c323464 in _gdk_gl_context_destroy () from /lib64/libgdkglext-x11-1.0.so.0
#10 0x00007fc60c323499 in gdk_gl_context_impl_x11_finalize () from /lib64/libgdkglext-x11-1.0.so.0
#11 0x0000003564e1486b in g_object_unref () from /lib64/libgobject-2.0.so.0
#12 0x00007fc60c546872 in gtk_gl_widget_unrealize () from /lib64/libgtkglext-x11-1.0.so.0
#13 0x0000003564e0f910 in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#14 0x0000003564e20d08 in signal_emit_unlocked_R () from /lib64/libgobject-2.0.so.0
#15 0x0000003564e28c8d in g_signal_emit_valist () from /lib64/libgobject-2.0.so.0
#16 0x0000003564e28de2 in g_signal_emit () from /lib64/libgobject-2.0.so.0
#17 0x0000003091286b62 in gtk_widget_unrealize () from /lib64/libgtk-x11-2.0.so.0
#18 0x00000030912823dc in gtk_widget_real_unrealize () from /lib64/libgtk-x11-2.0.so.0
#19 0x0000003564e0fbd7 in _g_closure_invoke_va () from /lib64/libgobject-2.0.so.0
#20 0x0000003564e283a8 in g_signal_emit_valist () from /lib64/libgobject-2.0.so.0
#21 0x0000003564e28de2 in g_signal_emit () from /lib64/libgobject-2.0.so.0
#22 0x0000003091286b62 in gtk_widget_unrealize () from /lib64/libgtk-x11-2.0.so.0
#23 0x0000003091289e18 in gtk_widget_dispose () from /lib64/libgtk-x11-2.0.so.0
#24 0x0000003564e15961 in g_object_run_dispose () from /lib64/libgobject-2.0.so.0
#25 0x00007fc6101a3f0d in _wrap_gtk_widget_destroy () from /usr/lib64/python2.7/site-packages/gtk-2.0/gtk/_gtk.so
#26 0x0000003561e49c0e in PyObject_Call (func=func@entry=<built-in method destroy of GLClientWindow object at remote 0x27ee5a0>, arg=arg@entry=(), 
    kw=<optimized out>) at /usr/src/debug/Python-2.7.3/Objects/abstract.c:2529
#27 0x0000003561ed7367 in PyEval_CallObjectWithKeywords (func=func@entry=<built-in method destroy of GLClientWindow object at remote 0x27ee5a0>, arg=arg@entry=(), 
    kw=kw@entry=0x0) at /usr/src/debug/Python-2.7.3/Python/ceval.c:3967
#28 0x0000003561e5e199 in methoddescr_call (descr=<optimized out>, args=(), kwds=0x0) at /usr/src/debug/Python-2.7.3/Objects/descrobject.c:247
#29 0x0000003561e49c0e in PyObject_Call (func=func@entry=<method_descriptor at remote 0x7fc60da449e0>, arg=arg@entry=
    (<GLClientWindow(_been_mapped=True, _refresh_min_pixels=-1, _client_properties={'workspace': 0}, group_leader=None, _refresh_timer=None, _pos=(2, 23), _metadata={'size-constraints': {}, 'window-type': ('_NET_WM_WINDOW_TYPE_NORMAL',), 'pid': -1, 'modal': False, 'title': 'glxgears'}, _override_redirect=False, _client=<XpraClient(_draw_thread=<Thread(_Thread__ident=140488475068160, _Thread__block=<_Condition(_Verbose__verbose=False, _Condition__lock=<thread.lock at remote 0x1d1e170>, acquire=<built-in method acquire of thread.lock object at remote 0x1d1e170>, _Condition__waiters=[], release=<built-in method release of thread.lock object at remote 0x1d1e170>) at remote 0x24b7450>, _Thread__name='draw_loop', _Thread__daemonic=True, _Thread__started=<_Event(_Verbose__verbose=False, _Event__flag=True, _Event__cond=<_Condition(_Verbose__verbose=False, _Condition__lock=<thread.lock at remote 0x1a06cd0>, acquire=<built-in method acquire of thread.lock object at remote 0x1a06cd0>, _Condition__waiters=[], release=<built-...(truncated), kw=kw@entry=0x0) at /usr/src/debug/Python-2.7.3/Objects/abstract.c:2529
#30 0x0000003561ed9583 in do_call (nk=<optimized out>, na=1, pp_stack=0x7fff726796a8, func=<method_descriptor at remote 0x7fc60da449e0>)
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:4316
#31 call_function (oparg=<optimized out>, pp_stack=0x7fff726796a8) at /usr/src/debug/Python-2.7.3/Python/ceval.c:4121
#32 PyEval_EvalFrameEx (f=<optimized out>, throwflag=throwflag@entry=0) at /usr/src/debug/Python-2.7.3/Python/ceval.c:2740
#33 0x0000003561edcef1 in fast_function (nk=<optimized out>, na=1, n=<optimized out>, pp_stack=0x7fff726798a8, func=<function at remote 0x1a0e0c8>)
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:4184
#34 call_function (oparg=<optimized out>, pp_stack=0x7fff726798a8) at /usr/src/debug/Python-2.7.3/Python/ceval.c:4119
#35 PyEval_EvalFrameEx (f=f@entry=
    Frame 0x29c5610, for file /usr/lib64/python2.7/site-packages/xpra/client.py, line 1125, in _process_lost_window (self=<XpraClient(_draw_thread=<Thread(_Thread__ident=140488475068160, _Thread__block=<_Condition(_Verbose__verbose=False, _Condition__lock=<thread.lock at remote 0x1d1e170>, acquire=<built-in method acquire of thread.lock object at remote 0x1d1e170>, _Condition__waiters=[], release=<built-in method release of thread.lock object at remote 0x1d1e170>) at remote 0x24b7450>, _Thread__name='draw_loop', _Thread__daemonic=True, _Thread__started=<_Event(_Verbose__verbose=False, _Event__flag=True, _Event__cond=<_Condition(_Verbose__verbose=False, _Condition__lock=<thread.lock at remote 0x1a06cd0>, acquire=<built-in method acquire of thread.lock object at remote 0x1a06cd0>, _Condition__waiters=[], release=<built-in method release of thread.lock object at remote 0x1a06cd0>) at remote 0x1a02b90>) at remote 0x19bd6d0>, _Thread__stderr=<file at remote 0x7fc61c19f270>, _Thread__target=<instancemethod at remote 0x...(truncated), throwflag=throwflag@entry=0) at /usr/src/debug/Python-2.7.3/Python/ceval.c:2740

I think we just need a cleanup method for the gl window that will take care of destroying the shader, as already done in _do_paint_rgb24:

            glDisable(GL_FRAGMENT_PROGRAM_ARB)
            glDeleteProgramsARB(1, self.yuv_shader)
            self.yuv_shader = None

@totaam
Copy link
Collaborator Author

totaam commented Dec 21, 2012

2012-12-21 09:12:12: antoine commented


more fixes in:

  • r2325 (delta mode support)
  • r2326 (fix expose events)

@totaam
Copy link
Collaborator Author

totaam commented Dec 21, 2012

2012-12-21 09:30:17: antoine commented


r2327 fixes the destroy_program_variants_cb warning (and more).

@totaam
Copy link
Collaborator Author

totaam commented Feb 8, 2013

2013-02-08 04:40:33: antoine

@totaam
Copy link
Collaborator Author

totaam commented Feb 8, 2013

2013-02-08 04:40:33: antoine commented


We need to pass small regions as YUV data (via swscale, preferably on the server) so the client can render them using the current GL video setup. Plain RGB won't work.

@totaam
Copy link
Collaborator Author

totaam commented Feb 25, 2013

2013-02-25 16:43:27: antoine changed status from assigned to closed

@totaam
Copy link
Collaborator Author

totaam commented Feb 25, 2013

2013-02-25 16:43:27: antoine changed resolution from ** to duplicate

@totaam
Copy link
Collaborator Author

totaam commented Feb 25, 2013

2013-02-25 16:43:27: antoine commented


Will follow up in #147

@totaam totaam closed this as completed Feb 25, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant