no longer need ffmpeg patch0 which was for Termux
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / resourcethread.C
index 27794d27c388884101fe939f80d3d8507abe3301..18b8dc813fe65e76f08f9554f28025bd428356d9 100644 (file)
@@ -327,7 +327,7 @@ void ResourceThreadBase::open_render_engine(EDL *nested_edl,
 
        if( !render_engine ) {
                MWindow *mwindow = resource_thread->mwindow;
-               TransportCommand command;
+               TransportCommand command(mwindow->preferences);
                command.command = do_audio ? NORMAL_FWD : CURRENT_FRAME;
                command.get_edl()->copy_all(nested_edl);
                command.change_type = CHANGE_ALL;
@@ -452,7 +452,8 @@ void ResourceVideoThread::do_video(VResourceThreadItem *item)
                        item->pixmap->draw_vframe(temp_picon2,
                                item->picon_x, item->picon_y,
                                item->picon_w, item->picon_h, 0, 0);
-                       gui->update(0, IGNORE_THREAD, 0, 0, 0, 0, 0);
+                       TimelinePane *pane = gui->pane[item->pane_number];
+                       if( pane ) pane->update(0, IGNORE_THREAD, 0, 0);
                }
        }
 
@@ -670,17 +671,18 @@ void ResourceThread::stop()
        video_thread->stop();
 }
 
-void ResourceThread::reset(int pane_number)
+void ResourceThread::reset(int pane_number, int indexes_only)
 {
        audio_thread->reset(pane_number);
-       video_thread->reset(pane_number);
+       if( !indexes_only )
+               video_thread->reset(pane_number);
 }
 
 void ResourceThread::close_indexable(Indexable *idxbl)
 {
        if( audio_thread && audio_thread->render_engine_id == idxbl->id )
                audio_thread->close_render_engine();
-       if( video_thread && audio_thread->render_engine_id == idxbl->id )
+       if( video_thread && video_thread->render_engine_id == idxbl->id )
                video_thread->close_render_engine();
 }