summaryrefslogtreecommitdiff
path: root/recordmydesktop/src
diff options
context:
space:
mode:
Diffstat (limited to 'recordmydesktop/src')
-rw-r--r--recordmydesktop/src/Makefile.am1
-rw-r--r--recordmydesktop/src/initialize_data.c58
-rw-r--r--recordmydesktop/src/initialize_data.h55
-rw-r--r--recordmydesktop/src/recordmydesktop.c4
-rw-r--r--recordmydesktop/src/rmd_rescue.c4
5 files changed, 119 insertions, 3 deletions
diff --git a/recordmydesktop/src/Makefile.am b/recordmydesktop/src/Makefile.am
index fff50e8..a939fe8 100644
--- a/recordmydesktop/src/Makefile.am
+++ b/recordmydesktop/src/Makefile.am
@@ -13,6 +13,7 @@ recordmydesktop_SOURCES = \
getzpixmap.c \
init_encoder.c \
initialize_data.c \
+ initialize_data.h \
load_cache.c \
make_dummy_pointer.c \
opendev.c \
diff --git a/recordmydesktop/src/initialize_data.c b/recordmydesktop/src/initialize_data.c
index acc2668..811f6fe 100644
--- a/recordmydesktop/src/initialize_data.c
+++ b/recordmydesktop/src/initialize_data.c
@@ -175,3 +175,61 @@ int InitializeData(ProgData *pdata,
return 0;
}
+
+void SetupDefaultArgs(ProgArgs *args) {
+
+ args->delay = 0;
+ args->windowid = 0;
+ args->x = 0;
+ args->y = 0;
+ args->width = 0;
+ args->height = 0;
+ args->nosound = 0;
+ args->full_shots = 0;
+ args->follow_mouse = 0;
+ args->encOnTheFly = 0;
+ args->nowmcheck = 0;
+ args->overwrite = 0;
+ args->use_jack = 0;
+ args->noshared = 0;
+ args->no_encode = 0;
+ args->noframe = 0;
+ args->jack_nports = 0;
+ args->jack_ringbuffer_secs = 3.0;
+ args->jack_port_names = NULL;
+ args->zerocompression = 1;
+ args->no_quick_subsample = 1;
+ args->cursor_color = 1;
+ args->have_dummy_cursor = 0;
+ args->xfixes_cursor = 1;
+ args->fps = 15;
+ args->channels = 1;
+ args->frequency = 22050;
+ args->buffsize = 4096;
+ args->v_bitrate = 45000;
+ args->v_quality = 63;
+ args->s_quality = 10;
+
+ if (getenv("DISPLAY") != NULL) {
+ args->display = (char *) malloc(strlen(getenv("DISPLAY")) + 1);
+ strcpy(args->display, getenv("DISPLAY"));
+ }
+ else {
+ args->display = NULL;
+ }
+
+ args->device = (char *) malloc(strlen(DEFAULT_AUDIO_DEVICE) + 1);
+ strcpy(args->device, DEFAULT_AUDIO_DEVICE);
+
+ args->workdir = (char *) malloc(5);
+ strcpy(args->workdir, "/tmp");
+
+ args->pause_shortcut = (char *) malloc(15);
+ strcpy(args->pause_shortcut, "Control+Mod1+p");
+
+ args->stop_shortcut = (char *) malloc(15);
+ strcpy(args->stop_shortcut, "Control+Mod1+s");
+
+ args->filename = (char *) malloc(8);
+ strcpy(args->filename, "out.ogv");
+}
diff --git a/recordmydesktop/src/initialize_data.h b/recordmydesktop/src/initialize_data.h
new file mode 100644
index 0000000..dee0ae7
--- /dev/null
+++ b/recordmydesktop/src/initialize_data.h
@@ -0,0 +1,55 @@
+/******************************************************************************
+* 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 johnvarouhakis@gmail.com *
+******************************************************************************/
+
+#ifndef INITIALIZE_DATA_H
+#define INITIALIZE_DATA_H 1
+
+#include "rmdtypes.h"
+
+
+/**
+* initialize lists,mutexes,image buffers, take first screenshot,
+* and anything else needed before launching the capture threads.
+*
+* \param pdata ProgData struct containing all program data
+*
+* \param enc_data reference to enc_data structure
+*
+* \param cache_data reference to cache_data structure
+*
+* \returns 0 on success, other values must cause the program to exit
+*/
+int InitializeData(ProgData *pdata,
+ EncData *enc_data,
+ CacheData *cache_data);
+
+/**
+* Sets up the ProgArgs structure to default values.
+*/
+void SetupDefaultArgs(ProgArgs *args);
+
+
+#endif
diff --git a/recordmydesktop/src/recordmydesktop.c b/recordmydesktop/src/recordmydesktop.c
index 5a04bbc..53f776b 100644
--- a/recordmydesktop/src/recordmydesktop.c
+++ b/recordmydesktop/src/recordmydesktop.c
@@ -26,6 +26,7 @@
#include "recordmydesktop.h"
+#include "initialize_data.h"
#include "parseargs.h"
@@ -33,7 +34,8 @@ int main(int argc,char **argv){
ProgData pdata;
int exit_status = 0;
- DEFAULT_ARGS(&pdata.args);
+ SetupDefaultArgs(&pdata.args);
+
if (!ParseArgs(argc, argv, &pdata.args)) {
exit(1);
}
diff --git a/recordmydesktop/src/rmd_rescue.c b/recordmydesktop/src/rmd_rescue.c
index ebd314e..b4624fd 100644
--- a/recordmydesktop/src/rmd_rescue.c
+++ b/recordmydesktop/src/rmd_rescue.c
@@ -25,6 +25,7 @@
******************************************************************************/
#include "recordmydesktop.h"
+#include "initialize_data.h"
#include "register_callbacks.h"
@@ -40,8 +41,7 @@ int rmdRescue(const char *path){
EncData enc_data;
CacheData cache_data;
-
- DEFAULT_ARGS(&pdata.args);
+ SetupDefaultArgs(&pdata.args);
pdata.enc_data=&enc_data;
pdata.cache_data=&cache_data;
© All Rights Reserved