Jump to content

Webinterface: "anderen Player (m3u)" auswählen ohne über Stream Setup gehen zu müssen


fsommer1968

Recommended Posts

Hallo,

 

was muß ich in den HTML Dateien des Web Servers anpassen, damit ich direkt aus den EPG Informationen anstelle des "Direkt streamen" bzw. im "Webbrowser streamen" einen "anderer Player (m3u)" starten kann, so wie es sonst nur aus dem Stream Setup heraus möglich ist? Man kann davon ausgehen, dass die Transcoding Parameter schon gesetzt sind.

 

Link to comment
On 12/11/2023 at 1:10 PM, fsommer1968 said:

was muß ich in den HTML Dateien des Web Servers anpassen, damit...

 

Falsch gestellte Frage. Sie müsste lauten "Kann ich die HTML Dateien des Web Servers anpassen, damit...?".  Die Antwort ist schlicht "Nein - höchstens anders, als du dir das vorstellst". Schon allein, weil du nicht mit fertigen HTML-Dateien zu tun hast, sondern mit HTML-Vorlagen (Templates), die der Media Server vor der Auslieferung an Clients in verschiedener Hinischt modifiziert.

 

On 12/11/2023 at 1:10 PM, fsommer1968 said:

...damit ich direkt aus den EPG Informationen anstelle des "Direkt streamen" bzw. im "Webbrowser streamen" einen "anderer Player (m3u)" starten kann,...

 

Hier bleibt unklar, was du mit "EPG-Informationen" meinst. Gehen wir vom Popup für die EPG-Details des Desktop Webinterface aus (epg_details.html). Unten rechts befinden sich u.a. Icons für "Stream Setup" (Zahnrad) und "Im Browser wiedergeben" (Play-Symbol), die in der HTML-Vorlage so aussehen:

 

&nbsp;&nbsp;&nbsp;<a class="alink" href="javascript:popupStream('{configurl}');" title="{lngStreamConfig}"><img src="gfx/setup.png" alt="{lngStreamConfig}" border="0"></a>
&nbsp;&nbsp;&nbsp;<a class="alink" href="javascript:popupStream('{directurl}');" title="{lngStartStream}"><img src="gfx/play.png" alt="{lngStartStream}" border="0"></a>

 

Die Teile in geschweiften Klammern wie {configurl} oder {directurl} sind Vorlagen-Variablen, die der DMS ersetzt, hier die beiden genannten durch die tatsächlichen URLs. Wenn du im Browser den Mauszeiger draufhälst oder den Link kopierst, siehst du, was dabei letztendlich herauskommt. Bei {directurl} bzw. dem Play-Button sowas wie

 

javascript:popupStream('streamint.html?direct=1&chid=2359890582721931325%7CDas%20Erste%20HD&streamid=%7B3009BBF3-BEBD-4DFD-AC75-17F833463C13%7D');

 

Der an verschiedenen Stellen verwendeten JavaScript-Funktion popupStream aus SVCweb\js\global.js wird hier die hineingepatchte URL (die u.a. die Sender-ID chid enthält) als Parameter übergeben. Die Funktion öffnet ein Popup-Fenster für die Streamwiedergabe oder auch -konfiguration und lädt den angegebenen Inhalt hineinn. Es gibt keine Chance, streamint.html?... auf den Download einer M3U umzubiegen, weil der Code im DMS, der das behandelt, keinen entsprechenden Zweig enthält. Dafür müsste man den DMS-Code ändern.

 

Du könntest zwar den gesamten Teil zwischen den doppelten Anführungsstrichen von href="..." durch eine eigene URL für einen M3U-Download ersetzen, müsstest darin aber auch die Sender-ID hardcoden, was jedoch nicht Sinn der Sache ist - es soll ja der im Webinterface gewählte Sender wiedergegeben werden, wenn ich das richtig verstehe, nicht immer der selbe. Also muss der DMS die Sender-ID mitsamt Drumherum auf jeden Fall in die Vorlage hineinpatchen.

 

Anders sieht es bei der URL für das Stream Setup aus (Zahnrad). Nach Ersetzen von {configurl} durch den DMS ergibt sich sowas wie

 

javascript:popupStream('streamconfig2.html?aktion=streamconfig2&chid=4135585285866994681%7CDas%20Erste%20HD');

 

und der DMS-Code für streamconfig2.html enthält tatsächlich einen Zweig für einen M3U-Download. Du aktivierst ihn z.B. mit folgendem href="...":

 

href="{configurl}&direct=1"

 

Der DMS patcht hier für {configurl} immer noch streamconfig2.html plus Sender-ID hinein, aber der popupStream-Aufruf unterbleibt, und der Zusatz &direct=1 führt zum Download einer M3U. Die darin enthaltene URL dient der Wiedergabe des originalen (untranskodierten) Streams. Bei Sendern ist das ein Transportstream (*.ts). Wenn der Ziel-Player das kann und genug Bandbreite verfügbar ist, wäre das vorzuziehen.

 

Wenn die M3U unbedingt eine URL für transkodierten Output enthalten soll, musst du in href="..." zumindest eine numerische Preset-Angabe und den Parameter directtrans ergänzen, z.B.

 

href="{configurl}&preset=10000&directtrans=1"

 

Preset-Nummern ab 0 sind der Index des entsprechenden Presets aus der iphoneprefs.ini, Nummern ab 10000 der Index des Presets aus der ffmpegprefs.ini (siehe C:\Program Files (x86)\DVBViewer Pro\config), jeweils von oben nach unten. Im obigen Beispiel ist also [WebM HD 3600 kbit] gewählt. Weitere Parameter für die Transkodierung kannst du nach Bedarf hinzufügen. Sie sind C:\Program Files (x86)\DVBViewer Pro\docs\transcoding_params_de.txt zu entnehmen.

 

Danach erhälst du durch Anklicken des Zahnrads die gewünschte M3U. An das Stream Setup kommst du zumindest an dieser Stelle aber nicht mehr heran. Deshalb wäre es besser, an der Stelle des HTML-Templates einen zusätzlichen Button z.B. mit der folgenden zusätzlichen Zeile vorzusehen:

 

&nbsp;&nbsp;&nbsp;<a class="alink" href="{configurl}&direct=1" title="{lngStartDirectStream}"><img src="gfx/play.png" alt="{lngStartDirectStream}" border="0"></a>

 

Dadurch erhälst du ein zweites Play-Icon für "Anderer Player (M3U)". Aber wie auch immer: Bei jeder DMS-Installation (insbesondere bei Updates) überschreibt dir der Installer gnadenlos die epg_details.html, so dass du die Änderungen erneut durchführen musst!

 

  • Like 1
Link to comment
22 hours ago, fsommer1968 said:

genau dort wollte ich die Option auch haben!

 

Dann habe ich ja richtig geraten. Besser ist es, wenn du sowas unmissverständlich angibst.

 

Inzwischen habe ich mich entschlossen, die zusätzliche Option standardmäßig in das EPG-Details-Popup des Desktop Webinterface zu integrieren, und zwar so:

 

Zwischenablage01.png

 

Die zusätzliche Zeile in epg_details.html unterhalb der für den Play-Button sieht so aus

 

&nbsp;&nbsp;&nbsp;<a class="alink" href="{configurl}&direct=1" title="{lngStartDirectStream}"><img src="gfx/m3u.png" alt="{lngStartDirectStream}" border="0"></a>

 

Sie bewirkt den Download einer M3U-Datei, die die Adresse des originalen (untranskodierten) Streams enthält, was in den meisten Fällen passen dürfte. Transkodiert geht nicht ohne weiteres, da dafür wie gesagt in der URL zumindest ein Preset festgelegt werden muss. Das neue m3u-Icon als PNG-Datei, das den Download als M3U symbolisiert, gehört in den Ordner SVCweb\gfx:

 

m3u.png

 

Das wird ab dem nächsten Release so zur Verfügung stehen. Wer will, kann es sich jetzt schon durch Editieren der epg_details.html zurechtbasteln.

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...