summaryrefslogtreecommitdiffstats
path: root/mencoder.c
diff options
context:
space:
mode:
authormichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-01-26 19:32:07 +0000
committermichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-01-26 19:32:07 +0000
commite6338c5858795c42ca45afbabe8b765d8050db58 (patch)
treea7fd45468aa20213219dbcd0e7b57cf9ceae628c /mencoder.c
parent24f25bfa8153252b87327f7fff5358b791ef4c2d (diff)
downloadmpv-e6338c5858795c42ca45afbabe8b765d8050db58.tar.bz2
mpv-e6338c5858795c42ca45afbabe8b765d8050db58.tar.xz
change muxer_write_chunk() so that pts/dts _could_ be passed from encoder to muxer
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17488 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mencoder.c')
-rw-r--r--mencoder.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/mencoder.c b/mencoder.c
index 177116d30e..faff346eb0 100644
--- a/mencoder.c
+++ b/mencoder.c
@@ -1219,7 +1219,7 @@ if(sh_audio){
}
}
if(len<=0) break; // EOF?
- muxer_write_chunk(mux_a,len,0x10);
+ muxer_write_chunk(mux_a,len,0x10, MP_NOPTS_VALUE, MP_NOPTS_VALUE);
if(!mux_a->h.dwSampleSize && mux_a->timer>0)
mux_a->wf->nAvgBytesPerSec=0.5f+(double)mux_a->size/mux_a->timer; // avg bps (VBR)
if(mux_a->buffer_len>=len){
@@ -1304,11 +1304,11 @@ ptimer_start = GetTimerMS();
switch(mux_v->codec){
case VCODEC_COPY:
mux_v->buffer=frame_data.start;
- if(skip_flag<=0) muxer_write_chunk(mux_v,frame_data.in_size,(sh_video->ds->flags&1)?0x10:0);
+ if(skip_flag<=0) muxer_write_chunk(mux_v,frame_data.in_size,(sh_video->ds->flags&1)?0x10:0, MP_NOPTS_VALUE, MP_NOPTS_VALUE);
break;
case VCODEC_FRAMENO:
mux_v->buffer=(unsigned char *)&decoded_frameno; // tricky
- if(skip_flag<=0) muxer_write_chunk(mux_v,sizeof(int),0x10);
+ if(skip_flag<=0) muxer_write_chunk(mux_v,sizeof(int),0x10, MP_NOPTS_VALUE, MP_NOPTS_VALUE);
break;
default:
// decode_video will callback down to ve_*.c encoders, through the video filters
@@ -1333,7 +1333,7 @@ default:
if(skip_limit==0){
// skipping not allowed -> write empty frame:
if (!encode_duplicates || !sh_video->vfilter || ((vf_instance_t *)sh_video->vfilter)->control(sh_video->vfilter, VFCTRL_DUPLICATE_FRAME, 0) != CONTROL_TRUE)
- muxer_write_chunk(mux_v,0,0);
+ muxer_write_chunk(mux_v,0,0, MP_NOPTS_VALUE, MP_NOPTS_VALUE);
} else {
// skipping allowed -> skip it and distriubute timer error:
v_timer_corr-=(float)mux_v->h.dwScale/mux_v->h.dwRate;
@@ -1352,7 +1352,7 @@ if(skip_flag<0){
while(skip_flag<0){
duplicatedframes++;
if (!encode_duplicates || !sh_video->vfilter || ((vf_instance_t *)sh_video->vfilter)->control(sh_video->vfilter, VFCTRL_DUPLICATE_FRAME, 0) != CONTROL_TRUE)
- muxer_write_chunk(mux_v,0,0);
+ muxer_write_chunk(mux_v,0,0, MP_NOPTS_VALUE, MP_NOPTS_VALUE);
++skip_flag;
}
} else