yweb live tv /radio übers internet

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

yweb live tv /radio übers internet

Beitrag von Chewy »

ich möchste gern von wo anderes live radio bzw tv schauen über meine box @ home.
@ home funktioniert es ohne probleme.
geht das überhaupt übers internet??
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Re: yweb live tv /radio übers internet

Beitrag von yjogol »

Chewy hat geschrieben:ich möchste gern von wo anderes live radio bzw tv schauen über meine box @ home.
@ home funktioniert es ohne probleme.
geht das überhaupt übers internet??
Technisch theoretisch kein Problem ... hast du genug Bandbreite?
Für Radio kommst du mit ca. 200KBit aus
Video ca. 3-5MBit normal - stark transcodiert immernoch mind. 500KBit

Gruß
yjogol
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

für radio klar denke tv müsste auch noch gehen.

welche files muss man bearbeiten das die box bzw yweb weis das ich übers inet schauen will und nicht im home netzwerk
das is mein prob. finde da nix..
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Chewy hat geschrieben:für radio klar denke tv müsste auch noch gehen.

welche files muss man bearbeiten das die box bzw yweb weis das ich übers inet schauen will und nicht im home netzwerk
das is mein prob. finde da nix..
Verstehe die Frage nicht richtig.

Am yWeb muß nichts angepasst werden.
Du muß auf deinem Router dafür sorgen, dass du aus dem iNet auf die dbox zugreiffen kannst, wurde hier im Forum schon mehrfach beschrieben.

Gruß
yjogol
FAQ zu YWeb unter http://www.yjogol.de
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

ich komme vom inet aus auf meine dbox. mit (http://meindyndns.ip.de:12345)
geht auch soweit alles. aber kein live stream. klicke auf live und dann gibt er mir ja beim radio folgenden streamlink
http://192.168.199.4:31338/0x0400

aber wenn ich diesen dann bei mir in winamp eingebe kommt ja nix weil es ja die ip von der box zuhause ist aber ich bin ja nicht zuhause.
habe auch schon folgendes ausprobiert

http://meindyndns.ip.de:12345:192.168.199.4:31338/0x0400

geht auch nicht

(12345) ist der port wovon ich ausem inet auf die box komme.
MarcM
Foren-Moderator
Beiträge: 1119
Registriert: Sonntag 9. Juni 2002, 13:28

Beitrag von MarcM »

Du brauchst noch ne Router-Regel...

Port 12345 zeigt ja auf dboxIP/Port 80

also muß noch ein Port her :

Port 54321 auf dboxIP/Port 31338

dann sollte es mit http://meindyndns.ip.de:54321/0x0400 funktionieren...
teplet
Einsteiger
Einsteiger
Beiträge: 106
Registriert: Dienstag 12. April 2005, 20:05

Beitrag von teplet »

also bei mir gehts relativ gut.
hab aber auch ca. 1mbit upstream!
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

so geht es..

aber ist ein bisschen umständlich.. jedesmal für den mussiksender den jeweiligen 0x0400 << ka wie ich sie jetzt nennen soll.. raussuchen.

weis wer wo es eine liste gibt mit radiosendern und deren... dann müsste ich mir die jetzt nicht alle raussuchen.

aber das prob mit live tv besteht ja immernoch.

@yjogol gibt es da ne möglichkeit???
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Chewy hat geschrieben:so geht es..

aber ist ein bisschen umständlich.. jedesmal für den mussiksender den jeweiligen 0x0400 << ka wie ich sie jetzt nennen soll.. raussuchen.

weis wer wo es eine liste gibt mit radiosendern und deren... dann müsste ich mir die jetzt nicht alle raussuchen.

aber das prob mit live tv besteht ja immernoch.

@yjogol gibt es da ne möglichkeit???
also der Live-Stream für tv läuft auf 31339 für radio auf 31339, wenn du beide ports aufmachts läufts, ansonsten mußt du einen Port-Mapper einsetzen.
Das Bereitstellen des Stream kommt nicht vom yWeb. yWeb bietet die nur die Oberfläche, damit du die pids nicht selber fummeln mußt.
Gruß
yjogol
DrStoned
Tuxboxer
Tuxboxer
Beiträge: 2614
Registriert: Montag 20. Mai 2002, 10:49
Image: JTG-Image [IDE] Version 2.4.4
Image: (7025SS) Merlin

Beitrag von DrStoned »

also der Live-Stream für tv läuft auf 31339 für radio auf 31339
Einer von beiden stimmt da wohl nicht. :gruebel: :wink:

Greetz von DrStoned :lol: :lol: :lol:
Greetz von DrStoned :lol: :lol: :lol:
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

du meinst wohl für tv 31339 und radio 31338 oder?? oder haben beides den gleichen port??

habe die ports aufem router freigegeben und auf die box weitergeleitet.
wenn ich z.b

wenn ich über http://meindydns.ip.de:12345 auf meine box gehe und dann auf den live stream klicke will er sich den intern holen und nicht übers inet. deshalb geht es nicht


so geht es ja
http://meindyndns.ip.de:31338/0x0400 <-- über winamp läuft FFH radio

http://meindyndns.ip.de:31338/0x00a3 <-- über VLC kommt das RTL bild aber ohne ton!! was muss ich den da noch bei beachten das der ton noch kommt..


@ teplet

was geht bei dir??
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

wie ist den der Port des WebServers auf der dbox?
FAQ zu YWeb unter http://www.yjogol.de
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

standart auf port 80
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Chewy hat geschrieben:standart auf port 80
also ruf mal LiveLiew auf und poste mal den quelltext der seite des frames mit vlc.
FAQ zu YWeb unter http://www.yjogol.de
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

ich hoffe es ist der richtige :)

im quelltext steht ja die ip der box 192.168.199.4
müsste dort nicht meindyndns.ip.de stehen ??

Code: Alles auswählen

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link rel="stylesheet" type="text/css" href="/Y_Main.css">
<script language="JavaScript" type="text/javascript">
function do_stop()
{
	document.vlc.stop()
}
function doPlayOrPause()
{
	if( document.vlc.playing )
	{
		document.v.PlayOrPause.value = " Play ";
		document.vlc.pause()
	} else 
	{
		document.v.PlayOrPause.value = "Pause";
		document.vlc.play()
	}
}
function setControlsForRecording(state)
{
	if(state == 0)
	{
		parent.panel.enablePanel(1);
		document.v.PlayOrPause.disabled=false;
		document.v.audiopid.disabled=false;
		document.v.stop.disabled=false;
		
		document.v.record.value="Record";
		
		document.v.audio_track.disabled=false;
		document.v.snapshot.disabled=false;
	
	}
	else
	{
		parent.panel.enablePanel(0);
		document.v.PlayOrPause.disabled=true;
		document.v.audiopid.disabled=true;
		document.v.stop.disabled=true;
		
		document.v.record.value="Stop Record";
		
		document.v.audio_track.disabled=true;
		document.v.snapshot.disabled=true;	
	}
}
function doStop()
{
	document.v.PlayOrPause.value = " Play ";
	document.vlc.stop()
}
function doLockUnlock()
{
	if( document.v.lock.value == "Lock" )
	{
		document.v.lock.value = "Unlock";
		parent.dbox.location.href='/control/exec?Y_Live&live_lock'
	} else 
	{
		document.v.lock.value = "Lock";
		parent.dbox.location.href='/control/exec?Y_Live&live_unlock'
	}
}
function view_streaminfo()
{
	window.open("/fb/info.dbox2","streaminfo","width=400,height=400");
}
function doRecord()
{
	if(document.v.record.value == "Record")
	{
		var sel = document.v.mux.selectedIndex;
		var ymux = (sel != -1) ? document.v.mux[sel].value : "ts";
		var options = new Array(":sout=#duplicate{dst=display,dst=std{access=file,mux="+ymux+",url="+document.v.record_filename.value+"}}",":input-repeat=1");
		setControlsForRecording(1);
	}
	else
	{
		doStop();
		var options = new Array(":input-repeat=1");
		setControlsForRecording(0);
	}
	document.vlc.addTarget(document.v.url.value, options, 4+8, -666);
	document.vlc.next();
	document.vlc.play();
}
function doChangeAudioPid()
{
	doToggleExpertMode(1);
	document.v.submit()
}
function doToggleExpertMode(docollapse)
{
	if(document.v.expert.value == "E+" && docollapse==0)
	{
		top.resizeBy(0,80);
		document.v.expert.value = "E-";
		document.all.ex.style.visibility="visible";
	} 
	else 	
		if(document.v.expert.value == "E-")
		{
			top.resizeBy(0,-80);
			document.v.expert.value = "E+";
			document.all.ex.style.visibility="hidden";
		}
}
function vlcPressKey(key)
{
	
		keyvalue = document.vlc.getVariable(key);
		document.vlc.setVariable("key-pressed", keyvalue);
	
}
function doSnapshot()
{
	vlcPressKey("key-snapshot");
}
function doChangeAudioChannel()
{
	vlcPressKey("key-audio-track");
}
function doRecord2()
{
	vlcPressKey("key-record");
}
</script>
</head>


<body style="background-color: #f0faff">
<table class="y_live_table" cellspacing="0" bgcolor="#F0FAFF">
<tr><td>

	<OBJECT classid="clsid:E23FE9C6-778E-49D4-B537-38FCDE4887D8" 
	        width="384" height="288" id="vlc" events="True">
			<param name="Src" value="http://192.168.199.4
:31339/0,0x002c,0x00a3,0x0068" />
			<param name="ShowDisplay" value="True" />
			<param name="Loop" value="False" />
			<param name="AutoPlay" value="True" />
		The VideoLan Client ActiveX is not installed.<br>
		You need <a href="http://www.videolan.org" target="_blank">VideoLan Client</a> V0.8.2 or higher.<br>
		Install with Option "ActiveX".
	</OBJECT>
</td></tr>
<tr><td>
	<form name="v" action="/Y_Live_Wait.yhtm" method="get">
		<button class="y_live_button" type="button" value="E+" title="expert mode" name="expert" onClick="doToggleExpertMode(0)">E+</button>
		<button class="y_live_button" type="button" value="Pause" title="play or pause streaming" id="PlayOrPause" onClick="doPlayOrPause()">Pause</button>
		<button class="y_live_button" type="button" value="stop" title="stop streaming" name="stop" onClick="doStop()">Stop</button>
		<button class="y_live_button" type="button" value="mute" title="mute / unmute volume" onClick="document.vlc.toggleMute()">Mute</button>
		<button class="y_live_button" type="button" value="minus" title="lower volume" onClick="document.vlc.volume=document.vlc.volume-10;">-</button>
		<button class="y_live_button" type="button" value="plus" title="higher volume" onClick="document.vlc.volume = document.vlc.volume+10;">+</button>
		<button class="y_live_button" type="button" value="fullscreen" title="switch to fullscreen-mode - or use double-click" onClick="document.vlc.fullscreen()">F</button>
		<button class="y_live_button" type="button" value="Lock" title="lock / unlock TV (record mode, rc, lcd)" name="lock" onClick="doLockUnlock()">Lock</button>
		<button class="y_live_button" type="button" value="Streaminfo" title="view streaminfo" name="streaminfo" onClick="view_streaminfo()">S</button>
		<select size="1" class="y_live_audio_pids" name="audiopid" onChange="doChangeAudioPid()">
		<option value=00000>German  </option>

		</select>
		<br>
		<input type="hidden" name="browser" value="ie">
		<input type="hidden" name="url" value="http://192.168.199.4
:31339/0,0x002c,0x00a3,0x0068">
		<div name="ex" id="ex" style="visibility : hidden;">
			<b>Expert Mode - (ActiveX - Experimental)</b><br>
			<input type="text" name="record_filename" value="D:\aufnahme.ts"> 
			mux: <SELECT name="mux">
				<option value="ts" selected>ts</option>          
				<option value="ps">ps</option>          
        		</SELECT>
			<button class="y_live_button" type="button" value="r" title="record stream to file" name="record" onClick="doRecord()">Record</button>
			<br>
			<button class="y_live_button" type="button" title="create snapshot picture" name="snapshot" onClick="doSnapshot()">Snapshot</button>
			<button class="y_live_button" type="button" title="change VLC audio channel" name="audio_track" onClick="doChangeAudioChannel()">change Audio Channel</button>
		</div>
	</form>

</td></tr>
</table>
<script language="JavaScript" type="text/javascript">
	var res_w=parseInt("384",10);
	var res_h=parseInt("288",10);
	if(isNaN(res_w)) res_w=384;
	if(isNaN(res_h)) res_h=288;
	
	document.vlc.width=res_w;
	document.vlc.height=res_h;
	for (i = 0; i < document.v.audiopid.length; i++)
		if (document.v.audiopid.options[i].value == "00000")
			document.v.audiopid.options[i].selected = true;

	
</script>

</body>
</html>
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Ok verstanden, das geht so nicht.

Verwende doch reMapping mit Apache, der übersetzt alle Links (http://forum.tuxbox-cvs.sourceforge.net ... 837#282837)

Ich habe das Thema mal aufgeschrieben. Für dein Fall muss die URL mit JavaScript zusammengebaut werden.

Gruß
yjogol
FAQ zu YWeb unter http://www.yjogol.de
Chewy
Interessierter
Interessierter
Beiträge: 25
Registriert: Samstag 17. November 2001, 00:00

Beitrag von Chewy »

yjogol hat geschrieben:Ok verstanden, das geht so nicht.

Verwende doch reMapping mit Apache, der übersetzt alle Links (http://forum.tuxbox-cvs.sourceforge.net ... 837#282837)

Ich habe das Thema mal aufgeschrieben. Für dein Fall muss die URL mit nixscript zusammengebaut werden.

Gruß
yjogol
oh jetzt wird es glaube ich für mich zu krass :o
habe mich damit noch garnicht beschäftigt...


http://meindyndns.ip.de:31338/0x00a3 <-- über VLC kommt das RTL bild aber ohne ton!! was muss ich den da noch bei beachten das der ton noch kommt..
wie bekomme ich so den ton noch mit rein???
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Wie die URL für den aktuellen Sender aussehen soll:
TV: http://dbox/control/exec?Y_Live&url
Radio: http://dbox/control/exec?Y_Live&audio-url

Da du nur ein PortMapping und kein ReMapping machst, wird der lokale hostname bei dir nicht übersetzt. Mit den obigen Aufrufen hast du erstmal ein Workaround. Und ich habs aufgeschrieben :)
Komm momentan bloß nicht zum programmieren ...
suse_rulez
Einsteiger
Einsteiger
Beiträge: 216
Registriert: Freitag 6. September 2002, 15:32

Beitrag von suse_rulez »

Die Möglichkeit übers Internet einen Dbox-Stream zu schauen würde mich auch sehr interessieren - gerade in Hinsicht auf die kommende WM und der der teilweise frühen Anpfiffszeiten..
Nun hat ja leider nicht jeder 1MBit Upload und mehr zur Verfügung und die 256 kb upstream von DSL reichen ja leider nicht ganz aus um den Stream zu transportieren... Somit müßte das Signal vorher noch transkodiert werden. VLC kann ja problemlos den Stream des es aktuell wiedergibt in ein beliebiges Format transkodieren und dann wieder als neuen Stream bereitstellen - das einzige was hierfür noch fehlt wäre eine halbwegs komfortbale Oberfläche zur Steuerung der Codecs und der Qualität.
Hat außer mir noch jemand Interesse an einer solchen Funktionalität? Wo wäre dies am sinnvollsten untergebracht? Als Option im yWeb? Oder evtl im neuen VLCrape? Oder eine eigentständige Applikaiton? Klar ist ja in jedem Fall dass noch ein nicht zu schwachbrüchtiger Rechner im Heimnetzwerk laufen muss der die Transcodierung übernimmt...
yjogol
Developer
Beiträge: 809
Registriert: Montag 4. Juli 2005, 18:45

Beitrag von yjogol »

Hi,
schau hier:
http://forum.tuxbox-cvs.sourceforge.net ... 839#286839

Geht eigentlich einfach.
Hatte besher aber kaum Zeit, ausserdem schein auch der Bedarf am Transcoden nicht sehr hoch in der Community zu sein.

Gruß
yjogol
FAQ zu YWeb unter http://www.yjogol.de
suse_rulez
Einsteiger
Einsteiger
Beiträge: 216
Registriert: Freitag 6. September 2002, 15:32

Beitrag von suse_rulez »

Zunächst danke für deinen Tipp.. Das das Trancoding mittels VLC möglich ist wußte ich ja bereits nur eine komfortbale GUI fehlte mir dazu.. Allerdings habe ich das ganze gestern abend auch mal ausprobiert:
Bei WMV als Videocodec mit 64 kb/s und skalierung um auf 0,25% und mp3 als Audiocodec mit 16 kbit schwankt die durchschnittliche notwndige Bandbreite so um die 20-30 KiloByte pro Sekunde. Die 25KB/s die mein DSL 2000 maximal schafft reichen dabei leider nicht für einen unterbrechungsfreien Stream aus (mal ganz abgesehen davon, dass der resultierende Stream nicht mehr sonderlich schön anzuschauen ist...). Andere (bessere?) Videocodecs wie h264 schafft mein Rechner leider nicht in Echtzeit zu encoden.
DSL 6000 oder Ähnliches dürften jedoch schon für ein einigermaßen vernünftiges Resultat sorgen können. Wenn ich mich nicht irre liegt der mögliche Upload da um die 70 KiloByte / s?

Vielleicht finden sich ja genügend interessierte mit dicker Leitung die angesichts der anstehenden WM Interesse an einem TV-Stream auf der Arbeit (selbstverständlich nur in der offiziellen Mittagspause ;)) oder in der Uni hätten...
Eine modifizierung des yWeb dürfte ja wie bereits von dir gesagt kein großes Problem sein - fraglich bleibt nur der Nutzen ohne Anschlüsse mit hohem Upstream...
JAD
Interessierter
Interessierter
Beiträge: 60
Registriert: Montag 22. Juli 2002, 14:23

Beitrag von JAD »

So funktioniert mein Testaufbau:

Internetzugang 1 über WLAN (bei uns gibt es nicht für jeden DSL)
Internetzugang 2 über ein 2. WLAN eines Bekannten der eine DSL Leitung hat :D
PC1 mit Knoppix 5.0
PC2 mit XP und TCPMP für Win32 http://tcpmp.corecodec.org/download

PC1 ist per LAN mit der DBOX verbunden und in einer Konsole läuft
ffmpeg -i http://<DBOXIP>:31339/$(printf '%04x,' $(GET http://<DBOXIP>/control/zapto?getpids) ) -s 320x240 -ab 64 -b 200 -f mpeg - | netcat -l -p 1555
PC1 ist per Internetzugang 1 mit der Außenwelt verbunden.

Über einen Dyndns-Account und meinen Router leite ich den Port 1555 zu PC1.

PC2 ist per Internetzugang 2 mit der Außenwelt verbunden.
Hier TCPMP mit <meinDYNDNSaccount>:1555 starten.

Fertig.

Jetzt habe ich nur noch ein Problem:
Wenn ich die Übertragung in TCPMP anhalte, dann beendet sich jedesmal ffmpeg. Kann mir da jemand einen Tipp geben wie ich es schaffe, dass sich ffmpeg dann direkt wieder selbst startet?

Gruss JAD