X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fproxy.h;h=71b91fa5a2289c934dece498df2e0554f86f83a7;hb=b9acb7cd4ecb313fe68ab385ae7a248a29671040;hp=f48df9680ace632a93b2d491f9517688ed7777e8;hpb=c905fabd0678fcc8ab9e32e4443ad8709adafefd;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/proxy.h b/cinelerra-5.1/cinelerra/proxy.h index f48df968..71b91fa5 100644 --- a/cinelerra-5.1/cinelerra/proxy.h +++ b/cinelerra-5.1/cinelerra/proxy.h @@ -29,7 +29,7 @@ #include "bcdialog.h" #include "cache.inc" #include "file.inc" -#include "formattools.inc" +#include "formattools.h" #include "loadbalance.h" #include "mutex.inc" #include "mwindow.inc" @@ -64,10 +64,10 @@ public: class ProxyRender { public: - ProxyRender(MWindow *mwindow, Asset *format_asset); + ProxyRender(MWindow *mwindow, Asset *format_asset, int asset_scale); ~ProxyRender(); void to_proxy_path(char *new_path, Indexable *indexable, int scale); - static int from_proxy_path(char *new_path, Indexable *indexable, int scale); + static int from_proxy_path(char *new_path, Asset *asset, int scale); ArrayList orig_idxbls; // originals which match the proxy assets ArrayList orig_proxies; // proxy assets @@ -88,6 +88,7 @@ public: Mutex *counter_lock; int total_rendered; int failed, canceled; + int asset_scale; }; class ProxyDialog : public BC_DialogThread @@ -111,7 +112,8 @@ public: int orig_scale, new_scale; int use_scaler, auto_scale; int orig_w, orig_h; - int beep; + int beeper_on; + float beeper_volume; char *size_text[MAX_SIZES]; int size_factors[MAX_SIZES]; int total_sizes; @@ -141,7 +143,15 @@ class ProxyBeepOnDone : public BC_CheckBox { public: ProxyBeepOnDone(ProxyWindow *pwindow, int x, int y); - void update(); + int handle_event(); + + ProxyWindow *pwindow; +}; + +class ProxyBeepVolume : public BC_FSlider +{ +public: + ProxyBeepVolume(ProxyWindow *pwindow, int x, int y); int handle_event(); ProxyWindow *pwindow; @@ -193,13 +203,16 @@ public: MWindow *mwindow; ProxyDialog *dialog; + BC_TitleBar *title_bar1, *title_bar2; FormatTools *format_tools; BC_Title *new_dimensions; BC_Title *active_scale; + BC_Title *active_state; ProxyMenu *scale_factor; ProxyUseScaler *use_scaler; ProxyAutoScale *auto_scale; ProxyBeepOnDone *beep_on_done; + ProxyBeepVolume *beep_volume; }; class ProxyFarm; @@ -243,24 +256,4 @@ public: ArrayList *proxy_assets; }; -class ProxyBeep : public Thread -{ -public: - enum { BEEP_SAMPLE_RATE=48000 }; - typedef int16_t audio_data_t; - ProxyBeep(MWindow *mwindow); - ~ProxyBeep(); - - void run(); - void start(); - void stop(int wait); - void tone(double freq, double secs, double gain); - - MWindow *mwindow; - double freq, secs, gain; - AudioDevice *audio; - int playing_audio, interrupted; - int audio_pos; -}; - #endif