Пример #1
0
        public PlayerEngine()
        {
            IntPtr ptr = bp_new();

            if (ptr == IntPtr.Zero)
            {
                throw new ApplicationException(Catalog.GetString("Could not initialize GStreamer library"));
            }

            handle = new HandleRef(this, ptr);

            bp_get_error_quarks(out GST_CORE_ERROR, out GST_LIBRARY_ERROR,
                                out GST_RESOURCE_ERROR, out GST_STREAM_ERROR);

            eos_callback                 = new BansheePlayerEosCallback(OnEos);
            error_callback               = new BansheePlayerErrorCallback(OnError);
            state_changed_callback       = new BansheePlayerStateChangedCallback(OnStateChange);
            buffering_callback           = new BansheePlayerBufferingCallback(OnBuffering);
            vis_data_callback            = new BansheePlayerVisDataCallback(OnVisualizationData);
            tag_found_callback           = new GstTaggerTagFoundCallback(OnTagFound);
            next_track_starting_callback = new BansheePlayerNextTrackStartingCallback(OnNextTrackStarting);
            about_to_finish_callback     = new BansheePlayerAboutToFinishCallback(OnAboutToFinish);
            volume_changed_callback      = new BansheePlayerVolumeChangedCallback(OnVolumeChanged);
            bp_set_eos_callback(handle, eos_callback);
            bp_set_error_callback(handle, error_callback);
            bp_set_state_changed_callback(handle, state_changed_callback);
            bp_set_buffering_callback(handle, buffering_callback);
            bp_set_tag_found_callback(handle, tag_found_callback);
            bp_set_next_track_starting_callback(handle, next_track_starting_callback);
            bp_set_volume_changed_callback(handle, volume_changed_callback);

            next_track_set = new EventWaitHandle(false, EventResetMode.ManualReset);
        }
Пример #2
0
        public PlayerEngine()
        {
            IntPtr ptr = bp_new();

            if (ptr == IntPtr.Zero)
            {
                throw new ApplicationException(Catalog.GetString("Could not initialize GStreamer library"));
            }

            handle = new HandleRef(this, ptr);

            bp_get_error_quarks(out GST_CORE_ERROR, out GST_LIBRARY_ERROR,
                                out GST_RESOURCE_ERROR, out GST_STREAM_ERROR);

            eos_callback                  = new BansheePlayerEosCallback(OnEos);
            error_callback                = new BansheePlayerErrorCallback(OnError);
            state_changed_callback        = new BansheePlayerStateChangedCallback(OnStateChange);
            iterate_callback              = new BansheePlayerIterateCallback(OnIterate);
            buffering_callback            = new BansheePlayerBufferingCallback(OnBuffering);
            vis_data_callback             = new BansheePlayerVisDataCallback(OnVisualizationData);
            video_pipeline_setup_callback = new VideoPipelineSetupHandler(OnVideoPipelineSetup);
            tag_found_callback            = new GstTaggerTagFoundCallback(OnTagFound);

            bp_set_eos_callback(handle, eos_callback);
            bp_set_iterate_callback(handle, iterate_callback);
            bp_set_error_callback(handle, error_callback);
            bp_set_state_changed_callback(handle, state_changed_callback);
            bp_set_buffering_callback(handle, buffering_callback);
            bp_set_tag_found_callback(handle, tag_found_callback);
            bp_set_video_pipeline_setup_callback(handle, video_pipeline_setup_callback);
        }
Пример #3
0
 private static extern void bp_set_buffering_callback (HandleRef player,
     BansheePlayerBufferingCallback cb);
Пример #4
0
        public PlayerEngine ()
        {
            IntPtr ptr = bp_new ();

            if (ptr == IntPtr.Zero) {
                throw new ApplicationException (Catalog.GetString ("Could not initialize GStreamer library"));
            }

            handle = new HandleRef (this, ptr);

            bp_get_error_quarks (out GST_CORE_ERROR, out GST_LIBRARY_ERROR,
                out GST_RESOURCE_ERROR, out GST_STREAM_ERROR);

            eos_callback = new BansheePlayerEosCallback (OnEos);
            error_callback = new BansheePlayerErrorCallback (OnError);
            state_changed_callback = new BansheePlayerStateChangedCallback (OnStateChange);
            buffering_callback = new BansheePlayerBufferingCallback (OnBuffering);
            vis_data_callback = new BansheePlayerVisDataCallback (OnVisualizationData);
            video_pipeline_setup_callback = new VideoPipelineSetupHandler (OnVideoPipelineSetup);
            video_prepare_window_callback = new VideoPrepareWindowHandler (OnVideoPrepareWindow);
            tag_found_callback = new GstTaggerTagFoundCallback (OnTagFound);
            next_track_starting_callback = new BansheePlayerNextTrackStartingCallback (OnNextTrackStarting);
            about_to_finish_callback = new BansheePlayerAboutToFinishCallback (OnAboutToFinish);
            volume_changed_callback = new BansheePlayerVolumeChangedCallback (OnVolumeChanged);
            bp_set_eos_callback (handle, eos_callback);
            bp_set_error_callback (handle, error_callback);
            bp_set_state_changed_callback (handle, state_changed_callback);
            bp_set_buffering_callback (handle, buffering_callback);
            bp_set_tag_found_callback (handle, tag_found_callback);
            bp_set_next_track_starting_callback (handle, next_track_starting_callback);
            bp_set_video_pipeline_setup_callback (handle, video_pipeline_setup_callback);
            bp_set_video_prepare_window_callback (handle, video_prepare_window_callback);
            bp_set_volume_changed_callback (handle, volume_changed_callback);

            next_track_set = new EventWaitHandle (false, EventResetMode.ManualReset);
        }
Пример #5
0
 private static extern void bp_set_buffering_callback(HandleRef player,
                                                      BansheePlayerBufferingCallback cb);