summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-09-22 00:38:54 +0100
committerCarl Hetherington <cth@carlh.net>2018-09-22 00:38:54 +0100
commit142616158f82796d6d7512a31694d90ea8ae52b1 (patch)
treeb91dac85e69323783e00672b30dd46a82ef4aeef
parent282cd9584fb4d26b2c750ffceec9b42c09131b4c (diff)
Log playback start and stop timecodes.
-rw-r--r--src/tools/dcpomatic_player.cc13
-rw-r--r--src/wx/film_viewer.cc4
-rw-r--r--src/wx/film_viewer.h4
3 files changed, 11 insertions, 10 deletions
diff --git a/src/tools/dcpomatic_player.cc b/src/tools/dcpomatic_player.cc
index 0f0d84df2..04d9d5ac5 100644
--- a/src/tools/dcpomatic_player.cc
+++ b/src/tools/dcpomatic_player.cc
@@ -164,8 +164,8 @@ public:
_controls = new Controls (_overall_panel, _viewer, false, false, false);
_viewer->set_dcp_decode_reduction (Config::instance()->decode_reduction ());
_viewer->PlaybackPermitted.connect (bind(&DOMFrame::playback_permitted, this));
- _viewer->Started.connect (bind(&DOMFrame::playback_started, this));
- _viewer->Stopped.connect (bind(&DOMFrame::playback_stopped, this));
+ _viewer->Started.connect (bind(&DOMFrame::playback_started, this, _1));
+ _viewer->Stopped.connect (bind(&DOMFrame::playback_stopped, this, _1));
_info = new PlayerInformation (_overall_panel, _viewer);
setup_main_sizer (true);
#ifdef __WXOSX__
@@ -227,7 +227,7 @@ public:
return ok;
}
- void playback_started ()
+ void playback_started (DCPTime time)
{
optional<boost::filesystem::path> log = Config::instance()->player_log_file();
if (!log) {
@@ -248,15 +248,16 @@ public:
FILE* f = fopen_boost(*log, "a");
fprintf (
f,
- "%s playback-started %s %s\n",
+ "%s playback-started %s %s %s\n",
dcp::LocalTime().as_string().c_str(),
+ time.timecode(_film->video_frame_rate()).c_str(),
dcp->directories().front().string().c_str(),
playing_cpl->annotation_text().c_str()
);
fclose (f);
}
- void playback_stopped ()
+ void playback_stopped (DCPTime time)
{
optional<boost::filesystem::path> log = Config::instance()->player_log_file();
if (!log) {
@@ -264,7 +265,7 @@ public:
}
FILE* f = fopen_boost(*log, "a");
- fprintf (f, "%s playback-stopped\n", dcp::LocalTime().as_string().c_str());
+ fprintf (f, "%s playback-stopped %s\n", dcp::LocalTime().as_string().c_str(), time.timecode(_film->video_frame_rate()).c_str());
fclose (f);
}
diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc
index a27c0053d..4f5a16da8 100644
--- a/src/wx/film_viewer.cc
+++ b/src/wx/film_viewer.cc
@@ -422,7 +422,7 @@ FilmViewer::start ()
_playing = true;
_dropped = 0;
timer ();
- Started ();
+ Started (position());
}
bool
@@ -438,7 +438,7 @@ FilmViewer::stop ()
}
_playing = false;
- Stopped ();
+ Stopped (position());
return true;
}
diff --git a/src/wx/film_viewer.h b/src/wx/film_viewer.h
index 0e44994de..fe0faca37 100644
--- a/src/wx/film_viewer.h
+++ b/src/wx/film_viewer.h
@@ -89,8 +89,8 @@ public:
boost::signals2::signal<void (boost::weak_ptr<PlayerVideo>)> ImageChanged;
boost::signals2::signal<void ()> PositionChanged;
- boost::signals2::signal<void ()> Started;
- boost::signals2::signal<void ()> Stopped;
+ boost::signals2::signal<void (DCPTime)> Started;
+ boost::signals2::signal<void (DCPTime)> Stopped;
boost::signals2::signal<void ()> FilmChanged;
boost::signals2::signal<bool ()> PlaybackPermitted;