summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-10Don't truncate active_video_frame_rate to an int otherwise setting fade on ↵v2.15.41Carl Hetherington
non-integer-rate sources behaves oddly.
2020-01-10Fix deadlock.Carl Hetherington
2020-01-10Give DCPDecoder its own ::position which just returns its internalCarl Hetherington
_next time. This is important because Decoder::position does the wrong thing with DCPs in the following case. 1. DCPDecoder emits a subtitle event (start/stop) at time t. 2. There follows a long time T with no subtitle events. During this time the DCPDecoder's position is reported as t (since TextDecoder notes its position as the time of the last thing it emitted --- which is all it reasonably can do, I think). 3. During this T the DCPDecoder may be incorrectly pass()ed because its position is reported as earlier than it really is; this results in video/audio being emitted by the DCPDecoder but other contemporary sources may not be pass()ed. The upshot of this can be that no audio is emitted, as a contemporary audio source is not pass()ed and hence the merger is waiting for audio that will take a long time to come. When the butler is running this can result in audio underruns as the video buffers overflow with no sign of any audio. It is also simpler this way; DCPDecoder was already maintaining the required information.
2020-01-09Update text panel 'why not' note when film's standard is changed.Carl Hetherington
Forward-ported from e8582393bd1367fff36bae8e053d799073d8b2ed in master.
2020-01-09Make the 'why not' messages for VF a bit clearer.Carl Hetherington
Before it sounded like just because we couldn't refer to (e.g.) the audio we couldn't refer to any part of the DCP.
2020-01-08Merge a set of changes which run the OpenGL video updates in a separatev2.15.40Carl Hetherington
thread, hopefully making things more elegant and robust.
2020-01-08First version of player stress-test management script.Carl Hetherington
2020-01-08Some comments.Carl Hetherington
2020-01-08Some simple-video-view tidy-ups.Carl Hetherington
2020-01-08Fix problems when starting to play after a seek, if the startCarl Hetherington
of playback happens while we are awaiting an idle handler to go through to update the view after the seek. If this idle handler has not gone through the viewer will report an incorrect position, which is used by the FilmViewer to start the audio stream at the wrong time.
2020-01-08Use glTexSubImage2D when possible, as suggested by ↵Carl Hetherington
https://www.khronos.org/opengl/wiki/Common_Mistakes
2020-01-08Basic stress-test function for player.Carl Hetherington
2020-01-08Don't busy-wait when there's nothing to play.Carl Hetherington
2020-01-08Set up things correctly on initialisation.Carl Hetherington
2020-01-08Fix event handling (hopefully).Carl Hetherington
2020-01-08Add assert.Carl Hetherington
2020-01-08Check that get_next_frame succeeds.Carl Hetherington
2020-01-08Fix some crashes.Carl Hetherington
2020-01-08More tidying up.Carl Hetherington
2020-01-08Various cleanups and thread-safety.Carl Hetherington
2020-01-08Remove some friends from FilmViewer.Carl Hetherington
2020-01-08Remove FilmViewer::refresh_view.Carl Hetherington
2020-01-08Move _state_timer into VideoView.Carl Hetherington
2020-01-08Accessor for ClosedCaptionsDialog.Carl Hetherington
2020-01-08Same thing with inter_size.Carl Hetherington
2020-01-08Move _inter_position out of FilmViewer.Carl Hetherington
2020-01-08Move _dropped into VideoView.Carl Hetherington
2020-01-08Small re-use cleanup.Carl Hetherington
2020-01-08Implement GLView::update.Carl Hetherington
2020-01-08Don't try opening error dialogues from the GL thread.Carl Hetherington
2020-01-08Fix display when there is no film.Carl Hetherington
2020-01-08Add comment.Carl Hetherington
2020-01-08Start thread when the window will have been created. Fix logic error.Carl Hetherington
2020-01-08Use VideoView::one_video_frame.Carl Hetherington
2020-01-08Nicer protection of _player_video. Always run GL thread rather than ↵Carl Hetherington
starting/stopping it.
2020-01-08Remove GL context accessor and hence lock.Carl Hetherington
2020-01-08Naming tweak.Carl Hetherington
2020-01-08Clean up access to stuff from Film.Carl Hetherington
2020-01-08A little thread safety.Carl Hetherington
2020-01-08Various timing hacks and development.Carl Hetherington
2020-01-08Remove PositionChanged in favour of consumers having their own GUI-thread ↵Carl Hetherington
timers.
2020-01-08Hack around changes in main branch with respect to suspend/resume.Carl Hetherington
2020-01-08Barely-functioning GL playback with new arrangement.Carl Hetherington
2020-01-08Add FIXME.Carl Hetherington
2020-01-08Add FilmViewer::time_until_next_frame.Carl Hetherington
2020-01-08Add accessor for butler.Carl Hetherington
2020-01-08Move _player_video into VideoView.Carl Hetherington
2020-01-08Move display_player_video into SimpleVideoView.Carl Hetherington
2020-01-08Move FilmViewer::get() into SimpleVideoView.Carl Hetherington
2020-01-08Remove temporary access to timer() method.Carl Hetherington