By Anders Holst:
authorFelix Domke <felix.domke@multimedia-labs.de>
Thu, 29 Oct 2009 00:47:49 +0000 (01:47 +0100)
committerFelix Domke <felix.domke@multimedia-labs.de>
Thu, 29 Oct 2009 00:56:31 +0000 (01:56 +0100)
* My previous code for "slow rewind" (aka "SeekBackHack") is not
  required any more. Indeed, since the change in "decoder states"
  some time ago my code stopped working and is now only destructively
  interfering with the new winding approach, effectively ruining the
  speed accuracy for slow rewind. Similarly, the "non-smooth winding"
  code ruins the accuracy for high winding speeds. The patch below
  removes the "SeekBackHack", and temporarily disables the
  "non-smooth winding" code until we know whether the decoder states
  will allow simultaneous repeat and skip rates
  again. (InfoBarGenerics.py)

* Due to a bug in 'eDVBTSTools::findNextPicture', rewind was always
  at the required speed minus one. (The frame just played was counted
  as one when skipping backwards.) Fixed below. (tstools.cpp)

* A piece of code to apparently increase precision in seeking, by
  always aligning to an i-frame start, had exactly the opposite
  effect: GOP single-stepping fails completely on DM7025 and gets
  highly unreliable on DM800. The piece of code is removed.
  (It destructively interferes with previous code by me to hit frames
  somewhat before the GOP start. As an alternative, my previous code
  can be removed instead, and the currently removed piece of code
  adjusted to work. But then it has to be done differently on the two
  platforms.) (dvb.cpp)

* By some reason eDVBVideo::getPTS only returns even numbers on DM800
  even when it should be odd. This ruins GOP single stepping in 50%
  of the cases. This is easy to compensate for by adding a margin of
  1 in getAccessPoint. (pvrparse.cpp)

* After the above, when GOP single-stepping works reliable on both
  platforms and on SD/HD, the correct step lengths can be
  used. (InfoBarGenerics.py)


No differences found