vdr-plugin-streamdev/CONTRIBUTORS

254 lines
7.6 KiB
Plaintext
Raw Normal View History

2004-12-30 23:43:55 +01:00
Special thanks go to the following persons (if you think your name is missing
here, please send an email to vdrdev@schmirler.de):
Klaus Schmidinger
for VDR as a whole
for permission to use VDR 1.6.0 cRemux code for PES remuxing
Sascha Volkenandt, the original author,
for this great plugin
2004-12-30 23:43:55 +01:00
The Metzler Brothers
as a lot of code has been taken from their libdvbmpeg package
2004-12-30 23:43:55 +01:00
Angelus (DOm)
for providing Italian language texts
for reporting problems with the Elchi-Patch
2004-12-30 23:43:55 +01:00
Michal
for sending a patch to select the HTTP streamtype via remote
Rolf Ahrenberg
for providing Finnish language texts
for adding externremux.sh commandline parameter
for silencing compiler warnings
for adding PAT, PMT, PCR and EIT to HTTP TS streams
for fixing a memory leak in buffer overflow situations
for adding a return code check to vasprintf()
for suggesting a fix of the Makefile's default target
for a TS PAT repacker based on Petri Laine's VDR TS recording patch
for making it possible to pass parameters to externremux.sh
for removing pre VDR 1.4 legacy code
for adding gettext support
for fixing output format of some debug messages
for replacing private members by cThread::Running()/Active()
for improving externremux script termination
for fixing PAT repacker version field
for improving LIMIKUUTIO and PARENTALRATING patch detection
for suggesting to include the charset in HTTP replies
for requesting replacement of asprintf calls
for suggesting to change the URL path from EXTERN to EXT
2010-12-02 09:57:17 +01:00
for suggesting increased thread priorities for cStreamdevWriter/Streamer
for adding "Hide mainmenu entry" option
for polishing po file headers
for adding the special meaning "show current channel" to channel 0
2004-12-30 23:43:55 +01:00
Rantanen Teemu
for providing vdr-incompletesections.diff
Thomas Keil
for providing vdr-localchannelprovide.diff
for maintaining the plugin for a while
Artur Skawina
for fixing an fd leak
Norad
for reporting a problem terminated externremux.sh children
Udo Richter
for fixing streamdev-server shutdown
for speeding up cPluginStreamdevServer::Active()
for adapting to VDR 1.5.0 API
2008-10-13 13:30:05 +02:00
for adapting to VDR 1.7.1
for proper tsplay-0.2 patch detection
greenman
for reporting that the log could get flooded on connection failures.
Petri Hintukainen
for making section filtering work
for fixing a segfault with VDR 1.5
for fixing high CPU load when data stream is disconnected
for adding PAT, PMT and PCR to HTTP TS streams
for fixing a segfault / deadlock when shutting down
for fixing compiler warnings
for adding M3U playlists
ollo
for suggesting support for WMM capable WLAN accesspoints
vdr-freak
for reporting connection aborts when externremux ringbuffer is full
alexw
for reporting client reconnect problems after a server restart
for a workaround for tuning problems with 1.5.x clients
Olli Lammi
for fixing a busy wait when client isn't accepting data fast enough
for suggesting signaling instead of sleeping when writing to buffers
Joerg Pulz
for his FreeBSD compatibility patch
tobi
for pointing to unused files in the libdvbmpeg directory
Diego Pierotto
for providing Italian language texts
micky979
for providing French language texts
2008-10-02 09:21:15 +02:00
Tiroler
for reporting a problem when switching between encrypted channels
Pixelpeter
for an initial fix to the "switching between ecncrypted channels" problem
Anssi Hannula
2009-07-17 09:05:40 +02:00
for the vdr-1.6.0-intcamdevices patch
for fixing insecure format strings in LSTX handlers
wirbel
for pointing out that section filtering is optional for VDR devices
for reporting a problem with Makefile defines in VDR 1.7.4+
Jori Hamalainen
for extensive testing while making stream compatible to Network Media Tank
for adding Network Media Tank browser support to HTML pages
2014-09-02 08:54:28 +02:00
Oliver Wagner
for pointing out a problem with the encrypted channel switching fix
for suggesting use of SO_KEEPALIVE socket option to detect dead sockets
2014-09-02 08:54:28 +02:00
for making cStatus::ChannelChange re-tune only if CA IDs changed
Joachim K<>nig-Baltes
for fixing Min/MaxPriority parsing
Artem Makhutov
for suggesting and heavy testing IGMP based multicast streaming
Alwin Esch
for adding XBMC support by extending VTP capabilities
for adding VDR 1.7.11 parental rating support for VTP LSTE command
for adding the DELT FORCE option to delete running timers
BBlack
for reporting that updating recordings list on CmdPLAY is a bad idea
Milan Hrala
for providing Slovak language texts
Valdemaras Pipiras
for providing Lithuanian language texts
sk8ter
for fixing failures when switching between two encrypted channels
lhanisch
for fixing a memory leak in cStreamdevPatFilter::GetPid
2010-04-19 12:17:33 +02:00
Eric Valette
for adding support for EnhancedAC3
carel
for reporting "plugin doesn't honor APIVERSION" error in new Makefile
for helping to find a way to cleanly shutdown externremux with mencoder
for reporting that GetClippedNumProvidedSystems is no longer up-to-date
wolfi.m
for reporting a typo in externremux quality parameter value
2010-07-20 14:26:29 +02:00
Norman Thiel
for reporting a wrong URL path in m3u playlists
vel_tins
for reporting that externremux x264 uses value of ABR for VBR
2010-12-02 09:57:17 +01:00
for various suggestions to improve externremux.sh
Matthias Prill
for reporting a compiler error with older libstdc++ versions
2010-12-02 09:57:17 +01:00
Timothy D. Lenz
for reporting missing support for invisible channel groups in HTTP menu
Rainer Blickle
for reporting that channel switches may interrupt live TV on the server
Gavin Hamill
for reporting that ES/PS/PES no longer works
Michal Novotny
for reporting that switching away live TV fails when "always suspended"
wtor
for reporting that a client may interrupt replaying on FF cards
for helping to debug channel switch issues on FF cards
2011-03-18 15:52:42 +01:00
Javier Bradineras
for providing Spanish language texts
Pekko Tiitto
for providing a git mirror of streamdev's lost CVS repository
for suggesting to use mencoder params -alang and -msglevel in externremux
Lubo<EFBFBD> Dole<6C>el
for suggesting higher buffer sizes to fix some ringbuffer overflows
Ville Skytt<74>
for updating the outdated COPYING file and FSF address
for restricting VTP command RENR to liemikuutio patch < 1.32
for fixing memory and filedescriptor leaks in libdvbmpeg
for code cleanup and optimization
for correcting typos
Methodus
for suggesting to use HTTP code 503 for unavailable channels
Uwe
for reporting a compiler error in client/device.c with VDR < 1.7.22
Chris Tallon
for his kind permission to use VOMP's recplayer for replaying recordings
macmenot
for adapting Makefiles to VDR 1.7.36+
thomasjfox
for fixing cSuspendCtl preventing idle shutdown
hivdr
for adding the pos= parameter for replaying recordings from a certain position
2013-10-02 00:03:39 +02:00
for suggesting to add the HTTP "Server" header
hummel99
for reporting and helping to debug channel switch issues with priority > 0
for reporting a race condition when switching the server's LiveTV device
Henrik Niehaus
for fixing replay of large TS files on 32-bit systems
Guy Martin
for adding SVDRP commands to list and disconnect clients
Martin1234
for suggesting a service call, returning the number of clients
for implementing GetCurrentlyTunedTransponder() on client
Fixed problems related to VTP filter streaming like ringbuffer overflows, stuttering or aborting video stream (refs #2045) Toerless Eckert wrote: This patch tries to resolve problems in streamdev-client that can occur when enabling "StreamFilters". Enabling this option is necessary to receive certain programs with dynamic PIDs such as some german "regional" broadcast (eg: NDR). Problem: Without this fix, the following behavior was observed on a Raspberry PI running streamdev-0.6.1-git with VDR-2.6.1: - Buffer overflows of filter data - Stop/go video on channels - Total stopping of video More logs in: http://www.vdr-portal.de/board16-video-disk-recorder/board55-vdr-plugins/125237- streamdev-client-filter-daten-streamen-ndr-raspberry-haengt/ Analysis: VDR expect section data from filters separately from the main program stream. Historically, it received each filter data via a separate file descriptor from the DVB card. In the streamdev-client module, a socketpair is used to feed filter data to the main VDR code. During certain operations in VDR, such as startup or channel change (depending also on the speed of initialization of the video output driver), VDR does not consume the filter data as fast as it is provided by streamdev-client, resulting in overflow of the default socket buffers used by streamdev-client. To add to the problem of overflowing the socketpair buffers, the streamdev-client code sends several times a second short packets into the socketpair to determine if the receiving side (VDR) has closed the socketpair (IsClosed(), CarbageCollect()). This further clogs up the socketpair() buffer. The raspberry PI socketpair buffering behavior seems to be the same as that of other 3.x linux systems, the socket buffer size is by default 163840, and it can be increased via sysctl net.core.wmem_max. During startup, it can take up to 10 seconds before VDR will consume filter data, so the socketpair buffer can fill up with 10 seconds worth of data. Solution 1. IsClosed()/CarbageCollect() where removed from client/filter.c and replaced by explicitly tracking when VDR closes a filter socket. This alone seems to already resolve the problem of hanging or stop&go video and seems to be sufficient to receive dynamic-PID channels reliably. 2. filter.c was enhanced to request a larger socket buffer size if config option FilterSockBufSize is set. 3. If supported (if streamdev-client runs on linux), the socketpair queue is "flushed" to reduce the amount of "random" packet drop messages and to rather drop sequential messages.
2015-01-24 00:19:04 +01:00
Toerless Eckert
for converting suspend.dat into proper PES format
Fixed problems related to VTP filter streaming like ringbuffer overflows, stuttering or aborting video stream (refs #2045) Toerless Eckert wrote: This patch tries to resolve problems in streamdev-client that can occur when enabling "StreamFilters". Enabling this option is necessary to receive certain programs with dynamic PIDs such as some german "regional" broadcast (eg: NDR). Problem: Without this fix, the following behavior was observed on a Raspberry PI running streamdev-0.6.1-git with VDR-2.6.1: - Buffer overflows of filter data - Stop/go video on channels - Total stopping of video More logs in: http://www.vdr-portal.de/board16-video-disk-recorder/board55-vdr-plugins/125237- streamdev-client-filter-daten-streamen-ndr-raspberry-haengt/ Analysis: VDR expect section data from filters separately from the main program stream. Historically, it received each filter data via a separate file descriptor from the DVB card. In the streamdev-client module, a socketpair is used to feed filter data to the main VDR code. During certain operations in VDR, such as startup or channel change (depending also on the speed of initialization of the video output driver), VDR does not consume the filter data as fast as it is provided by streamdev-client, resulting in overflow of the default socket buffers used by streamdev-client. To add to the problem of overflowing the socketpair buffers, the streamdev-client code sends several times a second short packets into the socketpair to determine if the receiving side (VDR) has closed the socketpair (IsClosed(), CarbageCollect()). This further clogs up the socketpair() buffer. The raspberry PI socketpair buffering behavior seems to be the same as that of other 3.x linux systems, the socket buffer size is by default 163840, and it can be increased via sysctl net.core.wmem_max. During startup, it can take up to 10 seconds before VDR will consume filter data, so the socketpair buffer can fill up with 10 seconds worth of data. Solution 1. IsClosed()/CarbageCollect() where removed from client/filter.c and replaced by explicitly tracking when VDR closes a filter socket. This alone seems to already resolve the problem of hanging or stop&go video and seems to be sufficient to receive dynamic-PID channels reliably. 2. filter.c was enhanced to request a larger socket buffer size if config option FilterSockBufSize is set. 3. If supported (if streamdev-client runs on linux), the socketpair queue is "flushed" to reduce the amount of "random" packet drop messages and to rather drop sequential messages.
2015-01-24 00:19:04 +01:00
for investigating and fixing problems caused by filter streaming
for fixing TimedWrite() so it doesn't fail after a slow but successful write
for suggesting to double the size of client's filter buffer
Tomasz Maciej Nowak
for providing Polish language texts
Christopher Reimer
for providing an initial compatibility patch for VDR 2.3.1
Matthias Senzel
for refining the compatibility patch for VDR 2.3.1