p_sys->p_cluts = p_clut;
}
- /* TODO: initialize to default clut */
+ /* Initialize to default clut */
+ *p_clut = p_sys->default_clut;
/* We don't have this version of the CLUT: Parse it */
p_clut->i_version = i_version;
}
else if( !p_sys->p_page && i_state != DVBSUB_PCS_STATE_ACQUISITION )
{
-#ifdef DEBUG_DVBSUB
/* Not a full PCS, we need to wait for one */
msg_Dbg( p_dec, "didn't receive an acquisition page yet" );
+
+#if 0 /* Try to start decoding even without an acquisition page */
bs_skip( s, 8 * (i_segment_length - 2) );
return;
#endif
}
p_region->p_pixbuf = malloc( i_height * i_width );
+ p_region->i_depth = 0;
b_fill = VLC_TRUE;
}
- if( p_region->i_depth != i_depth ||
- p_region->i_level_comp != i_level_comp || p_region->i_clut != i_clut )
+ if( p_region->i_depth && (p_region->i_depth != i_depth ||
+ p_region->i_level_comp != i_level_comp || p_region->i_clut != i_clut) )
{
msg_Dbg( p_dec, "region parameters changed (not allowed)" );
}
if( !p_region )
{
- msg_Err( p_dec, "no region founddddd!!!" );
+ msg_Dbg( p_dec, "region %i not found", p_regiondef->i_id );
continue;
}
}
if( !p_clut )
{
- msg_Warn( p_dec, "clut %i not found", p_region->i_clut );
- p_clut = &p_sys->default_clut;
+ msg_Dbg( p_dec, "clut %i not found", p_region->i_clut );
+ continue;
}
/* Create new SPU region */