projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomatic
[dcpomatic.git]
/
src
/
lib
/
player.h
diff --git
a/src/lib/player.h
b/src/lib/player.h
index 3d774e1d93630cc7a32e56bee752d25dd9d690e9..a4fd80c161c565ccd4a47b210ca833b603c6132e 100644
(file)
--- a/
src/lib/player.h
+++ b/
src/lib/player.h
@@
-73,6
+73,7
@@
public:
std::list<boost::shared_ptr<Font> > get_subtitle_fonts ();
std::list<ReferencedReelAsset> get_reel_assets ();
dcp::Size video_container_size () const {
std::list<boost::shared_ptr<Font> > get_subtitle_fonts ();
std::list<ReferencedReelAsset> get_reel_assets ();
dcp::Size video_container_size () const {
+ boost::mutex::scoped_lock lm (_mutex);
return _video_container_size;
}
return _video_container_size;
}
@@
-142,6
+143,12
@@
private:
void do_emit_video (boost::shared_ptr<PlayerVideo> pv, DCPTime time);
void emit_audio (boost::shared_ptr<AudioBuffers> data, DCPTime time);
void do_emit_video (boost::shared_ptr<PlayerVideo> pv, DCPTime time);
void emit_audio (boost::shared_ptr<AudioBuffers> data, DCPTime time);
+ /** Mutex to protect the whole Player state. When it's used for the preview we have
+ seek() and pass() called from the Butler thread and lots of other stuff called
+ from the GUI thread.
+ */
+ mutable boost::mutex _mutex;
+
boost::shared_ptr<const Film> _film;
boost::shared_ptr<const Playlist> _playlist;
boost::shared_ptr<const Film> _film;
boost::shared_ptr<const Playlist> _playlist;