repair default keyframe load, tweak init default histogram threshold
[goodguy/history.git] / cinelerra-5.1 / cinelerra / file.h
index 5378a76f7d0df0ab3edf1c80c58965a2e0077ae2..2ca1acbe921a62482d4595f3e86519d3189b66ef 100644 (file)
@@ -86,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.
@@ -227,10 +228,12 @@ 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);
+// asset scaling on read_frame
+       static int can_scale_input(Asset *asset);
 // Get nearest colormodel that can be decoded without a temporary frame.
 // Used by read_frame.
        int colormodel_supported(int colormodel);
@@ -246,17 +249,16 @@ public:
 // The minimum setting for cache_size should be bigger than 1MB.
        int64_t get_memory_usage();
 
-       static int supports_video(ArrayList<PluginServer*> *plugindb, char *format);   // returns 1 if the format supports video or audio
-       static int supports_audio(ArrayList<PluginServer*> *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<PluginServer*> *plugindb, const char *format);
-       static const char* formattostr(ArrayList<PluginServer*> *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);
@@ -317,12 +319,7 @@ public:
        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 void setenv_path(const char *var, const char *path, int overwrite);
        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"); }
@@ -331,6 +328,7 @@ public:
        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_render_path() { return getenv("CIN_RENDER"); }
        static const char *get_browser_path() { return getenv("CIN_BROWSER"); }
 
        static const char *default_probes[];