projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix race between the Butler thread starting and audio (perhaps) being disabled.
[dcpomatic.git]
/
src
/
lib
/
butler.h
diff --git
a/src/lib/butler.h
b/src/lib/butler.h
index 529b7383d0b30a9fb84cef51302a26f6ac60cbca..79701d3701e16273e6decb93ad6d268b2b489de5 100644
(file)
--- a/
src/lib/butler.h
+++ b/
src/lib/butler.h
@@
-38,6
+38,12
@@
class PlayerVideo;
class Butler : public ExceptionStore
{
public:
class Butler : public ExceptionStore
{
public:
+ enum class Audio
+ {
+ ENABLED,
+ DISABLED
+ };
+
Butler (
std::weak_ptr<const Film> film,
std::shared_ptr<Player> player,
Butler (
std::weak_ptr<const Film> film,
std::shared_ptr<Player> player,
@@
-47,7
+53,8
@@
public:
VideoRange video_range,
Image::Alignment alignment,
bool fast,
VideoRange video_range,
Image::Alignment alignment,
bool fast,
- bool prepare_only_proxy
+ bool prepare_only_proxy,
+ Audio audio
);
~Butler ();
);
~Butler ();
@@
-78,11
+85,9
@@
public:
};
std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get_video (Behaviour behaviour, Error* e = nullptr);
};
std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get_video (Behaviour behaviour, Error* e = nullptr);
- boost::optional<dcpomatic::DCPTime> get_audio (float* out, Frame frames);
+ boost::optional<dcpomatic::DCPTime> get_audio (
Behaviour behaviour,
float* out, Frame frames);
boost::optional<TextRingBuffers::Data> get_closed_caption ();
boost::optional<TextRingBuffers::Data> get_closed_caption ();
- void disable_audio ();
-
std::pair<size_t, std::string> memory_used () const;
private:
std::pair<size_t, std::string> memory_used () const;
private: