Jump to content

24/7 Aufnahme mit Transcoding für Dokumentation


Recommended Posts

start78

Hallo zusammen,

 

ich muss zu Dokumentationszwecken (regionaler Fernsehsender) eine Daueraufnahme erstellen. Dazu hätte ich diverse Fragen. Habe das Forum schon durchkämmt, bin aber noch nicht ganz am Ziel.

 

Vorgabe:

Es müssen für einen unbegranzten Zeitraum die jeweils letzten 3 Monate eines laufenden Programms festgehalten werden.

 

Mein Plan:

24 einstündige Serienaufnahmen erstellen, so dass zu jeder Stunde jedes Tages eine eigene Aufnahme startet.

Dem Aufgabenplaner sagen, dass jede Aufnahme per ffmpeg komprimiert wird (man muss nur erkennen können, was gesendet wurde. Qualität kann also unterste Schublade sein).

Die Originalaufnahme (TS-Stream) kann sofort gelöscht werden.

Im Dokumentationsordner müssen immer nur die Dateien gelöscht werden, die älter als 3 Monate sind.

 

Was ich bisher gelöst habe:

Aufnahmen programmieren.

Kompression (auch wenn ich hier noch deutlich an der Dateigröße schrauben muss).

 

Was unsere IT lösen kann:

Den Dokumentationsordner regelmäßig bereinigen.

 

Wo ich Probleme sehe:

Löschen der Originalaufnahme.

 

 

Wenn ich das richtig verstanden habe, ist es nicht ratsam, die Originalaufnahme einfach per Windows Aufgabenplaner zu löschen. Weil die Aufnahmen nicht aus der Datenbank des DMS gelöscht werden. Wie lässt sich das praktikabel lösen?

 

Soviel zur Problematik und zu meiner Frage.

 

 

________________________________________________________________________________________________________________

 

Auch wenn ich das soweit eigentlich schon gelöst habe:

Hier meine derzeitigen ffmpeg Parameter:

-i "{SOURCE_FILE}" -map 0:v -vf yadif -vcodec h264_qsv -crf 40 -vf scale=320:180 -map 0:a? -c:a aac "{PATH_FILENAME}.mp4"

Damit komme ich auf 450MB/h Das ist mir noch deutlich zu viel. Die Auflösung kann ich vielleicht noch auf 160x90 reduzieren. Da kann man immer noch genug erkennen, schätze ich. Aber macht es überhaupt Sinn, die Qualiät über -crf einzustellen? Oder kann ich die Bitrate noch anders beeinflussen?

 

Vielleicht nicht ganz unwichtig: Derzeit soll ein kleines Lenovo Thinkcentre diese Aufgabe übernehmen. Darin arbeitet lediglich ein i5 4570T mit 2 echten Kernen und Hyperthreading. Also keine Monstermaschine. Der hat auch nur onboard-Grafik, also nichts mit Beschleunigung per Grafikkarte. Gibt es da Performance-Bedenken?

 

(Die Alternative:

Ich habe bereits mit dem TVHeadend Server experimentiert. Der bietet viele Transcoding Profile und hat bereits im Frontend die Möglichkeit integriert, Aufnahmen nach einem definierbaren Zeitraum automatisch zu löschen. Leider läuft der TVHeadend Server nur unter Linux und wir haben hier eine Windows Domäne. Ich mag die Idee des Linux-Fremdkörpers irgendwie nicht. Außerdem sind DVBViewer und DMS bereits gekauft.)

Link to post
VinoRosso
Posted (edited)
  • Der DMS hat ne REST API, darüber könntest du die Aufnahmen löschen.
  • Du kannst die Files einfach von der Platte löschen und dann per REST API den Task "Aufnahmedatenbank bereinigen" ausführen.
Edited by VinoRosso
Link to post
Griga
vor 31 Minuten schrieb start78:

Wenn ich das richtig verstanden habe, ist es nicht ratsam, die Originalaufnahme einfach per Windows Aufgabenplaner zu löschen. Weil die Aufnahmen nicht aus der Datenbank des DMS gelöscht werden.

 

So schlimm ist das nicht. Da sammeln sich dann halt nur zunehmend nicht mehr existierende Aufnahmen in der Datenbank an.

 

Alternative zu dem Vorschlag von @VinoRosso:  Im Webinterface -> Timer -> als Timertyp "interner Task Timer" wählen -> Neuer Timer -> als Aufgabe "Aufnahmedatenbank bereinigen" wählen. Das bereinigt die Sache dann alle 24 Stunden automatisch.

 

Allerdings ist die Aufgabe "Aufnahmedatenbank bereinigen" standardmäßig im Webinterface nicht sichtbar, weil normalerweise "Aufnahmedatenbank aktualisieren" das Mittel der Wahl ist. Dabei bleiben jedoch gelöschte Aufnahmen in der Datenbank, werden nur als nicht vorhanden gekennzeichnet und sind noch unter Aufnahmen -> nicht vorhandene einsehbar.

 

Um "Aufnahmedatenbank bereinigen" sichtbar zu machen, musst du in den DMS-Optionen (svcotions.exe bzw. Tray-Icon -> Server konfigurieren) unter Aufgaben -> Angezeigte interne Aufgaben einen Haken bei "Clean Up Recording Database" setzen.

 

Am saubersten wäre wohl, Aufnahmen über das DMS API zu löschen, aber das wird dann etwas aufwändiger... im Prinzip geht es mit

 

http://[IP]:[Webserver Port]/api/recdelete.html?delfile=1&recid=[CSV list of recording IDs]

 

Eine Liste der Aufnahmen mitsamt IDs erhälst du als XML mit

 

http://[IP]:[Webserver Port]/api/recordings.html

 

was du auch manuell im Browser probieren kannst.

 

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.

  • Similar Content

    • nickneutrino
      By nickneutrino
      Always when  i play a transcodec 4K MKV H265 to WEBM stream from Dbviewer Media Web Server appear in the middle of screen a circle.
       
      Anybody knows Is posible remove that circle and for what reason show this circle because the movie plays well? 
    • mani tehrani
      By mani tehrani
      hi
      how can i reduce size of  recorded files with ffmpeg tasks? for example how can i change bitrate and convert "mpg" recorded files to MP4?
      i know some channels are HD and others are SD, is there different?
    • Bernhard Berger
      By Bernhard Berger
      Hi,
       
      nachdem ich nun alle TV Geräte hier im Haushalt mit Android TV Boxen ausgestattet habe (1x nvidia Shield, 3x Xiaomi Mi Box 3) auf denen allesamt Kodi 17.6 und 18.x läuft´bräuchte ich eine Lösung um gewisse Kanäle (vorwiegend 1080i TS Streams) zu transcodieren, da die deinterlacing Methoden unter Android erstens ziemlich mieserable sind und zweitens die Xiaomi Mi Boxen zu schwach um 1080i deinterlacen zu können).
       
      720p, 720i und 1080p funktioniert tadellos und bräuchte kein Transcoding.
       
      Hat jemand eine Idee wie ich das bewerkstelligen kann?
       
       
      Zusatzfrage:
      ist mit aktuellen Nightlies bereits QSV Interlacing möglich? In allen Foren Postings hier findet man nur Infos zu YaDiff SW De-Interlacing. Nachdem hier aber 4+ Clients laufen werden die allesamt teilweise parallel deinterlacing bräuchten (Scaling, Bitrate-Beschneidung etc. ist eigentlich nicht notwendig, da lokales 5G Netzwerk) würde ich das schon gern Hardwareseitig lösen (i5-3470T).
       
      Wie müssten die Parameter aussehen, wenn ich ausschließlich deinterlacen möchte?
       
       
      PS: eigentlich würde ich auch gerne die Tonspuren unangetastet lassen.
    • Josezkaos
      By Josezkaos
      As I commented this issue in another thread dedicated to NVIDIA transcoding, I'll create a new one for this as I think is interesting.
       
      I've recorded a short clip from a DVB-T stream with DVBViewer:
       
      http://www.mediafire.com/?aoe7406d87h3k
       
      If QSV Decoder would work with live streams, this would be enought:
       
      But that fails.
       
      Somehow, if the stream is copied and piped into another ffmpeg ... it works:
       
      Stream is copied, decoded with H264_QSV and then encoded with H264_QSV, all under HW Acceleration.
       
      But this workaround is not valid for Recording Services:
       
      Seems the pipe lunches another instance which can't reach RS output pipe ({outfile}).
       
      Why use QSV on Decoder and Encoder for transcoding live streams?
       
      1. Decoded frames are in Video Memory, not in System Memory this way, so Encoding runs way more faster saving time moving those decoded frames between memories.
      2. Deinterlacing with QSV avoids using CPU, once again faster and saving CPU for other processes running.
       
      Does anyone know how to get RS to transcode live streams using QSV for Decoding and Encoding?
       
      Thanks in advance (specially to Griga and majstang who replied in the other thread).
    • Perlbo
      By Perlbo
      Hi,
       
      neuerdings wird mein Rechner so träge und da habe ich im Taskmananger (Win10 64bit) mal geguckt was da so los ist. Was mir aufgefallen ist, dass mehrer Instanzen von ffmpeg.exe gestartet werden. Wir reden hier von 10+.
       
      Das ist doch nicht normal oder ? Zu dem Zeitpunkt greif auch kein andere Rechner auf den Mediaserver zu. Er wird auch nur genutzt um das TV plugin für Kodi zu nutzen und Aufnahmen zu tätigen. 
       
      Ich werde das nach einem Neustart nochmal beobachten. Aber vielleicht kann mir ja schon jemand einen Tip geben, zumindest habe ich ffmpeg nochmal über den DVBViewer link heruntergeladen und die exe im DVBViewer Ordner aktualisiert (richtig?). 
       
×
×
  • Create New...