Commit 6a20d09c authored by Zhao Zhili's avatar Zhao Zhili Committed by Thomas Guillem

codec: svcdsub: prepare to put pf_packetize and pf_decode into a union

Signed-off-by: Thomas Guillem's avatarThomas Guillem <thomas@gllm.fr>
parent e5ece5e5
......@@ -108,10 +108,7 @@ typedef struct
uint8_t p_palette[4][4]; /* Palette of colors used in subtitle */
} decoder_sys_t;
/*****************************************************************************
* DecoderOpen: open/initialize the svcdsub decoder.
*****************************************************************************/
static int DecoderOpen( vlc_object_t *p_this )
static int OpenCommon( vlc_object_t *p_this, bool b_packetizer )
{
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
......@@ -131,20 +128,28 @@ static int DecoderOpen( vlc_object_t *p_this )
p_dec->fmt_out.i_codec = VLC_CODEC_OGT;
p_dec->pf_decode = Decode;
p_dec->pf_packetize = Packetize;
if( b_packetizer )
p_dec->pf_packetize = Packetize;
else
p_dec->pf_decode = Decode;
return VLC_SUCCESS;
}
/*****************************************************************************
* DecoderOpen: open/initialize the svcdsub decoder.
*****************************************************************************/
static int DecoderOpen( vlc_object_t *p_this )
{
return OpenCommon( p_this, false );
}
/*****************************************************************************
* PacketizerOpen: open/initialize the svcdsub packetizer.
*****************************************************************************/
static int PacketizerOpen( vlc_object_t *p_this )
{
if( DecoderOpen( p_this ) != VLC_SUCCESS ) return VLC_EGENERIC;
return VLC_SUCCESS;
return OpenCommon( p_this, true );
}
/*****************************************************************************
......
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