@ -2574,18 +2574,6 @@ static int compute_pkt_fields2(AVStream *st, AVPacket *pkt){
return 0 ;
}
static void truncate_ts ( AVStream * st , AVPacket * pkt ) {
int64_t pts_mask = ( 2LL < < ( st - > pts_wrap_bits - 1 ) ) - 1 ;
// if(pkt->dts < 0)
// pkt->dts= 0; //this happens for low_delay=0 and B-frames, FIXME, needs further investigation about what we should do here
if ( pkt - > pts ! = AV_NOPTS_VALUE )
pkt - > pts & = pts_mask ;
if ( pkt - > dts ! = AV_NOPTS_VALUE )
pkt - > dts & = pts_mask ;
}
int av_write_frame ( AVFormatContext * s , AVPacket * pkt )
{
int ret = compute_pkt_fields2 ( s - > streams [ pkt - > stream_index ] , pkt ) ;
@ -2593,8 +2581,6 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt)
if ( ret < 0 & & ! ( s - > oformat - > flags & AVFMT_NOTIMESTAMPS ) )
return ret ;
truncate_ts ( s - > streams [ pkt - > stream_index ] , pkt ) ;
ret = s - > oformat - > write_packet ( s , pkt ) ;
if ( ! ret )
ret = url_ferror ( s - > pb ) ;
@ -2690,7 +2676,6 @@ int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt){
if ( ret < = 0 ) //FIXME cleanup needed for ret<0 ?
return ret ;
truncate_ts ( s - > streams [ opkt . stream_index ] , & opkt ) ;
ret = s - > oformat - > write_packet ( s , & opkt ) ;
av_free_packet ( & opkt ) ;
@ -2715,7 +2700,6 @@ int av_write_trailer(AVFormatContext *s)
if ( ! ret )
break ;
truncate_ts ( s - > streams [ pkt . stream_index ] , & pkt ) ;
ret = s - > oformat - > write_packet ( s , & pkt ) ;
av_free_packet ( & pkt ) ;