p_sys->i_tmp_size_max = 50*1024*1024;
else
p_sys->i_tmp_size_max = __MAX( i_tmp_size_max, 1*1024*1024 );
- msg_Dbg( p_input, "using timeshift granularity of %d bytes",
- (int)p_sys->i_tmp_size_max );
+ msg_Dbg( p_input, "using timeshift granularity of %d MBytes",
+ (int)p_sys->i_tmp_size_max/(1024*1024) );
char *psz_tmp_path = var_CreateGetNonEmptyString( p_input, "input-timeshift-path" );
p_sys->psz_tmp_path = GetTmpPath( psz_tmp_path );
- msg_Dbg( p_input, "using timeshift path '%s'", p_sys->psz_tmp_path );
+ msg_Dbg( p_input, "using timeshift path '%s'", p_sys->psz_tmp_path );
#if 0
#define S(t) msg_Err( p_input, "SIZEOF("#t")=%d", sizeof(t) )
case ES_OUT_SET_GROUP_EPG:
case ES_OUT_SET_ES_SCRAMBLED_STATE:
case ES_OUT_DEL_GROUP:
+ case ES_OUT_SET_META:
case ES_OUT_SET_ES:
case ES_OUT_RESTART_ES:
case ES_OUT_SET_ES_DEFAULT:
p_block->i_flags = block.i_flags;
p_block->i_length = block.i_length;
p_block->i_rate = block.i_rate;
- p_block->i_samples = block.i_samples;
+ p_block->i_nb_samples = block.i_nb_samples;
p_block->i_buffer = fread( p_block->p_buffer, 1, block.i_buffer, p_storage->p_filer );
}
p_cmd->send.p_block = p_block;
case ES_OUT_RESET_PCR: /* no arg */
break;
- case ES_OUT_SET_GROUP_META: /* arg1=int i_group arg2=vlc_meta_t* */
+ case ES_OUT_SET_META: /* arg1=const vlc_meta_t* */
+ case ES_OUT_SET_GROUP_META: /* arg1=int i_group arg2=const vlc_meta_t* */
{
- p_cmd->control.int_meta.i_int = (int)va_arg( args, int );
- vlc_meta_t *p_meta = (vlc_meta_t*)va_arg( args, vlc_meta_t * );
+ if( i_query == ES_OUT_SET_GROUP_META )
+ p_cmd->control.int_meta.i_int = (int)va_arg( args, int );
+ const vlc_meta_t *p_meta = va_arg( args, const vlc_meta_t * );
if( b_copy )
{
}
else
{
- p_cmd->control.int_meta.p_meta = p_meta;
+ /* The cast is only needed to avoid warning */
+ p_cmd->control.int_meta.p_meta = (vlc_meta_t*)p_meta;
}
break;
}
- case ES_OUT_SET_GROUP_EPG: /* arg1=int i_group arg2=vlc_epg_t* */
+ case ES_OUT_SET_GROUP_EPG: /* arg1=int i_group arg2=const vlc_epg_t* */
{
p_cmd->control.int_epg.i_int = (int)va_arg( args, int );
- vlc_epg_t *p_epg = (vlc_epg_t*)va_arg( args, vlc_epg_t * );
+ const vlc_epg_t *p_epg = va_arg( args, const vlc_epg_t * );
if( b_copy )
{
}
else
{
- p_cmd->control.int_epg.p_epg = p_epg;
+ /* The cast is only needed to avoid warning */
+ p_cmd->control.int_epg.p_epg = (vlc_epg_t*)p_epg;
}
break;
}
case ES_OUT_RESET_PCR: /* no arg */
return es_out_Control( p_out, i_query );
- case ES_OUT_SET_GROUP_META: /* arg1=int i_group arg2=vlc_meta_t* */
+ case ES_OUT_SET_GROUP_META: /* arg1=int i_group arg2=const vlc_meta_t* */
return es_out_Control( p_out, i_query, p_cmd->control.int_meta.i_int,
p_cmd->control.int_meta.p_meta );
- case ES_OUT_SET_GROUP_EPG: /* arg1=int i_group arg2=vlc_epg_t* */
+ case ES_OUT_SET_GROUP_EPG: /* arg1=int i_group arg2=const vlc_epg_t* */
return es_out_Control( p_out, i_query, p_cmd->control.int_epg.i_int,
p_cmd->control.int_epg.p_epg );
return es_out_Control( p_out, i_query, p_cmd->control.es_bool.p_es->p_es,
p_cmd->control.es_bool.b_bool );
+ case ES_OUT_SET_META: /* arg1=const vlc_meta_t* */
+ return es_out_Control( p_out, i_query, p_cmd->control.int_meta.p_meta );
+
/* Modified control */
case ES_OUT_SET_ES: /* arg1= es_out_id_t* */
case ES_OUT_RESTART_ES: /* arg1= es_out_id_t* */
}
static void CmdCleanControl( ts_cmd_t *p_cmd )
{
- if( p_cmd->control.i_query == ES_OUT_SET_GROUP_META &&
+ if( ( p_cmd->control.i_query == ES_OUT_SET_GROUP_META ||
+ p_cmd->control.i_query == ES_OUT_SET_META ) &&
p_cmd->control.int_meta.p_meta )
{
vlc_meta_Delete( p_cmd->control.int_meta.p_meta );