wip: black pieces; sad part is that Shuffler can't cope with content that doesn't...
[dcpomatic.git] / src / lib / black_decoder.h
1 #include "dcpomatic_time.h"
2 #include "decoder.h"
3
4
5 class BlackContent;
6 class Image;
7 class RawImageProxy;
8
9
10 class BlackDecoder : public Decoder
11 {
12 public:
13         BlackDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const BlackContent> content);
14
15         bool pass () override;
16         void seek (dcpomatic::ContentTime time, bool accurate) override;
17
18         dcpomatic::ContentTime position () const override {
19                 return dcpomatic::ContentTime(_position.get());
20         }
21
22 private:
23         std::shared_ptr<const BlackContent> _content;
24         int _video_frame_rate;
25         dcpomatic::DCPTime _position;
26         std::shared_ptr<Image> _image;
27         std::shared_ptr<const RawImageProxy> _proxy;
28 };