diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-07-26 17:08:00 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-07-26 17:08:00 +0100 |
| commit | 0302594838ce422afb3346ecc91a1bdfd26c00de (patch) | |
| tree | d1087c24b51044ad4870c4b9017144d686b60852 /src/lib/ffmpeg_encoder.h | |
| parent | e1093a718c15e1c9ca98abbf514ec54293f0723a (diff) | |
Basic multithread of DCP decryption during export.
Diffstat (limited to 'src/lib/ffmpeg_encoder.h')
| -rw-r--r-- | src/lib/ffmpeg_encoder.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/lib/ffmpeg_encoder.h b/src/lib/ffmpeg_encoder.h index 5ab59c12d..5e6dcecf7 100644 --- a/src/lib/ffmpeg_encoder.h +++ b/src/lib/ffmpeg_encoder.h @@ -28,6 +28,9 @@ extern "C" { #include <libavcodec/avcodec.h> #include <libavformat/avformat.h> } +#include <boost/thread/condition.hpp> + +class Butler; class FFmpegEncoder : public Encoder { @@ -70,7 +73,7 @@ private: AVDictionary* _video_options; std::string _video_codec_name; std::string _audio_codec_name; - AudioMapping _audio_mapping; + int _output_audio_channels; mutable boost::mutex _mutex; DCPTime _last_time; @@ -81,6 +84,12 @@ private: boost::shared_ptr<AudioBuffers> _pending_audio; + mutable boost::mutex _queue_mutex; + boost::condition _queue_full; + std::list<std::pair<boost::shared_ptr<PlayerVideo>, DCPTime> > _queue; + + boost::shared_ptr<Butler> _butler; + static int _video_stream_index; static int _audio_stream_index; }; |
