summaryrefslogtreecommitdiff
path: root/README
AgeCommit message (Collapse)Author
2015-01-24Fixed problems related to VTP filter streaming like ringbuffer overflows,Frank Schmirler
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.
2014-05-18Configurable buffer for live TVFrank Schmirler
2014-05-18TypoFrank Schmirler
2013-11-17Disabled PS remuxer which is said to produce anything but PSFrank Schmirler
2013-11-17The patches intcamdevices and ignore_missing_cam are no longer requiredFrank Schmirler
on VDR >= 1.7.30. The localchannelprovide patch became obsolete with VDR 1.7.21.
2013-11-02Added option to suspend live TV when the server starts (closes #1296)Frank Schmirler
2013-02-27Adapted Makefiles to VDR 1.7.36+ (thanks to macmenot). Old makefiles haveFrank Schmirler
been renamed to Makefile-1.7.33 (fixes #1199)
2013-01-29Implemented multi-device support for streamdev client (closes #1207)Frank Schmirler
2012-06-28Corrected typos (thanks to Ville Skyttä)Frank Schmirler
2012-05-29Release 0.6.0Frank Schmirler
2012-05-12Updated README, dropped obsolete patches.Frank Schmirler
2012-04-21New special meaning "show current channel" when channel 0 is requested.Frank Schmirler
Applies to HTTP streaming only (thanks to Rolf Ahrenberg)
2012-03-04Use the new streamdev-client setup option "Live TV Priority" to controlFrank Schmirler
precedence among multiple clients. The VDR option "Primary Limit" which has previouly been used for this purpose has been dropped in VDR 1.7.25.
2012-03-03Timout for network operations now configurable in streamdev-client setupFrank Schmirler
2011-12-11Support for non-cycle-free setups (e.g. where two VDRs mutually shareFrank Schmirler
their DVB cards through streamdev-client/-server). Must be enabled in streamdev-server setup. Obsoletes recursion patches.
2011-12-09VDR 1.7.22 obsoletes cap_net_raw patch.Frank Schmirler
Added cap_net_raw patch for VDR 1.7.5 - 1.7.21.
2011-11-28Added server menu with list of clients. Connections can be terminatedFrank Schmirler
with the "red" key. The former main menu action of suspending live TV moved to the "blue" key. Squashed commit of the following: commit 7175d7de91b637eb057831b5c27af78d3870f146 Author: Frank Schmirler <vdr@schmirler.de> Date: Sun Nov 27 11:51:26 2011 +0100 Updated README commit 94aef85adc9c2922205145550ff00e59c694e36d Author: Frank Schmirler <vdr@schmirler.de> Date: Sun Nov 27 11:32:16 2011 +0100 Moved "closing connection" log message to overload of cTBSocket::Close() in cServerConnection. commit 9b91301d943cfbec5208419704cfece84267223d Author: Frank Schmirler <vdr@schmirler.de> Date: Fri Nov 25 00:24:37 2011 +0100 Don't keep a pointer to the connection in components MulticastGroup structure as the connection may now be deleted from outside via menu. commit 7347e24123ec0b852091ec035cabce0e10278a72 Author: Frank Schmirler <vdr@schmirler.de> Date: Thu Nov 24 23:45:59 2011 +0100 Fixed missing Display() call after disconnecting a client. commit c652e8fa8141d7e323cbdbbc0a662244a5a84955 Author: Frank Schmirler <vdr@schmirler.de> Date: Tue Nov 22 01:15:09 2011 +0100 Added server menu with list of clients. Connections can be terminated with the "red" key. The former main menu action of suspending live TV moved to the "blue" key.
2011-10-25Added notice that sysctl commands for max number of IGMP groups has to beFrank Schmirler
issued before starting VDR.
2011-02-16Deleted obsolete section about static priorityFrank Schmirler
2011-02-16return value of streamdev-clients cDevice::NumProvidedSystems() nowFrank Schmirler
configurable in plugin setup (fixes #552)
2011-03-22Snapshot 2010-09-15Frank Schmirler
2010-06-08dropped "Synchronize EPG" featureschmirl
Modified Files: HISTORY README streamdev-client.c streamdev-client.h client/device.c client/setup.c client/setup.h client/socket.c client/socket.h po/de_DE.po po/fi_FI.po po/fr_FR.po po/it_IT.po po/lt_LT.po po/ru_RU.po po/sk_SK.po
2009-10-19fixed regression from fix for switching between encrypted channels. It wasschmirl
no longer possible to receive multiple (FTA) streams from the same transponder
2009-09-04Fixed sysctl commandschmirl
2009-02-13Added IGMP multicast serverschmirl
Modified Files: CONTRIBUTORS HISTORY Makefile README po/de_DE.po po/fi_FI.po po/fr_FR.po po/it_IT.po po/ru_RU.po server/component.c server/component.h server/connection.c server/connection.h server/livefilter.c server/server.c server/setup.c server/setup.h server/streamer.c server/streamer.h streamdev/streamdevhosts.conf tools/socket.c tools/socket.h Added Files: patches/vdr-cap_net_raw.diff server/componentIGMP.c server/componentIGMP.h server/connectionIGMP.c server/connectionIGMP.h
2009-01-29Added min/max priority (#508)schmirl
Modified Files: HISTORY README client/device.c client/setup.c client/setup.h po/de_DE.po po/fi_FI.po po/fr_FR.po po/it_IT.po po/ru_RU.po
2008-10-14- added HTTP authentication (#475)schmirl
Modified Files: HISTORY README streamdev-server.c server/connection.h server/connectionHTTP.c server/connectionHTTP.h server/server.c server/server.h
2008-10-02Added vdr-1.6.0-intcamdevices.patch (#429)schmirl
Modified Files: HISTORY README client/device.h Added Files: patches/vdr-1.6.0-intcamdevices.patch
2008-04-08- added gettext support (thanks to Rolf Ahrenberg)schmirl
- added vdr-1.6.0-ignore_missing_cam patch - dropped obsolete respect_ca patch - removed legacy code for < VDR 1.5.9 (thanks to Rolf Ahrenberg)
2008-04-07- changed location of streamdevhosts.conf to VDRCONFDIR/plugins/streamdevschmirl
- changed externremux.sh's default location to VDRCONFDIR/plugins/streamdev - added sample externremux.sh from http://www.vdr-wiki.de/ - stop providing channels after client has been disabled at runtime - added logging of the client device's card index - changed default suspend mode to "Always suspended" - added "Hide Mainmenu Entry" setup option on client
2008-03-28Rewrite of http menu (#439)schmirl
Including - m3u playlists by Petri Hintukainen (#254) - way to pass parameters to externremux by Rolf Ahrenberg - using host header for absolute URLs for better DNAT / Reverse Proxy support
2008-03-28Updatedschmirl
2006-08-07Wieder mal ein Testthomas
2006-08-06*** empty log message ***thomas
2006-08-06Finaler Test neues CommitInfo Systemthomas
2006-08-06Finaler Test Neues CommitInfo Systemthomas
2006-08-06*** empty log message ***thomas
2006-08-06Nächster Testthomas
2006-08-06Nochmal ein Test von CVSSpamthomas
2006-08-06Testthomas
2006-08-06CVS Testthomas
2004-12-30Initial revisionlordjaxom