Index: /titan/mediathek/localhoster/hoster.sh
===================================================================
--- /titan/mediathek/localhoster/hoster.sh	(revision 41273)
+++ /titan/mediathek/localhoster/hoster.sh	(revision 41274)
@@ -15,5 +15,5 @@
 USERAGENT='Mozilla%2F5.0+%28Windows+NT+6.3%3B+rv%3A36.0%29+Gecko%2F20100101+Firefox%2F36.0'
 debuglevel=`cat /mnt/config/titan.cfg | grep debuglevel | cut -d"=" -f2`
-curlbin="curl -k -s -L --cookie /mnt/network/cookies --cookie-jar /mnt/network/cookies -A '$USERAGENT'"
+curlbin="curl -k -s -L --cookie /mnt/network/cookies --cookie-jar /mnt/network/cookies -A \$USERAGENT"
 curlbin2="curl -k -s --cookie /mnt/network/cookies --cookie-jar /mnt/network/cookies -A '$USERAGENT'"
 youtubebin="$CMD/lib/youtube_dl/__main__.py --no-check-certificate --cookies /mnt/network/cookies --user-agent '$USERAGENT' --format mp4 --restrict-filenames --ignore-errors -g"
Index: /titan/mediathek/localparser_secret/sportsondemand.sh
===================================================================
--- /titan/mediathek/localparser_secret/sportsondemand.sh	(revision 41273)
+++ /titan/mediathek/localparser_secret/sportsondemand.sh	(revision 41274)
@@ -489,5 +489,5 @@
 {
 	debug=0
-
+rm $TMP/$PARSER.$INPUT.$FROM.$FILENAME.list
 	if [ "$debug" = "1" ]; then rm $TMP/$PARSER.$INPUT.$FROM.$FILENAME.list; fi
 	if [ "$debug" = "1" ]; then echo $INPUT 1111111; fi
@@ -618,4 +618,12 @@
 						URL="$URLMP4"
 					fi
+					STREAMLIST="$TMP/$PARSER.$INPUT.$FROM.$FILENAME.streamlist"
+					if [ -e "$STREAMLIST" ];then
+						rm -f $STREAMLIST
+					fi
+					for ROUND in $URLHLS2 $URLHLS $URL720 $URL360 $URLMP4; do
+						echo "$ROUND" >> $STREAMLIST
+					done
+					URL=$STREAMLIST
 				fi
 			elif [ `echo $URLTMP | grep "youtube" | wc -l` -eq 1 ];then
Index: /titan/plugins/tithek/tithek.h
===================================================================
--- /titan/plugins/tithek/tithek.h	(revision 41273)
+++ /titan/plugins/tithek/tithek.h	(revision 41274)
@@ -1652,4 +1652,10 @@
 		free(tmpstr1); tmpstr1 = NULL;
 	}
+	else if(!ostrncmp("skip", tmpstr1, 4))
+	{
+		debug(99, "skip playback screen, cancel by user");
+		free(tmpstr); tmpstr = NULL;
+		free(tmpstr1); tmpstr1 = NULL;
+	}
 	else if(ostrncmp("http", tmpstr1, 4) && ostrncmp("rtmp", tmpstr1, 4) && ostrncmp("mms", tmpstr1, 3) && ostrncmp("rtsp", tmpstr1, 4))
 	{
Index: /titan/plugins/tithek/tithek_global.h
===================================================================
--- /titan/plugins/tithek/tithek_global.h	(revision 41273)
+++ /titan/plugins/tithek/tithek_global.h	(revision 41274)
@@ -1298,4 +1298,106 @@
 }
 
+char* list_hoster_streams(char* filename)
+{
+
+	if(ostrncmp("/tmp/", filename, 5) && ostrncmp("/mnt/", filename, 5))
+		return filename;
+
+//	int debuglevel = getconfigint("debuglevel", NULL);
+	char* streamurl = NULL, *tmpstr = NULL, *nummer = NULL, *title = NULL, *pic = NULL;
+
+	int count = 0, i = 0;	
+
+//	tmpstr = ostrcat(link, NULL, 0, 0);
+	tmpstr = readfiletomem(filename, 1);
+
+	struct splitstr* ret1 = NULL;
+	struct menulist* mlist = NULL, *mbox = NULL;
+//	ret1 = strsplit(string_decode(tmpstr2, 0), "\n", &count);
+	ret1 = strsplit(tmpstr, "\n", &count);
+	for(i = 0; i < count; i++)
+	{
+//		if(ret1[i].part != NULL && ostrstr(ret1[i].part, "_quality") != NULL)
+		if(ret1[i].part != NULL)
+		{
+		
+			if(ostrstr(ret1[i].part, "f4m") != NULL)
+				pic = ostrcat("f4m.png", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "mp4") != NULL)
+				pic = ostrcat("mp4.png", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "3gp") != NULL)
+				pic = ostrcat("3gp.png", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "flv") != NULL)
+				pic = ostrcat("flv.png", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "hls") != NULL)
+				pic = ostrcat("hls.png", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "mkv") != NULL)
+				pic = ostrcat("mkv.png", NULL, 0, 0);
+
+			if(ostrstr(ret1[i].part, "1080p") != NULL)
+				nummer = ostrcat("1080p", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "1080i") != NULL)
+				nummer = ostrcat("1080i", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "1080") != NULL)
+				nummer = ostrcat("1080", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "720p") != NULL)
+				nummer = ostrcat("720p", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "720") != NULL)
+				nummer = ostrcat("720", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "360p") != NULL)
+				nummer = ostrcat("360p", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "360") != NULL)
+				nummer = ostrcat("360", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "hls") != NULL)
+				nummer = ostrcat("hls", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "auto") != NULL)
+				nummer = ostrcat("auto", NULL, 0, 0);
+
+			if(ostrstr(ret1[i].part, "http://") != NULL)
+				title = ostrcat("Http Stream", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "https://") != NULL)
+				title = ostrcat("Https Stream", NULL, 0, 0);
+			else if(ostrstr(ret1[i].part, "rtmp://") != NULL)
+				title = ostrcat("RTMP Stream", NULL, 0, 0);
+
+			streamurl = ostrcat(ret1[i].part, NULL, 0, 0);
+			if(nummer != NULL)
+			{
+				title = ostrcat(title, " (", 1, 0);
+				title = ostrcat(title, nummer, 1, 0);
+				title = ostrcat(title, ")", 1, 0);
+			}
+			debug(99, "(%d) title: %s streamurl: %s\n", i, title, streamurl);																									
+			addmenulist(&mlist, title, streamurl, pic, 0, 0);
+
+			free(title), title = NULL;
+			free(pic), pic = NULL;
+			free(nummer), nummer = NULL;
+			free(streamurl), streamurl = NULL;
+		}
+	}
+	free(ret1), ret1 = NULL;
+
+	if(mlist != NULL)
+	{
+		mbox = menulistbox(mlist, NULL, _("Stream Menu"), _("Choose your Streaming Format from the following list"), NULL, NULL, 1, 0);
+		if(mbox != NULL)
+		{
+			free(streamurl), streamurl = NULL;
+
+			debug(99, "mbox->name %s", mbox->name);
+			debug(99, "mbox->text %s", mbox->text);
+			streamurl = ostrcat(mbox->text, NULL, 0, 0);
+		}
+	}
+	free(tmpstr); tmpstr = NULL;
+debug(99, "streamurl3 %s", streamurl);
+	if(streamurl == NULL)
+		streamurl = ostrcat("skip", NULL, 0, 0);
+debug(99, "streamurl4 %s", streamurl);
+
+	return streamurl;
+}
+
 char* localparser_hoster(char* link)
 {
@@ -1320,5 +1422,12 @@
 	free(tmpstr), tmpstr = NULL;
 
-	debug(99, "streamurl: %s", streamurl);
+	printf("streamurl1: %s\n", streamurl);
+
+
+	tmpstr = ostrcat(streamurl, NULL, 0, 0);
+	streamurl = list_hoster_streams(tmpstr);
+	printf("streamurl: %s\n", streamurl);
+
+	debug(99, "streamurl2: %s", streamurl);
 
 	return streamurl;
Index: /titan/plugins/tithek/tithek_header.h
===================================================================
--- /titan/plugins/tithek/tithek_header.h	(revision 41273)
+++ /titan/plugins/tithek/tithek_header.h	(revision 41274)
@@ -13,4 +13,5 @@
 char* localparser_hoster(char* link);
 int localparser_search(struct skin* grid, struct skin* listbox, struct skin* countlabel, struct skin* load, char* link, char* title, char* searchstr, int flag);
+char* list_hoster_streams(char* link);
 
 void titheklog(int debuglevel, char* name1, char* name2, char* name3, char* name4, char* content)
