Go to file
Klaus Schmidinger 61ea56a1bd Fixed processing the last entry in the scan list of the EIT scanner 2019-03-12 11:47:36 +01:00
PLUGINS/src Updated the French OSD texts 2018-04-14 08:49:04 +02:00
libsi The Makefiles now use the macro $(Q) instead of a plain '@' in front of their commands, so that verbosity can be controlled by the user 2017-05-29 09:12:42 +02:00
po Updated the French OSD texts 2018-04-14 08:49:04 +02:00
symbols Made all font and image data 'const' 2006-02-05 13:55:58 +01:00
CONTRIBUTORS Fixed processing the last entry in the scan list of the EIT scanner 2019-03-12 11:47:36 +01:00
COPYING Updated the GPL copies 2006-04-21 14:53:26 +02:00
Doxyfile Fixed some spellings in positioner.h and Doxyfile 2013-12-28 11:21:09 +01:00
Doxyfile.filter Added Doxyfile.filter to have special characters escaped that would otherwise be dropped by Doxygen 2013-02-17 10:54:05 +01:00
HISTORY Fixed processing the last entry in the scan list of the EIT scanner 2019-03-12 11:47:36 +01:00
INSTALL Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
MANUAL Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
Make.config.template Added backtrace functions for debugging 2017-06-03 12:43:22 +02:00
Make.global Re-enabled building plugins that still use pre-version-1.7.34 Makefiles 2012-12-29 12:12:16 +01:00
Makefile The Makefiles now use the macro $(Q) instead of a plain '@' in front of their commands, so that verbosity can be controlled by the user 2017-05-29 09:12:42 +02:00
PLUGINS.html Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
README Added a note about the VDR User Counter and VDR's facebook page to the README file 2015-03-12 10:25:35 +01:00
README.i18n Changed email address to <vdr@tvdr.de> 2013-03-11 11:25:01 +01:00
UPDATE-1.2.0 Changed the project's URLs and email to tvdr.de 2009-10-18 14:18:22 +02:00
UPDATE-1.4.0 Moved 'VPS' to a separate section 2006-04-22 13:56:23 +02:00
UPDATE-1.6.0 Version 1.6.0 2008-03-23 11:00:31 +01:00
UPDATE-2.0.0 Added a note about HDTV support 2013-03-18 10:31:12 +01:00
UPDATE-2.2.0 cOsd::RenderPixmaps() now returns a pointer to cPixmap instead of cPixmapMemory; a cPixmap with a negative layer no longer marks any portion of the OSD's view port as "dirty"; Added a missing initialization of "panning" to the constructor of cPixmapMemory 2015-02-11 09:48:02 +01:00
UPDATE-2.4.0 The EIT filter no longer parses data from "other TS" 2018-03-31 13:40:32 +02:00
args.c VDR now reads command line options from *.conf files in /etc/vdr/conf.d 2014-04-14 13:15:34 +02:00
args.h VDR now reads command line options from *.conf files in /etc/vdr/conf.d 2014-04-14 13:15:34 +02:00
audio.c Fixed a problem with external Dolby Digital processing via the '-a' option in live mode and with TS recordings 2010-05-16 11:00:52 +02:00
audio.h First step towards switching to TS (Transport Stream) as recording format 2008-08-15 14:49:34 +02:00
camresponses.conf Implemented CAM auto responses 2017-06-10 11:53:39 +02:00
channels.c The option "Setup/Miscellaneous/Show channel names with source" can now be set to "type" or "full" 2017-06-10 15:34:23 +02:00
channels.conf channels.conf 2018-04-12 13:18:28 +02:00
channels.conf.cable Updated 'channels.conf.cable' 2003-09-17 16:12:38 +02:00
channels.conf.terr Removed an invalid line from channels.conf.terr 2013-02-11 12:11:49 +01:00
channels.h The option "Setup/Miscellaneous/Show channel names with source" can now be set to "type" or "full" 2017-06-10 15:34:23 +02:00
ci.c Now deactivating MTD support if a non MCD capable CAM is inserted after removing a previously used CAM that is MCD capable 2018-09-23 10:21:12 +02:00
ci.h Fixed a typo 2018-03-17 12:17:37 +01:00
config.c Fixed case inconsistency with SVDRPDefaultHost 2018-02-15 14:41:14 +01:00
config.h Version 2.4.0 2018-03-19 15:06:46 +01:00
cutter.c Removed superfluous call to cVideoDirectory::RemoveVideoFile() 2018-01-18 12:19:31 +01:00
cutter.h Added renaming and moving recordings and folders, and editing a recording's priority and lifetime; added cutting queue 2013-10-10 13:13:30 +02:00
device.c Fixed switching through encrypted channels with the Up/Down keys 2018-07-16 09:33:21 +02:00
device.h The macros used to control deprecated code or functions have been changed to hold numeric values; the default for DEPRECATED_VDR_CHARSET_OVERRIDE has been set to 0 2017-11-02 15:04:56 +01:00
diseqc.c Changed 'unsigned' to 'signed' in some places to avoid trouble with abs() in gcc6+ 2017-01-09 15:21:13 +01:00
diseqc.conf Added support for "Satellite Channel Routing" (SCR) according to EN50607, also known as "JESS" 2015-01-26 12:02:14 +01:00
diseqc.h Changed 'unsigned' to 'signed' in some places to avoid trouble with abs() in gcc6+ 2017-01-09 15:21:13 +01:00
dvbci.c Modified the descriptions of several threads 2015-01-14 11:39:55 +01:00
dvbci.h CAM handling refactored; multiple recordings with one CAM; automatic CAM selection 2007-01-07 14:46:14 +01:00
dvbdevice.c Fixed accessing the actual frontend on multi frontend devices 2019-03-10 12:10:01 +01:00
dvbdevice.h Fixed accessing the actual frontend on multi frontend devices 2019-03-10 12:10:01 +01:00
dvbplayer.c Fixed a possible crash with plugins that retrieve player information after a replay has been stopped, but before the replay control has been destroyed 2017-11-26 15:02:54 +01:00
dvbplayer.h Improved handling frame numbers to have a smoother progress display during replay of recordings with B-frames 2016-12-22 11:33:12 +01:00
dvbspu.c Removed consecutive empty lines 2013-02-22 15:25:31 +01:00
dvbspu.h Fixed some compiler warnings with Clang 3.4.1 2014-02-08 13:00:39 +01:00
dvbsubtitle.c Fixed scaling subtitles (their areas could sometimes extend outside the actual OSD) 2015-03-25 12:39:01 +01:00
dvbsubtitle.h Added missing 'virtual' 2015-04-28 09:26:02 +02:00
eit.c Reverted the change "The EIT filter no longer parses data from "other TS"..." 2018-11-15 16:38:14 +01:00
eit.h The constructor of cHash (via cHashBase) now has an additional parameter (OwnObjects); fixed a memory leak in cSectionSyncerHash 2017-05-09 08:33:37 +02:00
eitscan.c Fixed processing the last entry in the scan list of the EIT scanner 2019-03-12 11:47:36 +01:00
eitscan.h Removed the obsolete function cEITScanner::UsesDevice(); added new parameter LiveView to cStatus::ChannelSwitch() 2012-03-07 14:39:38 +01:00
epg.c Fixed the locking sequence when dumping EPG data 2017-05-28 13:08:09 +02:00
epg.h Fixed the locking sequence when dumping EPG data 2017-05-28 13:08:09 +02:00
epg2html Added the system's character set to the page header in the epg2html script 2013-03-04 12:14:09 +01:00
filter.c cListObject now implements a private copy constructor and assignment operator, to keep derived objects from calling them implicitly 2017-05-09 08:39:19 +02:00
filter.h cListObject now implements a private copy constructor and assignment operator, to keep derived objects from calling them implicitly 2017-05-09 08:39:19 +02:00
font.c Added cFont::Width(void) to get the default character width and allow stretched font drawing in high level OSDs 2016-12-22 12:53:09 +01:00
font.h Added some comments regarding font height 2017-11-11 14:05:53 +01:00
i18n.c Implemented FHS support; fixed handling config directory if only -v is given 2012-09-01 14:03:45 +02:00
i18n.h Removed the obsolete typedef tI18nPhrase 2012-03-11 14:08:13 +01:00
interface.c The SVDRP port now accepts multiple concurrent connections 2015-04-29 13:10:06 +02:00
interface.h The SVDRP port now accepts multiple concurrent connections 2015-04-29 13:10:06 +02:00
keymacros.conf Implemented the "Info" key 2006-01-06 12:53:28 +01:00
keys.c Implemented Play/Pause key 2012-12-04 13:37:59 +01:00
keys.h The keys '1' and '3' can now be used in replay mode to position an editing mark in "binary" mode 2015-01-27 21:22:53 +01:00
lirc.c Fixed generating k_Release key events for LIRC remote controls 2017-05-30 11:05:00 +02:00
lirc.h Now trying to reestablish the connection to the LIRC daemon in case it breaks 2006-01-27 16:03:32 +01:00
menu.c Fixed switching through encrypted channels with the Up/Down keys 2018-07-16 09:33:21 +02:00
menu.h Fixed a high CPU load during replay with active progress display 2018-04-14 10:24:41 +02:00
menuitems.c Fixed some warnings from g++ 7.2.0 regarding fixed buffer sizes 2018-03-23 15:47:26 +01:00
menuitems.h Implemented setup options for SVDRP peering 2015-09-08 11:08:06 +02:00
mtd.c The MTD mapper now avoids immediately reusing unique PIDs when switching channels 2017-10-31 12:20:56 +01:00
mtd.h CAMs are now sent a generated EIT packet that contains a single 'present event' for the current SID, in order to avoid any parental rating dialogs 2017-05-01 09:32:32 +02:00
newplugin The Makefiles now use the macro $(Q) instead of a plain '@' in front of their commands, so that verbosity can be controlled by the user 2017-05-29 09:12:42 +02:00
nit.c Fixed handling parameters in the S2SatelliteDeliverySystemDescriptor and T2DeliverySystemDescriptor 2018-03-18 10:52:21 +01:00
nit.h Fixed setting the source value of newly created channels, in case the NIT is received from a different, but very close satellite position (cont'd) 2015-03-17 12:27:18 +01:00
osd.c Fixed scaling bitmaps with very small factors 2018-04-06 08:51:16 +02:00
osd.h The macros used to control deprecated code or functions have been changed to hold numeric values; the default for DEPRECATED_VDR_CHARSET_OVERRIDE has been set to 0 2017-11-02 15:04:56 +01:00
osdbase.c Fixed setting the initial offset of the cursor in a list menu 2018-03-24 11:58:00 +01:00
osdbase.h Removed some excess ';' 2018-01-25 15:09:23 +01:00
pat.c Fixed handling PATs that contain no PMTs 2019-03-11 13:21:17 +01:00
pat.h Fixed a possible buffer overflow in handling CA descriptors 2016-12-23 14:08:14 +01:00
peerdemo Fixed opening the UDP port in peerdemo 2019-03-11 10:28:22 +01:00
player.c The new functions cControl::GetRecording() and cControl::GetHeader() can be used to retrieve information about what the current player is playing 2012-04-28 13:09:42 +02:00
player.h Fixed handling editing marks in the replay progress display, in case the marks are deleted via the Info/Edit menu of the currently played recording 2018-02-01 16:08:15 +01:00
plugin.c The -V and -h options now list the plugins in alphabetical order 2015-04-18 14:55:16 +02:00
plugin.h Implemented FHS support; fixed handling config directory if only -v is given 2012-09-01 14:03:45 +02:00
positioner.c Added credit for Albert Danis 2015-02-14 12:02:16 +01:00
positioner.h Fixed some spellings in positioner.h and Doxyfile 2013-12-28 11:21:09 +01:00
receiver.c CAMs are now sent a generated EIT packet that contains a single 'present event' for the current SID, in order to avoid any parental rating dialogs 2017-05-01 09:32:32 +02:00
receiver.h CAMs are now sent a generated EIT packet that contains a single 'present event' for the current SID, in order to avoid any parental rating dialogs 2017-05-01 09:32:32 +02:00
recorder.c Made the aff array 'static const' 2015-09-12 14:56:15 +02:00
recorder.h Added a missing 'const' to cReceiver::Receive(), to protect the given Data from being modified 2015-09-05 11:49:56 +02:00
recording.c Commented out the logging in cMarks::Align() 2018-03-17 10:56:13 +01:00
recording.h Implemented storing timer id in .timer 2018-02-13 09:33:41 +01:00
remote.c Fixed "warning: invalid suffix on literal" with GCC 4.8 and C++11 2015-01-20 14:56:18 +01:00
remote.h Added handling UTF-8 'umlaut' characters to cKbdRemote 2013-12-25 12:47:04 +01:00
remux.c CAMs are now sent a generated EIT packet that contains a single 'present event' for the current SID, in order to avoid any parental rating dialogs 2017-05-01 09:32:32 +02:00
remux.h Removed TsGetContinuityCounter() from remux.h, using TsContinuityCounter() instead 2017-05-21 09:53:27 +02:00
ringbuffer.c The function cRingBufferLinear::Clear() can now be called safely from the reading thread, without additional locking 2017-03-19 13:11:39 +01:00
ringbuffer.h The function cRingBufferLinear::Clear() can now be called safely from the reading thread, without additional locking 2017-03-19 13:11:39 +01:00
runvdr.template Modified runvdr.template to improve compatibility with the "bash" and "dash" shells 2015-02-05 10:43:42 +01:00
scr.conf Added support for "Satellite Channel Routing" (SCR) according to EN50607, also known as "JESS" 2015-01-26 12:02:14 +01:00
sdt.c Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
sdt.h The SDT is now only parsed *after* the NIT has been read 2014-03-10 14:50:58 +01:00
sections.c Modified the descriptions of several threads 2015-01-14 11:39:55 +01:00
sections.h Centralized 'thread active' handling 2005-08-13 13:17:24 +02:00
shutdown.c Fixed some warnings from g++ 7.2.0 regarding fixed buffer sizes 2018-03-23 15:47:26 +01:00
shutdown.h Modified handling user inactivity in the shutdown handler to avoid a problem in case the system time is changed after VDR has been started 2013-02-18 10:41:43 +01:00
skinclassic.c Fixed truncated date/time strings in the skins on multi-byte UTF-8 systems 2016-12-22 14:13:42 +01:00
skinclassic.h Implemented audio track menu 2005-01-02 15:11:44 +01:00
skinlcars.c The LCARS skin's main menu now reacts to changes of the current channel's name 2017-11-08 10:37:57 +01:00
skinlcars.h Implemented LCARS skin 2012-06-02 13:17:16 +02:00
skins.c Fixed a possible invalid locking sequence in case a remote timer handling error message is displayed on the OSD and the skin tries to lock the Recordings or DeletedRecordings list in its Flush() function 2018-04-28 12:17:22 +02:00
skins.h The macros used to control deprecated code or functions have been changed to hold numeric values; the default for DEPRECATED_VDR_CHARSET_OVERRIDE has been set to 0 2017-11-02 15:04:56 +01:00
skinsttng.c Fixed truncated date/time strings in the skins on multi-byte UTF-8 systems 2016-12-22 14:13:42 +01:00
skinsttng.h Implemented audio track menu 2005-01-02 15:11:44 +01:00
sourceparams.c Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
sourceparams.h Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
sources.c Fixed adding new source types in case they are already registered 2014-03-09 12:11:32 +01:00
sources.conf Added 'S3W ABS-3A' to sources.conf 2016-12-27 11:45:25 +01:00
sources.h Fixed adding new source types in case they are already registered 2014-03-09 12:11:32 +01:00
spu.c Some code cleanup 2008-02-10 14:11:47 +01:00
spu.h Some comment cleanups 2006-04-17 11:00:00 +02:00
status.c Implemented cStatus::MarksModified() 2018-01-29 14:09:59 +01:00
status.h Implemented cStatus::MarksModified() 2018-01-29 14:09:59 +01:00
summary2info Removed the '.pl' suffix from all scripts 2011-12-04 14:36:37 +01:00
svdrp.c Fixed handling the tfRecording flag in the SVDRP commands MODT and UPDT 2018-04-19 09:45:08 +02:00
svdrp.h Fixed a possible race condition with CONN vs. LSTT 2018-03-17 10:07:19 +01:00
svdrphosts.conf Stripped some trailing whitespace 2006-04-17 12:19:31 +02:00
svdrpsend Removed empty lines at end of file 2013-02-22 14:52:49 +01:00
svdrpsend.1 Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
themes.c cReadDir::Next() now skips directory entries "." and ".." 2012-02-17 14:02:13 +01:00
themes.h Fixed some compiler warnings under gcc version 4.7.1 2012-10-07 11:13:18 +02:00
thread.c Fixed removing a cStateKey from a cStateLock 2018-03-05 22:40:12 +01:00
thread.h Modified cStateLock's SetExplicitModify() and IncState() 2018-03-04 11:31:21 +01:00
timers.c Fixed a possible race condition with CONN vs. LSTT 2018-03-17 10:07:19 +01:00
timers.h When remote timers are fetched from a peer VDR, we no longer blindly delete and re-add them, but rather compare them and make only the minimum necessary changes 2018-02-28 10:06:47 +01:00
tools.c Modified cStateLock's SetExplicitModify() and IncState() 2018-03-04 11:31:21 +01:00
tools.h Assigning events to timers no longer triggers sending a POLL to all peer VDRs 2018-03-04 14:15:07 +01:00
transfer.c If TS packets are not accepted by the output device in Transfer Mode, this is now reported only once per minute in the log file 2017-12-07 15:05:48 +01:00
transfer.h If TS packets are not accepted by the output device in Transfer Mode, this is now reported only once per minute in the log file 2017-12-07 15:05:48 +01:00
vdr.1 Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
vdr.5 Adjusted version numbers and dates 2018-04-10 17:20:58 +02:00
vdr.c Fixed shutdown after user inactivity in case a plugin is keeping the OSD open (cont'd) 2019-03-12 10:01:16 +01:00
videodir.c Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
videodir.h Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00

README

Video Disk Recorder ('VDR')
---------------------------

These files contain the source code of the "Video Disk Recorder",
which is based on the DVB driver of the LinuxTV project (http://linuxtv.org).
For details about the "Video Disk Recorder" project please
refer to http://www.tvdr.de.

Please see the INSTALL file for details on how to install
this program on your computer.

The MANUAL file describes how to operate the VDR.

The CONTRIBUTORS file lists all the people who have contributed to the
development of VDR.

The author can be contacted at vdr@tvdr.de.

Yet another "set-top box"?
--------------------------

The "set-top boxes" available from commercial companies all have
one major drawback: they are not "open". This project's goal is
to build an "open" digital satellite receiver and timer controlled
video disk recorder, based upon open standards and freely available
driver software (of course, the hardware still has to be bought).

The on screen menu system is simple, but shall provide all the
possibilities necessary to perform timer controlled recording,
file management and even "on disk editing". The menus
of commercial set-top boxes usually are a lot more fancy than
the ones in this system, but here we have the full source code
and can modify the menus in whatever way desired.

If you actually use VDR, please add yourself to the "VDR User Counter"
at http://www.tvdr.de/counter.htm. You can also like VDR on facebook
at https://www.facebook.com/VideoDiskRecorder.


"VDR Video Disk Recorder" is a registered trademark of Klaus Schmidinger.
"TVDR TV Done Right" is a registered trademark of Klaus Schmidinger.