X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;ds=sidebyside;f=cinelerra-5.1%2Fcinelerra%2Ffile.h;h=779b3d1efea32902306bc09bc0bd1b07c6cf0521;hb=243336668c89096732786c6b3f3c5918aa2eff26;hp=5231a9b3bfefad2b2dba400693490bc900f104ea;hpb=190b4810ec184c74ceab3fcd6faf09a91c92c53c;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/file.h b/cinelerra-5.1/cinelerra/file.h index 5231a9b3..779b3d1e 100644 --- a/cinelerra-5.1/cinelerra/file.h +++ b/cinelerra-5.1/cinelerra/file.h @@ -58,6 +58,7 @@ public: File(); ~File(); + int probe(); // Get attributes for various file formats. // The dither parameter is carried over from recording, where dither is done at the device. int get_options(FormatTools *format, @@ -85,8 +86,9 @@ public: // to delete the file object. Otherwise we'd delete just the cached frames // while the list of open files grew. void set_cache_frames(int value); -// Delete frame cache. Return 0 if successful. Return 1 if -// nothing to delete. +// Delete oldest frame from cache. +// Return number of bytes freed if successful. +// Return 0 if nothing to delete. int purge_cache(); // Delete oldest frame from cache. Return 0 if successful. Return 1 if // nothing to delete. @@ -226,7 +228,7 @@ public: // allocated. // Get best colormodel to translate for hardware accelerated playback. // Called by VRender. - int get_best_colormodel(int driver); + int get_best_colormodel(int driver, int vstream=-1); // Get best colormodel for hardware accelerated recording. // Called by VideoDevice. static int get_best_colormodel(Asset *asset, int driver); @@ -245,17 +247,16 @@ public: // The minimum setting for cache_size should be bigger than 1MB. int64_t get_memory_usage(); - static int supports_video(ArrayList *plugindb, char *format); // returns 1 if the format supports video or audio - static int supports_audio(ArrayList *plugindb, char *format); + static int renders_video(int format); + static int renders_video(Asset *asset); + static int renders_audio(int format); + static int renders_audio(Asset *asset); // Get the extension for the filename static const char* get_tag(int format); static const char* get_prefix(int format); - static int supports_video(int format); // returns 1 if the format supports video or audio - static int supports_audio(int format); static int strtoformat(const char *format); static const char* formattostr(int format); - static int strtoformat(ArrayList *plugindb, const char *format); - static const char* formattostr(ArrayList *plugindb, int format); + static int is_image_render(int format); static int strtobits(const char *bits); static const char* bitstostr(int bits); static int str_to_byteorder(const char *string); @@ -313,6 +314,28 @@ public: int wr, rd; static PackagingEngine *new_packaging_engine(Asset *asset); + static void init_cin_path(); + static void get_exe_path(char *result, char *bnp=0); + static void getenv_path(char *result, const char *path); + static void setenv_path(char *result, const char *var, const char *path); + static char cinexe_path[BCTEXTLEN], cinpkg_path[BCTEXTLEN]; + static char cindat_path[BCTEXTLEN], cinlib_path[BCTEXTLEN]; + static char cincfg_path[BCTEXTLEN], cinplg_path[BCTEXTLEN]; + static char cinlad_path[BCTEXTLEN], cinlcl_path[BCTEXTLEN]; + static char cinbwr_path[BCTEXTLEN]; + static const char *get_cin() { return getenv("CIN_PKG"); } + static const char *get_cin_path() { return getenv("CIN_PATH"); } + static const char *get_cindat_path() { return getenv("CIN_DAT"); } + static const char *get_cinlib_path() { return getenv("CIN_LIB"); } + static const char *get_config_path() { return getenv("CIN_CONFIG"); } + static const char *get_plugin_path() { return getenv("CIN_PLUGIN"); } + static const char *get_ladspa_path() { return getenv("CIN_LADSPA"); } + static const char *get_locale_path() { return getenv("CIN_LOCALE"); } + static const char *get_browser_path() { return getenv("CIN_BROWSER"); } + + static const char *default_probes[]; + static const int nb_probes; + private: void reset_parameters();