Let the muxer deref packets all the time. If there is an error, the packet will be droped.
This commit is contained in:
parent
0d4c30b7da
commit
77a6f4df8d
4 changed files with 6 additions and 9 deletions
|
@ -445,8 +445,8 @@ dvr_thread(void *aux)
|
|||
if(dispatch_clock > de->de_start - (60 * de->de_start_extra)) {
|
||||
dvr_rec_set_state(de, DVR_RS_RUNNING, 0);
|
||||
|
||||
if(!muxer_write_pkt(de->de_mux, sm->sm_data))
|
||||
sm->sm_data = NULL;
|
||||
muxer_write_pkt(de->de_mux, sm->sm_data);
|
||||
sm->sm_data = NULL;
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
@ -899,8 +899,7 @@ mk_mux_write_pkt(mk_mux_t *mkm, struct th_pkt *pkt)
|
|||
mk_write_frame_i(mkm, t, pkt);
|
||||
}
|
||||
|
||||
if(!mkm->error)
|
||||
pkt_ref_dec(pkt);
|
||||
pkt_ref_dec(pkt);
|
||||
|
||||
return mkm->error;
|
||||
}
|
||||
|
|
|
@ -231,8 +231,7 @@ pass_muxer_write_pkt(muxer_t *m, void *data)
|
|||
break;
|
||||
}
|
||||
|
||||
if(!pm->pm_error)
|
||||
pktbuf_ref_dec(pb);
|
||||
pktbuf_ref_dec(pb);
|
||||
|
||||
return pm->pm_error;
|
||||
}
|
||||
|
|
|
@ -199,9 +199,8 @@ http_stream_run(http_connection_t *hc, streaming_queue_t *sq,
|
|||
switch(sm->sm_type) {
|
||||
case SMT_MPEGTS:
|
||||
case SMT_PACKET:
|
||||
if(!muxer_write_pkt(mux, sm->sm_data))
|
||||
sm->sm_data = NULL;
|
||||
|
||||
muxer_write_pkt(mux, sm->sm_data);
|
||||
sm->sm_data = NULL;
|
||||
break;
|
||||
|
||||
case SMT_START:
|
||||
|
|
Loading…
Add table
Reference in a new issue