Commit 3700f655 authored by Michael Niedermayer's avatar Michael Niedermayer

mpegtsenc: check max_delay in write_packet_internal().

Checking it during PES writing is too late.
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 9c409e56
......@@ -1070,6 +1070,21 @@ static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
}
}
if (pkt->dts != AV_NOPTS_VALUE) {
int i;
for(i=0; i<s->nb_streams; i++){
AVStream *st2 = s->streams[i];
MpegTSWriteStream *ts_st2 = st2->priv_data;
if( ts_st2->payload_size
&& ts_st2->payload_dts == AV_NOPTS_VALUE || dts - ts_st2->payload_dts > delay/2){
mpegts_write_pes(s, st, ts_st->payload, ts_st->payload_size,
ts_st->payload_pts, ts_st->payload_dts,
ts_st->payload_flags & AV_PKT_FLAG_KEY);
ts_st->payload_size = 0;
}
}
}
if (ts_st->payload_size && ts_st->payload_size + size > ts->pes_payload_size) {
mpegts_write_pes(s, st, ts_st->payload, ts_st->payload_size,
ts_st->payload_pts, ts_st->payload_dts,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment