Jump to content
feedzapper

ffmpegprefs.ini und .ts Streams ?

Recommended Posts

feedzapper

Mir ist gerade aufgefallen das alle .ts Einträge in der ffmpegprefs.ini (MimeType=Video/mpeg" im Web Interface bei der Stream Auswahl nicht mehr auftauchen ?

Früher ging das immer ...

Diese konnte man ja dann über einen externen Player Streamen (VLC)

z.b.

[HEVC_QSV 720p]
Cmd=-analyzeduration 1500k {offset} {realtime} -i "{infile}" -c:v hevc_qsv -load_plugin hevc_hw -pat_period 0.2 -f mpegts -bufsize 10880k -b:v 5440k -maxrate 5440k -g 50 -map 0:0 -map 0:1 -vf "yadif=0:-1:1, scale={scalex}:{scaley}" -preset 1 -tune film -acodec libfdk_aac -ab 160k -ar 48000 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/mpeg
Ext=.ts

 

oder auch die "default" .ts Einträge  wie z.b.

[TS HD 3600 kbit]
Cmd=-analyzeduration 1500k {offset} {realtime} -i "{infile}" -f mpegts -pat_period 0.2 -vcodec libx264 -bufsize 6400k -maxrate 3200k -crf 20 -g 50 {framerate} -map 0:0 -map 0:1 -vf "yadif=0:-1:1, scale={scalex}:{scaley}" -preset {vpreset} -tune film -vprofile main -level 30 -acodec libmp3lame -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/mpeg
Ext=.ts

 

Diese alle werden wie gesagt in der Stream Auswahl nicht mehr angezeigt obwohl sie vorhanden sind....

 

 

 

Share this post


Link to post
Griga
vor einer Stunde schrieb feedzapper:

Mir ist gerade aufgefallen das alle .ts Einträge in der ffmpegprefs.ini (MimeType=Video/mpeg" im Web Interface bei der Stream Auswahl nicht mehr auftauchen ?

 

Kommt drauf an, wo du guckst. Im Stream Setup, das hauptsächlich der Wiedergabe im Browser dient, wird .ts nicht angeboten, da Browser das Format nicht beherrschen. Im Setup für Links-Seite -> M3U Senderliste herunterladen -> HTTP Senderliste (transkodierte Streams) ist .ts jedoch vetreten.

 

Share this post


Link to post
feedzapper

Ah danke habe es gefunden.

Mir ging es in erster Linie auch darum "Aufnahmen" transcodiert zu streamen mit dem VLC vom entfernten Mediaserver Rechner via openvpn.

Das bekomme ich nach wie vor nicht hin. Dies funktioniert nur im Browser bei mir.

Der DVBViewer hängt zwar auch noch per RTSP Network device am entfernten Mediaserver.

Für TV SD Inhalte reicht die Bandbreite aus. Aber dort wüsste ich auch nicht wie ich aufgenommene Inhalte vom entfernten Mediaserver über den DVBViewer wieder direkt abspielen lassen kann ?

Gibts denn da eine Möglichkeit ? 

Share this post


Link to post
Griga
vor einer Stunde schrieb feedzapper:

Mir ging es in erster Linie auch darum "Aufnahmen" transcodiert zu streamen mit dem VLC vom entfernten Mediaserver Rechner via openvpn.

 

Probiere das HLS Format. Das ist ein über Playlisten gesteuerter segmentierter TS. Der VLC 3.0.7 kommt hier gut damit zurecht. IMO ist das Format für Dateien besser geeignet, weil  damit auch Springen an eine andere Position möglich ist. Bei einer Transkodierung nach TS sieht der VLC dagegen (mangels Größenangabe) nur einen Live Stream, in dem er nicht navigieren kann.

 

P.S. Der VLC beherrscht übrigens auch das WebM-Format. Allerdings klappt Springen hierbei ebensowenig wie bei einem transkodierten TS.

 

Edited by Griga
Ergänzung

Share this post


Link to post
Griga
vor einer Stunde schrieb feedzapper:

Der DVBViewer hängt zwar auch noch per RTSP Network device am entfernten Mediaserver.

Für TV SD Inhalte reicht die Bandbreite aus. Aber dort wüsste ich auch nicht wie ich aufgenommene Inhalte vom entfernten Mediaserver über den DVBViewer wieder direkt abspielen lassen kann ?

 

Im Prinzip ebenso wie mit dem VLC. Wähle den DVBViewer Pro im Browser als Player aus. Wenn die LAV Filters installiert sind, geht auch WebM. Allerdings verarbeitet der DVBViewer HLS bislang nur als Live Stream, also anders als der VLC ohne die Möglichkeit zu springen.

 

Share this post


Link to post
feedzapper

Hm, ich habe ein wenig mit dem HLS Stream probiert. Bei mir gibt der VLC Player sie unter WIN10 nicht wieder (VLC 3.0.8 64Bit) ebenso wenig der VLC 4.0 Beta nighlty build. 

Der HLS Stream an sich scheint aber zu funktionieren, denn mit dem DVBViewer wird er abgespielt (allerdings wie du ja geschrieben hast) ohne die Möglichkeit zu

springen.

Ordentlich funktioniert leider bisher nur FLV beim Abspielen von Aufnahmen im Browser selbst - oder halt WebM. Hier kann man im Stream beliebig vor- und zurückspulen.

Da Chrome ja schon immer meckert beim Abspielen von FLV, war ich auf der Suche nach einer Alternative.

WebM nur sehr ungerne, da ffmpeg dabei halt nur softcodec benutzt 😞 statt z.b. QSV oder AMF

 

Share this post


Link to post
Griga

Hier spielt der VLC 3.0.8 unter Windows 7 klaglos den HLS Output des Media Servers, allerdings via localhost. Ich habe unter Webinterface -> Medien -> Aufnahmen... auf das Zahradsymbol neben einer Aufnahme geklickt, im Stream Setup HLS HD 3600 kbit eingestellt, auf Transkodierter Stream -> Anderer Player geklickt, den VLC ausgewählt, und dann lief das... Springen dauert allerdings etwas, weil das eine on-the-fly Transkodierung ist und sie der DMS bzw. FFmpeg bei einem Sprung abbrechen und an einer anderen Stelle neu beginnen muss.

 

Noch ein Versuch: DMS unter Windows 7, VLC 3.0.8 unter Windows 10 auf einem anderen PC via WLAN verbunden. Wie oben, aber HLS 1800 kbit gewählt. Läuft auch...

 

Share this post


Link to post
Griga

Der Unterschied könnte durch FFmpeg bedingt sein. Ich verwende zur Zeit die Version 4.2.1. Die vom Media Server Installer vorgeschlagene macht irgendwelche komischen Sachen bei der der Einbettung von H.264 in den TS, wodurch der DVBViewer das Videoformat nicht mehr erkennt, wie ich letztlich feststellen musste (Wiedergabe ging trotzdem).

 

Oder es liegt daran, dass du für H.264 einen Hardware-Encoder heranziehst.

 

Share this post


Link to post
feedzapper

Muss ich gleich noch einmal mit der ffmpeg 4.2.1 probieren. 

Compiliere meine immer frisch zusammen - allerdings auch STABLE build.

Bei den einzelnen encodern ändert sich ja fast täglich etwas z.b. auch der libx264...

 

https://github.com/rdp/ffmpeg-windows-build-helpers

 

Ja dachte ich auch zuerst, dass es am hardware Encoder liegt. Aber ich hatte zunächst auch mit den HLS Original presets in der iphoneprefs.ini getestet ohne Abänderung.

 

Gerade noch einmal mit der 4.2.1 getestet, läuft leider auch damit nicht.

 

 

Edited by feedzapper

Share this post


Link to post
Griga
vor 1 Stunde schrieb feedzapper:

Gerade noch einmal mit der 4.2.1 getestet, läuft leider auch damit nicht.

 

Mit dem von mir verlinkten Build von Zeranoe? Falls nicht, probiere ihn bitte einmal. Irgendwo muss es einen Unterschied geben. Oder benutzt du vielleicht andere Presets in der iphoneprefs.ini als die aktuell vom DMS mitgebrachten? Wenn du eine eigene Variante zeitweilig aus C:\Program Files (x86)\DVBViewer\config entfernst, erzeugt der DMS bei der nächsten HLS-Produktion die Datei automatisch mit ihrem Standard-Inhalt. Insbesondere -force_key_frames "expr:gte(t,n_forced*{segdur})"' ist wichtig.

 

Share this post


Link to post
feedzapper

So -  ich habe den Fehler gefunden - nach langer Suche ...

Der ISSUE besteht in der Anmeldung am DMS mit upnp im Webinterface.

In der DMS Config ist unter  "Web Einstellungen" z.b. User: BeispielUser Passwort: MyPass hinterlegt.

Häkchen bei "Zugriff aus dem Internet erlauben" + Häkchen bei " Passwort auch für LAN/WLAN"

Wird für den HLS Stream per Klick in der "Streamconfig" auf "anderer Player M3U" die Playlist Datei erzeugt enthält diese ja die Playlist URL für den VLC

incl. Username und Passwort z.b.

http://BeispielUser:MyPass@192.168.0.2:61748/upnp/master.m3u8?preset=HLS%20HD%203600%20kbit&ffpreset=faster&track=0&subs=-&recid=64

Wenn "Passwort auch für LAN/WLAN" aktiviert ist, wird die Verbindung abgelehnt ! - AUCH wenn User/Pass richtig ist ...

Zwangsläufig wird dann kein Stream abgespielt ...

 

Edited by feedzapper

Share this post


Link to post
feedzapper

Wollte nur noch entsprechende Einträge für HLS mit AMD "AMF" und Intel "QSV" nachreichen.

Beide sind hier getestet und funktionieren mit dem VLC und HLS :

Als Beispiel presets mit HLS HD 3600 - entsprechend abgewandelt :

 

[HLS HD 3600 kbit Intel QSV]
Cmd=-analyzeduration {analyzeduration} {offset} -i "{infile}" -f mpegts -vcodec h264_qsv -bufsize 6400k -maxrate 3200k -crf 20 -g 50 {framerate} -map 0:v:0 -map 0:a:0 -vf "yadif=0:-1:1, scale={scalex}:{scaley}" -preset {vpreset} -tune film -vprofile main -level 30 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth_IPhone=1280
maxHeight_IPhone=720
maxWidth_IPad=1280
maxHeight_IPad=720

und

 

[HLS HD 3600 kbit AMD AMF]
Cmd=-analyzeduration {analyzeduration} {offset} -i "{infile}" -f mpegts -vcodec h264_amf -quality quality -rc cqp -force_key_frames "expr:gte(t,n_forced*{segdur})" -bufsize 6400k -maxrate 3200k -crf 20 -g 50 {framerate} -map 0:v:0 -map 0:a:0 -vf "yadif=0:-1:1, scale={scalex}:{scaley}" -preset {vpreset} -tune film -vprofile main -level 30 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth_IPhone=1280
maxHeight_IPhone=720
maxWidth_IPad=1280
maxHeight_IPad=720

 

Share this post


Link to post
feedzapper

Noch ein Nachtrag bezüglich Authentifizierung am DMS via upnp VLC :

Die Anmeldung aus einem anderen Subnet z.b. VPN oder halt Internet klappt überhaupt nicht - auch wenn User/Pass "match" sind.

Egal ob "Zugriff aus dem Internet erlauben" gesetzt ist oder nicht.

Edited by feedzapper

Share this post


Link to post
Griga

Für mich sieht das nach einem Problem im VLC aus. Ich habe mit Hilfe der svcuserdata.xml eine Adresse in meinem Netzwerk als "nicht lokal" definiert, d.h. der DMS sieht sie dann als zu einem anderen Subnetz gehörig an:

  • Die Anzeige des Webinterface in Firefox mit dieser Adresse funktioniert nach Eingabe von Benutzername und Passwort.
  • TransEdit empfängt den HLS-Stream von der Adresse http://DVBUser:abc@192.168.178.24:8089/upnp/master.m3u8?preset=HLS... problemlos.
  • Das Native HLS Add-On für Firefox spielt den Stream problemlos ab (und erlaubt auch Springen).
  • Der VLC scheitert daran mit dem Log-Eintrag (siehe Tools -> Messages mit Verbosity =  2)

adaptive error: Failed reading http://192.168.178.24:8089/upnp/iphone_stream/file-1.ts?streamid=CEC132D1-435E-4CF6-AB2A-58E079E76F87: HTTP/1.1 401 Access Denied

 

d.h. der DMS lehnt die Request mit "Unauthorized" ab. Der VLC scheint bei der Anforderung von TS-Segmenten das Hinzufügen von Benutzername und Passwort zu vergessen ;)

 

Share this post


Link to post
Griga
vor 1 Stunde schrieb spachti:

https://forum.videolan.org/viewtopic.php?f=14&t=150582

 

Nicht sicher ob das dazugehoert.

 

Den Report habe ich auch gesehen. Er trifft hier jedoch nicht zu, da der DMS bei HLS nicht mehrere Streams mit verschiedenen Bitraten zur Auswahl anbietet, sondern nur einen.

 

Share this post


Link to post

Join the conversation

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

Guest
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...