summaryrefslogtreecommitdiff
path: root/softhddev.c
diff options
context:
space:
mode:
authorJohns <johns98@gmx.net>2012-01-09 17:03:04 +0100
committerJohns <johns98@gmx.net>2012-01-09 17:03:04 +0100
commit96eefca699ad32353ddb8c71f25ee3f5d864b156 (patch)
tree523422dcb6155146e14c4ad883413b58165c1e00 /softhddev.c
parent5e005eeff5e40ac78fa17bb0ffc44b7a4aa4e1f6 (diff)
downloadvdr-plugin-softhddevice-96eefca699ad32353ddb8c71f25ee3f5d864b156.tar.gz
vdr-plugin-softhddevice-96eefca699ad32353ddb8c71f25ee3f5d864b156.tar.bz2
Video improvements.
Fix generate of video output from StillPicture. Add support for resolution dependend video parameterts (Deinterlace, Scaling, Denoise, Sharpen, ...).
Diffstat (limited to 'softhddev.c')
-rw-r--r--softhddev.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/softhddev.c b/softhddev.c
index a715886..72c31e6 100644
--- a/softhddev.c
+++ b/softhddev.c
@@ -818,14 +818,19 @@ void Freeze(void)
*/
void StillPicture(const uint8_t * data, int size)
{
+ int i;
+
// must be a PES start code
if (size < 9 || !data || data[0] || data[1] || data[2] != 0x01) {
Error(_("[softhddev] invalid PES video packet\n"));
return;
}
- PlayVideo(data, size);
- PlayVideo(data, size);
- VideoNextPacket(VideoCodecID); // terminate work
+ Clear(); // flush video buffers
+ // +1 future for deinterlace
+ for (i = -1; i < (VideoCodecID == CODEC_ID_MPEG2VIDEO ? 3 : 17); ++i) {
+ PlayVideo(data, size); // reference frames
+ }
+ VideoNextPacket(VideoCodecID); // terminate last packet
}
/**
@@ -917,10 +922,10 @@ static char StartX11Server; ///< flag start the x11 server
*/
const char *CommandLineHelp(void)
{
- return " -a device\talsa audio device (fe. hw:0,0)\n"
- " -d display\tdisplay of x11 server (f.e :0.0)\n"
+ return " -a device\taudio device (fe. alsa: hw:0,0 oss: /dev/dsp)\n"
+ " -d display\tdisplay of x11 server (fe. :0.0)\n"
" -g geometry\tx11 window geometry wxh+x+y\n"
- " -x\tstart x11 server\n";
+ " -x\t\tstart x11 server\n";
}
/**