X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fxinestream.h;h=01cc3e05c3533c1baddde06c6a4dc4998a6aee21;hb=HEAD;hp=554b448aac489ff7ab5b899b7cec8181ac63249a;hpb=19f69a037e98b6b510fca0f270a5a0cf05de522d;p=xinema.git diff --git a/source/xinestream.h b/source/xinestream.h index 554b448..01cc3e0 100644 --- a/source/xinestream.h +++ b/source/xinestream.h @@ -29,6 +29,9 @@ public: sigc::signal signal_title_changed; sigc::signal signal_duration_changed; sigc::signal signal_position_changed; + sigc::signal signal_video_size_changed; + sigc::signal signal_framerate_changed; + sigc::signal signal_codecs_changed; sigc::signal signal_channels_changed; sigc::signal signal_current_audio_channel_changed; sigc::signal signal_current_spu_channel_changed; @@ -44,6 +47,11 @@ private: std::string title; Msp::Time::TimeDelta duration; Msp::Time::TimeDelta position; + unsigned video_width; + unsigned video_height; + float framerate; + std::string video_codec; + std::string audio_codec; std::vector audio_channels; std::vector spu_channels; int current_audio; @@ -59,6 +67,11 @@ public: const Msp::Time::TimeDelta &get_duration() const { return duration; } const Msp::Time::TimeDelta &get_position() const { return position; } const std::string &get_title() const; + unsigned get_video_width() const { return video_width; } + unsigned get_video_height() const { return video_height; } + float get_framerate() const { return framerate; } + const std::string &get_video_codec() const { return video_codec; } + const std::string &get_audio_codec() const { return audio_codec; } void play(); void seek(const Msp::Time::TimeDelta &); @@ -77,6 +90,7 @@ public: void tick(); private: + static bool equals(const std::string &, const char *); void update_info(); void update_channels(); void handle_event(const xine_event_t &);