24 #include "Utils/Settings/SayonaraClass.h" 25 #include "Utils/Pimpl.h" 28 #include <gst/gstbuffer.h> 52 test_and_error(
void* element,
const QString& errorstr);
55 test_and_error_bool(
bool b,
const QString& errorstr);
69 void sig_duration_changed();
72 bool tee_connect(GstElement* tee,
73 GstPadTemplate* tee_src_pad_template,
75 const QString& queue_name
77 bool create_element(GstElement** elem,
const gchar* elem_name,
const gchar* name=
"");
79 virtual bool create_elements()=0;
80 virtual bool add_and_link_elements()=0;
81 virtual bool configure_elements()=0;
83 virtual MilliSeconds get_about_to_finish_time()
const;
84 void set_about_to_finish(
bool b);
88 void sig_about_to_finish(MilliSeconds ms);
89 void sig_pos_changed_ms(MilliSeconds ms);
90 void sig_data(Byte*, uint64_t);
103 virtual GstElement* get_source()
const=0;
104 virtual bool init(GstState state=GST_STATE_READY);
105 virtual GstElement* pipeline()
const;
106 virtual GstState get_state();
107 virtual void refresh_position();
109 virtual void finished();
110 virtual void check_about_to_finish();
111 virtual MilliSeconds get_time_to_go()
const;
112 virtual void set_data(uchar* data, uint64_t size);
114 virtual bool set_uri(gchar* uri);
116 void update_duration_ms(MilliSeconds duration_ms, GstElement* src);
117 virtual MilliSeconds get_duration_ms()
const final ;
118 virtual MilliSeconds get_source_position_ms()
const final;
119 virtual MilliSeconds get_pipeline_position_ms()
const final;
121 bool has_element(GstElement* e)
const;
125 #endif // GSTPIPELINE_H The SayonaraClass class provides access to Settings and notifications.
Definition: SayonaraClass.h:29
The AbstractPipeline class.
Definition: AbstractPipeline.h:61
The Engine class.
Definition: AbstractEngine.h:51
GSTFileMode
The GSTFileMode enum.
Definition: AbstractPipeline.h:45