X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.0%2Fcinelerra%2Fpackagerenderer.h;fp=cinelerra-5.0%2Fcinelerra%2Fpackagerenderer.h;h=0000000000000000000000000000000000000000;hb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;hp=3c444b2e9f296a6f5a1bff689952a0733283ca53;hpb=52fcc46226f9df46f9ce9d0566dc568455a7db0b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.0/cinelerra/packagerenderer.h b/cinelerra-5.0/cinelerra/packagerenderer.h deleted file mode 100644 index 3c444b2e..00000000 --- a/cinelerra-5.0/cinelerra/packagerenderer.h +++ /dev/null @@ -1,165 +0,0 @@ - -/* - * CINELERRA - * Copyright (C) 1997-2011 Adam Williams - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -#ifndef PACKAGERENDERER_H -#define PACKAGERENDERER_H - - -#include "assets.inc" -#include "bctimer.inc" -#include "bcwindowbase.inc" -#include "cache.inc" -#include "edit.inc" -#include "edl.inc" -#include "file.inc" -#include "maxchannels.h" -#include "mwindow.inc" -#include "playabletracks.inc" -#include "playbackconfig.inc" -#include "pluginserver.inc" -#include "preferences.inc" -#include "renderengine.inc" -#include "samples.inc" -#include "track.inc" -#include "transportque.inc" -#include "vframe.inc" -#include "videodevice.inc" - - -#include - -class RenderPackage -{ -public: - RenderPackage(); - ~RenderPackage(); - -// Path of output without remote prefix - char path[BCTEXTLEN]; - -// Range not including preroll - int64_t audio_start; - int64_t audio_end; - int64_t video_start; - int64_t video_end; - int done; - int use_brender; - int video_do; - int audio_do; -}; - - - - -// Used by Render and BRender to do packages. -class PackageRenderer -{ -public: - PackageRenderer(); - ~PackageRenderer(); - -// Initialize stuff which is reused between packages - int initialize(MWindow *mwindow, - EDL *edl, - Preferences *preferences, - Asset *default_asset); - -// Aborts and returns 1 if an error is encountered. - int render_package(RenderPackage *package); - - int direct_copy_possible(EDL *edl, - int64_t current_position, - Track* &playable_track, // The one track which is playable - Edit* &playable_edit, // The edit which is playing - File *file); // Output file - int direct_frame_copy(EDL *edl, - int64_t &video_position, - File *file, - int &result); - -// Invoke behavior for master node - virtual int get_master(); -// Get result status from server - virtual int get_result(); - virtual void set_result(int value); - virtual void set_progress(int64_t total_samples); -// Used by background rendering to mark a frame as finished. -// If the GUI is locked for a long time this may abort, -// assuming the server crashed. - virtual int set_video_map(int64_t position, int value); - virtual int progress_cancelled(); - - void create_output(); - void create_engine(); - void do_audio(); - void do_video(); - void stop_engine(); - void stop_output(); - void close_output(); - - -// Passed in from outside - EDL *edl; - Preferences *preferences; - Asset *default_asset; - -// Created locally - Timer *timer; -// Calculate frames per second for the renderfarm table. - float frames_per_second; - int64_t total_samples_rendered; - Asset *asset; - Samples **audio_output; - int64_t audio_position; - int64_t audio_preroll; - int64_t audio_read_length; - File *file; -// This is 1 if an error is encountered. - int result; - VFrame ***video_output; -// A nonzero mwindow signals master render engine to the engine. -// A zero mwindow signals client or non interactive. - MWindow *mwindow; - Samples *audio_output_ptr[MAX_CHANNELS]; - CICache *audio_cache; - CICache *video_cache; - VFrame *compressed_output; - AudioOutConfig *aconfig; - VideoOutConfig *vconfig; -// PlaybackConfig *playback_config; - PlayableTracks *playable_tracks; - RenderEngine *render_engine; - RenderPackage *package; - TransportCommand *command; - int direct_frame_copying; - VideoDevice *video_device; - VFrame *video_output_ptr; - int64_t video_preroll; - int64_t video_position; - int64_t video_read_length; - int64_t video_write_length; - int64_t video_write_position; -}; - - - - -#endif