From: Thibaut M. <tma...@us...> - 2003-06-13 23:53:14
|
Update of /cvsroot/xine/xine-lib/src/demuxers In directory sc8-pr-cvs1:/tmp/cvs-serv16194 Modified Files: demux_asf.c Log Message: - fix sync problem with ffmpeg audio decoder w32dll extract the pts from the first packet of a frame ffmpeg extract the pts from the last one Index: demux_asf.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/demuxers/demux_asf.c,v retrieving revision 1.122 retrieving revision 1.123 diff -u -r1.122 -r1.123 --- demux_asf.c 13 Jun 2003 20:46:22 -0000 1.122 +++ demux_asf.c 13 Jun 2003 23:53:11 -0000 1.123 @@ -677,7 +677,6 @@ buf_element_t *buf; int bufsize; int package_done; - int send_ts = 1; #ifdef LOG printf ("demux_asf: asf_send_buffer_nodefrag: timestamp=%lld, pts=%lld\n", timestamp, timestamp * 90); @@ -726,12 +725,7 @@ buf->extra_info->input_time); #endif - if (send_ts) { - buf->pts = timestamp * 90; - send_ts = 0; - } else { - buf->pts = 0; - } + buf->pts = timestamp * 90; buf->type = stream->buf_type; buf->size = bufsize; timestamp = 0; @@ -823,11 +817,10 @@ /* tm: not needed */ buf->pts = stream->timestamp * 90 + stream->ts_per_kbyte * (p-stream->buffer) / 1024; + #endif - if (p == stream->buffer) - buf->pts = stream->timestamp * 90; - else - buf->pts = 0; + /* send the same pts for the entire frame */ + buf->pts = stream->timestamp * 90; buf->type = stream->buf_type; buf->size = bufsize; |