matroskadec_haali: fix dvb streams without the full dvb start code
This commit is contained in:
parent
76dd4f54b8
commit
e5873d800b
|
@ -1526,6 +1526,14 @@ again:
|
|||
}
|
||||
av_buffer_unref(pkt->buf);
|
||||
av_packet_from_data(pkt, wv_data, wv_size);
|
||||
} else if (track->stream->codec->codec_id == AV_CODEC_ID_DVB_SUBTITLE && pkt->size >= 2 && AV_RB16(pkt->data) != 0x2000) {
|
||||
int dvbsize = pkt->size + 2;
|
||||
uint8_t *dvbdata = av_malloc(dvbsize + FF_INPUT_BUFFER_PADDING_SIZE);
|
||||
AV_WB16(dvbdata, 0x2000);
|
||||
memcpy(dvbdata+2, pkt->data, pkt->size);
|
||||
memset(dvbdata+dvbsize, 0, FF_INPUT_BUFFER_PADDING_SIZE);
|
||||
av_buffer_unref(pkt->buf);
|
||||
av_packet_from_data(pkt, dvbdata, dvbsize);
|
||||
}
|
||||
|
||||
if (track->refresh_extradata) {
|
||||
|
|
Loading…
Reference in New Issue