summaryrefslogtreecommitdiff
path: root/rMD-exp/src/flush_to_ogg.c
diff options
context:
space:
mode:
authoriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-11-08 16:46:28 +0000
committeriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-11-08 16:46:28 +0000
commit1d637da186506754ddd06efd47c917dc89faf1c9 (patch)
tree0c3fe4ab9f83fa8bd1be5f1c126626bf7a8e6ce4 /rMD-exp/src/flush_to_ogg.c
parentad5b05712d9ed8650fcc145373ac878f8e6b8829 (diff)
purge rMD-exp module
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@155 f606c939-3180-4ac9-a4b8-4b8779d57d0a
Diffstat (limited to 'rMD-exp/src/flush_to_ogg.c')
-rw-r--r--rMD-exp/src/flush_to_ogg.c81
1 files changed, 0 insertions, 81 deletions
diff --git a/rMD-exp/src/flush_to_ogg.c b/rMD-exp/src/flush_to_ogg.c
deleted file mode 100644
index fed07c5..0000000
--- a/rMD-exp/src/flush_to_ogg.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*********************************************************************************
-* recordMyDesktop *
-**********************************************************************************
-* *
-* Copyright (C) 2006 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 *
-**********************************************************************************/
-
-#include <recordmydesktop.h>
-
-void *FlushToOgg(void *pdata){
- int videoflag=0,audioflag=0;
- double video_bytesout=0,audio_bytesout=0;
- ogg_page videopage,audiopage;
- while(((ProgData *)pdata)->running){
- pthread_mutex_lock(&((ProgData *)pdata)->libogg_mutex);
- videoflag=ogg_stream_pageout(&((ProgData *)pdata)->enc_data->m_ogg_ts,&videopage);
- pthread_mutex_unlock(&((ProgData *)pdata)->libogg_mutex);
- if(videoflag){
- video_bytesout+=fwrite(videopage.header,1,videopage.header_len,((ProgData *)pdata)->enc_data->fp);
- video_bytesout+=fwrite(videopage.body,1,videopage.body_len,((ProgData *)pdata)->enc_data->fp);
- videoflag=0;
- if(!((ProgData *)pdata)->args.nosound){
- pthread_mutex_lock(&((ProgData *)pdata)->libogg_mutex);
- audioflag=ogg_stream_pageout(&((ProgData *)pdata)->enc_data->m_ogg_vs,&audiopage);
- pthread_mutex_unlock(&((ProgData *)pdata)->libogg_mutex);
- if(audioflag){
- audio_bytesout+=fwrite(audiopage.header,1,audiopage.header_len,((ProgData *)pdata)->enc_data->fp);
- audio_bytesout+=fwrite(audiopage.body,1,audiopage.body_len,((ProgData *)pdata)->enc_data->fp);
- audioflag=0;
- }
- }
- }
- else
- usleep(10000);
-
- }
- //last packages
- videoflag=ogg_stream_flush(&((ProgData *)pdata)->enc_data->m_ogg_ts,&videopage);
- if(videoflag){
- video_bytesout+=fwrite(videopage.header,1,videopage.header_len,((ProgData *)pdata)->enc_data->fp);
- video_bytesout+=fwrite(videopage.body,1,videopage.body_len,((ProgData *)pdata)->enc_data->fp);
- videoflag=0;
- }
- if(!((ProgData *)pdata)->args.nosound)
- audioflag=ogg_stream_flush(&((ProgData *)pdata)->enc_data->m_ogg_vs,&audiopage);
- if(audioflag){
- audio_bytesout+=fwrite(audiopage.header,1,audiopage.header_len,((ProgData *)pdata)->enc_data->fp);
- audio_bytesout+=fwrite(audiopage.body,1,audiopage.body_len,((ProgData *)pdata)->enc_data->fp);
- audioflag=0;
- }
-
- ogg_stream_clear(&((ProgData *)pdata)->enc_data->m_ogg_ts);
- if(!((ProgData *)pdata)->args.nosound)
- ogg_stream_clear(&((ProgData *)pdata)->enc_data->m_ogg_vs);
-//this always gives me a segfault :(
-// theora_clear(&((ProgData *)pdata)->enc_data->m_th_st);
-
- if(((ProgData *)pdata)->enc_data->fp)fclose(((ProgData *)pdata)->enc_data->fp);
-
- fprintf(stderr,"\r \nDone.\nWritten %.0f bytes\n(%.0f of which were video data and %.0f audio data)\n\n",video_bytesout+audio_bytesout,video_bytesout,audio_bytesout);
- pthread_exit(&errno);
-}
© All Rights Reserved