#include "channel.inc"
#include "channeldb.inc"
#include "commercials.inc"
+#include "convert.inc"
#include "cwindow.inc"
#include "bchash.inc"
#include "devicedvbinput.inc"
#include "playback3d.inc"
#include "playbackengine.inc"
#include "plugin.inc"
+#include "pluginclient.inc"
#include "pluginfclient.inc"
#include "pluginserver.inc"
#include "pluginset.inc"
#include "thread.h"
#include "threadloader.inc"
#include "timebar.inc"
-#include "timebomb.h"
#include "tipwindow.inc"
#include "track.inc"
#include "tracking.inc"
void create_objects(int want_gui,
int want_new,
char *config_path);
+ int uses_opengl();
void show_splash();
void hide_splash();
void start();
int overwrite);
// Reset everything for a load
void update_project(int load_mode);
+ void update_preferences(Preferences *prefs);
void update_vwindow();
// Fit selected time to horizontal display range
void fit_selection();
// Not wanted for loading backups.
int update_filename = 1);
-
// Print out plugins which are referenced in the EDL but not loaded.
void test_plugins(EDL *new_edl, char *path);
int zoom_in_t();
void split_x();
void split_y();
- void crop_video();
+ void crop_video(int mode);
void update_plugins();
// Call after every edit operation
void save_backup();
// Searches for matching plugin and renders data in it.
void render_plugin_gui(void *data, Plugin *plugin);
void render_plugin_gui(void *data, int size, Plugin *plugin);
+ void reset_plugin_gui_frames(Plugin *plugin);
+ void render_plugin_gui_frames(PluginClientFrames *frames, Plugin *plugin);
+ double get_tracking_position();
+ int get_tracking_direction();
// Called from PluginVClient::process_buffer
// Returns 1 if a GUI for the plugin is open so OpenGL routines can determine if
// they can run.
int plugin_gui_open(Plugin *plugin);
+ void stop_plugin_guis();
void show_keyframe_gui(Plugin *plugin);
void hide_keyframe_guis();
void clear(int clear_handle);
void clear_labels();
int clear_labels(double start, double end);
+ void clear_hard_edges();
+ int clear_hard_edges(double start, double end);
+ void clear_select();
void concatenate_tracks();
int copy_flags(int copy_flags=COPY_CLIPBOARD);
void copy();
// Calculate defaults path
static void create_defaults_path(char *string, const char *config_file);
- void delete_track();
void delete_track(Track *track);
void delete_tracks();
int feather_edits(int64_t feather_samples, int audio, int video);
// Asset removal from caches
void reset_caches();
void remove_asset_from_caches(Asset *asset);
- void remove_assets_from_project(int push_undo /* = 0 */,
- int redraw /* 1 */,
+ void remove_assets_from_project(int push_undo, int redraw, int delete_indexes,
ArrayList<Indexable*> *drag_assets /* mwindow->session->drag_assets */,
ArrayList<EDL*> *drag_clips /* mwindow->session->drag_clips */);
void remove_assets_from_disk();
void set_automation_mode(int mode);
void set_keyframe_type(int mode);
void set_auto_keyframes(int value);
+ void set_span_keyframes(int value);
void set_auto_visibility(Autos *autos, int value);
void set_labels_follow_edits(int value);
int modify_pluginhandles();
void finish_modify_handles();
void rescale_proxy(EDL *clip, int orig_scale, int new_scale);
- void add_proxy(int use_scaler,
- ArrayList<Indexable*> *orig_assets,
- ArrayList<Indexable*> *proxy_assets);
+ void add_proxy(ArrayList<Indexable*> *orig_assets,
+ ArrayList<Indexable*> *proxy_assets);
int render_proxy(ArrayList<Indexable *> &new_idxbls);
void beep(double freq, double secs, double gain);
int enable_proxy();
// Send new EDL to caches
void age_caches();
int optimize_assets(); // delete unused assets from the cache and assets
+// render edl assets to specified format, then replace in edl
+ void start_convert(Asset *format_asset, const char *suffix,
+ float beep, int remove_originals);
+ void finish_convert(int remove_originals);
+ ConvertRender *convert_render;
void select_point(double position);
int set_loop_boundaries(); // toggle loop playback and set boundaries for loop playback
ArrayList<ColormodelItem*> colormodels;
ArrayList<InterlacemodeItem*> interlace_project_modes;
ArrayList<InterlacemodeItem*> interlace_asset_modes;
- ArrayList<InterlacefixmethodItem*> interlace_asset_fixmethods;
int reset_meters();
void resync_guis();
static ArrayList<PluginServer*> *plugindb;
// Currently visible plugins
int64_t plugin_visibility;
- ArrayList<PluginServer*> *plugin_guis;
+ PluginGUIs *plugin_guis;
// GUI Plugins to delete
ArrayList<PluginServer*> *dead_plugins;
// Keyframe editors