X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Ffilethread.C;h=84b20fcdd45fbf289833c9c8dd6623143f8b2ba4;hb=bd0694fcee6080ec61e243ac6f278be5a48d564b;hp=f8744545493919c33a26af82ecf0a34a130cfbf3;hpb=3ec3a9cc6afc6561311686b3ec597ee3c1d80d6f;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/filethread.C b/cinelerra-5.1/cinelerra/filethread.C index f8744545..84b20fcd 100644 --- a/cinelerra-5.1/cinelerra/filethread.C +++ b/cinelerra-5.1/cinelerra/filethread.C @@ -197,7 +197,7 @@ void FileThread::run() file->set_layer(local_layer, 1); file->set_video_position(local_position, 1); int supported_colormodel = - file->get_best_colormodel(PLAYBACK_ASYNCHRONOUS); + file->get_best_colormodel(PLAYBACK_ASYNCHRONOUS, local_layer); if(debug) PRINT_TRACE @@ -214,12 +214,9 @@ void FileThread::run() //printf("FileThread::run %d\n", __LINE__); if(!local_frame->frame) { - local_frame->frame = new VFrame(0, - -1, - file->asset->width, - file->asset->height, - supported_colormodel, - -1); + local_frame->frame = + new VFrame(file->asset->width, file->asset->height, + supported_colormodel, 0); } // Read it @@ -454,12 +451,8 @@ int FileThread::start_writing(long buffer_size, else { video_buffer[buffer][layer][frame] = - new VFrame(0, - -1, - file->asset->width, - file->asset->height, - color_model, - -1); + new VFrame( file->asset->width, file->asset->height, + color_model, -1); // printf("FileThread::start_writing %d %d %d %d %p\n", // __LINE__, // buffer, @@ -501,8 +494,8 @@ int FileThread::stop_reading() { done = 1; read_wait_lock->unlock(); + Thread::join(); } - Thread::join(); return 0; }