projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
no /. in ffmpeg init_decode segv, build index fix audio wave, stop playback state...
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
playback3d.C
diff --git
a/cinelerra-5.1/cinelerra/playback3d.C
b/cinelerra-5.1/cinelerra/playback3d.C
index 2ca2a4c68e4d43f35f03595d76f23e8a6483d1d4..24f8cf7032fc6dc93a8a5c9fc24b5e40b646d8b5 100644
(file)
--- a/
cinelerra-5.1/cinelerra/playback3d.C
+++ b/
cinelerra-5.1/cinelerra/playback3d.C
@@
-402,6
+402,10
@@
void Playback3D::handle_command(BC_SynchronousCommand *command)
write_buffer_sync((Playback3DCommand*)command);
break;
write_buffer_sync((Playback3DCommand*)command);
break;
+ case Playback3DCommand::FINISH_OUTPUT:
+ finish_output_sync((Playback3DCommand*)command);
+ break;
+
case Playback3DCommand::CLEAR_OUTPUT:
clear_output_sync((Playback3DCommand*)command);
break;
case Playback3DCommand::CLEAR_OUTPUT:
clear_output_sync((Playback3DCommand*)command);
break;
@@
-765,6
+769,19
@@
void Playback3D::init_frame(Playback3DCommand *command, int is_yuv)
}
}
+void Playback3D::finish_output()
+{
+ Playback3DCommand command;
+ command.command = Playback3DCommand::FINISH_OUTPUT;
+ send_command(&command);
+}
+
+void Playback3D::finish_output_sync(Playback3DCommand *command)
+{
+ glFinish();
+}
+
+
void Playback3D::clear_output(Canvas *canvas, VFrame *output)
{
Playback3DCommand command;
void Playback3D::clear_output(Canvas *canvas, VFrame *output)
{
Playback3DCommand command;