X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fproxy.h;h=71b91fa5a2289c934dece498df2e0554f86f83a7;hp=c98f2e04a5cea9168e947c39a2c4815919c4c3e5;hb=refs%2Fheads%2Fmaster;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1 diff --git a/cinelerra-5.1/cinelerra/proxy.h b/cinelerra-5.1/cinelerra/proxy.h index c98f2e04..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 @@ -108,11 +109,11 @@ public: Asset *asset; ProxyRender *proxy_render; - int new_scale; - int orig_scale; - int use_scaler; - int auto_scale; - int beep; + int orig_scale, new_scale; + int use_scaler, auto_scale; + int orig_w, orig_h; + int beeper_on; + float beeper_volume; char *size_text[MAX_SIZES]; int size_factors[MAX_SIZES]; int total_sizes; @@ -142,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; @@ -194,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; @@ -244,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