Version 2.0.1

VDR version 2.0.1 is now available at

      ftp://ftp.tvdr.de/vdr/vdr-2.0.1.tar.bz2

A 'diff' against the previous developer version is available at

      ftp://ftp.tvdr.de/vdr/Developer/vdr-2.0.0-2.0.1.diff

MD5 checksums:

e1b7a76c57c96300829dccd39eb20e7d  vdr-2.0.1.tar.bz2
fca54c4da4e9d9dd05f917b04a2eecf4  vdr-2.0.0-2.0.1.diff

This version fixes a few minor bugs that came up after the release of
version 2.0.0. It also allows compilation of VDR with older versions of
the DVB API.

From the HISTORY file:
- Fixed initializing cDevice::keepTracks.
- Fixed an endless loop in cTextWrapper::Set() in case the given Width is smaller than
  one character (reported by Stefan Braun).
- Added definitions for older DVB API versions, back until 5.0 (based on a patch from
  Udo Richter).
- Fixed handling '/' and '~' in recording file names in case DirectoryEncoding is
  used (thanks to Lars Hanisch).
- Changed cThread::SetIOPriority() from "best effort class" to "idle class" in order to
  improve overall performance when an editing process is running (thanks to Jochen
  Dolze).
This commit is contained in:
Klaus Schmidinger
2013-04-13 13:40:00 +02:00
committed by Dieter Hametner
parent 23a677c66e
commit 8bc7a314cc
13 changed files with 162 additions and 47 deletions

View File

@@ -71,3 +71,7 @@ VDR Plugin 'dvbhddevice' Revision History
2013-03-31: Version 2.0.0
- Official release.
2013-04-11: Version 2.0.1
- Fixed aspect ratio and position of scaled video.

View File

@@ -10,7 +10,7 @@
#include "menu.h"
#include "setup.h"
static const char *VERSION = "2.0.0";
static const char *VERSION = "2.0.1";
static const char *DESCRIPTION = trNOOP("HD Full Featured DVB device");
static const char *MAINMENUENTRY = "dvbhddevice";

View File

@@ -574,14 +574,35 @@ void cDvbHdFfDevice::ScaleVideo(const cRect &Rect)
}
else
{
//printf("ScaleVideo: Rect = %d %d %d %d\n", Rect.X(), Rect.Y(), Rect.Width(), Rect.Height());
int osdWidth;
int osdHeight;
double osdPixelAspect;
GetOsdSize(osdWidth, osdHeight, osdPixelAspect);
mHdffCmdIf->CmdAvSetVideoWindow(0, true,
Rect.X() * 1000 / osdWidth, Rect.Y() * 1000 / osdHeight,
Rect.Width() * 1000 / osdWidth, Rect.Height() * 1000 / osdHeight);
//printf("ScaleVideo: OsdSize = %d %d %g\n", osdWidth, osdHeight, osdPixelAspect);
// Convert the video window coordinates in 1/10 percent of the display
// resolution.
int x = (Rect.X() * 1000 + osdWidth / 2) / osdWidth;
int y = (Rect.Y() * 1000 + osdHeight / 2) / osdHeight;
int w = (Rect.Width() * 1000 + osdWidth / 2) / osdWidth;
int h = (Rect.Height() * 1000 + osdHeight / 2) / osdHeight;
//printf("ScaleVideo: Win1 = %d %d %d %d\n", x, y, w, h);
// fix aspect ratio, reposition video
if (w > h) {
x += (w - h) / 2;
w = h;
}
else if (w < h) {
y += (h - w) / 2;
h = w;
}
//printf("ScaleVideo: Win2 = %d %d %d %d\n", x, y, w, h);
mHdffCmdIf->CmdAvSetVideoWindow(0, true, x, y, w, h);
}
}