summaryrefslogtreecommitdiff
path: root/recordmydesktop/src/flush_to_ogg.c
diff options
context:
space:
mode:
authoriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-12-09 14:54:00 +0000
committeriovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a>2006-12-09 14:54:00 +0000
commit9659592e810f34724abbb76d072472ceca4bbc97 (patch)
tree17fbafcf2b40913a43e266291e6b191a43d10bb4 /recordmydesktop/src/flush_to_ogg.c
parent5cc91a08f6313e0b758063b7dfd31244d43eb9a0 (diff)
corrected(added) eos on both streams
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@226 f606c939-3180-4ac9-a4b8-4b8779d57d0a
Diffstat (limited to 'recordmydesktop/src/flush_to_ogg.c')
-rw-r--r--recordmydesktop/src/flush_to_ogg.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/recordmydesktop/src/flush_to_ogg.c b/recordmydesktop/src/flush_to_ogg.c
index f28adbe..8fa762f 100644
--- a/recordmydesktop/src/flush_to_ogg.c
+++ b/recordmydesktop/src/flush_to_ogg.c
@@ -54,20 +54,24 @@ void *FlushToOgg(ProgData *pdata){
}
//last packages
+ pdata->enc_data->m_ogg_ts.e_o_s=1;
videoflag=ogg_stream_flush(&pdata->enc_data->m_ogg_ts,&videopage);
if(videoflag){
video_bytesout+=fwrite(videopage.header,1,videopage.header_len,pdata->enc_data->fp);
video_bytesout+=fwrite(videopage.body,1,videopage.body_len,pdata->enc_data->fp);
videoflag=0;
}
- if(!pdata->args.nosound)
- audioflag=ogg_stream_flush(&pdata->enc_data->m_ogg_vs,&audiopage);
- if(audioflag){
- audio_bytesout+=fwrite(audiopage.header,1,audiopage.header_len,pdata->enc_data->fp);
- audio_bytesout+=fwrite(audiopage.body,1,audiopage.body_len,pdata->enc_data->fp);
- audioflag=0;
+ if(!pdata->args.nosound){
+ pdata->enc_data->m_ogg_vs.e_o_s=1;
+ do{
+ audioflag=ogg_stream_flush(&pdata->enc_data->m_ogg_vs,&audiopage);
+ if(audioflag){
+ audio_bytesout+=fwrite(audiopage.header,1,audiopage.header_len,pdata->enc_data->fp);
+ audio_bytesout+=fwrite(audiopage.body,1,audiopage.body_len,pdata->enc_data->fp);
+ audioflag=0;
+ }
+ }while(!ogg_page_eos(&audiopage));
}
-
ogg_stream_clear(&pdata->enc_data->m_ogg_ts);
if(!pdata->args.nosound)
ogg_stream_clear(&pdata->enc_data->m_ogg_vs);
© All Rights Reserved