Partial revert "htsp: another fix for H264 - headers merge"
This reverts commit 33792bf601
.
This commit is contained in:
parent
207fcbfb10
commit
b70fa32a71
1 changed files with 13 additions and 4 deletions
|
@ -1230,18 +1230,27 @@ parse_h264(service_t *t, elementary_stream_t *st, size_t len,
|
|||
if (st->es_incomplete)
|
||||
return 4;
|
||||
th_pkt_t *pkt = st->es_curpkt;
|
||||
size_t metalen = 0;
|
||||
|
||||
if(pkt != NULL) {
|
||||
if(st->es_global_data) {
|
||||
pkt->pkt_meta = pktbuf_make(st->es_global_data,
|
||||
st->es_global_data_len);
|
||||
metalen = st->es_global_data_len);
|
||||
st->es_global_data = NULL;
|
||||
st->es_global_data_len = 0;
|
||||
}
|
||||
|
||||
pkt->pkt_payload = pktbuf_make(st->es_buf.sb_data,
|
||||
st->es_buf.sb_ptr - 4);
|
||||
sbuf_steal_data(&st->es_buf);
|
||||
if (metalen) {
|
||||
pkt->pkt_payload = pktbuf_alloc(NULL, metalen + st->es_buf.sb_ptr - 4);
|
||||
memcpy(pktbuf_ptr(pkt->pkt_payload), pktbuf_ptr(pkt->pkt_meta), metalen);
|
||||
memcpy(pktbuf_ptr(pkt->pkt_payload) + metalen, st->es_buf.sb_data, st->es_buf.sb_ptr - 4);
|
||||
sbuf_reset(&st->es_buf, 16000);
|
||||
} else {
|
||||
pkt->pkt_payload = pktbuf_make(st->es_buf.sb_data,
|
||||
st->es_buf.sb_ptr - 4);
|
||||
sbuf_steal_data(&st->es_buf);
|
||||
}
|
||||
|
||||
parser_deliver(t, st, pkt, st->es_buf.sb_err);
|
||||
|
||||
st->es_curpkt = NULL;
|
||||
|
|
Loading…
Add table
Reference in a new issue