Mit cvlc DVB-T2 aufnehmen

  • Hallo zusammen,


    ich benutze vlc (ver. 2.2.4 Weatherwax) unter Kubuntu 17.04 mit einem USB-Stick (Hauppauge Win TV solo-HD) hier in Berlin mit einer kleinen Zimmerantenne, um DVB T-2 zu sehen oder auch aufzunehmen. Alles funktioniert rundrum prima. (channels.xspf habe ich in ~/.local/share/ml.xspf importiert, so kann ich direkt über die Medienbibliothek die Programme ansteuern.) Auch die Aufnahmen aus vlc (mit dem roten Button) sind super. Höchst selten gibt es irgendwelche Bildfehler(, wenn z.B. der Kater die Antenne herunter schmeisst).

    Ich hatte folgende Anleitung für DVB-T2 im Internet gefunden:


    # Mit VLC ist das Aufnehmen über Kommando-Zeile ein irrsinniges Gepuzzel, woran ich in der Vergangenheit gescheitert bin:

    # Er wollte einfach nichts aufnehmen. Nach vielen Stunden des Probierens habe ich das jetzt aber aber auch zuverlässig hinbekommen.

    # Ich poste mal ein Bsp. für einen HD-Kanal (vielleicht hilft es ja jemandem):

    #

    # cvlc dvb-t2://frequency=626000000 :dvb-bandwidth=8 :dvb-ts-id=16481 :dvb-transmission=32 :dvb-guard=1/16 :programs=16961

    # :sout="#standard{access=file,mux=ts,dst=/home/name/OUTPUT.ts}" :no-sout-all :dvb-budget-mode=1 :dvb-adapter=0 :live-caching=1000

    # :run-time=600 vlc://quit

    #

    # Ein paar Erklärungen für ein paar Knackpunkte, für die ich ewig gebraucht habe, um sie rauszubekommen:

    # man muss ":programs=" verwenden, um alle Ton-Kanäle zu bekommen (nicht ":program=");

    # ohne :no-sout-all wird überhaupt nichts aufgezeichnet;

    # :dvb-budget-mode=1 ist wichtig für Kanäle, die nur einen Audio-Stream haben; fehlt die Anweisung wird nichts aufgezeichnet,

    # es sei denn man benutzt "program="

    #

    # Alles andere dürfte selbsterklärend sein.

    #

    # Edit: Das wollte ich noch anmerken: Will man das Ergebnis mit Avidemux (v2.6) schneiden, kann man ts-Dateien der HD-Sender nicht

    # direkt öffnen. Führt zu einer Fehlermeldung. Wenn man die Aufnahme vorher in einen mkv-Container packt geht es allerdings:

    #

    # ffmpeg -y -i "INPUT.ts" -sn -dn -map 0:v -vcodec copy -map 0:a -acodec copy "OUTPUT.mkv"


    Wenn ich allerdings versuche, dies über cvlc zu tun, gibt es alle 10-30s Bildfehler (graue Zwischenbilder). Ich nehme an, dass HEVC hier irgendwie falsch geschrieben wird.

    Analog der Anleitung habe ich arte HD in Berlin mit folgenden Parametern aufgerufen:


    cvlc dvb-t2://frequency=626000000 :dvb-bandwidth=8 :dvb-ts-id=61697 :dvb-code-rate-hp=0 :dvb-transmission=32 :dvb-guard=1/16 :programs=770 :dvb-budget-mode=1 :dvb-adapter=0 :sout="#standard{access=file,mux=ts,dst=output.ts}" :no-sout-all :live-caching=10000 :run-time=600 vlc://quit


    Parameter:

    program und programs:

    Der Parameter program liefert eine sortierte Liste der Streams: 1. Video 2. Audio (wichtig für die Weiterverarbeitung).

    Der Parameter programs liefert eine unsortierte Liste der Streams, wobei Video, Audio oder Untertitel etc. völlig zufällig sortiert sind.

    live-caching:

    Der Parameter live-caching erscheint mir nicht logisch, weil er für Kameras etc. vorgesehen ist, file-caching wäre schon passender, bringt aber auch nichts.


    Da cvlc zwar nicht ganz soviele Parameter hat wie ffmpeg, aber immer noch sehr viele, da ist das mit Rumprobieren so eine Sache (s.o.), wenn man letztendlich auch noch wenig Ahnung von der Materie hat.


    Wer hat eine Ahnung, welche Parameter verändert oder gesetzt werden müssen, um wie bei vlc (mit dem roten Button) gute Aufnahmen - später auch zeitgesteuert - durchzuführen?

    Ist cvlc programmtechnisch identisch mit vlc oder irgendwie abgespeckt?



    Tipp:

    arte HD benutzt als erster Sender Dolby 5.1 (ffmpeg aac_latm 6ch). ffmpeg (ver. 3.3) kann das nach Stereo wandeln, z.B.:


    ~/.ffmpeg3.3/ffmpeg -i INPUT.ts -map 0:0 -c:v copy -map 0:1 -c:a aac -b:a 192k -ar 48000 -ac 2 OUTPUT.mp4


    Das spart Platz und kann besser geschnitten werden.