UPNP/DLNA for IPS: final version (Control-Point)

Wäre interessant wenn das auch mit dem Foobar2000 Renderer funktionieren würde und man die Anzeige des Covers etc. hätte.

Probiere es doch einfach mal aus, vorausgesetzt Du hast so viele Variablen Spielraum, ob der Foobar Renderer kompatibel ist.

Hallo Stefan71,

Kann Foobar2000 DLNA?

Gruß André

Hallo André,
für Foobar gibt es ein UPnP/DLNA Renderer. Das tolle finde ich halt an diesem Player das wirklich alles abgespielt werden kann, passende Plugins vorausgesetzt.

Hallo Stefan71,

hab mir Foobar2000 mal angesehen. War selbst etwas neugierig geworden.
Funktioniert sowohl als Renderer als auch Server soweit ich sehen kann einwandfrei:

Gruß André

Hi André,
werde es die Tage mal installieren und mir anschauen. Mal so am Rande, könnte man oben rechts (Artist, Titel…) noch ein paar Zeilen einfügen ohne große eingriffe vorzunehmen?

… ja wäre easy. Musst nur einen Link auf die entsprechende Variable setzen. Ist dann nur ein Platzproblem:

Aber Achtung: 200 Variablen brauchst Du etwa in Deinem IPS.

Super, ich dachte es sei fest in einem Skript hinterlegt. Da ich viele Alben mehrfach habe als Remastered, Original Release etc. habe ich Foobar so eingestellt, das diese Zusatz Infos angezeigt werden, um eine bessere Übersicht zu bewahren.
Muss mal schauen wie weit es dazu im Renderer Einstellungen gibt was angezeigt werden kann und was nicht.

Nutze zurzeit die App FoobarCon bei der man eine Custom Einstellung vornehmen kann und diese Infos werden dort alle angezeigt.

Das mit den Variablen …ich habe die Unlimited

…tja. Jetzt wirds technisch :rolleyes:

Der Mediaserver muss die entsprechenden Informationen aufbereiten. Diese packt er dann als Metadata in eine DIDL-Lite. Z.B. so:

<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/"><item id="d-2955540027245908744-coAC80F4FB7D05E75A" parentID="coAC80F4FB7D05E75A" restricted="0"><dc:title>Project X  [ATB]</dc:title><dc:creator>ATB</dc:creator><dc:date>2017-01-01</dc:date><upnp:artist role="AlbumArtist">ATB</upnp:artist><upnp:artist role="Composer">Andre Tanneberger</upnp:artist><upnp:artist>ATB</upnp:artist><upnp:album>neXt</upnp:album><upnp:genre>Dance & DJ</upnp:genre><upnp:albumArtURI dlna:profileID="JPEG_TN">http://192.168.178.128:26125/aa/118030787596937/cover.jpg?size=0</upnp:albumArtURI><upnp:originalTrackNumber>25</upnp:originalTrackNumber><upnp:originalDiscNumber>1</upnp:originalDiscNumber><upnp:originalDiscCount>1</upnp:originalDiscCount><res duration="0:04:10.000" size="8032143" bitrate="32040" bitsPerSample="16" sampleFrequency="44100" nrAudioChannels="2" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=03700000000000000000000000000000">http://192.168.178.128:26125/content/c2/b16/f44100/d-2955540027245908744-coAC80F4FB7D05E75A.mp3</res><res duration="0:04:10.000" size="44220700" bitrate="176400" bitsPerSample="16" sampleFrequency="44100" nrAudioChannels="2" protocolInfo="http-get:*:audio/wav:DLNA.ORG_PN=WAV;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=03700000000000000000000000000000">http://192.168.178.128:26125/content/c2/b16/f44100/d-2955540027245908744-coAC80F4FB7D05E75A.forced.wav</res><res duration="0:04:10.000" size="44220656" bitrate="176400" bitsPerSample="16" sampleFrequency="44100" nrAudioChannels="2" protocolInfo="http-get:*:audio/L16:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_CI=1">http://192.168.178.128:26125/content/c2/b16/f44100/d-2955540027245908744-coAC80F4FB7D05E75A.forced.l16</res><res duration="0:04:10.000" size="8032143" bitrate="32040" bitsPerSample="16" sampleFrequency="44100" nrAudioChannels="2" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=03700000000000000000000000000000">http://192.168.178.128:26125/content/c2/b16/f44100/d-2955540027245908744-coAC80F4FB7D05E75A.mp3</res><upnp:class>object.item.audioItem.musicTrack</upnp:class></item></DIDL-Lite>

Das hat prinzipiell nichts mit dem Control-Point zu tun. Der muss diese zumindest bei Audio nur richtig durchreichen. Bei Foto und Video sowie Radio sieht das etwas anders aus. Dort war es etwas frickelig, dass richtig zusammenzusetzen.

Gruß

André

Würde mich mal interessieren was man da beachten muss dann würde ich das auch gerne mal auf einem Windows Rechner ausprobieren. Ich habe Foobar 1.3.17 und die Component UPNP/DLNA Rederer 0.99 installiert. Im Webfront wird Foobar aber nicht angezeigt. Muss ich da noch irgendwas spezifisch einstellen bzw. konfigurieren?

Puh. War irgendein Häkchen in Preferences --> Advanced. Brauchte auch eine Weile, kann es nur nicht mehr wirklich rekapitulieren. Habe erst den den Mediarenderer Output installiert gehabt dann den UPNP/DLNA Renderer und mehrmals gestartet.
Schau mal ob er im Explorer unter Netzwerk auftaucht als Kontrolle. Wenn nein fehlt vielleicht noch die Netzwerkfreigabe.

Zum Testen ist das sicher nicht schlecht, aber Ihr wisst schon, dass eigentlich Netzwerkgeräte wie Lautsprecher, Fernseher o.ä. das Ziel sind. Möglich ist auch BubbleUPNP um an das Handy zu streamen.

Gruß André

Im Netzwerk wird er gefunden und wurde jetzt nach mehrmaligen Suchen im Webfront auch gefunden :D.

Ja das ist schon klar aber ich teste jetzt erst mal alles und es kommen noch ab und zu Fehlermeldungen, die ich versuche zu verstehen. Aber die ersten Test mit Plex als Server und Foobar als Renderer funktionieren hervorragend, Du machst mich glücklich :D.

Mal eine hypothetische Frage, Du kennst Dich ja mit deinem Projekt am besten aus. Es wird ja auf dem Server z.B. nach Album oder Artist und so weiter gesucht und dann eine Wiedergabe gestartet. Wofür ich irgendwie eine komfortable Möglichkeit suche ist Daten, die auf einem lokalen Server liegen, per Sprache über z.B. Alexa aufrufen zu können. Dazu müsste ich von einem Skill die Spracheingabe übernehmen und diese dann in IP-Symcon an ein Skript übergeben. Angenommen ich hätte also als Daten das Album Sultans of Swing von Dire Straits. Gibt es irgendeine Möglichkeit das eventuell an ein Skript und dein Projekt zu übergeben und damit die Wiedergabe zu starten?

Ja das ist schon klar aber ich teste jetzt erst mal alles und es kommen noch ab und zu Fehlermeldungen, die ich versuche zu verstehen. Aber die ersten Test mit Plex als Server und Foobar als Renderer funktionieren hervorragend, Du machst mich glücklich .

Manchmal gibt es bei der Suche Fehlermeldungen, wenn die Antwort erstmal leer war. Man kann auch ohne explizite Suche alles einfach so laufen lassen und „neue“ Geräte fügen sich selbstständig hinzu. Nur die Sony spezifischen Dinge gehen dann nicht. Diese Reiter kann man unter System aber auch abschalten. In einem normalen Heimnetz dürfte der Traffic auch noch im annehmbaren Bereich sein. Ich habe vielleicht hier und da noch ein paar echo oder print_r vergessen zu maskieren.

Ansonsten gibt es ständig Notifications, was gerade passiert - wollte ich so :rolleyes:

Aber: erstmal schön, dass es bei Dir auch funktioniert :smiley:

Mal eine hypothetische Frage, Du kennst Dich ja mit deinem Projekt am besten aus. Es wird ja auf dem Server z.B. nach Album oder Artist und so weiter gesucht und dann eine Wiedergabe gestartet. Wofür ich irgendwie eine komfortable Möglichkeit suche ist Daten, die auf einem lokalen Server liegen, per Sprache über z.B. Alexa aufrufen zu können. Dazu müsste ich von einem Skill die Spracheingabe übernehmen und diese dann in IP-Symcon an ein Skript übergeben. Angenommen ich hätte also als Daten das Album Sultans of Swing von Dire Straits. Gibt es irgendeine Möglichkeit das eventuell an ein Skript und dein Projekt zu übergeben und damit die Wiedergabe zu starten?

Ich sehe schon. Du willst mich dazu bewegen, doch noch weiter zu entwickeln :rolleyes:

Erster Gedanke: eine spezifische Playlist aufzurufen dürfte sich machen lassen. Eine Übergabe wäre in UPNP_Playlist_Handle einzubauen und AV_Play als Befehl zum abspielen. Hatte schon darüber nachgedacht…

Zweiter Gedanke: Browsen über Alexa wäre sicher ein Unding. Ich verwende BrowseDirectChildren (nur so funktioniert das hierarchische durchsuchen des Servers), aber es gibt auch ein BrowseMetadata. Könnte sein, dass man da mit einem spezifischen Suchbegriff voran kommt. Der Server ist hier limitierend. Wenn man dort einen Suchbegriff eingibt und eine verwertbare Antwort bekommt kann ich mir das vorstellen.

Gruß André

Hallo André,
da hast du was schönes gebaut.:smiley:
Aber auf einen Raspberry mit IPS5 geht es nicht, kommen zu viele Fehler und Links werden nicht richtig angelegt.
Also mal ein Windows mit IPS4.4 genommen, dort laufen lassen, und dann die symcon Sachen auf einen Test Pi kopiert.(Backup von Hand, auf die schnelle.) Nun geht schon mal ein Teil auf dem Pi, und das sieht gut aus. Da muss ich mal mit spielen, wenn wieder Zeit ist.

Ich sehe da auch auf Dauer ein IPS Modul.
Man sollte da mal in der Gemeinschaft drüber nachdenken.

Und Danke fürs teilen, da sind einige Dinge drin, die man brauchen kann.
Selbst der blöde Aldi Lautsprecher (WS) geht damit, aber auch nur schnell probiert.

Ich werde dann mal weiter probieren und berichten.

Prima. Nein wirklich. Ich dachte das Thema DLNA fasziniert zwar, aber Keiner traut sich ran.

Modul gerne. Ich habe gesagt Open source, aber hier seid ihr dran. Ich helfe gern, muss Euch dazu aber unterrichten, wie DLNA überhaupt funktioniert.

Die Idee von Fonzo bezüglich Alexa fasziniert mich nun wieder. Ich werde mich dem mal widmen.

Die Installerfunktion funktioniert offenbar nur für IPS 4.X. Wenn jemand eine neue Doku der Variablenerstellung hat würde ich die gerne haben. Ggf. als PN.

Gruß André

Hallo Fonzo,

hatte gerade die Idee, ob die Mediaserver selbst eine Suchfunktion haben, um eventuell per Spracheingabe diese anzusprechen. Habe somit mal DeviceSpy (Intel UPNP Tools) darauf angesetzt und: Manche ja, manche nein.
WMP, Twonky, Assett UPNP und selbst meine Fritzbox haben das. Plex und mein HDD Recorder aber z.B. nicht.

Aber: damit scheint das für zumindest bestimmte Server als möglich eine Abfrage per Sprachsteuerung zu konstruieren !

Tja und noch etwas: ich bin an den spezifischen Abfragen zwar schon dran, sehe aber im Moment Widersprüchliches. Am Ende bleibt wahrscheinlich nur die Information für alle „object.audioItem“ auszulesen und lokal dann die Rückgabe (ist XML) aufzubereiten.

Gruß André

Hallo André!
halle Leute!

eine echt geniales Teil und da ich einer bin der sich nicht so gut auskennt war es recht einfach zu installieren.
Leiter habe ich 3 Fehler im WEB die ich nicht zuordnen kann

Ich hoffe ihr könnt mir dabei helfen

Dann hab ich noch ne Frage, wie kann ich in die Gruppen meine Player hinzufügen

Ich habe folgende Geräte:

3x Raspberry mit Volumio
2x Samsung TV Geräte
und 2 Ipad die ich gerne in dieses System Intrigieren möchte … die Raspberry und TV hab ich schon , welche APP würde gibt es die man als Player verwenden kann.

Danke für eure Hilfe

LG
Christian

Da sind noch ein paar Variablen Typen Fehler drinnen, entweder müsste das noch angepasst werden, aber ich bin dabei das mit André zu einem PHP Modul umzubauen, dann werden dann wären die übrigen Fehler dann zukünftig auch weg sein.

Hallo!

Danke für die schnelle Nachricht, die Fehler habe offensichtlich keine Auswirkung auf mein System, aber wieso sehe ich keine Geräte in dem Gruppenverzeichnens?

Hallo,

Group und Party sind nur für Sony Devices, die das auch unterstützen!!! (siehe Doku)
Am besten unter System abschalten…

Gruß André