- Theme(const char *filename, movit::ResourcePool *resource_pool, unsigned num_cards);
+ Theme(const std::string &filename, const std::vector<std::string> &search_dirs, movit::ResourcePool *resource_pool, unsigned num_cards);
+ ~Theme();
bool get_supports_set_wb(unsigned channel);
void set_wb(unsigned channel, double r, double g, double b);
bool get_supports_set_wb(unsigned channel);
void set_wb(unsigned channel, double r, double g, double b);
void transition_clicked(int transition_num, float t);
void channel_clicked(int preview_num);
void transition_clicked(int transition_num, float t);
void channel_clicked(int preview_num);
- LiveInputWrapper(Theme *theme, movit::EffectChain *chain, bool override_bounce);
+ LiveInputWrapper(Theme *theme, movit::EffectChain *chain, bool override_bounce, bool deinterlace);
- movit::YCbCrInput *input; // Owned by the chain.
- int connected_signal_num = 0;
+ std::vector<movit::YCbCrInput *> inputs; // Multiple ones if deinterlacing. Owned by the chain.
+ movit::Effect *deinterlace_effect = nullptr; // Owned by the chain.
+ bool deinterlace;