Go to file
Klaus Schmidinger a84f9a8e19 Improved responsiveness in cSectionHandler::Action() 2021-06-20 10:27:19 +02:00
PLUGINS/src Added test cases for alignment of semi-circles 2020-10-14 20:32:41 +02:00
libsi Removed 'register' from libsi/util.c to avoid a warning with ISO-C++17 2021-05-19 11:55:00 +02:00
po The 'Edit path' dialog now also shows the total size of all recordings in that path 2021-05-21 10:41:46 +02:00
symbols Made all font and image data 'const' 2006-02-05 13:55:58 +01:00
CONTRIBUTORS If an error occurs while recording, the respective entry in the list of recordings is now updated immediately 2021-06-19 14:21:16 +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 Improved responsiveness in cSectionHandler::Action() 2021-06-20 10:27:19 +02:00
INSTALL Added some missing user command calls for copying, renaming and moving recordings 2021-01-19 20:38:28 +01:00
MANUAL Now making sure that spawned timers with reduced start/stop margins actually record with the full margins 2021-04-16 16:26:47 +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 Makefile now makes sure the 'x' bit of Doxyfile.filter is set before calling doxygen 2020-12-31 11:15:11 +01:00
PLUGINS.html Fixed several typos 2020-09-16 13:48:33 +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 Fixed several typos 2020-09-16 13:48:33 +02:00
UPDATE-2.2.0 Fixed several typos 2020-09-16 13:48:33 +02:00
UPDATE-2.4.0 Fixed several typos 2020-09-16 13:48:33 +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 transponder value of channels is now cached 2021-05-21 09:38:34 +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 transponder value of channels is now cached 2021-05-21 09:38:34 +02:00
ci.c Fixed handling incomplete multi-packet CAT 2021-06-09 09:42:15 +02:00
ci.h Fixed inconsistent behavior in case only certain devices are used (selected by the '-D' option) 2019-05-28 15:54:22 +02:00
config.c Fixed case inconsistency with SVDRPDefaultHost 2018-02-15 14:41:14 +01:00
config.h Version 2.5.5 2021-06-10 09:59:45 +02: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 No longer permanently looping through PMT PIDs, which caused problems with some SatIP receivers 2021-06-08 14:57:26 +02:00
device.h The default for DEPRECATED_SETCURRENTCHANNEL has been set to 0 2021-05-21 12:51:16 +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 Removed unused declaration of cDvbTuner::SetFrontendType() 2021-06-09 09:12:25 +02:00
dvbdevice.h Fixed the 'else if' branch in cDevice::GetDeviceForTransponder(), which hasn't been active since version 1.7.29 2020-06-27 10:24:46 +02:00
dvbplayer.c Increased PLAYERBUFSIZE to (MAXFRAMESIZE * 5) to avoid stuttering replay under heavy system load, and to better document that this buffer size is related to the maximum frame size 2019-05-27 14:15:06 +02: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 Fixed a compiler warning 2020-12-18 14:51:57 +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 with anti-aliasing 2021-03-17 15:24:34 +01:00
dvbsubtitle.h Added missing 'virtual' 2015-04-28 09:26:02 +02:00
eit.c Now using a separate fixed value for internal EPG linger time 2021-04-28 20:44:56 +02:00
eit.h Improved handling EPG data from the EIT tables 2021-04-04 11:06:30 +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 a possible crash in the Schedule menu, in case Setup.EPGLinger is 0 2021-04-29 09:19:58 +02:00
epg.h Now using a separate fixed value for internal EPG linger time 2021-04-28 20:44:56 +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 Improved cSectionSyncer 2021-03-16 15:10:54 +01:00
filter.h Improved cSectionSyncer 2021-03-16 15:10:54 +01: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 Added code for the 'qad' audio track 2021-05-21 09:50:57 +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 several typos 2020-09-16 13:48:33 +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 The 'Edit path' dialog now also shows the total size of all recordings in that path 2021-05-21 10:41:46 +02:00
menu.h Implemented "Pattern Timers" 2020-12-26 15:49:01 +01:00
menuitems.c Implemented "Pattern Timers" 2020-12-26 15:49:01 +01:00
menuitems.h Implemented "Pattern Timers" 2020-12-26 15:49:01 +01:00
mtd.c Added cMtdHandler::StopDecrypting() 2020-06-16 14:33:32 +02:00
mtd.h Added cMtdHandler::StopDecrypting() 2020-06-16 14:33:32 +02:00
newplugin Fixed handling $(PKG_CONFIG) in newplugin 2021-01-02 14:32:20 +01:00
nit.c Improved cSectionSyncer 2021-03-16 15:10:54 +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 Whitespace cleanup 2020-12-18 23:02:47 +01:00
osd.h The macro DEPRECATED_GETBITMAP and the related code has been removed 2021-05-21 12:54:08 +02: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 restarting PMT pids after starting a recording on the currently viewed channel 2021-06-11 09:38:38 +02:00
pat.h Fixed restarting PMT pids after starting a recording on the currently viewed channel 2021-06-11 09:38:38 +02:00
peerdemo Fixed opening the UDP port in peerdemo 2019-03-11 10:28:22 +01:00
player.c Fixed a possible crash in case replay is started and stopped in rapid sequence 2020-05-18 16:47:29 +02:00
player.h Fixed a possible crash in case replay is started and stopped in rapid sequence 2020-05-18 16:47:29 +02:00
plugin.c Improved handling missing VDRPluginDestroyer() 2020-12-16 11:54:06 +01:00
plugin.h Improved deleting plugins in case the plugin uses its own memory management 2020-06-29 09:29:06 +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 If an error occurs while recording, the respective entry in the list of recordings is now updated immediately 2021-06-19 14:21:16 +02:00
recorder.h Recordings are now checked for errors 2021-05-19 11:22:20 +02:00
recording.c When checking whether a recording has already been made, recording names are now compared case insensitive 2021-06-20 10:03:28 +02:00
recording.h cRecordingInfo::Errors() now returns -1 for old recordings; added a missing 'const' 2021-05-23 15:03:17 +02:00
remote.c Fixed handling repeat function for keyboards 2019-05-13 13:41:29 +02:00
remote.h Added handling UTF-8 'umlaut' characters to cKbdRemote 2013-12-25 12:47:04 +01:00
remux.c Fixed cTsPayload::AtPayloadStart() to ignore TS packets from other PIDs 2021-05-11 20:47:31 +02:00
remux.h Fixed cTsPayload::AtPayloadStart() to ignore TS packets from other PIDs 2021-05-11 20:47:31 +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 Improved cSectionSyncer 2021-03-16 15:10:54 +01:00
sdt.h Now retuning if the received transponder's SDT doesn't contain the expected values for NID and TID 2020-05-04 08:50:20 +02:00
sections.c Improved responsiveness in cSectionHandler::Action() 2021-06-20 10:27:19 +02:00
sections.h Fixed flushing old data from the section handler 2021-06-08 15:10:51 +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 new functions cTimer::Start/StopTimeEvent() are now used in the LCARS skin to display the start/stop times of timers in the main menu 2021-04-18 14:56:40 +02:00
skinlcars.h Implemented LCARS skin 2012-06-02 13:17:16 +02:00
skins.c If cSkins::Message() is called from a background thread and Type is not mtStatus, the call is now automatically forwarded to QueueMessage() 2019-05-29 16:44:55 +02:00
skins.h The default for DEPRECATED_SKIN_SETITEMEVENT has been set to 0 2021-05-21 13:03:42 +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 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 Now explicitly triggering respawning of pattern timers 2021-01-14 10:29:05 +01: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 several typos 2020-09-16 13:48:33 +02:00
thread.h Fixed several typos 2020-09-16 13:48:33 +02:00
timers.c Fixed a typo 2021-05-03 14:06:12 +02:00
timers.h Deleting expired timers is now triggered immediately after the timers are modified 2021-04-20 13:22:37 +02:00
tools.c The cFile class has been partially deprecated 2021-05-20 10:13:43 +02:00
tools.h Now using __cplusplus instead of DISABLE_TEMPLATES_COLLIDING_WITH_STL, and using std::min(), std::max() and std::swap() if available 2021-05-26 13:37:53 +02: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 Implemented "Pattern Timers" 2020-12-26 15:49:01 +01:00
vdr.5 The error counter of a recording is now copied as is when editing a recording 2021-05-25 20:09:29 +02:00
vdr.c The macro DEPRECATED_VDR_CHARSET_OVERRIDE and the related code has been removed 2021-05-21 12:43:18 +02:00
videodir.c Added some missing user command calls for copying, renaming and moving recordings 2021-01-19 20:38:28 +01: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.