[recordmydesktop-svn-commit] SF.net SVN: recordmydesktop:[546] trunk/recordmydesktop/src
Status: Alpha
Brought to you by:
enselic
From: svn c. f. r. <rec...@li...> - 2008-09-14 13:06:33
|
Revision: 546 http://recordmydesktop.svn.sourceforge.net/recordmydesktop/?rev=546&view=rev Author: enselic Date: 2008-09-14 13:06:20 +0000 (Sun, 14 Sep 2008) Log Message: ----------- src/*.[ch]: Rename files so that the name becomes rmd_some_file.[ch]. The exceptions are recordmydesktop.c which is the main file and skeleton.[ch] which are external files. src/Makefile.am: Adapt. Modified Paths: -------------- trunk/recordmydesktop/src/Makefile.am trunk/recordmydesktop/src/recordmydesktop.c trunk/recordmydesktop/src/rmd_cache.c trunk/recordmydesktop/src/rmd_cache.h trunk/recordmydesktop/src/rmd_error.h trunk/recordmydesktop/src/rmd_frame.h trunk/recordmydesktop/src/rmd_jack.c trunk/recordmydesktop/src/rmd_jack.h trunk/recordmydesktop/src/rmd_rescue.c trunk/recordmydesktop/src/rmd_timer.c trunk/recordmydesktop/src/rmd_timer.h trunk/recordmydesktop/src/test-rectinsert-types.h trunk/recordmydesktop/src/test-rectinsert.c Added Paths: ----------- trunk/recordmydesktop/src/rmd_block_utils.c trunk/recordmydesktop/src/rmd_block_utils.h trunk/recordmydesktop/src/rmd_cache_audio.c trunk/recordmydesktop/src/rmd_cache_audio.h trunk/recordmydesktop/src/rmd_cache_frame.c trunk/recordmydesktop/src/rmd_cache_frame.h trunk/recordmydesktop/src/rmd_capture_sound.c trunk/recordmydesktop/src/rmd_capture_sound.h trunk/recordmydesktop/src/rmd_encode_cache.c trunk/recordmydesktop/src/rmd_encode_cache.h trunk/recordmydesktop/src/rmd_encode_image_buffer.c trunk/recordmydesktop/src/rmd_encode_image_buffer.h trunk/recordmydesktop/src/rmd_encode_sound_buffer.c trunk/recordmydesktop/src/rmd_encode_sound_buffer.h trunk/recordmydesktop/src/rmd_flush_to_ogg.c trunk/recordmydesktop/src/rmd_flush_to_ogg.h trunk/recordmydesktop/src/rmd_get_frame.c trunk/recordmydesktop/src/rmd_get_frame.h trunk/recordmydesktop/src/rmd_getzpixmap.c trunk/recordmydesktop/src/rmd_getzpixmap.h trunk/recordmydesktop/src/rmd_init_encoder.c trunk/recordmydesktop/src/rmd_init_encoder.h trunk/recordmydesktop/src/rmd_initialize_data.c trunk/recordmydesktop/src/rmd_initialize_data.h trunk/recordmydesktop/src/rmd_load_cache.c trunk/recordmydesktop/src/rmd_load_cache.h trunk/recordmydesktop/src/rmd_macro.h trunk/recordmydesktop/src/rmd_make_dummy_pointer.c trunk/recordmydesktop/src/rmd_make_dummy_pointer.h trunk/recordmydesktop/src/rmd_opendev.c trunk/recordmydesktop/src/rmd_opendev.h trunk/recordmydesktop/src/rmd_parseargs.c trunk/recordmydesktop/src/rmd_parseargs.h trunk/recordmydesktop/src/rmd_poll_events.c trunk/recordmydesktop/src/rmd_poll_events.h trunk/recordmydesktop/src/rmd_queryextensions.c trunk/recordmydesktop/src/rmd_queryextensions.h trunk/recordmydesktop/src/rmd_rectinsert.c trunk/recordmydesktop/src/rmd_rectinsert.h trunk/recordmydesktop/src/rmd_register_callbacks.c trunk/recordmydesktop/src/rmd_register_callbacks.h trunk/recordmydesktop/src/rmd_setbrwindow.c trunk/recordmydesktop/src/rmd_setbrwindow.h trunk/recordmydesktop/src/rmd_shortcuts.c trunk/recordmydesktop/src/rmd_shortcuts.h trunk/recordmydesktop/src/rmd_specsfile.c trunk/recordmydesktop/src/rmd_specsfile.h trunk/recordmydesktop/src/rmd_threads.c trunk/recordmydesktop/src/rmd_threads.h trunk/recordmydesktop/src/rmd_types.h trunk/recordmydesktop/src/rmd_update_image.c trunk/recordmydesktop/src/rmd_update_image.h trunk/recordmydesktop/src/rmd_wm_check.c trunk/recordmydesktop/src/rmd_wm_check.h trunk/recordmydesktop/src/rmd_yuv_utils.c trunk/recordmydesktop/src/rmd_yuv_utils.h Removed Paths: ------------- trunk/recordmydesktop/src/block_utils.c trunk/recordmydesktop/src/block_utils.h trunk/recordmydesktop/src/cache_audio.c trunk/recordmydesktop/src/cache_audio.h trunk/recordmydesktop/src/cache_frame.c trunk/recordmydesktop/src/cache_frame.h trunk/recordmydesktop/src/capture_sound.c trunk/recordmydesktop/src/capture_sound.h trunk/recordmydesktop/src/encode_cache.c trunk/recordmydesktop/src/encode_cache.h trunk/recordmydesktop/src/encode_image_buffer.c trunk/recordmydesktop/src/encode_image_buffer.h trunk/recordmydesktop/src/encode_sound_buffer.c trunk/recordmydesktop/src/encode_sound_buffer.h trunk/recordmydesktop/src/flush_to_ogg.c trunk/recordmydesktop/src/flush_to_ogg.h trunk/recordmydesktop/src/get_frame.c trunk/recordmydesktop/src/get_frame.h trunk/recordmydesktop/src/getzpixmap.c trunk/recordmydesktop/src/getzpixmap.h trunk/recordmydesktop/src/init_encoder.c trunk/recordmydesktop/src/init_encoder.h trunk/recordmydesktop/src/initialize_data.c trunk/recordmydesktop/src/initialize_data.h trunk/recordmydesktop/src/load_cache.c trunk/recordmydesktop/src/load_cache.h trunk/recordmydesktop/src/make_dummy_pointer.c trunk/recordmydesktop/src/make_dummy_pointer.h trunk/recordmydesktop/src/opendev.c trunk/recordmydesktop/src/opendev.h trunk/recordmydesktop/src/parseargs.c trunk/recordmydesktop/src/parseargs.h trunk/recordmydesktop/src/poll_events.c trunk/recordmydesktop/src/poll_events.h trunk/recordmydesktop/src/queryextensions.c trunk/recordmydesktop/src/queryextensions.h trunk/recordmydesktop/src/rectinsert.c trunk/recordmydesktop/src/rectinsert.h trunk/recordmydesktop/src/register_callbacks.c trunk/recordmydesktop/src/register_callbacks.h trunk/recordmydesktop/src/rmdmacro.h trunk/recordmydesktop/src/rmdthreads.c trunk/recordmydesktop/src/rmdthreads.h trunk/recordmydesktop/src/rmdtypes.h trunk/recordmydesktop/src/setbrwindow.c trunk/recordmydesktop/src/setbrwindow.h trunk/recordmydesktop/src/shortcuts.c trunk/recordmydesktop/src/shortcuts.h trunk/recordmydesktop/src/specsfile.c trunk/recordmydesktop/src/specsfile.h trunk/recordmydesktop/src/update_image.c trunk/recordmydesktop/src/update_image.h trunk/recordmydesktop/src/wm_check.c trunk/recordmydesktop/src/wm_check.h trunk/recordmydesktop/src/yuv_utils.c trunk/recordmydesktop/src/yuv_utils.h Modified: trunk/recordmydesktop/src/Makefile.am =================================================================== --- trunk/recordmydesktop/src/Makefile.am 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/Makefile.am 2008-09-14 13:06:20 UTC (rev 546) @@ -1,77 +1,77 @@ bin_PROGRAMS = recordmydesktop recordmydesktop_SOURCES = \ - block_utils.c \ - block_utils.h \ - cache_audio.c \ - cache_audio.h \ - cache_frame.c \ - cache_frame.h \ - capture_sound.c \ - capture_sound.h \ - encode_cache.c \ - encode_cache.h \ - encode_image_buffer.c \ - encode_image_buffer.h \ - encode_sound_buffer.c \ - encode_sound_buffer.h \ - flush_to_ogg.c \ - flush_to_ogg.h \ - get_frame.c \ - get_frame.h \ - getzpixmap.c \ - getzpixmap.h \ - init_encoder.c \ - init_encoder.h \ - initialize_data.c \ - initialize_data.h \ - load_cache.c \ - load_cache.h \ - make_dummy_pointer.c \ - make_dummy_pointer.h \ - opendev.c \ - opendev.h \ - parseargs.c \ - parseargs.h \ - poll_events.c \ - poll_events.h \ - queryextensions.c \ - queryextensions.h \ - recordmydesktop.c \ - rectinsert.c \ - rectinsert.h \ - register_callbacks.c \ - register_callbacks.h \ - rmd_cache.c \ - rmd_cache.h \ - rmd_error.c \ - rmd_error.h \ - rmd_frame.c \ - rmd_frame.h \ - rmd_jack.c \ - rmd_jack.h \ - rmd_rescue.c \ - rmd_rescue.h \ - rmd_timer.c \ - rmd_timer.h \ - rmdthreads.c \ - rmdthreads.h \ - rmdmacro.h \ - rmdtypes.h \ - setbrwindow.c \ - setbrwindow.h \ - shortcuts.c \ - shortcuts.h \ - skeleton.c \ - skeleton.h \ - specsfile.c \ - specsfile.h \ - update_image.c \ - update_image.h \ - yuv_utils.c \ - yuv_utils.h \ - wm_check.c \ - wm_check.h + recordmydesktop.c \ + rmd_block_utils.c \ + rmd_block_utils.h \ + rmd_cache.c \ + rmd_cache.h \ + rmd_cache_audio.c \ + rmd_cache_audio.h \ + rmd_cache_frame.c \ + rmd_cache_frame.h \ + rmd_capture_sound.c \ + rmd_capture_sound.h \ + rmd_encode_cache.c \ + rmd_encode_cache.h \ + rmd_encode_image_buffer.c \ + rmd_encode_image_buffer.h \ + rmd_encode_sound_buffer.c \ + rmd_encode_sound_buffer.h \ + rmd_error.c \ + rmd_error.h \ + rmd_flush_to_ogg.c \ + rmd_flush_to_ogg.h \ + rmd_frame.c \ + rmd_frame.h \ + rmd_get_frame.c \ + rmd_get_frame.h \ + rmd_getzpixmap.c \ + rmd_getzpixmap.h \ + rmd_init_encoder.c \ + rmd_init_encoder.h \ + rmd_initialize_data.c \ + rmd_initialize_data.h \ + rmd_jack.c \ + rmd_jack.h \ + rmd_load_cache.c \ + rmd_load_cache.h \ + rmd_macro.h \ + rmd_make_dummy_pointer.c \ + rmd_make_dummy_pointer.h \ + rmd_opendev.c \ + rmd_opendev.h \ + rmd_parseargs.c \ + rmd_parseargs.h \ + rmd_poll_events.c \ + rmd_poll_events.h \ + rmd_queryextensions.c \ + rmd_queryextensions.h \ + rmd_rectinsert.c \ + rmd_rectinsert.h \ + rmd_register_callbacks.c \ + rmd_register_callbacks.h \ + rmd_rescue.c \ + rmd_rescue.h \ + rmd_setbrwindow.c \ + rmd_setbrwindow.h \ + rmd_shortcuts.c \ + rmd_shortcuts.h \ + rmd_specsfile.c \ + rmd_specsfile.h \ + rmd_threads.c \ + rmd_threads.h \ + rmd_timer.c \ + rmd_timer.h \ + rmd_types.h \ + rmd_update_image.c \ + rmd_update_image.h \ + rmd_wm_check.c \ + rmd_wm_check.h \ + rmd_yuv_utils.c \ + rmd_yuv_utils.h \ + skeleton.c \ + skeleton.h recordmydesktop_CPPFLAGS = -D_THREAD_SAFE -pthread -Wall recordmydesktop_LDFLAGS = @X_LIBS@ @X_EXTRA_LIBS@ @X_PRE_LIBS@ @@ -83,10 +83,10 @@ CLEANFILES = $(EXTRA_PROGRAMS) test_rectinsert_SOURCES = \ - test-rectinsert.c \ - test-rectinsert-data.c \ - test-rectinsert-data.h \ - test-rectinsert-types.h \ - rectinsert.c + test-rectinsert.c \ + test-rectinsert-data.c \ + test-rectinsert-data.h \ + test-rectinsert-types.h \ + rmd_rectinsert.c test_rectinsert_CFLAGS = -Wall Deleted: trunk/recordmydesktop/src/block_utils.c =================================================================== --- trunk/recordmydesktop/src/block_utils.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/block_utils.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,37 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#include "config.h" - -#include "block_utils.h" - - -// FIXME: These globals are modified in other source files! We keep -// thsee here for now. These are the cache blocks. They need to be -// accesible in the dbuf macros -u_int32_t *yblocks, - *ublocks, - *vblocks; Deleted: trunk/recordmydesktop/src/block_utils.h =================================================================== --- trunk/recordmydesktop/src/block_utils.h 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/block_utils.h 2008-09-14 13:06:20 UTC (rev 546) @@ -1,170 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#ifndef BLOCK_UTILS_H -#define BLOCK_UTILS_H 1 - -#include "rmdtypes.h" -#include "rmdmacro.h" -#include "yuv_utils.h" - - -// We keep these global for now. FIXME: Isolate them. -extern u_int32_t *yblocks, - *ublocks, - *vblocks; - -#define POINT_IN_BLOCK(xv,yv,widthv,blocksize) ((yv/blocksize)*\ - (widthv/blocksize)+\ - (xv/blocksize)) - -#define UPDATE_Y_PLANE_DBUF(data,\ - data_back,\ - x_tm,\ - y_tm,\ - height_tm,\ - width_tm,\ - yuv,\ - __bit_depth__){ \ - int k,i;\ - register u_int##__bit_depth__##_t t_val;\ - register unsigned char *yuv_y=yuv->y+x_tm+y_tm*yuv->y_width,\ - *_yr=Yr,*_yg=Yg,*_yb=Yb;\ - register u_int##__bit_depth__##_t *datapi=(u_int##__bit_depth__##_t *)data,\ - *datapi_back=(u_int##__bit_depth__##_t *)data_back;\ - for(k=0;k<height_tm;k++){\ - for(i=0;i<width_tm;i++){\ - if(*datapi!=*datapi_back){\ - t_val=*datapi;\ - *yuv_y=_yr[__RVALUE_##__bit_depth__(t_val)] +\ - _yg[__GVALUE_##__bit_depth__(t_val)] +\ - _yb[__BVALUE_##__bit_depth__(t_val)] ;\ - yblocks[POINT_IN_BLOCK(i,k,width_tm,Y_UNIT_WIDTH)]=1;\ - }\ - datapi++;\ - datapi_back++;\ - yuv_y++;\ - }\ - yuv_y+=yuv->y_width-width_tm;\ - }\ -} - -#define UPDATE_UV_PLANES_DBUF( data,\ - data_back,\ - x_tm,\ - y_tm,\ - height_tm,\ - width_tm,\ - yuv,\ - __sampling_type,\ - __bit_depth__){ \ - int k,i;\ - register u_int##__bit_depth__##_t t_val;\ - register unsigned char *yuv_u=yuv->u+x_tm/2+(y_tm*yuv->uv_width)/2,\ - *yuv_v=yuv->v+x_tm/2+(y_tm*yuv->uv_width)/2,\ - *_ur=Ur,*_ug=Ug,*_ubvr=UbVr,\ - *_vg=Vg,*_vb=Vb;\ - register u_int##__bit_depth__##_t *datapi=(u_int##__bit_depth__##_t *)data,\ - *datapi_next=NULL,\ - *datapi_back=(u_int##__bit_depth__##_t *)data_back,\ - *datapi_back_next=NULL;\ - if(__sampling_type==__PXL_AVERAGE){\ - datapi_next=datapi+width_tm;\ - datapi_back_next=datapi_back+width_tm;\ - for(k=0;k<height_tm;k+=2){\ - for(i=0;i<width_tm;i+=2){\ - if(( (*datapi!=*datapi_back) ||\ - (*(datapi+1)!=*(datapi_back+1)) ||\ - (*datapi_next!=*datapi_back_next) ||\ - (*(datapi_next+1)!=*(datapi_back_next+1)))){\ - UPDATE_A_UV_PIXEL( yuv_u,\ - yuv_v,\ - t_val,\ - datapi,\ - datapi_next,\ - _ur,_ug,_ubvr,_vg,_vb,\ - __sampling_type,\ - __bit_depth__)\ - ublocks[POINT_IN_BLOCK(i,k,width_tm,Y_UNIT_WIDTH)]=1;\ - vblocks[POINT_IN_BLOCK(i,k,width_tm,Y_UNIT_WIDTH)]=1;\ - }\ - datapi+=2;\ - datapi_back+=2;\ - if(__sampling_type==__PXL_AVERAGE){\ - datapi_next+=2;\ - datapi_back_next+=2;\ - }\ - yuv_u++;\ - yuv_v++;\ - }\ - yuv_u+=(yuv->y_width-width_tm)/2;\ - yuv_v+=(yuv->y_width-width_tm)/2;\ - datapi+=width_tm;\ - datapi_back+=width_tm;\ - if(__sampling_type==__PXL_AVERAGE){\ - datapi_next+=width_tm;\ - datapi_back_next+=width_tm;\ - }\ - }\ - }\ - else{\ - for(k=0;k<height_tm;k+=2){\ - for(i=0;i<width_tm;i+=2){\ - if ((*datapi!=*datapi_back)){\ - UPDATE_A_UV_PIXEL( yuv_u,\ - yuv_v,\ - t_val,\ - datapi,\ - datapi_next,\ - _ur,_ug,_ubvr,_vg,_vb,\ - __sampling_type,\ - __bit_depth__)\ - ublocks[POINT_IN_BLOCK(i,k,width_tm,Y_UNIT_WIDTH)]=1;\ - vblocks[POINT_IN_BLOCK(i,k,width_tm,Y_UNIT_WIDTH)]=1;\ - }\ - datapi+=2;\ - datapi_back+=2;\ - if(__sampling_type==__PXL_AVERAGE){\ - datapi_next+=2;\ - datapi_back_next+=2;\ - }\ - yuv_u++;\ - yuv_v++;\ - }\ - yuv_u+=(yuv->y_width-width_tm)/2;\ - yuv_v+=(yuv->y_width-width_tm)/2;\ - datapi+=width_tm;\ - datapi_back+=width_tm;\ - if(__sampling_type==__PXL_AVERAGE){\ - datapi_next+=width_tm;\ - datapi_back_next+=width_tm;\ - }\ - }\ - }\ -} - - -#endif Deleted: trunk/recordmydesktop/src/cache_audio.c =================================================================== --- trunk/recordmydesktop/src/cache_audio.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/cache_audio.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,108 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#include "config.h" - -#include <pthread.h> - -#include "rmdtypes.h" - -#include "cache_audio.h" -#include "rmd_jack.h" - - -void *CacheSoundBuffer(ProgData *pdata){ -//We are simply going to throw sound on the disk. -//It's sound is tiny compared to that of image, so -//compressing would reducethe overall size by only an -//insignificant fraction. -#ifdef HAVE_JACK_H - void *jackbuf=NULL; - if(pdata->args.use_jack){ - jackbuf=malloc(pdata->sound_framesize*pdata->jdata->buffersize); - } -#endif - while((pdata->running)){ - SndBuffer *buff=NULL; - - if (pdata->paused) { - pthread_mutex_lock(&pdata->pause_mutex); - pthread_cond_wait(&pdata->pause_cond, &pdata->pause_mutex); - pthread_mutex_unlock(&pdata->pause_mutex); - } - if(!pdata->args.use_jack){ - if(pdata->sound_buffer==NULL){ - pdata->v_enc_thread_waiting=1; - pthread_mutex_lock(&pdata->snd_buff_ready_mutex); - pthread_cond_wait(&pdata->sound_data_read, - &pdata->snd_buff_ready_mutex); - pthread_mutex_unlock(&pdata->snd_buff_ready_mutex); - pdata->v_enc_thread_waiting=0; - } - if(pdata->sound_buffer==NULL || !pdata->running){ - break; - } - pthread_mutex_lock(&pdata->sound_buffer_mutex); - buff=pdata->sound_buffer; - //advance the list - pdata->sound_buffer=pdata->sound_buffer->next; - pthread_mutex_unlock(&pdata->sound_buffer_mutex); - fwrite(buff->data,1,pdata->periodsize*pdata->sound_framesize, - pdata->cache_data->afp); - free(buff->data); - free(buff); - } - else{ -#ifdef HAVE_JACK_H - if((*jack_ringbuffer_read_space_p)(pdata->jdata->sound_buffer)>= - (pdata->sound_framesize*pdata->jdata->buffersize)){ - (*jack_ringbuffer_read_p)(pdata->jdata->sound_buffer, - jackbuf, - (pdata->sound_framesize* - pdata->jdata->buffersize)); - fwrite(jackbuf,1,(pdata->sound_framesize* - pdata->jdata->buffersize), - pdata->cache_data->afp); - } - else{ - pdata->v_enc_thread_waiting=1; - pthread_mutex_lock(&pdata->snd_buff_ready_mutex); - pthread_cond_wait(&pdata->sound_data_read, - &pdata->snd_buff_ready_mutex); - pthread_mutex_unlock(&pdata->snd_buff_ready_mutex); - pdata->v_enc_thread_waiting=0; - continue; - } -#endif - } - pdata->avd-=pdata->periodtime; - } - - fclose(pdata->cache_data->afp); - pthread_exit(&errno); -} - - Deleted: trunk/recordmydesktop/src/cache_audio.h =================================================================== --- trunk/recordmydesktop/src/cache_audio.h 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/cache_audio.h 2008-09-14 13:06:20 UTC (rev 546) @@ -1,42 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#ifndef CACHE_AUDIO_H -#define CACHE_AUDIO_H 1 - -#include "rmdtypes.h" - - -/** -* Sound caching thread. Simply writes the pcm buffers on disk -* -* \param pdata ProgData struct containing all program data -* -*/ -void *CacheSoundBuffer(ProgData *pdata); - - -#endif Deleted: trunk/recordmydesktop/src/cache_frame.c =================================================================== --- trunk/recordmydesktop/src/cache_frame.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/cache_frame.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,295 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#include "config.h" - -#include <signal.h> -#include <math.h> - -#include "rmdtypes.h" - -#include "cache_frame.h" -#include "rmd_cache.h" -#include "block_utils.h" - - -//minimize hard disk access -#define CACHE_OUT_BUFFER_SIZE 4096 -//500 mb file size -#define CACHE_FILE_SIZE_LIMIT (500*1<<20) - - -static int FlushBlock(unsigned char *buf, - int blockno, - int width, - int height, - int blockwidth, - gzFile *fp, - FILE *ucfp, - int flush) { - int j,i, - bytes_written=0, - block_i=(!blockwidth)?0:(blockno/(width/blockwidth)),//place on the grid - block_k=(!blockwidth)?0:(blockno%(width/blockwidth)); - register unsigned char *buf_reg=(&buf[(block_i* - width+ - block_k)*blockwidth]); - static unsigned char out_buffer[CACHE_OUT_BUFFER_SIZE]; - static unsigned int out_buffer_bytes=0; - - if(out_buffer_bytes+pow(blockwidth,2)>=CACHE_OUT_BUFFER_SIZE || - (flush && out_buffer_bytes)){ - if(ucfp==NULL) - gzwrite(fp,(void *)out_buffer,out_buffer_bytes); - else - fwrite((void *)out_buffer,1,out_buffer_bytes,ucfp); - bytes_written=out_buffer_bytes; - out_buffer_bytes=0; - } - if(!flush){ - register unsigned char *out_buf_reg=&out_buffer[out_buffer_bytes]; - for(j=0;j<blockwidth;j++){ - for(i=0;i<blockwidth;i++) - (*out_buf_reg++)=(*buf_reg++); - out_buffer_bytes+=blockwidth; - buf_reg+=width-blockwidth; - } - } - - return bytes_written; -} - -void *CacheImageBuffer(ProgData *pdata){ - - gzFile *fp=NULL; - FILE *ucfp=NULL; - int index_entry_size=sizeof(u_int32_t), - blocknum_x=pdata->enc_data->yuv.y_width/Y_UNIT_WIDTH, - blocknum_y=pdata->enc_data->yuv.y_height/Y_UNIT_WIDTH, - firstrun=1, - frameno=0, - nbytes=0, - nth_cache=1; - unsigned int total_bytes=0, - total_received_bytes=0; - u_int32_t ynum,unum,vnum, - y_short_blocks[blocknum_x*blocknum_y], - u_short_blocks[blocknum_x*blocknum_y], - v_short_blocks[blocknum_x*blocknum_y]; - - if(!pdata->args.zerocompression){ - fp=pdata->cache_data->ifp; - if(fp==NULL)exit(13); - } - else{ - ucfp=pdata->cache_data->uncifp; - if(ucfp==NULL)exit(13); - } - - - while(pdata->running){ - int j; - FrameHeader fheader; - ynum=unum=vnum=0; - - pdata->th_enc_thread_waiting=1; - pthread_mutex_lock(&pdata->img_buff_ready_mutex); - pthread_cond_wait(&pdata->image_buffer_ready, - &pdata->img_buff_ready_mutex); - pthread_mutex_unlock(&pdata->img_buff_ready_mutex); - pdata->th_enc_thread_waiting=0; - - if (pdata->paused) { - pthread_mutex_lock(&pdata->pause_mutex); - pthread_cond_wait(&pdata->pause_cond, &pdata->pause_mutex); - pthread_mutex_unlock(&pdata->pause_mutex); - } - - pthread_mutex_lock(&pdata->yuv_mutex); - - //find and flush different blocks - if(firstrun){ - firstrun=0; - for(j=0;j<blocknum_x*blocknum_y;j++){ - ynum++; - yblocks[ynum-1]=1; - y_short_blocks[ynum-1]=j; - unum++; - ublocks[unum-1]=1; - u_short_blocks[ynum-1]=j; - vnum++; - vblocks[vnum-1]=1; - v_short_blocks[ynum-1]=j; - } - } - else{ - /**COMPRESS ARRAYS*/ - for(j=0;j<blocknum_x*blocknum_y;j++){ - if(yblocks[j]){ - ynum++; - y_short_blocks[ynum-1]=j; - } - if(ublocks[j]){ - unum++; - u_short_blocks[unum-1]=j; - } - if(vblocks[j]){ - vnum++; - v_short_blocks[vnum-1]=j; - } - } - } - - /**WRITE FRAME TO DISK*/ - if(!pdata->args.zerocompression){ - if(ynum*4+unum+vnum>(blocknum_x*blocknum_y*6)/10) - gzsetparams (fp,1,Z_FILTERED); - else - gzsetparams (fp,0,Z_FILTERED); - } - - strncpy(fheader.frame_prefix,"FRAM",4); - fheader.frameno=++frameno; - fheader.current_total = pdata->frames_total; - - fheader.Ynum=ynum; - fheader.Unum=unum; - fheader.Vnum=vnum; - if(!pdata->args.zerocompression){ - nbytes+=gzwrite(fp,(void*)&fheader,sizeof(FrameHeader)); - //flush indexes - if(ynum)nbytes+=gzwrite(fp, - (void*)y_short_blocks, - ynum*index_entry_size); - if(unum)nbytes+=gzwrite(fp, - (void*)u_short_blocks, - unum*index_entry_size); - if(vnum)nbytes+=gzwrite(fp, - (void*)v_short_blocks, - vnum*index_entry_size); - } - else{ - nbytes+=sizeof(FrameHeader)* - fwrite((void*)&fheader,sizeof(FrameHeader),1,ucfp); - //flush indexes - if(ynum)nbytes+=index_entry_size* - fwrite(y_short_blocks,index_entry_size,ynum,ucfp); - if(unum)nbytes+=index_entry_size* - fwrite(u_short_blocks,index_entry_size,unum,ucfp); - if(vnum)nbytes+=index_entry_size* - fwrite(v_short_blocks,index_entry_size,vnum,ucfp); - } - //flush the blocks for each buffer - if(ynum){ - for(j=0;j<ynum;j++) - nbytes+=FlushBlock( pdata->enc_data->yuv.y,y_short_blocks[j], - pdata->enc_data->yuv.y_width, - pdata->enc_data->yuv.y_height, - Y_UNIT_WIDTH, - fp, - ucfp, - 0); - } - if(unum){ - for(j=0;j<unum;j++) - nbytes+=FlushBlock( pdata->enc_data->yuv.u,u_short_blocks[j], - pdata->enc_data->yuv.uv_width, - pdata->enc_data->yuv.uv_height, - UV_UNIT_WIDTH, - fp, - ucfp, - 0); - } - if(vnum){ - for(j=0;j<vnum;j++) - nbytes+=FlushBlock( pdata->enc_data->yuv.v,v_short_blocks[j], - pdata->enc_data->yuv.uv_width, - pdata->enc_data->yuv.uv_height, - UV_UNIT_WIDTH, - fp, - ucfp, - 0); - } - //release main buffer - pthread_mutex_unlock(&pdata->yuv_mutex); - - nbytes+=FlushBlock(NULL,0,0,0,0,fp,ucfp,1); - /**@________________@**/ - pdata->avd+=pdata->frametime; - if(nbytes>CACHE_FILE_SIZE_LIMIT){ - if(SwapCacheFilesWrite(pdata->cache_data->imgdata, - nth_cache,&fp,&ucfp)){ - fprintf(stderr,"New cache file could not be created.\n" - "Ending recording...\n"); - fflush(stderr); - raise(SIGINT); //if for some reason we cannot make a new file - //we have to stop. If we are out of space, - //which means - //that encoding cannot happen either, - //InitEncoder will cause an abrupt end with an - //error code and the cache will remain intact. - //If we've chosen separate two-stages, - //the program will make a - //clean exit. - //In either case data will be preserved so if - //space is freed the recording - //can be proccessed later. - } - total_bytes+=(nbytes>>20); - nth_cache++; - nbytes=0; - } - } - total_bytes+=(nbytes>>20); - total_received_bytes=((frameno*((pdata->specs.depth>=24)?4:2)* - pdata->brwin.rgeom.width*pdata->brwin.rgeom.height)>>20); - if(total_received_bytes){ - fprintf(stderr,"\n*********************************************\n" - "\nCached %u MB, from %u MB that were received.\n" - "Average cache compression ratio: %u %%\n" - "\n*********************************************\n", - total_bytes, - total_received_bytes, - (total_bytes*100)/total_received_bytes); - - } - - fprintf(stderr, - "Saved %d frames in a total of %d requests\n", - frameno, - pdata->frames_total); - fflush(stderr); - - if(!pdata->args.zerocompression){ - gzflush(fp,Z_FINISH); - gzclose(fp); - } - else{ - fflush(ucfp); - fclose(ucfp); - } - pthread_exit(&errno); -} Deleted: trunk/recordmydesktop/src/cache_frame.h =================================================================== --- trunk/recordmydesktop/src/cache_frame.h 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/cache_frame.h 2008-09-14 13:06:20 UTC (rev 546) @@ -1,43 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#ifndef CACHE_FRAME_H -#define CACHE_FRAME_H 1 - -#include "rmdtypes.h" - - -/** -* Image caching thread. Copies the yuv buffer, compares with the last one and -* caches the result. -* -* \param pdata ProgData struct containing all program data -* -*/ -void *CacheImageBuffer(ProgData *pdata); - - -#endif Deleted: trunk/recordmydesktop/src/capture_sound.c =================================================================== --- trunk/recordmydesktop/src/capture_sound.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/capture_sound.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,174 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#include "config.h" - -#include <pthread.h> - -#include "rmdtypes.h" - -#include "capture_sound.h" -#include "opendev.h" -#include "rmd_jack.h" - - -void *CaptureSound(ProgData *pdata){ - -#ifdef HAVE_LIBASOUND - int frames=pdata->periodsize; -#endif - //start capturing only after first frame is taken - usleep(pdata->frametime); - - while(pdata->running){ - int sret=0; - SndBuffer *newbuf,*tmp; - if (pdata->paused) { -#ifdef HAVE_LIBASOUND - if(!pdata->hard_pause){ - snd_pcm_pause(pdata->sound_handle,1); - pthread_mutex_lock(&pdata->pause_mutex); - pthread_cond_wait(&pdata->pause_cond, &pdata->pause_mutex); - pthread_mutex_unlock(&pdata->pause_mutex); - snd_pcm_pause(pdata->sound_handle,0); - } - else{//device doesn't support pause(is this the norm?mine doesn't) - snd_pcm_close(pdata->sound_handle); - pthread_mutex_lock(&pdata->pause_mutex); - pthread_cond_wait(&pdata->pause_cond, &pdata->pause_mutex); - pthread_mutex_unlock(&pdata->pause_mutex); - pdata->sound_handle= - OpenDev(pdata->args.device, - &pdata->args.channels, - &pdata->args.frequency, - &pdata->args.buffsize, - NULL, - NULL, - NULL//let's hope that the device capabilities - //didn't magically change - ); - if(pdata->sound_handle==NULL){ - fprintf(stderr,"Couldn't reopen sound device.Exiting\n"); - pdata->running = FALSE; - errno=3; - pthread_exit(&errno); - } - } -#else - close(pdata->sound_handle); - pthread_mutex_lock(&pdata->pause_mutex); - pthread_cond_wait(&pdata->pause_cond, &pdata->pause_mutex); - pthread_mutex_unlock(&pdata->pause_mutex); - pdata->sound_handle= - OpenDev(pdata->args.device, - pdata->args.channels, - pdata->args.frequency); - if(pdata->sound_handle<0){ - fprintf(stderr,"Couldn't reopen sound device.Exiting\n"); - pdata->running = FALSE; - errno=3; - pthread_exit(&errno); - } -#endif - } - - //create new buffer - newbuf=(SndBuffer *)malloc(sizeof(SndBuffer)); -#ifdef HAVE_LIBASOUND - newbuf->data=(signed char *)malloc(frames*pdata->sound_framesize); -#else - newbuf->data=(signed char *)malloc(((pdata->args.buffsize<<1)* - pdata->args.channels)); -#endif - newbuf->next=NULL; - - //read data into new buffer -#ifdef HAVE_LIBASOUND - while(sret<frames){ - int temp_sret=snd_pcm_readi(pdata->sound_handle, - newbuf->data+pdata->sound_framesize*sret, - frames-sret); - if(temp_sret==-EPIPE){ - fprintf(stderr,"%s: Overrun occurred.\n", - snd_strerror(temp_sret)); - snd_pcm_prepare(pdata->sound_handle); - } - else if (temp_sret<0){ - fprintf(stderr,"An error occured while reading sound data:\n" - " %s\n", - snd_strerror(temp_sret)); - snd_pcm_prepare(pdata->sound_handle); - } - else - sret+=temp_sret; - } -#else - sret=0; - //oss recording loop - do{ - int temp_sret=read(pdata->sound_handle, - &newbuf->data[sret], - ((pdata->args.buffsize<<1)* - pdata->args.channels)-sret); - if(temp_sret<0){ - fprintf(stderr,"An error occured while reading from soundcard" - "%s\n" - "Error description:\n" - "%s\n",pdata->args.device,strerror(errno)); - } - else - sret+=temp_sret; - }while(sret<((pdata->args.buffsize<<1)* - pdata->args.channels)); -#endif - //queue the new buffer - pthread_mutex_lock(&pdata->sound_buffer_mutex); - tmp=pdata->sound_buffer; - if(pdata->sound_buffer==NULL) - pdata->sound_buffer=newbuf; - else{ - while(tmp->next!=NULL) - tmp=tmp->next; - tmp->next=newbuf; - } - pthread_mutex_unlock(&pdata->sound_buffer_mutex); - - - //signal that there are data to be proccessed - pthread_mutex_lock(&pdata->snd_buff_ready_mutex); - pthread_cond_signal(&pdata->sound_data_read); - pthread_mutex_unlock(&pdata->snd_buff_ready_mutex); - } -#ifdef HAVE_LIBASOUND - snd_pcm_close(pdata->sound_handle); -#else - close(pdata->sound_handle); -#endif - pthread_exit(&errno); -} - - - Deleted: trunk/recordmydesktop/src/capture_sound.h =================================================================== --- trunk/recordmydesktop/src/capture_sound.h 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/capture_sound.h 2008-09-14 13:06:20 UTC (rev 546) @@ -1,42 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#ifndef CAPTURE_SOUND_H -#define CAPTURE_SOUND_H 1 - -#include "rmdtypes.h" - - -/** -* Sound capturing thread. Data are placed on a -* list to be picked up by other threads. -* -* \param pdata ProgData struct containing all program data -*/ -void *CaptureSound(ProgData *pdata); - - -#endif Deleted: trunk/recordmydesktop/src/encode_cache.c =================================================================== --- trunk/recordmydesktop/src/encode_cache.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/encode_cache.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,71 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#include "config.h" - -#include <pthread.h> - -#include "rmdtypes.h" - -#include "encode_cache.h" -#include "flush_to_ogg.h" -#include "init_encoder.h" -#include "load_cache.h" - - -void EncodeCache(ProgData *pdata){ - pthread_t flush_to_ogg_t, - load_cache_t; - fprintf(stderr,"STATE:ENCODING\n");fflush(stderr); - fprintf(stderr,"Encoding started!\nThis may take several minutes.\n" - "Pressing Ctrl-C will cancel the procedure" - " (resuming will not be possible, but\n" - "any portion of the video, which is already encoded won't be deleted).\n" - "Please wait...\n"); - pdata->running = TRUE; - InitEncoder(pdata,pdata->enc_data,1); - //load encoding and flushing threads - if(!pdata->args.nosound){ - //before we start loading again - //we need to free any left-overs - while(pdata->sound_buffer!=NULL){ - free(pdata->sound_buffer->data); - pdata->sound_buffer=pdata->sound_buffer->next; - } - } - pthread_create(&flush_to_ogg_t,NULL,(void *)FlushToOgg,(void *)pdata); - - //start loading image and audio - pthread_create(&load_cache_t,NULL,(void *)LoadCache,(void *)pdata); - - //join and finish - pthread_join(load_cache_t,NULL); - fprintf(stderr,"Encoding finished!\nWait a moment please...\n"); - pthread_join(flush_to_ogg_t,NULL); - -} - - Deleted: trunk/recordmydesktop/src/encode_cache.h =================================================================== --- trunk/recordmydesktop/src/encode_cache.h 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/encode_cache.h 2008-09-14 13:06:20 UTC (rev 546) @@ -1,41 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -* This program is distributed in the hope that it will be useful, * -* but WITHOUT ANY WARRANTY; without even the implied warranty of * -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -* GNU General Public License for more details. * -* * -* You should have received a copy of the GNU General Public License * -* along with this program; if not, write to the Free Software * -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * -* * -* * -* * -* For further information contact me at joh...@gm... * -******************************************************************************/ - -#ifndef ENCODE_CACHE_H -#define ENCODE_CACHE_H 1 - -#include "rmdtypes.h" - - -/** -* Encode cache into an -* ogg stream. -* \param pdata ProgData struct containing all program data -*/ -void EncodeCache(ProgData *pdata); - - -#endif Deleted: trunk/recordmydesktop/src/encode_image_buffer.c =================================================================== --- trunk/recordmydesktop/src/encode_image_buffer.c 2008-09-14 12:09:31 UTC (rev 545) +++ trunk/recordmydesktop/src/encode_image_buffer.c 2008-09-14 13:06:20 UTC (rev 546) @@ -1,95 +0,0 @@ -/****************************************************************************** -* recordMyDesktop * -******************************************************************************* -* * -* Copyright (C) 2006,2007,2008 John Varouhakis * -* * -* ... [truncated message content] |