summaryrefslogtreecommitdiff
path: root/recordmydesktop/include
AgeCommit message (Collapse)Author
2008-09-12Don't include config.h, recordmydesktop.h, rmdtypes.h, rmdfuncs.h orenselic
skeleton.h as system headers. include/rmdfunc.h include/rmdmacro.h include/rmdtypes.h include/recordmydesktop.h src/cleanup.c src/opendev.c src/rmd_jack.c src/wm_check.c src/get_frame.c src/parseargs.c src/rmd_cache.c src/rmd_error.c src/rmd_timer.c src/shortcuts.c src/specsfile.c src/getzpixmap.c src/load_cache.c src/rectinsert.c src/rmd_rescue.c src/rmdthreads.c src/cache_audio.c src/poll_events.c src/setbrwindow.c src/encode_cache.c src/flush_to_ogg.c src/init_encoder.c src/update_image.c src/capture_sound.c src/initialize_data.c src/queryextensions.c src/recordmydesktop.c src/make_dummy_pointer.c src/register_callbacks.c src/encode_image_buffer.c src/encode_sound_buffer.c: Changed. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@515 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-09-12Give rectinsert.c a header file and include this header file inenselic
RectInsert() clients. src/Makefile.am src/rectinsert.h: Added rectinsert.h. src/get_frame.c src/rectinsert.c src/poll_events.c: Include rectinsert.h include/rmdfunc.h: Removed RectInsert() declaration, it's in rectinsert.h now. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@512 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-09-12include/recordmydesktop.h: Make the global exit_status variableenselic
src/recordmydesktop.c: local here. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@511 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-09-12There is no point in keeping MakeMatrices() in a separate file.enselic
src/Makefile.am src/bgr_to_yuv.c: Deleted. src/initialize_data.c: Put MakeMatrices() here as a static function. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@509 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-09-11Started working towards a more clean include hierarchy andenselic
distinguishable program modules. First step: move stuff from global headers that is only used in one source file to those source files. include/rmdfunc.h include/rmdmacro.h include/rmdtypes.h: Move stuff from here src/rmd_jack.c src/get_frame.c src/rmd_cache.c src/load_cache.c src/rectinsert.c src/cache_frame.c src/poll_events.c src/setbrwindow.c src/recordmydesktop.c: To here. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@508 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-09-11Added a boolean type for use until potentially introduced from elsewhere.enselic
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@506 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-08-31updated skeleton.[h/c] from liboggz trunk, added AM_PROG_CC_C_O to configure.aciovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@500 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-02-11added year 2008 in all copyright noticesiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@494 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-02-11include/rmdfunc.h: removed poll_events func decl, addediovar
InitEventsPolling and EventLoop func decls include/rmdtypes.h: removed all unnecessary struct members, related to dual rect lists (mutexes, selector). git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@489 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2008-01-20added include/skeleton.h src/skeleton.c.iovar
implemented the skeleton bitsream recommendation git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@481 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-13src/rmd_restore.c -> src/rmd_rescue.ciovar
Every occurance of restore replaced with rescue git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@475 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-13doc/recordmydesktop.1: added documentation about -restore optioniovar
include/rmdfunc.h: read and write specs file function protorypes include/rmdtypes.h, src/cache_audio.c src/capture_sound.c, src/encode_sound_buffer.c, src/initialize_data.c, src/load_cache.c: framesize moved to pdata struct(used to be initialized separately by every function that used it). src/Makefile.am: added src/rmd_restore.c src/parseargs.c: handle -restore option src/recordmydesktop.c: argument parsing moved before any X calls (restore doesn't need a running X server) src/rmd_restore.c: initialize all needed structs and data, for restore to be performed. Then EncodeCache routine and exit. src/specsfile.c: read and write specs file function bodies git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@474 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-07doc/recordmydesktop.1, include/rmdmacro.h, src/parseargs.c:iovar
changed .ogg extension to .ogv, in code and documentation, according to #1845145 git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@467 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-05moved pause cond signaling to rmd_timer thread (was in signal handler)iovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@458 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-02include/rmdfunc.h: removed SetExpired & CancelTimer, added rmdTimeriovar
include/rmdtypes.h: pdata->timer_alive src/Makefile.am: added rmd_timer in sources src/rmd_timer.c: new thread that handles timing src/register_callbacks.c: removed SetExpired & CancelTimer src/rmdthreads.c: new timing setup(signal-sleep-loop thread, instead of setitimer &sigaction) git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@452 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-12-01include/rmdtypes.h: added the frame on the pdata struct.iovar
src/get_frame.c: select exposure events for the frame src/poll_events.c: redraw frame on exposure events git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@446 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-11-30doc/recordmydesktop.1: added documentation for --no-frameiovar
include/rmdfunc.h: added frame related function prototypes include/rmdmacro.h: default(off) for --no-frame include/rmdtypes.h: added --no-frame(noframe) in args src/rmd_frame.c: create and move around the frame src/Makefile.am: added rmd_frame.c src/parseargs.c: parse --no-frame src/queryextensions.c: check for XShape, too(implicit, non-fatal) src/rmd_frame.c: init, move and draw funcs for the frame. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@445 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-11-30rmdfunc.h: added func decl for rmdErrorHandleriovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@444 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-11-20rmdtypes.h: CacheData added => char *specsfileiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@437 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-11-15rmdfunc.h: added RegisterShortcuts declaration,iovar
changed PollDamage to PollEvents. rmdmacro.h: Added default values for shortcuts. rmdtypes.h: added HotKey struct type and all members related to shortcuts, on the pdata and args structs. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@434 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-11-13CleanUp func decliovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@429 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-08-14rmdmacro.h, rmdmacro.h: added --no-encode option and default value(off)iovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@407 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-08-07rmdtypes.h: added follow_mouse argumentiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@401 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-08-07rmdmacro.h: changed MARK_BACK_BUFFER macroiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@400 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-07-17rmdfunc.h: added x_offset and Y_offset arguments in BlocksFromListiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@392 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-07-08rmdtypes.h: uint to unsigned int for a couple of variablesiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@366 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-07-08rmdmacro.h: made appropriate changes to rgb2yuv macros,iovar
so that cache blocks will calculated during the conversion and not later, on a step of their own. Added MARK_BACK_BUFFER* macros, so that cursor will be updated normally during conversion. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@365 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-07-08rmdfunc.h: added BlocksFromList func, changed args of UpdateImageiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@364 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-07-08recordmydesktop.h: added global cache block arraysiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@363 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-06-08rmdmacro.h: update XFIXES_POINTER_TO_YUV andiovar
DUMMY_CURSOR_TO_YUV macros, to take into account the offset of the cursor from top and left boundaries. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@347 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-05-08added double buffering when capturing in full-shots.iovar
This way, only pixels that have changed are converted to yuv git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@333 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-04-25zero compression on by defaultiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@310 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-04-15removed unnecessary calculation of the A componentiovar
when performing averaging for the u,v planes git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@309 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-04-14well... it only took me a few months to notice that the Ub and Vr componentsiovar
are the same and don't need to be held on separate arrays... (replaced them with on UbVr array) git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@304 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-03-13fixed xdamage with xshm andiovar
removed anything related to conditional shared memory usage. Added GetZPixmapShm.Cleaned up pdata stuct from unneeded members. Removed argumednts related to conditional shared (--no-cond-shared, --shared threshold).Changed default for Shm and --with-shared is now --no-shared. Also, dummy cursor has been shaped up a bit. Version changed to 0.3.4-cvs. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@293 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-02-20added configurable ringbuffer size,iovar
corrected a mistake that blocked compilation(from last commit at shminfo initialization), removed the options from USAGE in the manpage and the program ,since it's too bloated to be usefull git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@285 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-02-07Added support for recording audio through jack.iovar
libjack is dlopened so there's no runtime dependency on it. Ports must be connected at startup. New files: src/rmd_jack.c git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@273 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-29Fixed all condition variables, to be waited with correct mutexes.iovar
This fixed also the wakeup from pause bug. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@269 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-29added check in configure.ac for machine/endian.h (BSD).iovar
Fixed fpe in FlushBlock git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@268 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-29Added support for compilation with OSS, instead of ALSA.iovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@267 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-27Changed cache format to utilize better interframe encodingiovar
and thus require sufficiently less hard disk space. Instead of the old (plane_width/16)*(plane_height/16) blocksize, now we are using 16x16 for the y plane and 8x8 blocks for the u,v planes. Also this byte alignment allows comparing of blocks to happen by first casting into a larger datatype(u_int64_t if available, u_int32_t else). This way we do as little as 1/8 or 1/4 of comparisons. This essentially offsets the higher CPU required to check the now increased number of blocks, and even provides a slight performance boost from the previous way of caching. Also, the load cache loop has been debloated, by moving much of the functionality that previously resided in an if evaluation statement, into anew function(ReadFrame). For further abstraction, ReadFrame utilizes ReadZF to do the actual reading. ReadZF determines if a gzread or an fread has to be done. Another improvement in the program is that, now, write operations on the disk, happen in 4 kbytes pages, minimizing thus the overall cost of access. Last change in this set is that the indexes in the CachedFrame and FrameHeader datatypes, are now u_int32_t's, to accomodate the possibly large number of blocks(could have been 16 bit types but that would give 4096*4096 max resolution, which might have caused problems in the future) git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@266 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-21changed formatting of the code, to never go beyond column 80iovar
(rule is purely for visual purposes, macro expansions are not taken into account). git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@262 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-21removed duplicated code of UPDATE_*_PLANE(S)_*,iovar
which have been replaced with UPDATE_*_PLANE(S) with an extra __bit_depth__ parameter git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@261 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-21Added support for 16bpp color depth.iovar
Currently the UPDATE_*_PLANE(S)_* macros are duplicated, so they might need some reworking (they are perfectly functional though). git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@260 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-20Concatated all UPDATE_YUV_BUFFER_* macros into one, UPDATE_YUV_BUFFER.iovar
This one is further broken into UPDATE_(X)_PLANE(S)_(Y) macros, where X is Y or UV and Y is 32 or 16(color depth). This will allow easier incorporation of 16bpp support, without code duplication(where it can be avoided) and without bloating the toplevel calls of these macros with multiple similar blocks of code. Also changed toplevel check of depth, to allow running on 16 bpp git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@259 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-18New files: initialize_data.c, rmdthreads.c.iovar
Cleaned-up main, moved initialization tasks to InitializeData and all thread creation in rmdThreads. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@258 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-18New file: encode_cache.c.iovar
Moved some of the code on cache encoding, from main to a new fuction(EncodeCache). Added EncodeCache declaration in rmdfunc.h git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@257 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-17fix for xfixes cursor in amd64 (and any archiovar
with sizeof(long)!=4). Xfixes.h declares the pixels as a list of unsigned long instead of CARD32 that is used on the serverside , resulting in 4 byte padding on amd64, where sizeof(long)==8.This was breaking the XFIXES_POINTER_TO_YUV macro, but is now corrected. git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@256 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-04added license information in new headersiovar
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@254 f606c939-3180-4ac9-a4b8-4b8779d57d0a
2007-01-04header has been broken to types,func and macros partsiovar
for easier maintainance git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@253 f606c939-3180-4ac9-a4b8-4b8779d57d0a
© All Rights Reserved