summaryrefslogtreecommitdiff
path: root/rMD-exp/include
diff options
context:
space:
mode:
authoriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-10-24 12:58:54 +0000
committeriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-10-24 12:58:54 +0000
commitba11f851311f9f92f92fcd8148a8f621b736e979 (patch)
treedd062f9ff9f0fe8f2e26cb323300a121704e6c95 /rMD-exp/include
parentffe69a6240de9e6bb56b9b729b8133fb323cee80 (diff)
gzipped frame caching
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@114 f606c939-3180-4ac9-a4b8-4b8779d57d0a
Diffstat (limited to 'rMD-exp/include')
-rw-r--r--rMD-exp/include/recordmydesktop.h38
1 files changed, 23 insertions, 15 deletions
diff --git a/rMD-exp/include/recordmydesktop.h b/rMD-exp/include/recordmydesktop.h
index 9255525..b06db1b 100644
--- a/rMD-exp/include/recordmydesktop.h
+++ b/rMD-exp/include/recordmydesktop.h
@@ -235,31 +235,39 @@ typedef struct _ProgData{
//the same platform.
//We need the total number of blocks
-//and the position number of each of them
-//(separately for y,u,v planes).
+//for each plane.
+
//The number of the frame compared to the
//number of time expirations at the time of
//caching, will enable us to make up for lost frames.
-
+//default 4+4+2+2+2=14!bad!
+//me add pad, make god of 2 happy!
typedef struct _FrameHeader{
-
- unsigned int frameno;//number of frame(cached frames)
- unsigned int current_total;//number of frames that should have been
+ u_int32_t frameno,//number of frame(cached frames)
+ current_total;//number of frames that should have been
//taken at time of caching this one
- unsigned short Ynum;//number of changed blocks in the Y plane
- unsigned short Unum;//number of changed blocks in the U plane
- unsigned short Vnum;//number of changed blocks in the V plane
- unsigned char *YBlocks;//identifying number on the grid, starting at top left
- unsigned char *UBlocks;// >> >>
- unsigned char *VBlocks;// >> >>
- unsigned char *YData;//data for the blocks that have changed,
- unsigned char *UData;//which have to be remapped on the buffer when reading
- unsigned char *VData;
+ u_int16_t Ynum,//number of changed blocks in the Y plane
+ Unum,//number of changed blocks in the U plane
+ Vnum;//number of changed blocks in the V plane
+ u_int16_t pad;//always zero
}FrameHeader;
+//The frame after retrieval.
+//Based on the Header information
+//we can read the correct amount of bytes.
+
+typedef struct _CachedFrame{
+ FrameHeader *header;
+ unsigned char *YBlocks;//identifying number on the grid, starting at top left
+ unsigned char *UBlocks;// >> >>
+ unsigned char *VBlocks;// >> >>
+ unsigned char *YData;//pointer to data for the blocks that have changed,
+ unsigned char *UData;//which have to be remapped on the buffer when reading
+ unsigned char *VData;
+}CachedFrame;
/**Globals*/
© All Rights Reserved