Commit 15787362 authored by Limin Wang's avatar Limin Wang Committed by Michael Niedermayer

avcodec/dvbsubdec: replace data_size with got_sub_ptr for better readability

Signed-off-by: 's avatarLimin Wang <lance.lmwang@gmail.com>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 8ea4efff
...@@ -1610,7 +1610,7 @@ static int dvbsub_display_end_segment(AVCodecContext *avctx, const uint8_t *buf, ...@@ -1610,7 +1610,7 @@ static int dvbsub_display_end_segment(AVCodecContext *avctx, const uint8_t *buf,
} }
static int dvbsub_decode(AVCodecContext *avctx, static int dvbsub_decode(AVCodecContext *avctx,
void *data, int *data_size, void *data, int *got_sub_ptr,
AVPacket *avpkt) AVPacket *avpkt)
{ {
const uint8_t *buf = avpkt->data; const uint8_t *buf = avpkt->data;
...@@ -1668,7 +1668,7 @@ static int dvbsub_decode(AVCodecContext *avctx, ...@@ -1668,7 +1668,7 @@ static int dvbsub_decode(AVCodecContext *avctx,
int ret = 0; int ret = 0;
switch (segment_type) { switch (segment_type) {
case DVBSUB_PAGE_SEGMENT: case DVBSUB_PAGE_SEGMENT:
ret = dvbsub_parse_page_segment(avctx, p, segment_length, sub, data_size); ret = dvbsub_parse_page_segment(avctx, p, segment_length, sub, got_sub_ptr);
got_segment |= 1; got_segment |= 1;
break; break;
case DVBSUB_REGION_SEGMENT: case DVBSUB_REGION_SEGMENT:
...@@ -1690,7 +1690,7 @@ static int dvbsub_decode(AVCodecContext *avctx, ...@@ -1690,7 +1690,7 @@ static int dvbsub_decode(AVCodecContext *avctx,
got_dds = 1; got_dds = 1;
break; break;
case DVBSUB_DISPLAY_SEGMENT: case DVBSUB_DISPLAY_SEGMENT:
ret = dvbsub_display_end_segment(avctx, p, segment_length, sub, data_size); ret = dvbsub_display_end_segment(avctx, p, segment_length, sub, got_sub_ptr);
if (got_segment == 15 && !got_dds && !avctx->width && !avctx->height) { if (got_segment == 15 && !got_dds && !avctx->width && !avctx->height) {
// Default from ETSI EN 300 743 V1.3.1 (7.2.1) // Default from ETSI EN 300 743 V1.3.1 (7.2.1)
avctx->width = 720; avctx->width = 720;
...@@ -1713,12 +1713,12 @@ static int dvbsub_decode(AVCodecContext *avctx, ...@@ -1713,12 +1713,12 @@ static int dvbsub_decode(AVCodecContext *avctx,
// segments then we need no further data. // segments then we need no further data.
if (got_segment == 15) { if (got_segment == 15) {
av_log(avctx, AV_LOG_DEBUG, "Missing display_end_segment, emulating\n"); av_log(avctx, AV_LOG_DEBUG, "Missing display_end_segment, emulating\n");
dvbsub_display_end_segment(avctx, p, 0, sub, data_size); dvbsub_display_end_segment(avctx, p, 0, sub, got_sub_ptr);
} }
end: end:
if(ret < 0) { if(ret < 0) {
*data_size = 0; *got_sub_ptr = 0;
avsubtitle_free(sub); avsubtitle_free(sub);
return ret; return ret;
} else { } else {
......
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