mirror of
https://projects.vdr-developer.org/git/vdr-plugin-softhddevice.git
synced 2023-10-10 19:16:51 +02:00
Release Version 0.4.0.
This commit is contained in:
parent
e32857a27a
commit
fa27a1c73a
@ -1,5 +1,5 @@
|
||||
User johns
|
||||
Date:
|
||||
Date: Sat Jan 21 15:49:16 CET 2012
|
||||
|
||||
Release Version 0.4.0
|
||||
VDPAU: Add grab image support.
|
||||
|
14
Todo
14
Todo
@ -25,14 +25,15 @@ missing:
|
||||
ITU BT601, ITU BT709 (HD), RGB studio levels (16-235)?
|
||||
suspend output / energie saver: stop audio, stop video, configurable
|
||||
Option deinterlace off / deinterlace force!
|
||||
Make output drivers better modular.
|
||||
Make output drivers better modular (under construction).
|
||||
|
||||
video:
|
||||
subtitle not cleared
|
||||
subtitle could be asyncron
|
||||
reduce warnings after channel switch
|
||||
|
||||
vdpau:
|
||||
VdpPreemptionCallback handling
|
||||
VdpPreemptionCallback handling (under construction)
|
||||
hard channel switch
|
||||
suspendoutput didn't show logo or black picture.
|
||||
|
||||
@ -41,10 +42,14 @@ libva:
|
||||
yaepghd (VaapiSetOutputPosition) support
|
||||
can associate ony displayed part of osd
|
||||
auto crop for va-api
|
||||
grab image for va-api
|
||||
|
||||
libva: branch vaapi-ext
|
||||
add support for vaapi-ext
|
||||
|
||||
libva-intel-driver:
|
||||
intel still has hangups most with 1080i
|
||||
1080i does no v-sync (workaround written)
|
||||
1080i does no v-sync (workaround written, fixed with vaapi-ext)
|
||||
OSD has sometimes wrong size (workaround written)
|
||||
|
||||
libva-vdpau-driver:
|
||||
@ -91,7 +96,6 @@ setup:
|
||||
Setup 4:3 zoom type
|
||||
Some setup parameters are not used until restart.
|
||||
Can a notice be added to the setup menu?
|
||||
576i, 720p, fake 1080i, 1080i
|
||||
|
||||
unsorted:
|
||||
Menu -> Setup -> Plugins -> skingenigmang -> General
|
||||
@ -105,5 +109,7 @@ future features (not planed for 1.0 - 1.5)
|
||||
software decoder for xv / opengl
|
||||
atmolight support
|
||||
multistream handling
|
||||
pip support
|
||||
grab image with jpeg
|
||||
|
||||
upmix stereo to AC-3
|
||||
|
11
softhddev.c
11
softhddev.c
@ -1140,8 +1140,12 @@ static void StartXServer(void)
|
||||
*/
|
||||
void SoftHdDeviceExit(void)
|
||||
{
|
||||
// lets hope that vdr does a good thead cleanup
|
||||
// no it doesn't do a good thread cleanup
|
||||
// lets hope that vdr does a good thread cleanup
|
||||
|
||||
VideoOsdExit();
|
||||
VideoExit();
|
||||
AudioExit();
|
||||
|
||||
if (MyVideoDecoder) {
|
||||
CodecVideoClose(MyVideoDecoder);
|
||||
// FIXME: CodecDelVideoDecoder(MyVideoDecoder);
|
||||
@ -1153,9 +1157,6 @@ void SoftHdDeviceExit(void)
|
||||
MyAudioDecoder = NULL;
|
||||
}
|
||||
|
||||
VideoOsdExit();
|
||||
VideoExit();
|
||||
AudioExit();
|
||||
CodecExit();
|
||||
VideoPacketExit();
|
||||
|
||||
|
@ -148,12 +148,13 @@ class cSoftOsd:public cOsd
|
||||
cSoftOsd::cSoftOsd(int left, int top, uint level)
|
||||
:cOsd(left, top, level)
|
||||
{
|
||||
// FIXME: OsdWidth/OsdHeight not correct!
|
||||
dsyslog("[softhddev]%s: %dx%d+%d+%d, %d\n", __FUNCTION__, OsdWidth(),
|
||||
OsdHeight(), left, top, level);
|
||||
/* FIXME: OsdWidth/OsdHeight not correct!
|
||||
dsyslog("[softhddev]%s: %dx%d+%d+%d, %d\n", __FUNCTION__, OsdWidth(),
|
||||
OsdHeight(), left, top, level);
|
||||
*/
|
||||
|
||||
this->Level = level;
|
||||
//SetActive(true);
|
||||
SetActive(true);
|
||||
}
|
||||
|
||||
cSoftOsd::~cSoftOsd(void)
|
||||
@ -847,7 +848,7 @@ uchar *cSoftHdDevice::GrabImage(int &size, bool jpeg, int quality, int width,
|
||||
dsyslog("[softhddev]%s: %d, %d, %d, %dx%d\n", __FUNCTION__, size, jpeg,
|
||||
quality, width, height);
|
||||
|
||||
return ::GrabImage(&size, jpeg, quality, width, height);
|
||||
return::GrabImage(&size, jpeg, quality, width, height);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
10
video.c
10
video.c
@ -991,7 +991,7 @@ static void AutoCropDetect(AutoCropCtx * autocrop, int width, int height,
|
||||
}
|
||||
}
|
||||
|
||||
if (y1 > SKIP_Y || x1 > SKIP_X) {
|
||||
if (0 && (y1 > SKIP_Y || x1 > SKIP_X)) {
|
||||
Debug(3, "video/autocrop: top=%d bottom=%d left=%d right=%d\n", y1, y2,
|
||||
x1, x2);
|
||||
}
|
||||
@ -6981,12 +6981,12 @@ static void VideoEvent(void)
|
||||
|
||||
case MapNotify:
|
||||
Debug(3, "video/event: MapNotify\n");
|
||||
// µwn workaround
|
||||
// µwm workaround
|
||||
xcb_change_window_attributes(Connection, VideoWindow,
|
||||
XCB_CW_CURSOR, &VideoBlankCursor);
|
||||
break;
|
||||
case Expose:
|
||||
Debug(3, "video/event: Expose\n");
|
||||
//Debug(3, "video/event: Expose\n");
|
||||
break;
|
||||
case ReparentNotify:
|
||||
Debug(3, "video/event: ReparentNotify\n");
|
||||
@ -7330,7 +7330,7 @@ static void VideoSetPts(int64_t * pts_p, int interlaced, const AVFrame * frame)
|
||||
}
|
||||
}
|
||||
if (*pts_p != pts) {
|
||||
Debug(3,
|
||||
Debug(4,
|
||||
"video: %#012" PRIx64 "->%#012" PRIx64 " %4" PRId64 " pts\n",
|
||||
*pts_p, pts, pts - *pts_p);
|
||||
*pts_p = pts;
|
||||
@ -7708,7 +7708,7 @@ void VideoSetVideoMode( __attribute__ ((unused))
|
||||
int x, __attribute__ ((unused))
|
||||
int y, int width, int height)
|
||||
{
|
||||
Debug(3, "video: %s %dx%d%+d%+d\n", __FUNCTION__, width, height, x, y);
|
||||
Debug(4, "video: %s %dx%d%+d%+d\n", __FUNCTION__, width, height, x, y);
|
||||
|
||||
if ((unsigned)width == VideoWindowWidth
|
||||
&& (unsigned)height == VideoWindowHeight) {
|
||||
|
Loading…
Reference in New Issue
Block a user