Frank Schmirler
eaf9321c4c
API change of VDR 1.7.28
2012-12-04 17:19:35 +01:00
Frank Schmirler
83e9f3250f
Moved cStreamdevFilterStreamer to livefilter.[hc]
2012-11-24 23:35:10 +01:00
Frank Schmirler
c267b585fd
- Return HTTP/1.1 compliant response headers plus some always useful headers
...
- Return HTTP URL parameters ending with ".dlna.org" as response headers
- Store HTTP URL parameters in a map
2012-11-16 02:00:09 +01:00
Frank Schmirler
be9da74958
Support HTTP HEAD requests with external remuxer
2012-11-02 09:09:15 +01:00
Frank Schmirler
e7bcc9349c
Fixed always using priority 0 for HTTP HEAD requests
2012-11-02 09:07:19 +01:00
Frank Schmirler
b614fa0ec3
Start writer right after creating it
2012-11-02 09:02:22 +01:00
Frank Schmirler
84db6323a6
Corrected typos (thanks to Ville Skyttä)
2012-06-28 17:17:59 +02:00
Frank Schmirler
80e40d4260
Updated Italian translation (thanks to Diego Pierotto)
2012-06-13 08:55:33 +02:00
Frank Schmirler
fffd5aef4f
Proper fix for "client sends ABRT after TUNE". Obsoletes many hacks in client
2012-05-21 00:42:08 +02:00
Frank Schmirler
6a47e20435
Silenced warning (thanks to Rolf Ahrenberg)
2012-05-17 17:01:15 +02:00
Frank Schmirler
12b48591be
Updated Finnish translation (thanks to Rolf Ahrenberg)
2012-05-17 16:59:42 +02:00
Frank Schmirler
c3ac597623
Replaced server-side suspend modes with priority based precedence handling
2012-05-12 12:58:42 +02:00
Frank Schmirler
ae634538f8
Dropped compatibility of streamdev-server with VDR < 1.7.25
2012-05-12 12:58:42 +02:00
Frank Schmirler
316ac3344d
Use fileno() to retrieve the fd from a FILE structure ( fixes #958 )
2012-05-03 08:30:32 +02:00
Frank Schmirler
8719007f5a
New special meaning "show current channel" when channel 0 is requested.
...
Applies to HTTP streaming only (thanks to Rolf Ahrenberg)
2012-04-21 22:47:36 +02:00
Frank Schmirler
a1797719de
Using SetOccupied() won't work as it isn't considered in GetDevice(). Trying
...
to compensate the loss of SetAvoidDevice() with streamdevs CheckConnection(),
ignoring the current live TV device. If a new device is returned it is just
switched to the new channel. Hopefully the main loop will pick it up later,
after streamdev switched aways live TV.
2012-03-11 09:41:33 +01:00
Frank Schmirler
5a3c535778
API change of VDR 1.7.26: Use "occupied" instead of "avoid device".
2012-03-10 23:44:51 +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
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
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
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
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
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
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
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
316a1f884f
connection runs as thread, so it must not use Skins.Message
2011-01-14 17:03:17 +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
c0a7f1610a
fixed wrong URL path in m3u playlists
2010-07-20 12:26:29 +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
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
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
6da7cf90d9
Added missing trNOOPs
2009-09-18 10:50:44 +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
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
41763e7710
removed redefinitions in includes - caused problems in older compilers
2009-07-06 06:23:28 +00:00
schmirl
fe77c5dccb
silenced format mismatch warning on 64bit OS
2009-07-03 21:44:18 +00:00
schmirl
dd09bfbb45
improved PARENTALRATING patch detection (thanks to Rolf Ahrenberg)
2009-07-02 06:03:50 +00:00
schmirl
460d5f0689
Missing files from previous commit
...
Added Files:
server/recplayer.c server/recplayer.h
2009-07-01 11:00:49 +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
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
3d16ba0840
added comments to indicate that the VTP filter stream is proprietary format
...
Modified Files:
client/filter.c server/livefilter.c
2009-02-13 13:02:39 +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
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
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
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
schmirl
90bae5b011
- added preprocessor directive for ancient gcc
2008-07-16 06:00:48 +00:00
schmirl
685f43c6ec
- Fixed assignment of externremux.sh's default location
...
cPlugin::ConfigDirectory() cannot be used directly after the plugin has
been loaded. The return value of AddDirectory() must be allocated.
2008-04-29 07:00:53 +00:00
schmirl
34a62eb2ef
- added gettext support (thanks to Rolf Ahrenberg)
...
- 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-08 14:18:15 +00:00
schmirl
9c60fb4e42
- changed location of streamdevhosts.conf to VDRCONFDIR/plugins/streamdev
...
- 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-04-07 14:50:32 +00:00
schmirl
f51d6eb2df
- removed legacy code for pre VDR 1.4
...
- dropped patches for pre VDR 1.4
2008-04-07 14:27:27 +00:00
schmirl
57923c656e
Missing files
2008-03-28 15:13:11 +00:00
schmirl
b66bf7a698
Rewrite of http menu ( #439 )
...
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-28 15:11:40 +00:00
schmirl
21da96308d
Make sure that a FilterStreamer is only started if client supports it
...
(#261 )
Modified Files:
client/socket.c server/connectionVTP.c server/connectionVTP.h
2008-03-13 16:01:17 +00:00
schmirl
e54f9e4fbe
Add EIT into TS stream ( #442 )
2008-03-13 14:10:17 +00:00
schmirl
efeac825cc
FreeBSD compatibility ( #435 )
...
Modified Files:
Makefile common.h libdvbmpeg/ctools.c server/connectionVTP.c
tools/socket.c
2008-03-12 09:36:27 +00:00
schmirl
eb6fbd3bbe
TS PAT repacker for streamtype TS. The PAT shoudln't refer to PMTs we don't
...
transmit. Particularely causes problems with some settop boxes.
Thanks to Rolf Ahrenberg (#309 )
2008-02-22 12:02:48 +00:00
schmirl
713c0564b7
VTP now also supports PS, PES and EXTERN.
...
Request for PS by mpanczyk for MTPCenter (#341 )
Modified Files:
server/connectionVTP.c server/connectionVTP.h
2007-09-21 12:45:31 +00:00
schmirl
17ff4d32e8
High load when client isn't accepting data fast enough. Bug report and
...
fix by Olli Lammi (#382 ).
2007-09-21 11:45:53 +00:00
schmirl
bb1ac54c87
Set DSCP 41 on stream data packets. WMM capable WLAN accesspoints
...
should understand this and give precedence. For Internet streaming
it could be used by traffic shapers. Suggested by ollo@vdrportal (#237 ).
Modified Files:
server/connectionHTTP.c server/connectionVTP.c tools/socket.c
tools/socket.h
2007-05-09 09:12:42 +00:00