removed decoder and frame from Media node
The Media node hasn't been responsible for decoding in quite some time so these objects were pointless.
This commit is contained in:
@@ -20,21 +20,13 @@
|
||||
|
||||
#include "media.h"
|
||||
|
||||
MediaInput::MediaInput() :
|
||||
decoder_(nullptr),
|
||||
frame_(nullptr)
|
||||
MediaInput::MediaInput()
|
||||
{
|
||||
footage_input_ = new NodeInput("footage_in");
|
||||
footage_input_->set_data_type(NodeInput::kFootage);
|
||||
AddParameter(footage_input_);
|
||||
}
|
||||
|
||||
void MediaInput::Release()
|
||||
{
|
||||
frame_ = nullptr;
|
||||
decoder_ = nullptr;
|
||||
}
|
||||
|
||||
StreamPtr MediaInput::footage()
|
||||
{
|
||||
return footage_input_->get_value_at_time(0).value<StreamPtr>();
|
||||
@@ -44,32 +36,3 @@ void MediaInput::SetFootage(StreamPtr f)
|
||||
{
|
||||
footage_input_->set_value_at_time(0, QVariant::fromValue(f));
|
||||
}
|
||||
|
||||
bool MediaInput::SetupDecoder()
|
||||
{
|
||||
if (decoder_ != nullptr) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Get currently selected Footage
|
||||
StreamPtr stream = footage();
|
||||
|
||||
// If no footage is selected, return nothing
|
||||
if (stream == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Otherwise try to get frame of footage from decoder
|
||||
|
||||
// Determine which decoder to use
|
||||
if (decoder_ == nullptr
|
||||
&& (decoder_ = Decoder::CreateFromID(stream->footage()->decoder())) == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (decoder_->stream() == nullptr) {
|
||||
decoder_->set_stream(stream);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -33,20 +33,12 @@ class MediaInput : public Node
|
||||
public:
|
||||
MediaInput();
|
||||
|
||||
virtual void Release() override;
|
||||
|
||||
StreamPtr footage();
|
||||
void SetFootage(StreamPtr f);
|
||||
|
||||
protected:
|
||||
bool SetupDecoder();
|
||||
|
||||
NodeInput* footage_input_;
|
||||
|
||||
DecoderPtr decoder_;
|
||||
|
||||
FramePtr frame_;
|
||||
|
||||
};
|
||||
|
||||
#endif // MEDIAINPUT_H
|
||||
|
||||
Reference in New Issue
Block a user