Commit b48252ea authored by Jean-Paul Saman's avatar Jean-Paul Saman

zvbi: Fix displaying of teletext and closed captioning.

parent 9e4c6586
...@@ -322,6 +322,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) ...@@ -322,6 +322,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
vbi_page p_page; vbi_page p_page;
const uint8_t *p_pos; const uint8_t *p_pos;
unsigned int i_left; unsigned int i_left;
int64_t i_pts = 0;
if( (pp_block == NULL) || (*pp_block == NULL) ) if( (pp_block == NULL) || (*pp_block == NULL) )
return NULL; return NULL;
...@@ -336,7 +337,6 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) ...@@ -336,7 +337,6 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
{ {
vbi_sliced p_sliced[MAX_SLICES]; vbi_sliced p_sliced[MAX_SLICES];
unsigned int i_lines = 0; unsigned int i_lines = 0;
int64_t i_pts;
i_lines = vbi_dvb_demux_cor( p_sys->p_dvb_demux, p_sliced, i_lines = vbi_dvb_demux_cor( p_sys->p_dvb_demux, p_sliced,
MAX_SLICES, &i_pts, &p_pos, &i_left ); MAX_SLICES, &i_pts, &p_pos, &i_left );
...@@ -363,6 +363,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) ...@@ -363,6 +363,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
if( i_wanted_page == p_sys->i_last_page && !p_sys->b_update ) if( i_wanted_page == p_sys->i_last_page && !p_sys->b_update )
goto error; goto error;
i_pts = i_pts ? i_pts : p_block->i_pts;
if( !b_cached ) if( !b_cached )
{ {
if( p_sys->i_last_page != i_wanted_page ) if( p_sys->i_last_page != i_wanted_page )
...@@ -370,7 +371,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) ...@@ -370,7 +371,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
/* We need to reset the subtitle */ /* We need to reset the subtitle */
p_spu = Subpicture( p_dec, &fmt, true, p_spu = Subpicture( p_dec, &fmt, true,
p_page.columns, p_page.rows, p_page.columns, p_page.rows,
i_align, p_block->i_pts ); i_align, i_pts );
if( !p_spu ) if( !p_spu )
goto error; goto error;
p_spu->p_region->psz_text = strdup(""); p_spu->p_region->psz_text = strdup("");
...@@ -392,7 +393,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block ) ...@@ -392,7 +393,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
/* Create the subpicture unit */ /* Create the subpicture unit */
p_spu = Subpicture( p_dec, &fmt, p_sys->b_text, p_spu = Subpicture( p_dec, &fmt, p_sys->b_text,
p_page.columns, p_page.rows, p_page.columns, p_page.rows,
i_align, p_block->i_pts ); i_align, i_pts );
if( !p_spu ) if( !p_spu )
goto error; goto error;
......
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