proxy bug fixes, add moveobj, sams icons, ladspa fixes, pot sigfpe
[goodguy/history.git] / cinelerra-5.1 / cinelerra / file.C
index 2d1c4af26758eadbe4b1da6b4d41ec019ade35b5..0fb926b26d6601fd4e99018bf4f2f08bf1f19664 100644 (file)
@@ -1111,7 +1111,8 @@ int File::read_samples(Samples *samples, int64_t len)
 int File::read_frame(VFrame *frame, int is_thread)
 {
        const int debug = 0;
-
+//printf("File::read_frame pos=%jd cache=%d 1frame=%d\n",
+// current_frame, use_cache, asset->single_frame);
        if( debug ) PRINT_TRACE
 
 //printf("File::read_frame %d\n", __LINE__);
@@ -1393,10 +1394,9 @@ int64_t File::get_memory_usage()
 }
 
 
-int File::renders_video(Asset *asset)
+int File::renders_video(int format)
 {
-//printf("File::supports_video %d\n", format);
-       switch( asset->format ) {
+       switch( format ) {
        case FILE_OGG:
        case FILE_JPEG:
        case FILE_JPEG_LIST:
@@ -1412,16 +1412,21 @@ int File::renders_video(Asset *asset)
        case FILE_TIFF_LIST:
        case FILE_VMPEG:
        case FILE_RAWDV:
-               return 1;
         case FILE_FFMPEG:
-               return FileFFMPEG::renders_video(asset->fformat);
+               return 1;
        }
        return 0;
 }
+int File::renders_video(Asset *asset)
+{
+       return asset->format == FILE_FFMPEG ?
+               FileFFMPEG::renders_video(asset->fformat) :
+               renders_video(asset->format);
+}
 
-int File::renders_audio(Asset *asset)
+int File::renders_audio(int format)
 {
-       switch( asset->format ) {
+       switch( format ) {
        case FILE_AC3:
        case FILE_FLAC:
        case FILE_PCM:
@@ -1433,12 +1438,17 @@ int File::renders_audio(Asset *asset)
        case FILE_AIFF:
        case FILE_SND:
        case FILE_RAWDV:
-               return 1;
         case FILE_FFMPEG:
-               return FileFFMPEG::renders_audio(asset->fformat);
+               return 1;
        }
        return 0;
 }
+int File::renders_audio(Asset *asset)
+{
+       return asset->format == FILE_FFMPEG ?
+               FileFFMPEG::renders_audio(asset->fformat) :
+               renders_audio(asset->format);
+}
 
 int File::is_image_render(int format)
 {