Go to file
Klaus Schmidinger 2c74a31afe Added backtrace functions for debugging 2017-06-03 12:43:22 +02:00
PLUGINS/src 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
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 Finnish OSD texts 2017-04-18 12:15:01 +02:00
symbols Made all font and image data 'const' 2006-02-05 13:55:58 +01:00
CONTRIBUTORS Added backtrace functions for debugging 2017-06-03 12:43:22 +02: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 Added backtrace functions for debugging 2017-06-03 12:43:22 +02:00
INSTALL Changed the description of the --chartab option in the INSTALL file 2015-09-10 13:36:50 +02:00
MANUAL Added a note to the "Pausing live video" section of the MANUAL 2017-04-03 08:42:10 +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 Added some guidelines and recommendations to the 'Logging' section of PLUGINS.html 2017-04-02 13:01:34 +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
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
channels.c Added debug output for checking the correct sequence of locking global lists 2017-05-28 12:47:54 +02:00
channels.conf Updated the default channels.conf file 2013-03-23 11:07:01 +01: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 Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
ci.c Extended the CI API to allow plugins to implement additional CAM resources 2017-05-18 09:05:46 +02:00
ci.h Extended the CI API to allow plugins to implement additional CAM resources 2017-05-18 09:05:46 +02:00
config.c Fixed setting the local machine's SVDRP host name; only saving the SVDRP host name if it differs from the system's host name 2017-05-21 10:28:10 +02:00
config.h Added debug output for checking the correct sequence of locking global lists 2017-05-28 12:47:54 +02:00
cutter.c Removed TsGetContinuityCounter() from remux.h, using TsContinuityCounter() instead 2017-05-21 09:53:27 +02: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 Now using a separate mutex to fix the race between SVDRP CHAN and cDevice::HasProgramme() 2017-05-30 11:06:55 +02:00
device.h Now using a separate mutex to fix the race between SVDRP CHAN and cDevice::HasProgramme() 2017-05-30 11:06:55 +02: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 Added a Status parameter to the interface of cDevice::SignalStats() and cDvbDevice::SignalStats() 2017-05-09 11:53:41 +02:00
dvbdevice.h Added a Status parameter to the interface of cDevice::SignalStats() and cDvbDevice::SignalStats() 2017-05-09 11:53:41 +02:00
dvbplayer.c Fixed replaying recordings to their very end, if they don't end with an I-frame 2016-12-22 11:40:25 +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 Events in the EIT that end before the EPG linger time are now ignored in the incoming data stream 2017-05-03 09:02:24 +02: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 The EPG scanner no longer moves the dish if there is a positioner 2015-09-10 11:08:19 +02: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 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
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 the locking sequence when starting a recording 2017-05-29 08:18:17 +02:00
menu.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
menuitems.c Implemented setup options for SVDRP peering 2015-09-08 11:08:06 +02:00
menuitems.h Implemented setup options for SVDRP peering 2015-09-08 11:08:06 +02:00
mtd.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
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 Avoiding some duplicate code and unnecessary work in nit.c 2016-12-23 14:25:27 +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 The width and height of the OSD are now limited to the actual maximum dimensions of the output device 2015-09-10 14:18:38 +02:00
osd.h The function cOsd::GetBitmap() is now 'protected' 2015-04-19 12:22:29 +02:00
osdbase.c cOsdMenu::Display() now checks whether the OSD size has changed and if so calls SetDisplayMenu() 2017-04-03 12:49:56 +02:00
osdbase.h cOsdMenu::Display() now checks whether the OSD size has changed and if so calls SetDisplayMenu() 2017-04-03 12:49:56 +02:00
pat.c Fixed a possible buffer overflow in handling CA descriptors 2016-12-23 14:08:14 +01:00
pat.h Fixed a possible buffer overflow in handling CA descriptors 2016-12-23 14:08:14 +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 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
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 Added debug output for checking the correct sequence of locking global lists 2017-05-28 12:47:54 +02:00
recording.h Recordings now have unique ids 2017-04-03 14:11:41 +02: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 Implemented strict locking of global lists 2015-09-01 11:14:27 +02: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 Fixed displaying remote timers in the main menu of skin LCARS 2017-04-20 08:49:31 +02:00
skinlcars.h Implemented LCARS skin 2012-06-02 13:17:16 +02:00
skins.c Added basic support for positioners to control steerable satellite dishes 2013-08-21 11:02:52 +02:00
skins.h Skins can now implement cSkinDisplayMenu::MenuOrientation() to display horizontal menus 2015-09-10 11:26:15 +02: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 The new function cStatus::ChannelChange() can be implemented by plugins to be informed about changes to the parameters of a channel that may require a retune 2014-01-25 10:54:51 +01:00
status.h Implemented strict locking of global lists 2015-09-01 11:14:27 +02:00
summary2info Removed the '.pl' suffix from all scripts 2011-12-04 14:36:37 +01:00
svdrp.c Fixed a possible crash in case the SVDRP connection to a peer VDR is terminated while getting remote timers 2017-05-31 14:06:07 +02:00
svdrp.h Implemented full handling of remote timers 2015-09-10 10:39:45 +02: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 Fixed leading/trailing blanks in the translation files; bumped all version numbers to 2.2.0 2015-02-17 15:11:36 +01: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 Added backtrace functions for debugging 2017-06-03 12:43:22 +02:00
thread.h Added backtrace functions for debugging 2017-06-03 12:43:22 +02:00
timers.c Added debug output for checking the correct sequence of locking global lists 2017-05-28 12:47:54 +02:00
timers.h Fixed editing a remote timer immediately after it has been created 2017-04-20 10:08:04 +02:00
tools.c 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
tools.h Fixed detecting the inclusion of STL header files in tools.h 2017-05-22 20:21:30 +02:00
transfer.c Added a missing 'const' to cReceiver::Receive(), to protect the given Data from being modified 2015-09-05 11:49:56 +02:00
transfer.h Added a missing 'const' to cReceiver::Receive(), to protect the given Data from being modified 2015-09-05 11:49:56 +02:00
vdr.1 The -u option now also accepts a numerical user id 2015-04-19 12:50:26 +02:00
vdr.5 The cEvent class now has a new member 'aux' 2017-04-02 12:13:15 +02:00
vdr.c Fixed a double channel switch when pressing the Channel+/- keys while no menu or channel display is open 2017-05-29 11:37:06 +02: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.