mtime_t i_time;
mtime_t i_length;
} times;
+ struct
+ {
+ mtime_t i_pts_delay;
+ int i_cr_average;
+ } jitter;
};
} ts_cmd_control_t;
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 );
case ES_OUT_SET_NEXT_DISPLAY_TIME:
case ES_OUT_SET_GROUP_META:
case ES_OUT_SET_GROUP_EPG:
+ case ES_OUT_SET_ES_SCRAMBLED_STATE:
case ES_OUT_DEL_GROUP:
case ES_OUT_SET_ES:
case ES_OUT_RESTART_ES:
case ES_OUT_SET_ES_STATE:
case ES_OUT_SET_ES_FMT:
case ES_OUT_SET_TIMES:
+ case ES_OUT_SET_JITTER:
{
ts_cmd_t cmd;
if( CmdInitControl( &cmd, i_query, args, p_sys->b_delayed ) )
p_cmd->control.int_i64.i_i64 = (int64_t)va_arg( args, int64_t );
break;
+ case ES_OUT_SET_ES_SCRAMBLED_STATE:
+ p_cmd->control.es_bool.p_es = (es_out_id_t*)va_arg( args, es_out_id_t * );
+ p_cmd->control.es_bool.b_bool = (bool)va_arg( args, int );
+ break;
+
case ES_OUT_RESET_PCR: /* no arg */
break;
p_cmd->control.times.i_length = i_length;
break;
}
+ case ES_OUT_SET_JITTER:
+ {
+ mtime_t i_pts_delay = (mtime_t)va_arg( args, mtime_t );
+ int i_cr_average = (int)va_arg( args, int );
+
+ p_cmd->control.jitter.i_pts_delay = i_pts_delay;
+ p_cmd->control.jitter.i_cr_average = i_cr_average;
+ break;
+ }
default:
assert(0);
return es_out_Control( p_out, i_query, p_cmd->control.int_epg.i_int,
p_cmd->control.int_epg.p_epg );
+ case ES_OUT_SET_ES_SCRAMBLED_STATE: /* arg1=int es_out_id_t* arg2=bool */
+ return es_out_Control( p_out, i_query, p_cmd->control.es_bool.p_es->p_es,
+ p_cmd->control.es_bool.b_bool );
+
/* Modified control */
case ES_OUT_SET_ES: /* arg1= es_out_id_t* */
case ES_OUT_RESTART_ES: /* arg1= es_out_id_t* */
return es_out_Control( p_out, i_query, p_cmd->control.times.f_position,
p_cmd->control.times.i_time,
p_cmd->control.times.i_length );
+ case ES_OUT_SET_JITTER:
+ return es_out_Control( p_out, i_query, p_cmd->control.jitter.i_pts_delay,
+ p_cmd->control.jitter.i_cr_average );
default:
assert(0);
return NULL;
/* */
- f = fdopen( fd, "r+b" );
+ f = fdopen( fd, "w+b" );
if( !f )
close( fd );