[longomatch] Add a getter in IPlayer.Rate



commit a60fcee06782157a2df711fbafa3f9ce23305feb
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date:   Wed Mar 25 19:08:39 2015 +0100

    Add a getter in IPlayer.Rate

 LongoMatch.Core/Interfaces/Multimedia/IPlayer.cs |    2 +-
 LongoMatch.Multimedia/Player/GstPlayer.cs        |    7 +++++++
 LongoMatch.Services/Services/PlayerController.cs |    4 +---
 3 files changed, 9 insertions(+), 4 deletions(-)
---
diff --git a/LongoMatch.Core/Interfaces/Multimedia/IPlayer.cs 
b/LongoMatch.Core/Interfaces/Multimedia/IPlayer.cs
index a79a95d..5bf7341 100644
--- a/LongoMatch.Core/Interfaces/Multimedia/IPlayer.cs
+++ b/LongoMatch.Core/Interfaces/Multimedia/IPlayer.cs
@@ -48,7 +48,7 @@ namespace LongoMatch.Core.Interfaces.Multimedia
 
                bool Playing { get; }
 
-               double Rate { set; }
+               double Rate { get; set; }
 
                IntPtr WindowHandle { set; }
 
diff --git a/LongoMatch.Multimedia/Player/GstPlayer.cs b/LongoMatch.Multimedia/Player/GstPlayer.cs
index 945f0c1..ee6e7eb 100644
--- a/LongoMatch.Multimedia/Player/GstPlayer.cs
+++ b/LongoMatch.Multimedia/Player/GstPlayer.cs
@@ -36,6 +36,8 @@ namespace LongoMatch.Video.Player
                public event ReadyToSeekHandler ReadyToSeek;
                public event EosHandler Eos;
 
+               double rate;
+
                [DllImport ("libcesarplayer.dll")]
                static extern IntPtr lgm_video_player_get_type ();
 
@@ -114,6 +116,7 @@ namespace LongoMatch.Video.Player
 
                void Init (PlayerUseType type)
                {
+                       rate = 1;
                        IntPtr error = IntPtr.Zero;
                        Raw = lgm_video_player_new ((int)type, out error);
                        if (error != IntPtr.Zero)
@@ -431,6 +434,10 @@ namespace LongoMatch.Video.Player
                public double Rate {
                        set {
                                lgm_video_player_set_rate (Handle, value);
+                               rate = value;
+                       }
+                       get {
+                               return rate;
                        }
                }
 
diff --git a/LongoMatch.Services/Services/PlayerController.cs 
b/LongoMatch.Services/Services/PlayerController.cs
index 9ae004a..7418a7e 100644
--- a/LongoMatch.Services/Services/PlayerController.cs
+++ b/LongoMatch.Services/Services/PlayerController.cs
@@ -52,7 +52,6 @@ namespace LongoMatch.Services
 
                Time streamLenght, videoTS, imageLoadedTS;
                bool readyToSeek, stillimageLoaded, ready, delayedOpen;
-               double rate;
                Seeker seeker;
                Segment loadedSegment;
                PendingSeek pendingSeek;
@@ -144,12 +143,11 @@ namespace LongoMatch.Services
 
                public double Rate {
                        set {
-                               rate = value;
                                player.Rate = value;
                                Log.Debug ("Rate set to " + value);
                        }
                        get {
-                               return rate;
+                               return player.Rate;
                        }
                }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]