Shoutcast: kpbs begrenzen

Status
Für weitere Antworten geschlossen.

TheNightHawk

Benutzer
Hallo,

google habe ich bemüht, die Suche ebenfalls, habe aber leider nix gefunden oder ich war zu blöd zum suchen :)

Welche Technik/Software nutzen Streamhoster um die max. kbps für einen Stream zu begrenzen sprich, ich miete einen Stream mit 128 kbps und kann mich dann nicht mit z.B. 192 kbps als Moderator auf den Server connecten.

Shoutcast selbst bietet ja keine Einstellung dafür.

Gedankliche Tipps sind gerne willkommen.

Gruß TheNightHawk
 
AW: Shoutcast kpbs begrenzen

Soll ich dir jetzt sagen, das du zu blöd warst? :D
Es gab hier mal einen entsrpechenden Thread, bin jetzt aber zu faul zum suchen.

Wir sind aber drauf gekommen, das es per Config nicht geht. Es wäre aber möglich, per Cronjob (z.B. alle Minute) die Statusseite abzufragen, die Bitrate auszulesen und bei Bedarf den Source zu kicken oder den Shoutcast zu killen. Dürfte in PERL ein 10-Zeiler sein. Da ich noch nie mit der bash auf eine URL zugegriffen hab (sollte mit einer Pipe und Lynx oder wget gehen), kann ich nicht sagen, wieviel Aufwand. Aber wget absetzen und das Ergebniss per awk durchforsten, sollte nicht wirklich schwierig sein.

Ich habs im übrigen etwas detailierter ausgeführt, als der letze Thread und schlage vor, das ganzer in die FAQ aufzunehmen (Bei bedarf kann ichs auch umschreiben, bzw. etwas laienhafter ausführen).
 
AW: Shoutcast kpbs begrenzen

Soll ich dir jetzt sagen, das du zu blöd warst? :D
Es gab hier mal einen entsrpechenden Thread, bin jetzt aber zu faul zum suchen.

Ich war wohl doch zu blöd oder es ist einfach schon zu früh. Ich habe noch m al ein paar andere Suchworte benutzt und diesen Link gefunden http://radioforen.de/showthread.php?t=21000&highlight=shoutcast+begrenzen

So ähnlich hatte ich mir das auch gedacht, kleines Linuxtool, was die Statusseite ausliest und ggfls. den Source kickt.

Erst mal Danke für Deine Antwort.

Werde ich mal wieder die radio_class befragen :)

Gruß TheNightHawk
 
AW: Shoutcast kpbs begrenzen

Dafür reicht es auch, wenn du die 7.html abfrägst, da steht die Bitrate auch drin.

PHP:
<?php
$host = "localhost";
$port = "8000";

// Connect to server
	$fp = @fsockopen($host,$port,&$errno,&$errstr,10);
	if(!$fp){
		echo "Unable to connect to server";
	}
	else{

// Get data from server
		fputs($fp,"GET /7.html HTTP/1.1\nUser-Agent:Mozilla\n\n");

// exit if connection broken
		for($i=0; $i<1; $i++){
			if(feof($fp))
				break;

			$fp_data=fread($fp,31337);
			usleep(50000);
		}

// Alles, ausser den Daten, löschen
		$fp_data=ereg_replace("^.*<body>","",$fp_data);
		$fp_data=ereg_replace("</body>.*","",$fp_data);

// Vaiablen auslesen und sortieren
		list($current,$status,$peak,$max,$reported,$bit,$song) = explode(",", utf8_encode($fp_data), 7);

echo "Bitrate: $bit";
?>

Dann brauchst du nicht den ganzen XML-Tree parsen.
 
AW: Shoutcast kpbs begrenzen

Dafür reicht es auch, wenn du die 7.html abfrägst, da steht die Bitrate auch drin.

Dann brauchst du nicht den ganzen XML-Tree parsen.

Die 7.html, da habe ich schon gar nicht mehr dran gedacht. Dann habe ich soebend die Problematik gedanklich gelöst, komplette Lösung poste ich denn mal hier.

Gruß TheNightHawk
 
AW: Shoutcast kpbs begrenzen

Wenn du ne bessere Lösung hast, als per Cron, immer her damit :D perfekt wäre es, wenn der Connect direkt unterbinden werden kann. Per Cron erfolgt der Abwurf erst nach bis zu 1 Minute. Und einen Daemon laufen zu lassen, der jede Sekunde abfrägt, dürfte ziemlich ressourcenhungrig sein (zumindest im Verhältnis zum Nutzen).
 
AW: Shoutcast: kpbs begrenzen

hast du den shoutcast /icecast selber aufgesetzt oder
bei einem reseller vorkonfiguriert gemietet ? wenn ersteres der fall ist, würde ich folgendes, als idiotensichere lösung empfehlen:
:
allen programmachern als aufspielpunkt einen shoutcast oder icecast mit nur einem slot zu geben, (also einer der nicht öffentlich ist)
der jagt dann das signal weiter an den transcoder

http://www.oddsock.org/tools/streamTranscoderV3/

der schleift dann durch oder wenn die bitrate höher ist,
transcodiert er ebend.

ist idiotensicher und spart supportanrufe wenn wieder jemand aus versehen zb einfach nur die falsche bitrate beim source eingetippt hat (was ja dann auch das script zur abschaltung des streams
oder genervten supportanrufen führt)

weiss gerade nur nicht, ob beim transcoder qualitätsverluste auftreten,
wenn er einfach nur die gleiche bitrate durchschleift, glaub aber eher nicht.

weiss hier vielleicht jemand.
 
AW: Shoutcast: kpbs begrenzen

Hmm.... mich soll jetzt ein Pferd treten...

Aber wozu gibts in der Config die Option "max Bitrate" ??????

Damit ist doch eine Begrenzung gegeben *denk*

Und wegen dem Transcoder: Da gibt es Qualitätsverluste, weil erst de- und dann encodiert wird. Darunter leidet eben die Qualität. Abgesehen davon, könnte dann auch jemand mit viel niedrigerer Bitrate streamen, was dann hochgerechnet wird und einfach nur noch sch**** klingt.


Bitte korrigieren, wenn jemand mehr oder anderes weiß!

MfG
Smarti
 
AW: Shoutcast: kpbs begrenzen

weiss gerade nur nicht, ob beim transcoder qualitätsverluste auftreten,

Grundsätzlich ist jede Umwandlung verlustbehaftet, wenn das Eingangsformat und das Ausgangsformat von sichaus verlustbehaftet ist.
Ebenso erhöhst du die Serverlast um den Faktor 10-15. Das heisst, als Streamanbieter benötigst du die 10-15-Fache Anzahl an Rechnern, um die gleiche Anzahl Kunden zu bedienen ohne Transcoder.
Wirtschaftlich gesehen also völlig untragbar.
 
AW: Shoutcast: kpbs begrenzen

meines wissens nach ist der transcoder ein eigenständiger prozess, der als source den shoutcast bedient, egal ob da 5 leute im stream hängen oder 1000, wird der transcoder immer die gleichen systemressourcen fressen.

klar frisst der shoutcastserver umso mehr ressourcen, umso mehr hörer dranhängen, aber das tut er so oder so, ob mit oder ohne transcoder.

Grundsätzlich ist jede Umwandlung verlustbehaftet, wenn das Eingangsformat und das Ausgangsformat von sichaus verlustbehaftet ist.
Ebenso erhöhst du die Serverlast um den Faktor 10-15. Das heisst, als Streamanbieter benötigst du die 10-15-Fache Anzahl an Rechnern, um die gleiche Anzahl Kunden zu bedienen ohne Transcoder.
Wirtschaftlich gesehen also völlig untragbar.
 
AW: Shoutcast: kpbs begrenzen

Und was hat deine Aussage jetzt mit meiner zu tun, das der Transcoder mehr Ressourcen verbraucht?
 
AW: Shoutcast: kpbs begrenzen

du behauptest

...
Ebenso erhöhst du die Serverlast um den Faktor 10-15. Das heisst, als Streamanbieter benötigst du die 10-15-Fache Anzahl an Rechnern, um die gleiche Anzahl Kunden zu bedienen ohne Transcoder.
Wirtschaftlich gesehen also völlig untragbar.
das ist so nicht richtig, also der transcoder benutzt zwar etwas ressourcen, aber er wird nicht das 10-15 fache an Rechnern beanspruchen, um die gleiche Anzahl Kunden zu bedienen, sonst gäb es wohl kaum Internetradios die sowohl AAC als auch MP3 anbieten.
Es ist dem Transcoder völlig wurscht ob er 1 oder 5000 Streams bedient, er wird immer die gleiche Prozessorlast beanspruchen, er ist ja nur als Source tätig, nicht als Verteiler.
 
AW: Shoutcast: kpbs begrenzen

Da du den Unterschied zwischen einem einzelnen Radio und einem Reseller anscheinend nicht verstehst, schliese ich von meiner Seite die Diskussion. Einzig an ein Zitat von Dieter Nuhr will ich an dieser Stelle erinnern.
 
AW: Shoutcast: kpbs begrenzen

Man MarleyMarl,

Pegasus sagt folgendes aus:

EIN STREAM(transcoder) >> wenig Last

20 (unterschiedliche) STREAMs(Kunden) (Instanzen) >> 20fache MEHR-Belastung des Servers.

Aber nicht: Hörer!

Nur mal genau lesen & verstehen (hab sogar ich geschafft)

Die Rechnerlast potenziert sich und damit ist ein Server schnell an seiner Leistungsgrenze. Unabhängig, wieviele Connects er insgesamt hat. Denn der Transcoder läuft als Prozess, welcher auch dann rechnet, wenn kein Hörer da wäre... (hoffe, das einigermaßen verdröselt zu haben - Korrektur erwünscht, wenn nötig)

Smarti
 
AW: Shoutcast: kpbs begrenzen

ahso...:rolleyes: asche auf mein haupt, allerdings muss ich dann zu meiner verteidigung sagen,
dass die scriptlösung für einen potentiellen reseller
auch nicht gerade sicher ist, weil die misst ja nicht die tatslächliche auflösung des streams sondern liest nur die in der source eingetippte bitrate aus.

wenn die in der source falsch eingetippt wird (zb vorsätzlich)
dann bringt das script ebend nix

die eingegbene bitrate in der config ist ja nur für den yellowpages dienst von shoutcast/aol
vom shoutcast selbst wird aber nicht mokiert, wenn die zb höher oder niedriger ist, als der tatsächliche
stream.

resulstat: das weiss fast jeder streamer und das würde oder könnte schnell ausgenutzt werden.
 
AW: Shoutcast: kpbs begrenzen

Welche Streamprogramme erlauben denn, die Qualität unabhängig von der gesendeten Qualität zu senden? Nur so Interessehalber, da ich persönlich keins kenne.
 
AW: Shoutcast: kpbs begrenzen

alle nsv encoder (also video für shoutcast), da kann man jede beliebige bitrate eintrippen , dem server ist es schnuppe

schätze das gleiche gilt für alle ices (also encoder ) die shellbasiert (auf linux oder windows) funktionieren und wo man das mit dem configfile manuell einstellt.

es ist dem shoutcastserver schlichtweg egal und sowohl yp als auch statusanzeige des linux server auf dem admininterface, geben den in der config eingetippten, bzw vom user eingestellte auflösung und nicht die tatsächliche auflösung des streams aus!)
 
AW: Shoutcast: kpbs begrenzen

Leider werde ich nicht richtig schlau aus den Beiträgen hier.

So ich bin mal ganz ehrlich wie es sich gehört.

Ich besitze eigenen Server und mein webradiochef möchte einen stream bei mir mieten so wie ein zweites radio auch.

Für mich sehr schön bekomme ich ein teil meiner serverkosten wieder rein (kannsch bei meinem gehalt ganz gut brauchen)

Nun möchte ich denen die Kbps begrenzen damit sie nicht einfach videostreaming machen können o.ä.

Könnt ihr mir bitte helfen?

Mir ist bewußt das dies viel arbeit macht und ich bin auch bereit das ich es ja mehr oder weniger komerziell brauch etwas lohn zu zahlen so weit es in meinen möglichkeiten liegt.

Ein denkanstoss tät auch helfen
 
AW: Shoutcast: kpbs begrenzen

Denkanstoss: Cronjob prüft regelmässig die Bitrate. Wenn diese überschritten wird, wird entweder der Mod abgeworfen oder der sc_serv deaktiviert.

Das sollte man den Mietern aber mitteilen, damit sie wissen, was passiert, wenn sie sich nicht an den Vertrag halten.

Alternativ könntest du auch einen bestimmten Traffic vorgeben, der nicht überschritten werden darf. Was die dann damit machen, ist ihre Sache. Evtl. können sie halt nach ner Woche nicht mehr senden.

BTW: Das du solche Einnahmen versteuern musst, weisst du?
 
AW: Shoutcast: kpbs begrenzen

hallo pegasus und vielen dank für deine hilfe.

Mod ?? as für ein mod ich bin kein programmierer LEIDER :(

Cronjob is mir soweit nachvollziehbar aber wie bzw welches script sollte was prüfen?

Das is diese einnahmen versteuern muss ist mir bekannt über einkommenssteuer die ich jedes jahr mache aber danke für den hinweis.

LG und vielen dank im vorraus.
 
AW: Shoutcast: kpbs begrenzen

Mit Mod meinte ich den sendenen Moderator, der rausgeworfen wird, wenn er die Bitrate überschreitet.

Und da du kein Programmierer bist, ist deine Frage nach einem Denkanstoss völlig falsch. Du suchst etwas Out of the Box.

Welches Script das macht bzw. wie es aussieht, kann kein Mensch sagen, da du weder sagst, welches Betriebssystem du einsetzt noch welche Zugriffe du drauf hast.

Wenn es nichts fertiges gibt, wirst du wohl jemand dafür bezahlen müssen, dir sowas zu programmieren. Ich persönlich kenne nichts kostenloses in dieserr RIchtung.
 
AW: Shoutcast: kpbs begrenzen

Ahh okay na ich kenne nen proggi aber ich denke ned das der soetwas macht und kann.

Was wird soetwas kosten?

Ich besitze nen root server mit debian Linux edge darauf läuft eine shoutcast streaming server.

Was heißt out of the box ? pls ?
 
AW: Shoutcast: kpbs begrenzen

So also,

Lösung gefunden und zwar wie folgt.

Ein Shellskript grep im logfile nach entsprechender Zeile mit bitrate
nach der rate, aber nur die letzte zeile und dies kommt in ein temp.

Ein Perlskript welche durch das Shellskript gestartet wird prüft nun diese zeile nach dem wert und überprüft diesen mit der vorgabe in dem fall 96kbit ist der wert = oder < is alles okay...

.. is er aber > 96 dann startet das perlskript ein shellskript (bereits vorhanden deswegen genutzt) welches den stream killt

Jemand bessere ideen?

LG Volvo
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben