proxy/mixer fixes, add proxy beep, igor ru xlat
[goodguy/history.git] / cinelerra-5.1 / cinelerra / mwindow.h
index 8c251e28b33af49078af7b31e018909efc40865b..fb3513a2b6cbf04f6ec4a4cdf8c9b4e3685fe247 100644 (file)
@@ -75,6 +75,7 @@
 #include "pluginset.inc"
 #include "preferences.inc"
 #include "preferencesthread.inc"
+#include "proxy.inc"
 #include "record.inc"
 #include "recordlabel.inc"
 #include "render.inc"
@@ -208,7 +209,7 @@ public:
        void create_mixers();
        void refresh_mixers(int dir=1);
        void stop_mixers();
-       void close_mixers();
+       void close_mixers(int destroy=1);
        void open_mixers();
        ZWindow *get_mixer(Mixer *&mixer);
        void del_mixer(ZWindow *zwindow);
@@ -507,13 +508,16 @@ public:
        int modify_edithandles();
        int modify_pluginhandles();
        void finish_modify_handles();
-       void set_proxy(int use_scaler, int new_scale, int auto_scale,
+       void rescale_proxy(EDL *clip, int orig_scale, int new_scale);
+       void set_proxy(int use_scaler, int new_scale, int auto_scale, int beep,
                ArrayList<Indexable*> *orig_assets,
                ArrayList<Indexable*> *proxy_assets);
        void add_proxy(int use_scaler,
                ArrayList<Indexable*> *orig_assets,
                ArrayList<Indexable*> *proxy_assets);
-       void render_proxy(ArrayList<Indexable *> &new_idxbls);
+       int render_proxy(ArrayList<Indexable *> &new_idxbls);
+       void beep(double freq, double secs, double gain);
+       ProxyBeep *proxy_beep;
 
        void dump_plugins(FILE *fp=stdout);
        void dump_edl(FILE *fp=stdout);
@@ -633,10 +637,8 @@ public:
        Mutex *keyframe_gui_lock;
 // Lock during creation and destruction of brender so playback doesn't use it.
        Mutex *brender_lock;
-
 // Initialize shared memory
        void init_shm(const char *pfn, int64_t min);
-
 // Initialize channel DB's for playback
        void init_channeldb();
        void init_render();
@@ -691,6 +693,7 @@ public:
        static PluginServer *new_ffmpeg_server(MWindow *mwindow, const char *name);
        static int init_lv2_index(MWindow *mwindow, Preferences *preferences, FILE *fp);
        static PluginServer *new_lv2_server(MWindow *mwindow, const char *name);
+       static void remove_plugin_index();
 
        void init_preferences();
        void init_signals();