vdr-xine and vdr-2.1.3

Message ID 52D00DAB.7090308@gmx.de
State New
Headers

Commit Message

Joerg Riechardt Jan. 10, 2014, 3:11 p.m. UTC
  Am 10.01.2014 12:57, schrieb Joerg Riechardt:
> Hi,
> Reinhard Nissl’s vdr-xine is still my favorite output plugin. The
> additional parameter in cDevice::TrickSpeed() breaks fast forward,
> instead of increasing the speed in three steps, it is always most fast.
> Has anybody a patch for this, or is planning to create one?
> Joerg

this patch seems to do it
Joerg
  

Comments

Torgeir Veimo Jan. 11, 2014, 12:15 a.m. UTC | #1
> Reinhard Nissl’s vdr-xine is still my favorite output plugin.

Slightly unrelated, but I have to say the raspberry pi output plugin
seems to be coming along very well. There's a few playback glitches
now and then, but it will be very nice to use just a rpi as a
standalone VDR setup, or as a client with the streamdev client plugin.
Remote works over CEC as well with the libcec-daemon.

http://www.vdr-portal.de/board18-vdr-hardware/board98-arm-co/120344-prototyp-rpi-ausgabeplugin/


On 11 January 2014 01:11, Joerg Riechardt <J.Riechardt@gmx.de> wrote:
> Am 10.01.2014 12:57, schrieb Joerg Riechardt:
>>
>> Hi,
>> Reinhard Nissl’s vdr-xine is still my favorite output plugin. The
>> additional parameter in cDevice::TrickSpeed() breaks fast forward,
>> instead of increasing the speed in three steps, it is always most fast.
>> Has anybody a patch for this, or is planning to create one?
>> Joerg
>
>
> this patch seems to do it
> Joerg
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
  

Patch

diff -Nru xine-a/xineDevice.c xine-b/xineDevice.c
--- xine-a/xineDevice.c	2013-01-18 15:55:51.000000000 +0100
+++ xine-b/xineDevice.c	2014-01-10 15:30:03.254256728 +0100
@@ -300,19 +300,14 @@ 
 //#endif
   }
 
-  void cXineDevice::TrickSpeed(int Speed)
-  {
-    TrickSpeed(Speed, false);
-  }
-
-  void cXineDevice::TrickSpeed(int Speed, bool IBP)
+  void cXineDevice::TrickSpeed(int Speed, bool Forward)
   {
     f = false;
     ts = Speed;
 
     xfprintf(stderr, "TrickSpeed: %d\n", Speed);
     m_xineLib.execFuncTrickSpeedMode(lastCmdWasClear);
-    m_xineLib.execFuncSetSpeed(100.0 / Speed * (IBP ? 12 : 1));
+    m_xineLib.execFuncSetSpeed(100.0 / Speed);
     m_xineLib.execFuncWait();
     m_xineLib.freeze(false);
     m_xineLib.pause(false);
diff -Nru xine-a/xineDevice.h xine-b/xineDevice.h
--- xine-a/xineDevice.h	2013-01-18 15:55:51.000000000 +0100
+++ xine-b/xineDevice.h	2014-01-10 15:46:29.290199807 +0100
@@ -50,8 +50,7 @@ 
     virtual bool CanReplay(void) const;
     virtual bool SetPlayMode(ePlayMode PlayMode);
     virtual bool HasIBPTrickSpeed(void);
-    virtual void TrickSpeed(int Speed, bool IBP);
-    virtual void TrickSpeed(int Speed);
+    virtual void TrickSpeed(int Speed, bool Forward);
     virtual void Clear(void);
     virtual void Play(void);
     virtual void Freeze(void);