/* id->p_decoder->p_cfg = p_sys->p_audio_cfg; */
id->p_decoder->p_module =
- module_Need( id->p_decoder, "decoder", "$codec", 0 );
+ module_need( id->p_decoder, "decoder", "$codec", 0 );
if( !id->p_decoder->p_module )
{
msg_Err( p_stream, "cannot find audio decoder" );
id->p_encoder->p_cfg = p_stream->p_sys->p_audio_cfg;
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_aenc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_aenc, true );
if( !id->p_encoder->p_module )
{
msg_Err( p_stream, "cannot find audio encoder (module:%s fourcc:%4.4s)",
p_sys->psz_aenc ? p_sys->psz_aenc : "any",
(char *)&p_sys->i_acodec );
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
id->p_decoder->p_module = NULL;
return VLC_EGENERIC;
}
if( fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels )
{
#if 1
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
id->p_encoder->p_module = NULL;
/* This might work, but only if the encoder is restarted */
/* reload encoder */
id->p_encoder->p_cfg = p_stream->p_sys->p_audio_cfg;
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_aenc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_aenc, true );
if( !id->p_encoder->p_module ||
fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels ||
fmt_last.i_codec != id->p_encoder->fmt_in.i_codec )
{
if( id->p_encoder->p_module )
{
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
id->p_encoder->p_module = NULL;
}
msg_Err( p_stream, "cannot find audio encoder (module:%s fourcc:%4.4s)",
/* Close decoder */
if( id->p_decoder->p_module )
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
id->p_decoder->p_module = NULL;
/* Close encoder */
if( id->p_encoder->p_module )
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
id->p_encoder->p_module = NULL;
/* Close filters */
/* id->p_decoder->p_cfg = p_sys->p_video_cfg; */
id->p_decoder->p_module =
- module_Need( id->p_decoder, "decoder", "$codec", 0 );
+ module_need( id->p_decoder, "decoder", "$codec", 0 );
if( !id->p_decoder->p_module )
{
id->p_encoder->p_cfg = p_sys->p_video_cfg;
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_venc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_venc, true );
if( !id->p_encoder->p_module )
{
msg_Err( p_stream, "cannot find video encoder (module:%s fourcc:%4.4s)",
p_sys->psz_venc ? p_sys->psz_venc : "any",
(char *)&p_sys->i_vcodec );
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
id->p_decoder->p_module = 0;
free( id->p_decoder->p_owner );
return VLC_EGENERIC;
/* Close the encoder.
* We'll open it only when we have the first frame. */
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
if( id->p_encoder->fmt_out.p_extra )
{
free( id->p_encoder->fmt_out.p_extra );
false ) )
{
msg_Err( p_stream, "cannot spawn encoder thread" );
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
id->p_decoder->p_module = 0;
free( id->p_decoder->p_owner );
return VLC_EGENERIC;
id->p_encoder->fmt_in.video.i_height );
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_venc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_venc, true );
if( !id->p_encoder->p_module )
{
msg_Err( p_stream, "cannot find video encoder (module:%s fourcc:%4.4s)",
/* Close decoder */
if( id->p_decoder->p_module )
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
if( id->p_decoder->p_owner )
{
/* Close encoder */
if( id->p_encoder->p_module )
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
/* Close filters */
if( id->p_f_chain )
/* Overlay subpicture */
if( p_subpic )
{
- int i_scale_width, i_scale_height;
video_format_t fmt;
- i_scale_width = id->p_encoder->fmt_in.video.i_width * 1000 /
- id->p_decoder->fmt_out.video.i_width;
- i_scale_height = id->p_encoder->fmt_in.video.i_height * 1000 /
- id->p_decoder->fmt_out.video.i_height;
-
if( p_pic->i_refcount && !filter_chain_GetLength( id->p_f_chain ) )
{
/* We can't modify the picture, we need to duplicate it */
picture_t *p_tmp = video_new_buffer_decoder( id->p_decoder );
if( p_tmp )
{
- vout_CopyPicture( p_stream, p_tmp, p_pic );
+ picture_Copy( p_tmp, p_pic );
p_pic->pf_release( p_pic );
p_pic = p_tmp;
}
fmt.i_sar_num = fmt.i_aspect * fmt.i_height / fmt.i_width;
fmt.i_sar_den = VOUT_ASPECT_FACTOR;
- spu_RenderSubpictures( p_sys->p_spu, &fmt, p_pic, p_subpic,
- i_scale_width, i_scale_height );
+ spu_RenderSubpictures( p_sys->p_spu, p_pic, &fmt,
+ p_subpic, &id->p_decoder->fmt_out.video );
}
/* Run user specified filter chain */
p_pic2 = video_new_buffer_decoder( id->p_decoder );
if( p_pic2 != NULL )
{
- vout_CopyPicture( p_stream, p_pic2, p_pic );
+ picture_Copy( p_pic2, p_pic );
p_pic2->date = i_pts;
}
}
/* id->p_decoder->p_cfg = p_sys->p_spu_cfg; */
id->p_decoder->p_module =
- module_Need( id->p_decoder, "decoder", "$codec", 0 );
+ module_need( id->p_decoder, "decoder", "$codec", 0 );
if( !id->p_decoder->p_module )
{
id->p_encoder->p_cfg = p_sys->p_spu_cfg;
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_senc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_senc, true );
if( !id->p_encoder->p_module )
{
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
msg_Err( p_stream, "cannot find spu encoder (%s)", p_sys->psz_senc );
return VLC_EGENERIC;
}
{
/* Close decoder */
if( id->p_decoder->p_module )
- module_Unneed( id->p_decoder, id->p_decoder->p_module );
+ module_unneed( id->p_decoder, id->p_decoder->p_module );
/* Close encoder */
if( id->p_encoder->p_module )
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
}
static int transcode_spu_process( sout_stream_t *p_stream,
static subpicture_t *spu_new_buffer( decoder_t *p_dec )
{
- sout_stream_t *p_stream = (sout_stream_t *)p_dec->p_owner;
- return spu_CreateSubpicture( p_stream->p_sys->p_spu );
+ VLC_UNUSED( p_dec );
+ return subpicture_New();
}
static void spu_del_buffer( decoder_t *p_dec, subpicture_t *p_subpic )
{
- sout_stream_t *p_stream = (sout_stream_t *)p_dec->p_owner;
- spu_DestroySubpicture( p_stream->p_sys->p_spu, p_subpic );
+ VLC_UNUSED( p_dec );
+ subpicture_Delete( p_subpic );
}
/*
id->p_encoder->p_cfg = p_sys->p_osd_cfg;
id->p_encoder->p_module =
- module_Need( id->p_encoder, "encoder", p_sys->psz_osdenc, true );
+ module_need( id->p_encoder, "encoder", p_sys->psz_osdenc, true );
if( !id->p_encoder->p_module )
{
error:
msg_Err( p_stream, "starting osd encoding thread failed" );
if( id->p_encoder->p_module )
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
p_sys->b_osd = false;
return VLC_EGENERIC;
}
if( id )
{
if( id->p_encoder->p_module )
- module_Unneed( id->p_encoder, id->p_encoder->p_module );
+ module_unneed( id->p_encoder, id->p_encoder->p_module );
}
p_sys->b_osd = false;
}
}
p_block = id->p_encoder->pf_encode_sub( id->p_encoder, p_subpic );
- spu_DestroySubpicture( p_sys->p_spu, p_subpic );
+ subpicture_Delete( p_subpic );
if( p_block )
{
p_block->i_dts = p_block->i_pts = in->i_dts;