Esempio n. 1
0
        public Player(Playlist playlist)
            : base(IntPtr.Zero)
        {
            this.playlist = playlist;
            playlist.SongReady += new Playlist.SongReadyHandler (OnSongReady);

            Raw = player_new ();
            playing = false;
            new_song_cb = new SignalUtils.SignalDelegate (OnNewSong);
            end_song_cb = new SignalUtils.SignalDelegate (OnEndSong);
            error_cb = new SignalUtils.SignalDelegateStr (OnError);
            SignalUtils.SignalConnect (Raw, "new-song", new_song_cb);
            SignalUtils.SignalConnect (Raw, "end-song", end_song_cb);
            SignalUtils.SignalConnect (Raw, "error", error_cb);
        }
Esempio n. 2
0
        public Player() : base(IntPtr.Zero)
        {
            IntPtr error_ptr;

            Raw = player_new(out error_ptr);

            if (error_ptr != IntPtr.Zero)
            {
                throw new PlayerException(error_ptr);
            }

            tick_cb  = new SignalUtils.SignalDelegateInt(OnTick);
            eos_cb   = new SignalUtils.SignalDelegate(OnEndOfStream);
            error_cb = new SignalUtils.SignalDelegateStr(OnError);

            SignalUtils.SignalConnect(Raw, "tick", tick_cb);
            SignalUtils.SignalConnect(Raw, "end_of_stream", eos_cb);
            SignalUtils.SignalConnect(Raw, "error", error_cb);

            playing = false;
            song    = null;
        }