mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
- NOTE: If you are using DVB driver version 0.7 you need to load the dvb.o module with option outstream=0, so your insmod statement should read 'insmod dvb.o outstream=0'. This is currently necessary because 'vdr' still works with AV_PES data. - Video files now have the 'group read' bit set. - Fixed handling errors in 'readstring()'. - Handling SIGPIPE and re-establishing handler after intercepting a signal. - The configuration files are now by default read from the video directory. This can be changed by using the new '-c' option. Make sure you copy your current '*.conf' files to your video directory ('/video' by default), or use "-c ." to get the old behaviour of loading the configuration files from the current directory. - Waiting for input is now handled by a common function, which improves response time on user actions. As a consequence the EIT data may sometimes not be displayed, but this will change later when cEIT runs as a separate thread. - The new SVDRP command 'HITK' (thanks to Guido Fiala!) can be used to 'hit' a remote control key. Establish an SVDRP connection and enter HITK without a parameter for a list of all valid key names. - The new SVDRP command 'GRAB' (thanks to Guido Fiala!) can be used to grab the current frame and save it to a file. - The new SVDRP commands 'OVL*' can be used to control video overlays (thanks to Guido Fiala!). This is mainly for use in the 'kvdr' tool (see the 'kvdr' page at http://www.s.netic.de/gfiala). - If the name of the video directory used with the '-v' option had trailing slashes, the recording file names have been damaged. Trailing slashes are now silently removed. - Fixed a buffer overflow in EIT parsing. - Added a security warning regarding SVDRP to the INSTALL file. - Fixed 'confirm' dialog. - The daemon mode (option '-d') now no longer works with REMOTE=KBD (there is no stdin in daemon mode, so KBD makes no sense - plus it sometimes crashed).
65 lines
1.5 KiB
C++
65 lines
1.5 KiB
C++
/*
|
|
* svdrp.h: Simple Video Disk Recorder Protocol
|
|
*
|
|
* See the main source file 'vdr.c' for copyright information and
|
|
* how to reach the author.
|
|
*
|
|
* $Id: svdrp.h 1.6 2000/09/17 13:22:04 kls Exp $
|
|
*/
|
|
|
|
#ifndef __SVDRP_H
|
|
#define __SVDRP_H
|
|
|
|
#include "dvbapi.h"
|
|
#include "tools.h"
|
|
|
|
class cSocket {
|
|
private:
|
|
int port;
|
|
int sock;
|
|
int queue;
|
|
void Close(void);
|
|
public:
|
|
cSocket(int Port, int Queue = 1);
|
|
~cSocket();
|
|
bool Open(void);
|
|
int Accept(void);
|
|
};
|
|
|
|
class cSVDRP {
|
|
private:
|
|
cSocket socket;
|
|
cFile file;
|
|
CRect ovlClipRects[MAXCLIPRECTS];
|
|
void Close(void);
|
|
bool Send(const char *s, int length = -1);
|
|
void Reply(int Code, const char *fmt, ...);
|
|
void CmdCHAN(const char *Option);
|
|
void CmdDELC(const char *Option);
|
|
void CmdDELT(const char *Option);
|
|
void CmdGRAB(const char *Option);
|
|
void CmdHELP(const char *Option);
|
|
void CmdHITK(const char *Option);
|
|
void CmdLSTC(const char *Option);
|
|
void CmdLSTT(const char *Option);
|
|
void CmdMODC(const char *Option);
|
|
void CmdMODT(const char *Option);
|
|
void CmdMOVC(const char *Option);
|
|
void CmdMOVT(const char *Option);
|
|
void CmdNEWC(const char *Option);
|
|
void CmdNEWT(const char *Option);
|
|
void CmdOVLF(const char *Option);
|
|
void CmdOVLG(const char *Option);
|
|
void CmdOVLC(const char *Option);
|
|
void CmdOVLP(const char *Option);
|
|
void CmdOVLO(const char *Option);
|
|
void CmdUPDT(const char *Option);
|
|
void Execute(char *Cmd);
|
|
public:
|
|
cSVDRP(int Port);
|
|
~cSVDRP();
|
|
void Process(void);
|
|
};
|
|
|
|
#endif //__SVDRP_H
|