Commit Graph

159 Commits

Author SHA1 Message Date
Frank Schmirler
e1ba17ca21 Ignore dummy file extensions (.ts, .vob, .vdr) when parsing HTTP URIs 2013-10-01 23:52:03 +02:00
Frank Schmirler
d3df5d07a1 Redesigned pos= parameter patch for streaming recordings and added missing
bits like HEAD and resume.# support
2013-10-01 23:47:25 +02:00
Frank Schmirler
c92de13d06 Select start position for replaying a recording by parameter pos=
Based on offset_5.diff from hivdr@vdrportal with the following modifications:
- indenting
- replaced isyslog with Dprintf
- left out HTTP header "Server:" for the moment
2013-09-27 17:33:18 +02:00
Frank Schmirler
d7652d89ca Start cSuspendCtl hidden or it will prevent idle shutdown.
As long as a cControl is not hidden, cControl::Control() will return a value
and LastInteract is updated in the VDR main loop.
2013-07-16 13:12:20 +02:00
Frank Schmirler
b25e53c867 Fixed recordings menu inode numbers: ino_t is a long long on some systems 2013-07-16 13:07:58 +02:00
Frank Schmirler
329129d9c1 Updated Slovak translation (closes #1293) 2013-03-19 12:08:01 +01:00
Frank Schmirler
08198729ac Adapted Makefiles to VDR 1.7.36+ (thanks to macmenot). Old makefiles have
been renamed to Makefile-1.7.33 (fixes #1199)
2013-02-27 13:11:23 +01:00
Frank Schmirler
f58086a83a Added simple recordings menu in HTTP server 2013-02-03 12:40:46 +01:00
Frank Schmirler
d3dd72072c Restructured menuHTTP classes 2013-02-03 11:02:25 +01:00
Frank Schmirler
9bbb74b7fd Added RSS format for HTTP menus 2013-02-02 23:28:55 +01:00
Frank Schmirler
176df8341d Recordings can now also be selected by struct stat "st_dev:st_ino.rec" 2013-02-02 22:34:47 +01:00
Frank Schmirler
138580f284 API change of 1.7.28: missed one affected line leading to crashed in VTP
(refs #1226)
2013-02-01 22:28:46 +01:00
Frank Schmirler
9135cde712 Basic support for HTTP streaming of recordings 2012-12-16 13:29:15 +01:00
Frank Schmirler
0cf406ed3a Added #include <string> 2012-12-16 13:21:45 +01:00
Frank Schmirler
1866716471 Close writer when streamer is finished 2012-12-16 13:21:19 +01:00
Frank Schmirler
50d249c62e Don't abort VTP connection if filter stream is broken 2012-12-16 13:12:42 +01:00
Frank Schmirler
0fb7076192 Use std::map at() is not available in old libs. Use find() 2012-12-16 13:09:29 +01:00
Frank Schmirler
f5da0ea1fc Restructured cStreamdevStreamer: Moved inbound buffer into actual subclass. 2012-12-16 12:40:44 +01:00
Frank Schmirler
0677f48329 In cStreamdevStreamer dropped Activate(bool) and moved its code into Start() 2012-12-04 17:21:36 +01:00
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