NEWS
[Frage] Internetradio - wie geht das ?
-
Super das habe ich auch bereits gesucht…
Kann mann es auch so gestalten das ich mehrere Sender anlege, und nur einen Lautstärke Regler habe..
Gruss Stephan
-
Das müsste gehen wenn man das ganze umschreibt und die source als auswahlliste macht glaube ich.
Hab allerdings kaum zeit aktuell
-
Und das ist ein Beispiel für MPD
[{"tpl":"tplJquiButtonState","data":{"oid":"mpd.0.addplay","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","buttontext":"Europa+","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"value":"http://ep256.streamr.ru","no_style":false,"views":null},"style":{"left":"365px","top":"450px","width":"156px","height":"77px"},"widgetSet":"jqui"}]
-
Super es geht nun auch bei mir…jetzt bräuchte ich nur noch eine vorlage für ein widget das ich die Lautstärke direkt am ipad ändern kann...kann mir da jemand helfen..
gruss stephan
-
Wie meinst du das genau?
Am Player ist doch nen Lautstärke schieber.
Willst du extern eine andere Hardware Lautstärke regeln?
-
Joo ich hätte gerne den Lautstärke Schieber nicht direkt am Player sondern als extra Button.
Gesendet von meinem SM-G928F mit Tapatalk
-
HTML Widget
<audio controls/autoplay="autoplay"><source src="http://mp3stream7.apasf.apa.at:8000/;stream.mp3" type="audio/mp3">ORF.</audio>
Hier das Widget
! code][{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html":"
\n
! <audio controls/autoplay=""autoplay""><source src=""<URL" url="http://mp3stream7.apasf.apa.at:8000/;stream.mp3">http://mp3stream7.apasf.apa.at:8000/;stream.mp3" type="audio/mp3">ORF.</audio>
! "},"style":{"left":"902px","top":"376px","width":"324px","height":"72px"},"widgetSet":"basic"}]Hallo zusammen,
ich habe hier dieses Widget in einen "Media View" im Gebrauch und läuft soweit. Wenn ich allerdings auf ein anderes View wechsels zB den Hauptbildschirm und dort ne Zeit bleibe dann bricht die Musik nach einer kurzen Zeit ab. Das Widget startet auch sofort wenn das View worauf es abgelegt ist angezeigt wird ohne den Wiedergabe Button zu drücken. Gibt es eine Möglichkeit das zu ändern und das die Musik so lange der Wiedergabeknopf gedrückt ist weiter spielt ?
Gruß vom Volker `
-
Hallo Schubi!
Wunschgemäße Übersiedelung hierher, da http://forum.iobroker.net/viewtopic.php?f=17&t=6352&e=1&view=unread#p66543 ein Anderes war
@Schubi:@metaxa: Schaut super aus das Webradio, kannst du bitte genauer erklären wie du das gemacht hast?
MPD und IoBroker laufen auf dem Raspi? Der Raspi spielt dann die Musi über die integrierte Buchse?
Würde es da nicht reichen wenn nur MPD auf dem RASPI im Badezimmer läuft?
Vielleicht könnte man das in diesen Thread - edit metaxa: eben hier - weiterdiskutieren.
Danke schon mal.LG Schubi. `
<u>Meine Ausgangslage:</u>Raspi3 für iOBroker, vis und bissi Umfeld, läuft inaktiv seit ca. 6 Monaten im Hintergrund im Testbetrieb
Raspi2 (ehem. LXCCU, war echt ein toller Start in die neue Welt) sollte fürs BadRadio reichen
<u>Was wollte ich</u> (wir machen unser Bad und WC neu)<u>:</u>
Keine Sonoslösung, sondern eine ausbaufähige Lowbudgetlösung mit weitgehend vorhandenem Equipment.
<u>Was habe ich zusätzlich gekauft:</u>
https://www.amazon.de/gp/product/B003MTTJOY/ref=od_aui_detailpages01?ie=UTF8&psc=1 ~€10,–
https://www.amazon.de/Soundkarte-UGREEN-Kopfh%C3%B6rer-Mikrofonanschluss-kompatibel/dp/B016CU2PEU/ref=sr_1_1?ie=UTF8&qid=1494528924&sr=8-1&keywords=USB+Soundkarte+UGREEN+Externe+USB+Soundkarte+Adapter+Wei%C3%9F+mit+3%2C5mm+Kopfh%C3%B6rer+und+Mikrofonanschluss%2C+Plug+%26+Play+Sound+Card+geeignet+f%C3%BCr+Computer%2C+Notebook%2C (die integrierte Buchse taugt beim Raspi3 halbwegs, beim Raspi2 kriegte ich es nicht hin) ~€9,–
https://www.amazon.de/LEPY-LP-808-Silver-Digital-Verst%C3%A4rker-Stereo-Audio-20-Stromversorgung/dp/B013UCBW8I/ref=sr_1_1?s=automotive&ie=UTF8&qid=1494529295&sr=1-1&keywords=LEPY+LP-808-Silver+Digital-Verst%C3%A4rker+Stereo-Audio-20+W%2C+3+A-Stromversorgung%2C+Silber (das gleiche Ding bespielt seit 2 Jahren zufriedenstellend mein "Sommerkino" auf der Terrasse) ~€20,–
2x Deckeneinbauspeaker á ~15,-- hatte ich schon
<u>Jetzt-Ziel:</u>
Mein Raspi3 mit vis soll auf den HM Bewegungsmeder reagieren und den Raspi2 im Badezimmer sagen er soll jetzt so und so lange diesen oder jenen Sender abspielen und über vis am Tablet anzeigen.
<u>Zukunfts-Ziel:</u>
Im Badezimmer soll in der Früh der Radio den Lieblingssender meiner Frau spielen (funkt schon
), am Abend vielleicht eine gut sortierte Jazzplaylist. In der Nacht soll er grundsätzlich schweigen, auch wenn Bewegung erkannt.
So, das meine Ausführungen. Worüber genau möchtest du diskutieren, bzw. wo kann ich dir versuchen zu helfen?
LG aus Wien
mxa
-
Vielen Dank für deine Ausführungen.
Hab genau die selben Anforderungen wie du (Radio im BAD
Mich (und ich glaube auch viele andere) interessiert das Abspielen von Webradiostationen.
Mein erster Ansatz über den Audioausgang des Tabletts funktioniert zwar,
jedoch sind die Möglichkeiten bezüglich der Senderauswahl und Lautstärkeregelung eher bescheiden.
Mir ist klar, wenn man Webseiten programmieren kann sollte das gehen - kann ich aber nicht.
Also deine Lösung (Radioteil) so wie ich das verstanden hab:
MPD auf einem RASPI mit WLAN und Audioausgang mit zus. Verstärker. (Danke für die Links!)
Steuerung von MPD über ioBroker - Vis welcher am selben oder auch auf einem anderen RASPI bzw. sonstigen Host läuft.
Ist das so richtig?
Ein Frage noch - das Bild vom Vis
gibts da noch eine Sache die man beachten muss - oder sind das Standardelemente von MPD/MPC.LG aus Raglitz (60km Südlich von Wien :-))
-
Hi Schubi!
Ja, hast du richtig verstanden.
Bild: Dahinter liegen die Standard Datenpunkte von mpd oder Objekte wie es bei iOBroker heißt. Ja, die einzelnen Widgets sind aus dem Standardportfolio von VIS. Leidglich die Symbole für "plus" und "minus" habe ich mir irgendwo in Netz gesaugt. Gibts x-fach zu finden. Ein Beispiel Widget findest du eh hier in diesem Thread http://forum.iobroker.net/posting.php?m … 07#pr64186. Ich glaube mich erinnern zu können, dass ich sogar damit ursprünglich began.
LG, mxa
-
Ich muss diesen Tread noch einmal noch holen. Ich habe auf meinem Android Tablet einen Musical Player Deamon laufen. Dieser ist auch unter der IP meines Tablets Port 6600 erreichbar. Ich habe auch schon einen Stream erfolgreich zu laufen gebracht. Aber irgendwie kann ich diesen nun nicht mehr stoppen. Was mir auch aufgefallen ist, der Stream wird nur hörbar wenn der Deamon im Vordergrund ist.
Gesendet von meinem B3-A30 mit Tapatalk
-
@Jey Cee:…
Ich seh hier 3 Möglichkeiten:
1. Tasker nutzen um den Stream auf dem Tab wieder zu geben oder eine APP damit zu steuern.
2. Eine upnp fähige APP und den upnp Adapter nutzen.
3. Einen web player bauen der im view integriert ist.
Im Grunde sind alle drei Lösungen gleich schwierig in der Umsetzung, aber Lösung 3 hat den Nachteil das die Steuerung ausschließlich vom view aus möglich ist.
Daher empfehle ich 1 oder 2.
Gesendet von meinem m8 mit Tapatalk `
ich würde gern auf meinem Android Tablet einen entsprechede upnp-APP installieren.
Ich habe jetzte schon einige stunden in Google Play zugebracht aber hab bisher noch nichts finded können was auch
im upnp Adapter erkannt wird…
Da das Tablet in der Küche an der wand hängt und ein Bluetooth-Lautsprecher angeschlossen werden soll, würdew ich gern
ein Webradio in meinen View einbauen...
Gruß
Sveni_Lee
-
Bubble Upnp ist der upnp player für Android. Hast du den schon versucht? Bei mir geht er.
Für den player hab ich auch ein Skript geschrieben um ihn mit vis zu nutzen. Heut abend kann ich dir dazu eine Ausführliche Anleitung geben.
-
Wenn der Adapter läuft und der Player wird nicht erkannt, starte den Adapter neu dann sollte er auf jedenfall erkannt werden.
-
Super der wird gefunden…
Wäre toll wenn Du mir dafür die Anleitung geben könntest....
Gesendet von meinem B3-A30 mit Tapatalk
-
Wäre toll wenn Du mir dafür die Anleitung geben könntest…. `
So jetzt hier mal die Anleitung:
- Skript anlegen (JavaScript Adapter) und anpassen. Du musst nur die erste Zeile, das Gerät welches du steuern willst, und die zweite Zeile, wo die Hilfsobjekte erstellt werden, anpassen.
var device = "upnp.0.BubbleUPnP_Media_Server_(Tab2A7-10F); //Hier das upnp Gerät eintragen das gesteuert werden soll. var control = '0_userdata.0.Tab2'; //Hier das Objekt eintragen wo die Steuerobjekte angelegt werden sollen var oldVol; //createState(name, initialValue, forceCreation, common, native, callback); createState(control + '.MediaControl.Play', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.play'}); createState(control + '.MediaControl.Pause', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.pause'}); createState(control + '.MediaControl.Stop', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.stop'}); createState(control + '.AudioControl.Vol_UP', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.volume_up'}); createState(control + '.AudioControl.Vol_Down', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.volume_down'}); createState(control + '.AudioControl.Mute', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.mute'}); createState(control + '.MediaControl.MediaURL', '', {type: 'string', read: 'true', write: 'true', role: 'button.mute'}); on({id: control + '.MediaControl.Play', val: true }, function(obj) { //Wiedergabe starten setState(device + '.MediaRenderer.AVTransport.Play.InstanceID', 0); setState(device + '.MediaRenderer.AVTransport.Play.Speed', 1); setState(device + '.MediaRenderer.AVTransport.Play', 'send'); setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.MediaControl.Pause', val: true }, function(obj) { //Wiedergabe pausieren setState(device + '.MediaRenderer.AVTransport.Pause.InstanceID', 0); setState(device + '.MediaRenderer.AVTransport.Pause', 'send'); setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.MediaControl.Stop', val: true }, function(obj) { //Wiedergabe stoppen setState(device + '.MediaRenderer.AVTransport.Stop.InstanceID', 0); setState(device + '.MediaRenderer.AVTransport.Stop', 'send'); setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.AudioControl.Vol_UP', val: true }, function(obj){ oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val; newVol = parseInt(oldVol) + 5; //der Wert um den die Lautstärke geändert wird, kann beliebig geändert werden //neue Lautstärke senden setState(device + '.MediaRenderer.RenderingControl.SetVolume.Channel', 'Master'); setState(device + '.MediaRenderer.RenderingControl.SetVolume.DesiredVolume', newVol); setState(device + '.MediaRenderer.RenderingControl.SetVolume.InstanceID', 0); setState(device + '.MediaRenderer.RenderingControl.SetVolume', 'send'); setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.AudioControl.Vol_Down', val: true }, function(obj){ oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val; newVol = parseInt(oldVol) - 5; //der Wert um den die Lautstärke geändert wird, kann beliebig geändert werden //neue Lautstärke senden setState(device + '.MediaRenderer.RenderingControl.SetVolume.Channel', 'Master'); setState(device + '.MediaRenderer.RenderingControl.SetVolume.DesiredVolume', newVol); setState(device + '.MediaRenderer.RenderingControl.SetVolume.InstanceID', 0); setState(device + '.MediaRenderer.RenderingControl.SetVolume', 'send'); setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.AudioControl.Mute', val: true }, function(){ var oldMute = getState(device + '.MediaRenderer.RenderingControl.Mute').val; if(oldMute == 0){ setState(device + '.MediaRenderer.RenderingControl.SetMute.InstanceID', 0); setState(device + '.MediaRenderer.RenderingControl.SetMute.Channel', 'Master'); setState(device + '.MediaRenderer.RenderingControl.SetMute.DesiredMute', 1); setState(device + '.MediaRenderer.RenderingControl.SetMute', 'send'); //oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val; }else{ setState(device + '.MediaRenderer.RenderingControl.SetMute.InstanceID', 0); setState(device + '.MediaRenderer.RenderingControl.SetMute.Channel', 'Master'); setState(device + '.MediaRenderer.RenderingControl.SetMute.DesiredMute', 0); setState(device + '.MediaRenderer.RenderingControl.SetMute', 'send'); } setTimeout(function(){setState(obj.id, false);}, 150); }); on({id: control + '.MediaControl.MediaURL' }, function(obj){ setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI.CurrentURI', obj.newState.val); setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI.InstanceID', 0); setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI', 'send'); });
- Steuerelemente in einer view anlegen. Anbei findest du Beispiel Widgets, du musst noch die Objekt IDs anpassen.
[{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Vol_UP","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"javascript.0.Archos_Tab.Akkustand","caption":"Lauter","captionOn":"Lauter","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","g_leftRight":false,"timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15","descriptionLeft":"javascript.0.WMP_lenovo.Vol_UP"},"style":{"left":"203px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Vol_Down","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Leiser","captionOn":"Leiser","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15"},"style":{"left":"375px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Mute","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Mute","captionOn":"Mute","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15"},"style":{"left":"289px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Play","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Play","captionOn":"Play","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"202px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Pause","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Pause","captionOn":"Pause","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"288px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Stop","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Stop","captionOn":"Stop","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"374px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplJquiInputSet","data":{"oid":"javascript.0.WMP_lenovo.MediaURL","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","buttontext":"OK","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"title":"Media Pfad: ","size":"33"},"style":{"left":"94px","top":"368px","color":"#ffffff","width":"475px","height":"40px"},"widgetSet":"jqui"},{"tpl":"tplValueString","data":{"oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.AVTransport.CurrentMediaDuration","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html_prepend":"Dauer: "},"style":{"left":"374px","top":"169px","color":"#ffffff","width":"116px","height":"19px"},"widgetSet":"basic"}]
- Erweiterung/Anpassung an deine Bedürfnisse. Zurzeit gibt es noch keine Playlist funktion, die muss noch erstellt werden. Dazu bin ich bisher noch nicht gekommen.
Eigentlich ist es ziemlich einfach wenn es um die reine Steuerung geht. Da Bubble upnp ein reiner Wiedergabe punkt ist muss die "Player" Funktionalität vom Steuerechner kommen. Das ist bei den meissten upnp fähigen Playern der Fall.
EDIT: Wichtig ist das die Stream URL so aussieht:
http://wdr-1live-diggi.icecast.wdr.de/wdr/1live/diggi/mp3/128/stream.mp3
m3u Play listen gehen nicht. Wenn man die m3u mit einem Text Editor öffnet sieht man die Stream URL im Klar text, die kann man benutzen.
Die URL kannst du im Objekt "MediaURL" eingeben und anschließend setzt du "Play" auf "true" dann wird der Stream oder die MP3 wieder gegeben.
-
erst einmal Danke für die Anleitung.
bisher hatte ich nur Blockly installiert. Ich habe dann jetzt versucht den javascript/nodeJS. das klappt leider nicht…
Ich bekomme einen Fehler bei der Installation.
2712_npm-debug.log -
Es gibt keinen Blockly Adapter nur den JavaScript Adapter, da ist Blockly mit drin.
Wenn du ein Skript anlegst, hast du rechts oben ein Auswahlfeld wo Blockly steht. Dort wechselte du zu JavaScript.
-
okay, soweit habe ich das jetzt hinbekommen.
jetzt habe ich noch eine Kleinigkeit, die ich noch nicht richtig verstanden habe.
Worauf müüsen jetzt die Objekt-ID in dem Widget verweisen? Benötige ich noch einen weiteren
"Rechner" auf den ich verweisen muss? oder ist das das von mir angelegte objekt?
-
Was meinst du mit "Rechner"?
Die Widgets müssen auf die vom Skript angelegten Objekte verweisen.