LiVES 1.3.11-svn
Enumerations | Functions
src/events.c File Reference
#include "../libweed/weed.h"
#include "../libweed/weed-palettes.h"
#include "../libweed/weed-effects.h"
#include "../libweed/weed-host.h"
#include "main.h"
#include "effects.h"
#include "support.h"
#include "callbacks.h"
#include "resample.h"
#include "paramwindow.h"
#include "audio.h"
#include "cvirtual.h"

Enumerations

enum  { TITLE_COLUMN, KEY_COLUMN, VALUE_COLUMN, NUM_COLUMNS }

Functions

G_GNUC_PURE void *** get_event_pchains (void)
weed_timecode_t get_event_timecode (weed_plant_t *plant)
int get_event_hint (weed_plant_t *plant)
weed_plant_t * get_prev_event (weed_plant_t *event)
weed_plant_t * get_next_event (weed_plant_t *event)
weed_plant_t * get_first_event (weed_plant_t *event_list)
weed_plant_t * get_last_event (weed_plant_t *event_list)
gboolean has_frame_event_at (weed_plant_t *event_list, weed_timecode_t tc, weed_plant_t **shortcut)
int get_audio_frame_clip (weed_plant_t *event, int layer)
 returns clip number for track layer (layer==-1 is backing audio)
double get_audio_frame_vel (weed_plant_t *event, int layer)
 returns velocity for track layer (layer==-1 is backing audio)
double get_audio_frame_seek (weed_plant_t *event, int layer)
 returns velocity for track layer (layer==-1 is backing audio)
int get_frame_event_clip (weed_plant_t *event, int layer)
int get_frame_event_frame (weed_plant_t *event, int layer)
void unlink_event (weed_plant_t *event_list, weed_plant_t *event)
void delete_event (weed_plant_t *event_list, weed_plant_t *event)
gboolean insert_event_before (weed_plant_t *at_event, weed_plant_t *event)
gboolean insert_event_after (weed_plant_t *at_event, weed_plant_t *event)
void replace_event (weed_plant_t *event_list, weed_plant_t *at_event, weed_plant_t *event)
weed_plant_t * get_next_frame_event (weed_plant_t *event)
weed_plant_t * get_prev_frame_event (weed_plant_t *event)
weed_plant_t * get_first_frame_event (weed_plant_t *event_list)
weed_plant_t * get_last_frame_event (weed_plant_t *event_list)
void * find_init_event_by_id (void *init_event, weed_plant_t *event)
void remove_frame_from_event (weed_plant_t *event_list, weed_plant_t *event, gint track)
gboolean is_blank_frame (weed_plant_t *event, gboolean count_audio)
void remove_end_blank_frames (weed_plant_t *event_list)
weed_timecode_t get_next_paramchange (void **pchange_next, weed_timecode_t end_tc)
weed_timecode_t get_prev_paramchange (void **pchange_prev, weed_timecode_t start_tc)
gboolean is_init_pchange (weed_plant_t *init_event, weed_plant_t *pchange_event)
weed_plant_t * event_copy_and_insert (weed_plant_t *in_event, weed_plant_t *event_list)
 called during quantisation
gboolean frame_event_has_frame_for_track (weed_plant_t *event, gint track)
weed_plant_t * get_frame_event_at (weed_plant_t *event_list, weed_timecode_t tc, weed_plant_t *shortcut, gboolean exact)
gboolean filter_map_after_frame (weed_plant_t *fmap)
weed_plant_t * get_frame_event_at_or_before (weed_plant_t *event_list, weed_timecode_t tc, weed_plant_t *shortcut)
weed_plant_t * get_filter_map_after (weed_plant_t *event, gint ctrack)
gboolean init_event_is_relevant (weed_plant_t *init_event, gint ctrack)
weed_plant_t * get_filter_map_before (weed_plant_t *event, gint ctrack, weed_plant_t *stop_event)
void ** get_init_events_before (weed_plant_t *event, weed_plant_t *init_event, gboolean add)
void update_filter_maps (weed_plant_t *event, weed_plant_t *end_event, weed_plant_t *init_event)
void insert_filter_init_event_at (weed_plant_t *event_list, weed_plant_t *at_event, weed_plant_t *event)
void insert_filter_deinit_event_at (weed_plant_t *event_list, weed_plant_t *at_event, weed_plant_t *event)
gboolean insert_filter_map_event_at (weed_plant_t *event_list, weed_plant_t *at_event, weed_plant_t *event, gboolean before_frames)
void insert_param_change_event_at (weed_plant_t *event_list, weed_plant_t *at_event, weed_plant_t *event)
weed_plant_t * insert_frame_event_at (weed_plant_t *event_list, weed_timecode_t tc, int numframes, int *clips, int *frames, weed_plant_t **shortcut)
void insert_audio_event_at (weed_plant_t *event_list, weed_plant_t *event, gint track, gint clipnum, double seek, double vel)
void remove_audio_for_track (weed_plant_t *event, int track)
weed_plant_t * append_marker_event (weed_plant_t *event_list, weed_timecode_t tc, int marker_type)
void insert_marker_event_at (weed_plant_t *event_list, weed_plant_t *at_event, int marker_type, gpointer data)
weed_plant_t * insert_blank_frame_event_at (weed_plant_t *event_list, weed_timecode_t tc, weed_plant_t **shortcut)
void remove_filter_from_event_list (weed_plant_t *event_list, weed_plant_t *init_event)
gboolean init_event_in_list (void **init_events, int num_inits, weed_plant_t *event)
gboolean filter_map_has_event (weed_plant_t *fmap, weed_plant_t *event)
gboolean filter_init_has_owner (weed_plant_t *init_event, int track)
void backup_host_tags (weed_plant_t *event_list, weed_timecode_t curr_tc)
void restore_host_tags (weed_plant_t *event_list, weed_timecode_t curr_tc)
void delete_param_changes_after_deinit (weed_plant_t *event_list, weed_plant_t *init_event)
gboolean init_event_is_process_last (weed_plant_t *event)
void add_init_event_to_filter_map (weed_plant_t *fmap, weed_plant_t *event, void **hints)
void move_filter_init_event (weed_plant_t *event_list, weed_timecode_t new_tc, weed_plant_t *init_event, gdouble fps)
void move_filter_deinit_event (weed_plant_t *event_list, weed_timecode_t new_tc, weed_plant_t *deinit_event, gdouble fps, gboolean rescale_pchanges)
gboolean move_event_right (weed_plant_t *event_list, weed_plant_t *event, gboolean can_stay, gdouble fps)
gboolean move_event_left (weed_plant_t *event_list, weed_plant_t *event, gboolean can_stay, gdouble fps)
void set_render_choice (GtkToggleButton *togglebutton, gpointer choice)
void set_render_choice_button (GtkButton *button, gpointer choice)
gint get_render_choice (void)
GtkWidget * events_rec_dialog (void)
void event_list_free (weed_plant_t *event_list)
void event_list_replace_events (weed_plant_t *event_list, weed_plant_t *new_event_list)
 replace events in event_list with events in new_event_list
gboolean event_list_to_block (weed_plant_t *event_list, gint num_events)
void event_list_close_gaps (weed_plant_t *event_list)
void event_list_add_track (weed_plant_t *event_list, gint layer)
weed_plant_t * append_frame_event (weed_plant_t *event_list, weed_timecode_t tc, int numframes, int *clips, int *frames)
void ** filter_init_add_pchanges (weed_plant_t *event_list, weed_plant_t *plant, weed_plant_t *init_event, int ntracks)
weed_plant_t * append_filter_init_event (weed_plant_t *event_list, weed_timecode_t tc, int filter_idx, int num_in_tracks)
weed_plant_t * append_filter_deinit_event (weed_plant_t *event_list, weed_timecode_t tc, void *init_event, void **pchain)
weed_plant_t * append_param_change_event (weed_plant_t *event_list, weed_timecode_t tc, gint pnum, weed_plant_t *param, void *init_event, void **pchain)
weed_plant_t * append_filter_map_event (weed_plant_t *event_list, weed_timecode_t tc, void **init_events)
weed_plant_t * process_events (weed_plant_t *next_event, weed_timecode_t curr_tc)
 RT playback.
gint render_events (gboolean reset)
gboolean start_render_effect_events (weed_plant_t *event_list)
 render to clip
gint count_events (weed_plant_t *event_list, gboolean all_events, weed_timecode_t start_tc, weed_timecode_t end_tc)
 if all_events is FALSE we only count FRAME events
weed_timecode_t event_list_get_end_tc (weed_plant_t *event_list)
gdouble event_list_get_end_secs (weed_plant_t *event_list)
weed_timecode_t event_list_get_start_tc (weed_plant_t *event_list)
gdouble event_list_get_start_secs (weed_plant_t *event_list)
gboolean has_audio_frame (weed_plant_t *event_list)
gboolean render_to_clip (gboolean new_clip)
 render to clip
void dprint_recneg (void)
gboolean deal_with_render_choice (gboolean add_deinit)
gdouble * get_track_visibility_at_tc (weed_plant_t *event_list, gint ntracks, gint nbtracks, weed_timecode_t tc, weed_plant_t **shortcut, gboolean bleedthru)
GtkWidget * create_event_list_dialog (weed_plant_t *event_list, weed_timecode_t start_tc, weed_timecode_t end_tc)
void rdetw_spinh_changed (GtkSpinButton *spinbutton, gpointer user_data)
void rdetw_spinw_changed (GtkSpinButton *spinbutton, gpointer user_data)
void rdetw_spinf_changed (GtkSpinButton *spinbutton, gpointer user_data)
render_detailscreate_render_details (gint type)

Enumeration Type Documentation

anonymous enum
Enumerator:
TITLE_COLUMN 
KEY_COLUMN 
VALUE_COLUMN 
NUM_COLUMNS 

Function Documentation

void add_init_event_to_filter_map ( weed_plant_t *  fmap,
weed_plant_t *  event,
void **  hints 
)
weed_plant_t* append_filter_deinit_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
void *  init_event,
void **  pchain 
)
weed_plant_t* append_filter_init_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
int  filter_idx,
int  num_in_tracks 
)
weed_plant_t* append_filter_map_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
void **  init_events 
)
weed_plant_t* append_frame_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
int  numframes,
int *  clips,
int *  frames 
)
weed_plant_t* append_marker_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
int  marker_type 
)
weed_plant_t* append_param_change_event ( weed_plant_t *  event_list,
weed_timecode_t  tc,
gint  pnum,
weed_plant_t *  param,
void *  init_event,
void **  pchain 
)
void backup_host_tags ( weed_plant_t *  event_list,
weed_timecode_t  curr_tc 
)
gint count_events ( weed_plant_t *  event_list,
gboolean  all_events,
weed_timecode_t  start_tc,
weed_timecode_t  end_tc 
)

if all_events is FALSE we only count FRAME events

GtkWidget* create_event_list_dialog ( weed_plant_t *  event_list,
weed_timecode_t  start_tc,
weed_timecode_t  end_tc 
)
render_details* create_render_details ( gint  type)
gboolean deal_with_render_choice ( gboolean  add_deinit)

< new clip frames always start at 1

< same clip frames start where recording started

void delete_event ( weed_plant_t *  event_list,
weed_plant_t *  event 
)
void delete_param_changes_after_deinit ( weed_plant_t *  event_list,
weed_plant_t *  init_event 
)
void dprint_recneg ( void  ) [inline]
weed_plant_t* event_copy_and_insert ( weed_plant_t *  in_event,
weed_plant_t *  event_list 
)

called during quantisation

void event_list_add_track ( weed_plant_t *  event_list,
gint  layer 
)
void event_list_close_gaps ( weed_plant_t *  event_list)
void event_list_free ( weed_plant_t *  event_list)
gdouble event_list_get_end_secs ( weed_plant_t *  event_list)
weed_timecode_t event_list_get_end_tc ( weed_plant_t *  event_list)
gdouble event_list_get_start_secs ( weed_plant_t *  event_list)
weed_timecode_t event_list_get_start_tc ( weed_plant_t *  event_list)
void event_list_replace_events ( weed_plant_t *  event_list,
weed_plant_t *  new_event_list 
)

replace events in event_list with events in new_event_list

gboolean event_list_to_block ( weed_plant_t *  event_list,
gint  num_events 
)
GtkWidget* events_rec_dialog ( void  )
void** filter_init_add_pchanges ( weed_plant_t *  event_list,
weed_plant_t *  plant,
weed_plant_t *  init_event,
int  ntracks 
)
gboolean filter_init_has_owner ( weed_plant_t *  init_event,
int  track 
)
gboolean filter_map_after_frame ( weed_plant_t *  fmap)
gboolean filter_map_has_event ( weed_plant_t *  fmap,
weed_plant_t *  event 
)
void* find_init_event_by_id ( void *  init_event,
weed_plant_t *  event 
)
gboolean frame_event_has_frame_for_track ( weed_plant_t *  event,
gint  track 
)
int get_audio_frame_clip ( weed_plant_t *  event,
int  layer 
)

returns clip number for track layer (layer==-1 is backing audio)

double get_audio_frame_seek ( weed_plant_t *  event,
int  layer 
)

returns velocity for track layer (layer==-1 is backing audio)

double get_audio_frame_vel ( weed_plant_t *  event,
int  layer 
)

returns velocity for track layer (layer==-1 is backing audio)

int get_event_hint ( weed_plant_t *  plant) [inline]
G_GNUC_PURE void*** get_event_pchains ( void  )
weed_timecode_t get_event_timecode ( weed_plant_t *  plant) [inline]
weed_plant_t* get_filter_map_after ( weed_plant_t *  event,
gint  ctrack 
)
weed_plant_t* get_filter_map_before ( weed_plant_t *  event,
gint  ctrack,
weed_plant_t *  stop_event 
)
weed_plant_t* get_first_event ( weed_plant_t *  event_list) [inline]
weed_plant_t* get_first_frame_event ( weed_plant_t *  event_list)
weed_plant_t* get_frame_event_at ( weed_plant_t *  event_list,
weed_timecode_t  tc,
weed_plant_t *  shortcut,
gboolean  exact 
)
weed_plant_t* get_frame_event_at_or_before ( weed_plant_t *  event_list,
weed_timecode_t  tc,
weed_plant_t *  shortcut 
)
int get_frame_event_clip ( weed_plant_t *  event,
int  layer 
)
int get_frame_event_frame ( weed_plant_t *  event,
int  layer 
)
void** get_init_events_before ( weed_plant_t *  event,
weed_plant_t *  init_event,
gboolean  add 
)
weed_plant_t* get_last_event ( weed_plant_t *  event_list) [inline]
weed_plant_t* get_last_frame_event ( weed_plant_t *  event_list)
weed_plant_t* get_next_event ( weed_plant_t *  event) [inline]
weed_plant_t* get_next_frame_event ( weed_plant_t *  event)
weed_timecode_t get_next_paramchange ( void **  pchange_next,
weed_timecode_t  end_tc 
)
weed_plant_t* get_prev_event ( weed_plant_t *  event) [inline]
weed_plant_t* get_prev_frame_event ( weed_plant_t *  event)
weed_timecode_t get_prev_paramchange ( void **  pchange_prev,
weed_timecode_t  start_tc 
)
gint get_render_choice ( void  )
gdouble* get_track_visibility_at_tc ( weed_plant_t *  event_list,
gint  ntracks,
gint  nbtracks,
weed_timecode_t  tc,
weed_plant_t **  shortcut,
gboolean  bleedthru 
)
gboolean has_audio_frame ( weed_plant_t *  event_list)
gboolean has_frame_event_at ( weed_plant_t *  event_list,
weed_timecode_t  tc,
weed_plant_t **  shortcut 
)
gboolean init_event_in_list ( void **  init_events,
int  num_inits,
weed_plant_t *  event 
) [inline]
gboolean init_event_is_process_last ( weed_plant_t *  event)
gboolean init_event_is_relevant ( weed_plant_t *  init_event,
gint  ctrack 
)
void insert_audio_event_at ( weed_plant_t *  event_list,
weed_plant_t *  event,
gint  track,
gint  clipnum,
double  seek,
double  vel 
)
weed_plant_t* insert_blank_frame_event_at ( weed_plant_t *  event_list,
weed_timecode_t  tc,
weed_plant_t **  shortcut 
)
gboolean insert_event_after ( weed_plant_t *  at_event,
weed_plant_t *  event 
)
gboolean insert_event_before ( weed_plant_t *  at_event,
weed_plant_t *  event 
)
void insert_filter_deinit_event_at ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
weed_plant_t *  event 
)
void insert_filter_init_event_at ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
weed_plant_t *  event 
)
gboolean insert_filter_map_event_at ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
weed_plant_t *  event,
gboolean  before_frames 
)
weed_plant_t* insert_frame_event_at ( weed_plant_t *  event_list,
weed_timecode_t  tc,
int  numframes,
int *  clips,
int *  frames,
weed_plant_t **  shortcut 
)

will either insert or replace

void insert_marker_event_at ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
int  marker_type,
gpointer  data 
)
void insert_param_change_event_at ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
weed_plant_t *  event 
)
gboolean is_blank_frame ( weed_plant_t *  event,
gboolean  count_audio 
)
gboolean is_init_pchange ( weed_plant_t *  init_event,
weed_plant_t *  pchange_event 
)
gboolean move_event_left ( weed_plant_t *  event_list,
weed_plant_t *  event,
gboolean  can_stay,
gdouble  fps 
)
gboolean move_event_right ( weed_plant_t *  event_list,
weed_plant_t *  event,
gboolean  can_stay,
gdouble  fps 
)
void move_filter_deinit_event ( weed_plant_t *  event_list,
weed_timecode_t  new_tc,
weed_plant_t *  deinit_event,
gdouble  fps,
gboolean  rescale_pchanges 
)
void move_filter_init_event ( weed_plant_t *  event_list,
weed_timecode_t  new_tc,
weed_plant_t *  init_event,
gdouble  fps 
)
weed_plant_t* process_events ( weed_plant_t *  next_event,
weed_timecode_t  curr_tc 
)

RT playback.

void rdetw_spinf_changed ( GtkSpinButton *  spinbutton,
gpointer  user_data 
)
void rdetw_spinh_changed ( GtkSpinButton *  spinbutton,
gpointer  user_data 
)
void rdetw_spinw_changed ( GtkSpinButton *  spinbutton,
gpointer  user_data 
)
void remove_audio_for_track ( weed_plant_t *  event,
int  track 
)
void remove_end_blank_frames ( weed_plant_t *  event_list)
void remove_filter_from_event_list ( weed_plant_t *  event_list,
weed_plant_t *  init_event 
)
void remove_frame_from_event ( weed_plant_t *  event_list,
weed_plant_t *  event,
gint  track 
)
gint render_events ( gboolean  reset)
gboolean render_to_clip ( gboolean  new_clip)

render to clip

rendering

void replace_event ( weed_plant_t *  event_list,
weed_plant_t *  at_event,
weed_plant_t *  event 
)
void restore_host_tags ( weed_plant_t *  event_list,
weed_timecode_t  curr_tc 
)
void set_render_choice ( GtkToggleButton *  togglebutton,
gpointer  choice 
)
void set_render_choice_button ( GtkButton *  button,
gpointer  choice 
)
gboolean start_render_effect_events ( weed_plant_t *  event_list)

render to clip

void unlink_event ( weed_plant_t *  event_list,
weed_plant_t *  event 
)
void update_filter_maps ( weed_plant_t *  event,
weed_plant_t *  end_event,
weed_plant_t *  init_event 
)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines