X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frenderengine.h;h=5e3ed940dbd917f400f146e8e5ae2ce046425833;hb=667ff598ae2a94f48c7056aee1d77d7cde39066b;hp=5f816947f305468354f42e0bab7d900df3d1fd51;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/renderengine.h b/cinelerra-5.1/cinelerra/renderengine.h index 5f816947..5e3ed940 100644 --- a/cinelerra-5.1/cinelerra/renderengine.h +++ b/cinelerra-5.1/cinelerra/renderengine.h @@ -27,6 +27,7 @@ class RenderEngine; #include "arender.inc" #include "audiodevice.inc" +#include "bctimer.h" #include "cache.inc" #include "canvas.inc" #include "channel.inc" @@ -48,7 +49,6 @@ public: RenderEngine(PlaybackEngine *playback_engine, Preferences *preferences, Canvas *output, - ChannelDB *channeldb, int is_nested); ~RenderEngine(); @@ -58,11 +58,10 @@ public: void start_render_threads(); void wait_render_threads(); void interrupt_playback(); + void wait_done(); int get_output_w(); int get_output_h(); int brender_available(int position, int direction); -// Get current channel for the BUZ output - Channel* get_current_channel(); double get_tracking_position(); CICache* get_acache(); CICache* get_vcache(); @@ -108,14 +107,12 @@ public: // Lock out interrupts until started Condition *start_lock; Condition *output_lock; + Condition *render_active; // Lock out audio and synchronization timers until first frame is done Condition *first_frame_lock; // Lock out interrupts before and after renderengine is active Mutex *interrupt_lock; -// Show the timecode on the video - int show_tc; - int done; int is_nested; // If nested, the devices are owned by someone else @@ -130,9 +127,6 @@ public: // If the termination came from interrupt or end of selection int interrupted; -// Channels for the BUZ output - ChannelDB *channeldb; - // Samples in audio buffer to process int64_t fragment_len; // Samples to send to audio device after speed adjustment @@ -141,20 +135,6 @@ public: CICache *audio_cache, *video_cache; - - - - - - - - - - - - - - // constructing with an audio device forces output buffer allocation // constructing without an audio device puts in one buffer at a time mode RenderEngine(MWindow *mwindow,