#include "audio_mapping.h"
#include "audio_ring_buffers.h"
#include "change_signaller.h"
#include "audio_mapping.h"
#include "audio_ring_buffers.h"
#include "change_signaller.h"
AudioMapping map,
int audio_channels,
std::function<AVPixelFormat (AVPixelFormat)> pixel_format,
VideoRange video_range,
Image::Alignment alignment,
bool fast,
AudioMapping map,
int audio_channels,
std::function<AVPixelFormat (AVPixelFormat)> pixel_format,
VideoRange video_range,
Image::Alignment alignment,
bool fast,
boost::optional<dcpomatic::DCPTime> get_audio (Behaviour behaviour, float* out, Frame frames);
boost::optional<TextRingBuffers::Data> get_closed_caption ();
boost::optional<dcpomatic::DCPTime> get_audio (Behaviour behaviour, float* out, Frame frames);
boost::optional<TextRingBuffers::Data> get_closed_caption ();
void seek_unlocked (dcpomatic::DCPTime position, bool accurate);
std::weak_ptr<const Film> _film;
void seek_unlocked (dcpomatic::DCPTime position, bool accurate);
std::weak_ptr<const Film> _film;
/** 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
/** 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
boost::signals2::scoped_connection _player_text_connection;
boost::signals2::scoped_connection _player_change_connection;
};
boost::signals2::scoped_connection _player_text_connection;
boost::signals2::scoped_connection _player_change_connection;
};