p/s proxy icon, rework window locks, segv in close_mixers + exportedl, ffmpeg default...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / filetiff.C
index c5f3f7a6c7197251c537a901dd02542d07f364a7..fb1449f1c7b4d7b9e5eeeca73f535af86321e1b4 100644 (file)
@@ -46,10 +46,8 @@ FileTIFF::~FileTIFF()
 
 
 void FileTIFF::get_parameters(BC_WindowBase *parent_window,
-       Asset *asset,
-       BC_WindowBase* &format_window,
-       int audio_options,
-       int video_options)
+       Asset *asset, BC_WindowBase* &format_window,
+       int audio_options, int video_options, EDL *edl)
 {
        if(video_options)
        {
@@ -74,6 +72,10 @@ int FileTIFF::check_sig(Asset *asset)
 
                if(test[0] == 'I' && test[1] == 'I')
                {
+                       // Reject cr2, libtiff fails with it
+                       if( test[4] == 0x10 && !test[5] && !test[6] && !test[7] &&
+                                       test[8] == 'C' && test[9] == 'R' )
+                               return 0;
                        return 1;
                }
                else
@@ -198,7 +200,7 @@ int FileTIFF::read_frame_header(char *path)
 //printf("FileTIFF::read_frame_header %d %d %d\n", bitspersample, components, asset->tiff_cmodel);
        TIFFClose(stream);
 
-       asset->interlace_mode = BC_ILACE_MODE_NOTINTERLACED;
+       asset->interlace_mode = ILACE_MODE_NOTINTERLACED;
        return result;
 }
 
@@ -508,12 +510,8 @@ int FileTIFF::write_frame(VFrame *frame, VFrame *data, FrameWriterUnit *unit)
                }
                if(!tiff_unit->temp)
                {
-                       tiff_unit->temp = new VFrame(0,
-                               -1,
-                               asset->width,
-                               asset->height,
-                               color_model,
-                               -1);
+                       tiff_unit->temp =
+                               new VFrame(asset->width, asset->height, color_model, 0);
                }
 
                BC_CModels::transfer(tiff_unit->temp->get_rows(),
@@ -601,7 +599,7 @@ TIFFConfigVideo::~TIFFConfigVideo()
 
 void TIFFConfigVideo::create_objects()
 {
-       lock_window("TIFFConfigVideo::create_objects()");
+       lock_window("TIFFConfigVideo::create_objects");
        int x = 10, y = 10;
 
        add_subwindow(new BC_Title(x, y, _("Colorspace:")));