From c6556d9c2ec48721f0d86a5894e555e23b617685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20T=C3=B6rnblom?= Date: Mon, 7 Jan 2013 11:55:37 +0100 Subject: [PATCH] dvr: record the first commercial tagged packet, incase the detection was to early --- src/dvr/dvr_rec.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/dvr/dvr_rec.c b/src/dvr/dvr_rec.c index 0efe1223..2f30bfb2 100755 --- a/src/dvr/dvr_rec.c +++ b/src/dvr/dvr_rec.c @@ -420,21 +420,20 @@ dvr_thread(void *aux) switch(sm->sm_type) { case SMT_PACKET: - pkt = sm->sm_data; - if(pkt->pkt_commercial == COMMERCIAL_YES) { - dvr_rec_set_state(de, DVR_RS_COMMERCIAL, 0); - tsfix_set_comm_skip(de->de_tsfix, 1); - break; - } - + pkt = sm->sm_data; + if(pkt->pkt_commercial == COMMERCIAL_YES) { + dvr_rec_set_state(de, DVR_RS_COMMERCIAL, 0); + tsfix_set_comm_skip(de->de_tsfix, 1); + } else { dvr_rec_set_state(de, DVR_RS_RUNNING, 0); tsfix_set_comm_skip(de->de_tsfix, 0); + } - if(started) { - muxer_write_pkt(de->de_mux, sm->sm_type, sm->sm_data); - sm->sm_data = NULL; - } - break; + if(started) { + muxer_write_pkt(de->de_mux, sm->sm_type, sm->sm_data); + sm->sm_data = NULL; + } + break; case SMT_MPEGTS: if(started) {