Commit Graph

163 Commits

Author SHA1 Message Date
Frank Schmirler a63f7247cb With VDR 1.7.25 priorities down to -99 will be used 2012-03-04 01:20:57 +01:00
Frank Schmirler 26af4459d8 Use the new streamdev-client setup option "Live TV Priority" to control
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-04 01:15:40 +01:00
Frank Schmirler 3da6ae734e Timout for network operations now configurable in streamdev-client setup 2012-03-03 23:39:30 +01:00
Frank Schmirler c1dc1453c5 Added timeout to Commit() 2012-03-03 23:39:30 +01:00
Frank Schmirler a047fc7d32 Report the server-side HTTP status "503 Service unavailable" instead of
the client-side error "409 Conflict" when a channel is unavailable
(suggested by Methodus)
2012-03-01 09:01:37 +01:00
Frank Schmirler 229e8fbfff Update of po headers and Finnish translation (thanks to Rolf Ahrenberg) 2011-12-13 12:59:31 +01:00
Frank Schmirler ba7c61fb39 Support for non-cycle-free setups (e.g. where two VDRs mutually share
their DVB cards through streamdev-client/-server).
Must be enabled in streamdev-server setup. Obsoletes recursion patches.
2011-12-11 17:03:09 +01:00
Frank Schmirler 3440072e7e API change of VDR 1.7.22 2011-12-09 09:05:09 +01:00
Frank Schmirler 59c6558ce3 VDR 1.7.22 obsoletes cap_net_raw patch.
Added cap_net_raw patch for VDR 1.7.5 - 1.7.21.
2011-12-09 09:04:00 +01:00
Frank Schmirler d93ca82bd1 Update and UTF-8 conversion of Finnish po files (thanks to Rolf Ahrenberg) 2011-12-08 13:11:43 +01:00
Frank Schmirler ffb8707118 Added "Hide mainmenu entry" option on server (thanks to Rolf Ahrenberg) 2011-12-08 13:07:17 +01:00
Frank Schmirler afe255aa0b 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.

Squashed commit of the following:

commit 7175d7de91
Author: Frank Schmirler <vdr@schmirler.de>
Date:   Sun Nov 27 11:51:26 2011 +0100

    Updated README

commit 94aef85adc
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 9b91301d94
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 7347e24123
Author: Frank Schmirler <vdr@schmirler.de>
Date:   Thu Nov 24 23:45:59 2011 +0100

    Fixed missing Display() call after disconnecting a client.

commit c652e8fa81
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-11-28 16:23:57 +01:00
Frank Schmirler ce1583a756 Code cleanup and optimization (thanks to Ville Skyttä) 2011-11-21 13:03:06 +01:00
Frank Schmirler f9224d0618 properly shutdown IGMP timeout handler thread when the plugin is stopped.
Fixes occasional segfaults on VDR exit.
2011-11-13 23:27:46 +01:00
Frank Schmirler 30674fb6c8 fixed memory leak in libdvbmpeg read_pes (fixes #769) 2011-11-12 22:31:39 +01:00
Frank Schmirler 8850e63da5 dropped several unused functions in libdvbmpeg 2011-11-12 22:28:27 +01:00
Frank Schmirler 6c9c6ca77f restricted VTP command RENR to liemikuutio patch < 1.32 (fixes #786).
Build fails with newer versions of this patch. RENR was introduced for XBMC
which is no longer using streamdev at all, so the impact should be low.
2011-11-07 17:15:10 +01:00
Frank Schmirler 9cb72968f6 updated outdated COPYING file and FSF address (fixes #767, fixes #768) 2011-11-07 16:57:23 +01:00
Frank Schmirler b9d2f66295 include SDT and TDT in TS streams 2011-10-25 17:18:23 +02:00
Frank Schmirler 077398fdef Revert "dropped cServerConnection::m_Pending"
Required by VTP

This reverts commit bdaea38b86.
2011-10-24 08:44:31 +02:00
Frank Schmirler bdaea38b86 dropped cServerConnection::m_Pending 2011-10-20 23:45:44 +02:00
Frank Schmirler 6b633dbfa2 the icy-name HTTP header sent with radio streams makes VLC pick the wrong
demuxer. Send icy-name only for ES audio streams (fixes #746)
2011-10-20 23:37:27 +02:00
Frank Schmirler 615f101b9d fixed regression of "live TV must be switched in VDR main thread" change:
deadlock in IGMP streaming server when switching live TV.

Previously cComponentIGMP::Accept did all the work including the channel
switch with the new cConnectionIGMP waiting for MainThreadHook. But as the
new connection is stored *after* Accept, MainThreadHook didn't see it and
so wasn't able to switch. The streamdev main thread waited forever.

Moved the main work into cComponentIGMP::Welcome.
2011-10-18 08:50:54 +02:00
Frank Schmirler 2fae067cfe streamdev-client returns true in its AvoidRecording() method 2011-09-10 00:08:04 +02:00
Frank Schmirler 475e7bbd6a updated device selection to code of VDR 1.7.19 2011-09-10 00:04:08 +02:00
Frank Schmirler 4c0888d483 adaption to VDR 1.7.12 cReceiver API change 2011-09-09 23:26:45 +02:00
Frank Schmirler 24a1638ddd increased WRITERBUFSIZE. Has been reported to fix some ringbuffer overflows
(thanks to Lubo¨ Dole¸el)
2011-09-02 13:18:01 +02:00
Frank Schmirler cc74cba396 check availability of channel if VTP command TUNE is called without prior
PROV call (e.g. client side EPG scan)
2011-09-02 13:11:13 +02:00
Frank Schmirler 2c8377d42a added support for VDR 1.7.19 SignalStrength/SignalQuality 2011-07-06 09:13:50 +02:00
Frank Schmirler 673fbae2e2 analog video channels use the same transponder and pid for different
channels, so streamdev-client must always issue TUNE command.

Thanks to Martin Dauskardt for providing the technical background related
to pvrinput.
2011-06-27 13:07:05 +02:00
Frank Schmirler f73665a0bd Server must close the VTP connection also if filter stream is broken
Otherwise, if a client which is not livestreaming (e.g. watching a recording)
doesn't properly shutdown the port 2004 connection, the filter stream remains
open until TCP keepalive takes care of it. In the meantime, the log will show
ringbuffer overflows.
2011-06-03 13:24:12 +02:00
Frank Schmirler f6299b4584 fixed missing #ifdefs for new NumProvidedSystems setup option 2011-05-16 08:46:17 +02:00
frank 09e0a0176b - new externremux.sh mencoder config options: audio pid by language code
(-alang) and verbosity (-msglevel) (thanks to Pekko Tiitto)
2011-05-02 23:39:19 +02:00
Frank Schmirler 19e8cf2a28 writer must not spend too much time waiting in select() without checking
if the thread has been cancelled.

Delayed the streamdev main thread for up to 3 seconds. As the command timeou
of VTP connections is 1.5 seconds, one hanging connection could have caused
VTP connections to die.
2011-04-11 13:56:49 +02:00
Frank Schmirler 17bb6390f9 Merge branch 'master' of projects.vdr-developer.org:vdr-plugin-streamdev
Conflicts:
	HISTORY
2011-03-18 15:56:34 +01:00
Frank Schmirler 58a4f3dbe5 Added Spanish translation 2011-03-18 15:52:42 +01:00
Frank Schmirler 1a933d6cc9 Merge branch 'switch_livetv'
Conflicts:
	HISTORY
	server/connection.c
2011-03-07 23:06:27 +01:00
Frank Schmirler c06970123c Live TV must be switched in VDR main thread (fixes #568). 2011-03-07 23:04:18 +01:00
Frank Schmirler 2cb0ba6cf1 Dropped compatibility with VDR < 1.5.16 2011-03-07 22:05:36 +01:00
Frank Schmirler dc41eecffd return value of streamdev-clients cDevice::NumProvidedSystems() now
configurable in plugin setup (fixes #552)
2011-02-16 08:57:05 +01:00
Frank Schmirler 30930d5c74 Release 0.5.1 2011-02-11 12:01:58 +01:00
Frank Schmirler 3a2936a140 updated copy of GetClippedNumProvidedSystems to the version used since VDR 1.7.15 2011-02-01 14:24:47 +01:00
Frank Schmirler 06d5418e42 Fixed the code deciding if a device is in use for live TV or not. It did
not work as expected for FF cards (fixes #536)
2011-01-28 12:42:33 +01:00
Frank Schmirler 0783799826 increased client side timeout for TUNE command 2011-01-27 16:15:25 +01:00
Frank Schmirler 9fbc166848 Improved channel switch code
- Avoid device allows more efficient code when trying to move live TV to different card
- Added some more dsyslog messages to help debugging channel switch issues
2010-12-14 13:22:55 +01:00
Frank Schmirler abf8a62fe9 make sure that a client doesn't interrupt replaying on server's FF card
http://www.vdr-portal.de/board/thread.php?postid=948311 (reported by wtor)
2010-12-10 18:06:39 +01:00
Frank Schmirler a35675490d switching away live TV failed even when "always suspended"
The vdr main loop usually switches back to the previous channel at
"Make sure we have a visible programme in case device usage has changed"
(#472)
2010-12-10 17:03:04 +01:00
Frank Schmirler 0c07109974 fixed regression: no receiver created for ES/PS/PES
(reported by Gavin Hamill)
2010-12-10 16:38:54 +01:00
Frank Schmirler 6ea5efe939 Snapshot 2010-09-15 2011-03-22 21:16:18 +02:00
schmirl 0a860a1e3e don't use std::map.at(). It's not available in older libstdc++ version
Modified Files:
	CONTRIBUTORS HISTORY remux/extern.c server/connectionHTTP.c
2010-07-22 14:18:17 +00:00
schmirl c7d19619db fixed extremux x264 using value of ABR for VBR 2010-07-22 06:30:46 +00:00
schmirl c0a7f1610a fixed wrong URL path in m3u playlists 2010-07-20 12:26:29 +00:00
schmirl edc3ad1c8e - set externremux.sh executable in distribution archive
- externremux quality value should be wlan54, not wlan45
2010-07-20 06:23:32 +00:00
schmirl ebacf759ab dropped "Synchronize EPG" feature
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
2010-06-08 05:55:16 +00:00
schmirl 1a1141e4a1 Switched to proper tsplay-0.2 patch detection
Modified Files:
	server/recplayer.c Makefile CONTRIBUTORS HISTORY
2010-06-04 18:32:34 +00:00
schmirl 7517b874d8 added compatibility with VDR 1.6 tsplay-0.1 patch 2010-05-14 06:23:59 +00:00
schmirl 6f984b87e3 Added support for EnhancedAC3 2010-04-19 10:17:33 +00:00
schmirl 8a128f7c57 fixed a memory leak in cStreamdevPatFilter::GetPid (thanks to lhanisch) 2010-02-20 23:02:10 +00:00
schmirl 2f027a6ffc - length -1 is the correct value for streams in M3U playlists 2010-02-20 22:18:14 +00:00
schmirl dd7cc838ad switching between two encrypted channels on the same transponder didn't
always work (thanks to sk8ter@vdrportal)
2010-02-17 12:39:02 +00:00
schmirl 93c9aa9af0 added DELT FORCE option to delete running timers (#554) 2010-01-29 12:03:01 +00:00
schmirl c882a991cc added VDR 1.7.11 parental rating support for VTP LSTE command (#555) 2010-01-29 11:44:52 +00:00
schmirl b44c9ac3f5 added Lithuanian translation (thanks to Valdemaras Pipiras) 2009-12-15 13:38:29 +00:00
schmirl b3c72deaed fixed missing virtual destructor for cTSRemux 2009-12-03 07:26:13 +00:00
schmirl d794d83854 added defines for large file support to Makefile as required by VDR 1.7.4+ 2009-11-04 11:12:20 +00:00
schmirl b5bd22e7bd Added Slovak translations (thanks to Milan Hrala) 2009-11-03 11:21:14 +00:00
schmirl e99ea00348 fixed regression from fix for switching between encrypted channels. It was
no longer possible to receive multiple (FTA) streams from the same
transponder
2009-10-19 06:19:10 +00:00
schmirl 73e30fd5ca silenced warnings concerning asprintf (requested by Rolf Ahrenberg)
Modified Files:
	CONTRIBUTORS HISTORY server/connectionVTP.c server/setup.c
2009-10-13 06:38:47 +00:00
schmirl ac40edfd24 don't update recordings list on CmdPLAY (reported by BBlack) 2009-09-30 10:10:40 +00:00
schmirl 1cf41fb16f - cleaned up common.h / common.c
- dropped cStreamdevMenuSetupPage
2009-09-18 10:41:41 +00:00
schmirl 6fb88f8d99 report charset in HTTP replies (suggested by Rolf Ahrenberg) 2009-09-15 10:39:17 +00:00
schmirl 0e9e22c23d use SO_KEEPALIVE option on all sockets do detect dead sockets 2009-09-04 13:24:30 +00:00
schmirl 4ab256caea enable PatFilter for externremux, so VLC can be used as remuxer or client 2009-08-05 09:33:13 +00:00
schmirl d5fa0a49f8 fixed insecure format strings in LSTX handlers 2009-07-17 06:21:23 +00:00
schmirl 8469a4d894 Updated Finish translations (thanks to Rolf Ahrenberg) 2009-07-07 10:47:35 +00:00
schmirl 41763e7710 removed redefinitions in includes - caused problems in older compilers 2009-07-06 06:23:28 +00:00
schmirl c8cf217c01 fixed ts2ps.h defines 2009-07-06 06:14:20 +00:00
schmirl 5644d3c03f fixed missing virtual for cTS2PESRemux destructor 2009-07-06 06:11:11 +00:00
schmirl fe77c5dccb silenced format mismatch warning on 64bit OS 2009-07-03 21:44:18 +00:00
schmirl 052a94db5a added XBMC support by extending VTP capabilities (thanks to Alwin Esch)
Modified Files:
	CONTRIBUTORS HISTORY Makefile common.h server/connectionVTP.c
	server/connectionVTP.h
2009-07-01 10:46:15 +00:00
schmirl 7b8e396f77 now there's a common baseclass for all remuxers, make use of it
Modified Files:
	HISTORY remux/ts2pes.c remux/ts2pes.h remux/tsremux.h
	server/livestreamer.c server/livestreamer.h
2009-06-30 06:04:33 +00:00
schmirl 44a71ffe8a added cDevice::NumProvidedSystems() which was introduced in VDR 1.7.0
Modified Files:
	HISTORY client/device.h
2009-06-23 10:26:54 +00:00
schmirl 008e7c8510 - added namespace to remuxers
- increased WRITERBUFSIZE - buffer was too small for high bandwidth content
- removed cStreamdevStreamer::m_Running
- eliminated potential busy waits in remuxers
- updated cTSRemux static helpers to code of their VDR 1.6.0 counterparts
- re-enabled PES vor VDR 1.7.3+. Streamdev now uses a copy of VDR 1.6.0's
  cRemux for TS to PES remuxing.
- make sure that only complete TS packets are written to ringbuffers
- use signaling instead of sleeps when writing to ringbuffers
- optimized cStreamdevPatFilter PAT packet initialization
- fixed cStreamdevPatFilter not processing PATs with length > TS_SIZE - 5
- use a small ringbuffer for cStreamdevPatFilter instead of writing to
  cStreamdevStreamers SendBuffer as two threads mustn't write to the same
  ringbuffer

Modified Files:
	CONTRIBUTORS HISTORY Makefile common.c common.h
	streamdev-server.c libdvbmpeg/transform.h remux/extern.c
	remux/extern.h remux/ts2es.c remux/ts2es.h remux/ts2ps.c
	remux/ts2ps.h remux/tsremux.c remux/tsremux.h
	server/connectionHTTP.c server/connectionVTP.c
	server/livestreamer.c server/livestreamer.h server/menuHTTP.c
	server/streamer.c server/streamer.h
Added Files:
	remux/ts2pes.c remux/ts2pes.h
2009-06-19 06:32:38 +00:00
schmirl 64ff2c08be Added missing call to StopSectionHandler().
This method was introduced in VDR 1.5.15. Its absence could cause crashes
when shutting down VDR
2009-04-06 06:48:59 +00:00
schmirl 78410ea576 Added IGMP multicast server
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-02-13 10:39:20 +00:00
schmirl c26b89f9c2 ignore trailing blank lines in HTTP requests 2009-02-13 07:02:18 +00:00
schmirl 37f2adf02b Fixed parsing Min/MaxPriority from config 2009-02-03 10:26:21 +00:00
schmirl 479d5c4b48 - Updated Finnish translation
- Reordered entries in de and fr
2009-02-02 11:51:42 +00:00
schmirl 0e0b4b587d Added min/max priority (#508)
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
2009-01-29 07:48:58 +00:00
schmirl 9af6ceb007 Commented PES for vdr 1.7.3+
Modified Files:
	HISTORY common.c common.h remux/ts2ps.h remux/tsremux.h
	server/connectionHTTP.c server/connectionVTP.c
	server/livestreamer.c server/livestreamer.h server/menuHTTP.c
	server/setup.c
2009-01-16 11:35:43 +00:00
schmirl 41cf7a5848 Credits for "fix to switch encrypted channel fix" 2009-01-14 07:46:40 +00:00
schmirl ca043780a7 added Network Media Tank browser support to HTML pages (#494) 2008-12-08 11:37:21 +00:00
schmirl cd8d7fbd6c Compatiblity to Network Media Tank (#496)
- minor fixes of PAT repacker
- repack and send every PAT packet we receive
2008-11-24 12:10:27 +00:00
schmirl 459e41e810 - fixed null pointer in server.c when cConnection::Accept() failes 2008-10-31 12:19:57 +00:00
schmirl 7184adef83 consider Pids from channels.conf when HTTP TS streaming. Section filtering
is an optional feature for VDR devices, so we must not rely on the PMT
alone (#473)
2008-10-31 11:59:48 +00:00
schmirl ac2e992305 Improved externremux script termination (#455) 2008-10-31 11:41:12 +00:00
schmirl c364a3396d - use cThread::Running()/Active() instead of private members
- replaced the last usleep by cCondWait
thanks to Rolf Ahrenberg (#383)
Modified Files:
	CONTRIBUTORS HISTORY server/server.c server/server.h
	server/streamer.c server/streamer.h server/suspend.c
	server/suspend.h
2008-10-22 11:59:31 +00:00
schmirl 4a5af4f489 - fixed output format of some debug messages (thanks to Rolf Ahrenberg) 2008-10-22 11:17:43 +00:00
schmirl 86c82c1381 - added HTTP authentication (#475)
Modified Files:
	HISTORY README streamdev-server.c server/connection.h
	server/connectionHTTP.c server/connectionHTTP.h
	server/server.c server/server.h
2008-10-14 11:05:46 +00:00
schmirl 992444cb67 Compatibility to VDR 1.7.1 (#483) 2008-10-13 11:30:05 +00:00