[Ffmpeg-cvslog] r6172 - trunk/libavcodec/vmnc.c
kostya
subversion
Tue Sep 5 09:29:27 CEST 2006
Author: kostya
Date: Tue Sep 5 09:29:26 2006
New Revision: 6172
Modified:
trunk/libavcodec/vmnc.c
Log:
Handle raw blocks correctly (both updating pointer and storing to memory)
Modified: trunk/libavcodec/vmnc.c
==============================================================================
--- trunk/libavcodec/vmnc.c (original)
+++ trunk/libavcodec/vmnc.c Tue Sep 5 09:29:26 2006
@@ -105,7 +105,17 @@
for(i = 0; i < w; i++) {
p = vmnc_get_pixel(src, bpp, be);
src += bpp;
- memcpy(dst + i*bpp, &p, bpp);
+ switch(bpp){
+ case 1:
+ dst[i] = p;
+ break;
+ case 2:
+ ((uint16_t*)dst)[i] = p;
+ break;
+ case 4:
+ ((uint32_t*)dst)[i] = p;
+ break;
+ }
}
dst += stride;
}
@@ -129,6 +139,7 @@
flags = *src++;
if(flags & HT_RAW) {
paint_raw(dst2, bw, bh, src, bpp, c->bigendian, stride);
+ src += bw * bh * bpp;
} else {
if(flags & HT_BKG) {
bg = vmnc_get_pixel(src, bpp, c->bigendian); src += bpp;
More information about the ffmpeg-cvslog
mailing list