libavcodec/dvbsub: fix for Display Definition Segment

Given ETSI EN 300 743 V1.3.1 (2006-11), 7.2.1 Display definition segment
display window parameters are given in this order XMin, XMax, YMin, YMax
if  display_window_flag is set, but here this is not the case.
As a consequence the DVB subtitles are not displayed upon some videos.

Signed-off-by: Pierre-Yves MORDRET <pierre-yves.mordret@st.com>
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Pierre Yves MORDRET 2013-12-13 14:29:09 +01:00 committed by Michael Niedermayer
parent 1d0995e3a5
commit 0f02ea0afe

View File

@ -1357,8 +1357,8 @@ static void dvbsub_parse_display_definition_segment(AVCodecContext *avctx,
if (info_byte & 1<<3) { // display_window_flag
display_def->x = bytestream_get_be16(&buf);
display_def->y = bytestream_get_be16(&buf);
display_def->width = bytestream_get_be16(&buf) - display_def->x + 1;
display_def->y = bytestream_get_be16(&buf);
display_def->height = bytestream_get_be16(&buf) - display_def->y + 1;
}
}