23 #ifndef GSTPLAYBACKPIPELINE_H_ 24 #define GSTPLAYBACKPIPELINE_H_ 26 #include "AbstractPipeline.h" 27 #include "ChangeablePipeline.h" 28 #include "CrossFader.h" 31 #include <gst/app/gstappsink.h> 50 bool init(GstState state=GST_STATE_NULL)
override;
51 bool set_uri(gchar* uri)
override;
53 void set_n_sound_receiver(
int num_sound_receiver);
55 void set_current_volume(
double volume)
override;
56 double get_current_volume()
const override;
58 GstElement* get_source()
const override;
59 GstElement* get_pipeline()
const override;
65 void pause()
override;
69 void set_eq_band(
const QString& band_name,
double val);
70 void set_speed(
float speed,
double pitch,
bool preserve_pitch);
71 void set_streamrecorder_path(
const QString& session_path);
72 void change_pitch(
int a_frequency);
74 gint64 seek_rel(
double percent, gint64 ref_ns);
75 gint64 seek_abs(gint64 ns );
87 GstElement* _audio_src=
nullptr;
88 GstElement* _audio_convert=
nullptr;
89 GstElement* _tee=
nullptr;
91 GstElement* _eq_queue=
nullptr;
92 GstElement* _equalizer=
nullptr;
93 GstElement* _speed=
nullptr;
94 GstElement* _volume=
nullptr;
95 GstElement* _pitch=
nullptr;
97 GstElement* _audio_sink=
nullptr;
99 GstElement* _spectrum_queue=
nullptr;
100 GstElement* _spectrum=
nullptr;
101 GstElement* _spectrum_sink=
nullptr;
103 GstElement* _level_queue=
nullptr;
104 GstElement* _level=
nullptr;
105 GstElement* _level_sink=
nullptr;
107 GstElement* _lame_queue=
nullptr;
108 GstElement* _lame_converter=
nullptr;
109 GstElement* _lame_resampler=
nullptr;
110 GstElement* _lame=
nullptr;
111 GstElement* _lame_app_sink=
nullptr;
113 GstElement* _file_queue=
nullptr;
114 GstElement* _file_converter=
nullptr;
115 GstElement* _file_sink=
nullptr;
116 GstElement* _file_resampler=
nullptr;
117 GstElement* _file_lame=
nullptr;
119 gulong _level_probe, _spectrum_probe, _lame_probe, _file_probe;
120 bool _show_level, _show_spectrum, _run_broadcast, _run_sr;
122 bool _seek(gint64 ns);
125 bool create_elements()
override;
126 bool add_and_link_elements()
override;
127 bool configure_elements()
override;
128 quint64 get_about_to_finish_time()
const override;
130 void init_equalizer();
135 void _sl_vol_changed();
136 void _sl_show_level_changed();
137 void _sl_show_spectrum_changed();
138 void _sl_mute_changed();
140 void _sl_speed_active_changed();
141 void _sl_speed_changed();
Definition: PipelineProbes.h:30
Definition: CrossFader.h:33
Definition: AbstractEngine.h:40
Definition: ChangeablePipeline.h:27
Definition: PlaybackPipeline.h:37
Definition: AbstractPipeline.h:46