gst/librfb/gstrfbsrc.c: Minimum raw encoding is working now

Original commit message from CVS:
* gst/librfb/gstrfbsrc.c:
Minimum raw encoding is working now
* gst/librfb/rfbdecoder.c:
fix address while reading from stream
This commit is contained in:
Thijs Vermeir 2007-09-21 10:27:02 +00:00
parent 27230cfead
commit ab4038ce2e
3 changed files with 12 additions and 10 deletions

View file

@ -1,3 +1,10 @@
2007-09-21 Thijs Vermeir <thijsvermeir@gmail.com>
* gst/librfb/gstrfbsrc.c:
Minimum raw encoding is working now
* gst/librfb/rfbdecoder.c:
fix address while reading from stream
2007-09-20 Thijs Vermeir <thijsvermeir@gmail.com>
* gst/librfb/gstrfbsrc.c:

View file

@ -40,10 +40,6 @@ enum
ARG_PASSWORD,
};
#define RGB332_R(x) ((((x)&0x07) * 0x124)>>3)
#define RGB332_G(x) ((((x)&0x38) * 0x124)>>6)
#define RGB332_B(x) ((((x)&0xc0) * 0x149)>>8)
GST_DEBUG_CATEGORY_STATIC (rfbsrc_debug);
#define GST_CAT_DEFAULT rfbsrc_debug
@ -67,7 +63,7 @@ GST_STATIC_PAD_TEMPLATE ("src",
"green_mask = (int) 0x00ff0000, "
"blue_mask = (int) 0xff000000, "
"width = (int) [ 16, 4096 ], "
"height = (int) [ 16, 4096 ], " "framerate = (fraction) 30/1")
"height = (int) [ 16, 4096 ], " "framerate = (fraction) 0/1")
);
static void gst_rfb_src_base_init (gpointer g_class);

View file

@ -148,10 +148,10 @@ rfb_decoder_iterate (RfbDecoder * decoder)
}
guint8 *
rfb_decoder_read (RfbDecoder * decoder, gint len)
rfb_decoder_read (RfbDecoder * decoder, guint32 len)
{
gint total = 0;
gint now = 0;
guint32 total = 0;
guint32 now = 0;
guint8 *address = NULL;
g_return_val_if_fail (decoder->fd > 0, NULL);
@ -160,9 +160,8 @@ rfb_decoder_read (RfbDecoder * decoder, gint len)
address = g_malloc (len);
g_return_val_if_fail (address, NULL);
address += total;
while (total < len) {
now = recv (decoder->fd, address, len - total, 0);
now = recv (decoder->fd, address + total, len - total, 0);
if (now <= 0) {
GST_WARNING ("rfb read error on socket");
return NULL;