*/
+#ifndef DCPOMATIC_BUTLER_H
+#define DCPOMATIC_BUTLER_H
+
+
#include "audio_mapping.h"
#include "audio_ring_buffers.h"
#include "change_signaller.h"
#include "exception_store.h"
#include "text_ring_buffers.h"
+#include "text_type.h"
#include "video_ring_buffers.h"
#include <boost/asio.hpp>
#include <boost/signals2.hpp>
Butler (
std::weak_ptr<const Film> film,
- std::shared_ptr<Player> player,
+ Player& player,
AudioMapping map,
int audio_channels,
std::function<AVPixelFormat (AVPixelFormat)> pixel_format,
void seek_unlocked (dcpomatic::DCPTime position, bool accurate);
std::weak_ptr<const Film> _film;
- std::shared_ptr<Player> _player;
+ Player& _player;
boost::thread _thread;
VideoRingBuffers _video;
/** true to ask PlayerVideo::prepare to only prepare the ImageProxy and not also
* the final image. We want to do this when the viewer is intending to call
- * PlayerVideo::raw_image() and do the things in PlayerVideo::make_imgae() itself:
+ * PlayerVideo::raw_image() and do the things in PlayerVideo::make_image() itself:
* this is the case for the GLVideoView which can do scale, pixfmt conversion etc.
* in the shader.
*/
boost::signals2::scoped_connection _player_text_connection;
boost::signals2::scoped_connection _player_change_connection;
};
+
+
+#endif
+