19 #ifndef GSTREAMER_PLAYBIN_H_ 20 #define GSTREAMER_PLAYBIN_H_ 25 #include "../mpris/player.h" 99 std::string
uri()
const;
109 bool seek(
const std::chrono::microseconds& ms);
142 core::Signal<Bus::Message::Detail::ErrorWarningInfo>
on_error;
143 core::Signal<Bus::Message::Detail::ErrorWarningInfo>
on_warning;
144 core::Signal<Bus::Message::Detail::ErrorWarningInfo>
on_info;
162 void setup_video_sink_for_buffer_streaming(
void);
163 bool is_supported_video_sink(
void)
const;
164 bool connect_to_consumer(
void);
165 void send_buffer_data(
int fd,
void *data,
size_t len);
166 void send_frame_ready(
void);
167 void process_missing_plugin_message(GstMessage *message);
171 std::string video_sink_name;
176 #endif // GSTREAMER_PLAYBIN_H_
static std::string get_audio_role_str(core::ubuntu::media::Player::AudioStreamRole audio_role)
MediaFileType media_file_type() const
core::ubuntu::media::video::Dimensions get_video_dimensions() const
core::Signal< Bus::Message::Detail::Tag > on_tag_available
bool is_audio_file(const std::string &uri) const
static void source_setup(GstElement *, GstElement *source, gpointer user_data)
void setup_source(GstElement *source)
void set_uri(const std::string &uri, const core::ubuntu::media::Player::HeadersType &headers, bool do_pipeline_reset=true)
void process_message_element(GstMessage *message)
static gboolean set_state_in_main_thread(gpointer user_data)
bool seek(const std::chrono::microseconds &ms)
core::Connection on_new_message_connection_async
static const std::string & pipeline_name()
std::string file_info_from_uri(const std::string &uri) const
core::Signal< Bus::Message::Detail::ErrorWarningInfo > on_warning
Playbin(const core::ubuntu::media::Player::PlayerKey key)
core::Signal< core::ubuntu::media::Player::PlaybackStatus > on_playback_status_changed
void emit_video_dimensions_changed_if_changed(const core::ubuntu::media::video::Dimensions &new_dimensions)
void set_lifetime(core::ubuntu::media::Player::Lifetime)
struct gstreamer::Playbin::@12 signals
void set_audio_stream_role(core::ubuntu::media::Player::AudioStreamRole new_audio_role)
bool is_missing_audio_codec
GstState current_new_state
std::string get_file_content_type(const std::string &uri) const
core::Signal< uint64_t > on_seeked_to
void on_new_message(const Bus::Message &message)
core::Signal< core::ubuntu::media::Player::Orientation > on_orientation_changed
core::ubuntu::media::Player::Orientation orientation_lut(const gchar *orientation)
uint64_t position() const
core::Signal< std::pair< Bus::Message::Detail::StateChanged, std::string > > on_state_changed
gstreamer::Bus & message_bus()
core::Signal< void > about_to_finish
bool is_video_file(const std::string &uri) const
void setup_pipeline_for_audio_video()
bool set_state_and_wait(GstState new_state, bool use_main_thread=false)
std::string decode_uri(const std::string &uri) const
core::Signal< Bus::Message::Detail::ErrorWarningInfo > on_info
core::Signal< void > on_end_of_stream
gulong source_setup_handler_id
core::ubuntu::media::video::Dimensions cached_video_dimensions
core::Signal< core::ubuntu::media::video::Dimensions > on_video_dimensions_changed
bool can_play_streams() const
void set_volume(double new_volume)
void on_new_message_async(const Bus::Message &message)
core::Signal< int > on_buffering_changed
core::Signal< Bus::Message::Detail::ErrorWarningInfo > on_error
void create_video_sink(uint32_t texture_id)
gulong about_to_finish_handler_id
std::string encode_uri(const std::string &uri) const
bool is_missing_video_codec
core::Signal< void > client_disconnected
core::ubuntu::media::Player::HeadersType request_headers
uint64_t duration() const
uint64_t previous_position
core::ubuntu::media::Player::Lifetime player_lifetime