summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authormethodus <methodus@web.de>2012-10-09 12:08:40 +0200
committermethodus <methodus@web.de>2012-10-09 12:08:40 +0200
commit8dd19bbd0112564d76c35ff2b208e0e29d2bf6ac (patch)
tree30d27dac35e5ee76c8e7d8f53eb3b61ca06471ab /plugins
parent14ed7bbd4d5ebbfd83d39af16d2185432d63a808 (diff)
downloadvdr-plugin-upnp-8dd19bbd0112564d76c35ff2b208e0e29d2bf6ac.tar.gz
vdr-plugin-upnp-8dd19bbd0112564d76c35ff2b208e0e29d2bf6ac.tar.bz2
First attempts to get live-TV working. Not yet successful.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/provider/vdrProvider/vdrProvider.cpp28
1 files changed, 24 insertions, 4 deletions
diff --git a/plugins/provider/vdrProvider/vdrProvider.cpp b/plugins/provider/vdrProvider/vdrProvider.cpp
index 7d1ef22..bcf06a4 100644
--- a/plugins/provider/vdrProvider/vdrProvider.cpp
+++ b/plugins/provider/vdrProvider/vdrProvider.cpp
@@ -10,13 +10,23 @@
#include <vdr/tools.h>
#include <vdr/config.h>
#include <string>
+#include <sstream>
#include <tools.h>
+#include <vdr/thread.h>
using namespace std;
namespace upnp {
-class VdrProvider : public cUPnPResourceProvider {
+class VdrProvider : public cUPnPResourceProvider, cThread {
+private:
+ int lastUpdateID;
+
+public:
+
+ VdrProvider()
+ : lastUpdateID(0)
+ {}
virtual string ProvidesSchema(){ return "vdr"; }
@@ -54,9 +64,9 @@ class VdrProvider : public cUPnPResourceProvider {
return false;
}
- virtual long GetContainerUpdateId(const string& uri){
+ virtual long GetContainerUpdateId(const string&){
// TODO: provide a container update id
- return 0;
+ return lastUpdateID;
}
virtual bool GetMetadata(const string& uri, cMetadata& metadata){
@@ -74,7 +84,17 @@ class VdrProvider : public cUPnPResourceProvider {
return string();
}
- return string();
+ int port = 3000;
+
+ stringstream ss;
+
+ ss << "http://" << currentIP << ":" << port << "/TS/" << uri.substr(6);
+
+ return ss.str();
+ }
+
+ virtual void Action(){
+
}
};