Raketenwilli: Linux default-nice-Wert für Programme festlegen?

Situation:

Ich rödele Filme vom .ts-Format (in dem zeichnet ein Gerät Mitschnitte von Filmen und ähnlichem) zu mp4 um:

#!/bin/bash
#set -x
if [ -z "$1" ]; then
        echo "Welche Datei soll denn umgewandelt werden?" 1>&2
        exit 1
fi

inputFile="${1}"
if [ ! -f "$inputFile" ]; then
        inputFile="${0}"
        if [ ! -f "${inputFile}" ]; then
                echo "Die Datei ${inputFile} existiert nicht." 1>&2
                exit 2
        fi
fi

outputFile=$(echo "${inputFile}" | sed -e 's/\.[^.]*$//').mp4

if [ "$inputFile" = "$outputFile" ]; then
        echo "Imput- und Output-Datei müssen sich unterscheiden. Sie können auch keine MP4-Datei in eine MP4-Datei umwandeln." 1>&2
        exit 3
fi
echo "ffmpeg -i  '${inputFile}' '${outputFile}' wird ausgeführt." 1>&2;

nice -n 19 ffmpeg -i  "${inputFile}" "${outputFile}"

if [ 0 -eq $? ]; then
        echo "Die Datei '${outputFile}' wurde gespeichert." 1>&2;
else
        echo 'Mist. Fehler.' 1>&2;
fi

Dabei ist mir aufgefallen, dass sich ffmpeg mit vielen Threads (so viele wie die CPU „gleichzeitig“ verarbeiten kann) derart viel Rechenleistung vom Sheduler zog, dass auf dem (eigentlich leistungsfähigem) Notebook (Ryzen 5 5500U) sogar die WLAN-Verbindung abbrach. (Was der Grund für die Untersuchung war: Denn wer SOWAS akzeptiert kann ja auch gleich Windows benutzen...)

Die eigentliche Aktion ist deshalb die Zeile ...

nice -n 19 ffmpeg -i  "${inputFile}" "${outputFile}"

in welcher das Programm nice das eigentliche Programm ffmpeg maximal „freundlich“ macht, also jede „Oma an der Kasse vorlässt“, mithin also dafür sorgt, dass das System stabil (dazu gehört auch, dass ich weiterarbeiten kann) weiter läuft.

Aber ich halte es für einen Fehler des Distributors, dass ein Anwendungsprogramm den WLAN-Stack derart „abkacken“ lässt.

Frage:

Kann man Programmen unter Linux irgendwo unter /etc/ generell einen nice-Wert (oder ein Äquivalent) zuweisen, mithin diese Situation von Anfang an verhindern?

akzeptierte Antworten

  1. Hallo,

    Ich rödele Filme vom .ts-Format (in dem zeichnet ein Gerät Mitschnitte von Filmen und ähnlichem) zu mp4 um:

    so macht das mein TV-Gerät auch. Es zeichnet MPEG-TS mit der Extension .ts auf, und der eigentliche Nutzinhalt ist dann ein MPEG2-Video bei Programmen in Standard-TV-Auflösung, oder h.264 bei Programmen in Semi-HD (720p) oder Full-HD.

    Und ffmpeg ist tatsächlich eines der wenigen Video-Bearbeitungsprogramme, das die PTS in den MPEG-Streams beachtet und so Video und Audio synchron hält.

    
    > nice -n 19 ffmpeg -i  "${inputFile}" "${outputFile}"
    
    

    Ohne weitere Switches für ffmpeg? Ich bin es gewöhnt, dass man da eine ganze Horde von Parametern angeben muss, damit was Vernünftiges dabei rauskommt. Oder hast du die nur der Übersichtlichkeit halber weggelassen?

    Dabei ist mir aufgefallen, dass sich ffmpeg mit vielen Threads (so viele wie die CPU „gleichzeitig“ verarbeiten kann) derart viel Rechenleistung vom Sheduler zog, dass auf dem (eigentlich leistungsfähigem) Notebook sogar die WLAN-Verbindung abbrach.

    Ja, auf diese Weise habe ich auch schon gelernt, keine Video-Transcodierung mit ffmpeg zu machen, während im Browser nebenher ein längerer Download läuft. Der reißt dann nämlich garantiert ab.

    Wenn man etwas in die Tiefe geht, stellt man übrigens anhand von Indizien fest, dass nicht ffmpeg selbst der Bösewicht ist, sondern die Implementierung der libx264. Wähle ich ein anderes Zielformat, etwa MPEG4 ASP (aka MPEG4 Part 2) im AVI-Container[1], dann kommt libxvid zum Einsatz, und ffmpeg benimmt sich lammfromm und kameradschaftlich. FWIW.

    Frage:

    Kann man Programmen unter Linux irgendwo unter /etc/ generell einen nice-Wert (oder ein Äquivalent) zuweisen, mithin diese Situation von Anfang an verhindern?

    Hmm. Also wenn ich jetzt von jemandem erwartet hätte, dass er eine Antwort darauf hat, dann wärst du das. 😎

    Einen schönen Tag noch
     Martin

    --
    "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...

    1. Das ist seit etwa 15 Jahren mein bevorzugtes Format fürs Video-Archiv, weil Versuche damals ergeben haben, dass dieses Format auf meinem damaligen PC die geringste CPU-Last beim Abspielen verursacht hat. ↩︎

    1. Hmm. Also wenn ich jetzt von jemandem erwartet hätte, dass er eine Antwort darauf hat, dann wärst du das.

      Nö. Auch nicht.

      Ohne weitere Switches für ffmpeg? Ich bin es gewöhnt, dass man da eine ganze Horde von Parametern angeben muss, damit was Vernünftiges dabei rauskommt.

      Mangels Ahnung vom Thema lasse ich es mit den Defaults arbeiten - damit überhaupt was verwendbares rauskommt. Ok. Fehlermeldungen könnte man wenigstens in Foren posten …

      1. Hallo,

        Ohne weitere Switches für ffmpeg?

        Mangels Ahnung vom Thema lasse ich es mit den Defaults arbeiten - damit überhaupt was verwendbares rauskommt.

        meine Erfahrung ist, dass mit den Defaults eben nichts Zufriedenstellendes rauskommt. Mindestens den zu verwendenden Video-Codec (c:v libx264) und die gewünschte Video-Bitrate (b:v 2500k) gebe ich normalerweise mit an. Die Audiospur reiche ich meist ohne Konvertierung durch (c:a copy).

        Aber wirklich gute Video-Konvertierung erreicht man erst im 2-Pass-Betrieb. Pass 1 zum Analysieren des Videostreams mit geschätzter Bitrate und Output nach /dev/null, Pass 2 dann zum eigentlichen Erzeugen des Video-Outputs anhand der Analyse aus Pass 1.

        Einen schönen Tag noch
         Martin

        --
        "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
        1. @@Der Martin

          Da ich Dich schon mal „in der Leitung“ habe:

          Ich hab ja noch das Projekt mit dem alten Servergehäuse:

          Stromsparender Prozessor und Platine (möglichst 1*NVME +6*SATA oder freien Steckplatz für PCI-E→SATA-Karte) für einen hinreichend schnellen NAS-Server, (smbfs, sshfs, nfs, nextcloud, vielleicht proxmox oder ESXI 8, kein Multimedia-Streaming) Idealerweise für DDR4-Ram-DIMMS? Ohne teure Grafik (soll headless laufen)? 2 * Ethernet (möglichst Realtek, wg. Beschränkungen des ESXI)?

          1. Hallo,

            @@Der Martin

            Da ich Dich schon mal „in der Leitung“ habe:

            wer? Wo? Ich??

            Ich hab ja noch das Projekt mit dem alten Servergehäuse:

            Ja, ich erinnere mich diffus.

            Stromsparender Prozessor und Platine (möglichst 1*NVME +6*SATA oder freien Steckplatz für PCI-E→SATA-Karte) für einen hinreichend schnellen NAS-Server, (smbfs, sshfs, nfs, nextcloud, vielleicht proxmox oder ESXI 8, kein Multimedia-Streaming) Idealerweise für DDR4-Ram-DIMMS? Ohne teure Grafik (soll headless laufen)? 2 * Ethernet (möglichst Realtek, wg. Beschränkungen des ESXI)?

            Und in welcher Form käme ich da jetzt ins Spiel? Möchtest du von mir einen Vorschlag, welches Board da in Frage käme? Da muss ich leider passen. Ich bin, was aktuelle Hardware angeht, schon lange nicht mehr am Puls der Zeit. Das letzte Mal, dass ich ein neues Mainboard gekauft habe, ist fast zwei Jahre her. Da es als Desktop-PC herhalten soll, habe ich nach einer All-In-One-Lösung gesucht, also Grafik, Sound und NIC alles auf dem Board integriert. Zwei digitale Videoanschlüsse (DVI oder HDMI sollten es sein. Lüfterlos und damit lautlos war mir wichtig.
            Versorgt mit einem PicoPSU-90 rennt das gute Stück nun seit Sommer 2021 vor sich hin.

            Einen schönen Tag noch
             Martin

            --
            "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
            1. Stromsparender Prozessor und Platine (möglichst 1*NVME +6*SATA oder freien Steckplatz für PCI-E→SATA-Karte) für einen hinreichend schnellen NAS-Server, (smbfs, sshfs, nfs, nextcloud, vielleicht proxmox oder ESXI 8, kein Multimedia-Streaming) Idealerweise für DDR4-Ram-DIMMS? Ohne teure Grafik (soll headless laufen)? 2 * Ethernet (möglichst Realtek, wg. Beschränkungen des ESXI)?

              Und in welcher Form käme ich da jetzt ins Spiel?

              Moin…

              Warst Du nicht derjenige, der neulich was schrieb, von wegen stromsparender Rechner, höchstens 15 Watt Thermalpower oder so?

              Habs gefunden…

              https://forum.selfhtml.org/self/2022/nov/19/umfrage-was-mach-ich-damit-sowas-wird-heute-gar-nicht-mehr-gebaut/1803893#m1803893

              1. Hi,

                Moin…

                Warst Du nicht derjenige, der neulich was schrieb, von wegen stromsparender Rechner, höchstens 15 Watt Thermalpower oder so?

                ja, wobei die 15W nur für die CPU gelten. Fürs Gesamtsystem geben die Hersteller nur ungern klare Auskünfte, weil das stark vom Systemausbau und der aktuellen Verwendung abhängt. Die 50W, die im amazon-Text für das genannte Board angegeben sind, sind vermutlich ein Maximalwert, den ich noch nicht erreicht habe. Das externe 12V-Netzteil, das das PicoPSU speist, schiebt da so zwischen 2 und 3 Ampere rein, je nach Betriebszustand (und das inclusive einer SSD und einer HDD).

                https://forum.selfhtml.org/self/2022/nov/19/umfrage-was-mach-ich-damit-sowas-wird-heute-gar-nicht-mehr-gebaut/1803893#m1803893

                Yo, passt doch.

                Einen schönen Tag noch
                 Martin

                --
                "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
                1. Ich bin kurz davor den Tower auszuräumen, eine Steckdosenleiste, einen aktiven USB-HUB und einen Raspi (oder wegen der aktuellen Preise einen anderen Minirechner) reinzubauen (Wozu gibt es denn sonst Heißkleber) - und die Platten via USB-SATA-Adapter anzuschließen. Magnetplatten schicken faktisch je Platte so um die 170 MByte/s = 1360MBit/s durch die Gegend. Mit 4 Platten (Summe: 5440 MBit/s, also ~5,5 GBit/s) reiße ich die Grenze von 5Gbit-USB nur knapp. Der Flaschenhals wird ohnehin das 1-Gb/s Netzwerk sein

                  Um die Backups der Rechner (Raspis, ein Rudel Notebooks - das „meine“, und die Seminarteilnehmerdinger, aber nur das Image) und den „großen“ Desktop auf 3*12-Terrabyte-Platten (wohl RAID 5 + BTRFS, wegen Snapshots), der vierte Schacht für Cold-Backups, zu verteilen wird es wohl reichen.

                  Was die Stromversorgung betrifft: Die Platten ziehen bis zu 11 Watt... Wenn mir nichts einfällt brauch ich also aktive Adapter, wenn mir was einfällt kann ich den Lötkolben heizen und (auch dafür) das existierende ATX-Netzteil benutzen.

                  Kalkulation: ~400 Euro ohne Festplatten, 1200 mit 3 12TB-Festplatten

    2. Hallo

      Ich rödele Filme vom .ts-Format (in dem zeichnet ein Gerät Mitschnitte von Filmen und ähnlichem) zu mp4 um:

      so macht das mein TV-Gerät auch. Es zeichnet MPEG-TS mit der Extension .ts auf, und der eigentliche Nutzinhalt ist dann ein MPEG2-Video bei Programmen in Standard-TV-Auflösung, oder h.264 bei Programmen in Semi-HD (720p) oder Full-HD.

      @Der Martin Hängt da eine USB-Platte am TV-Gerät? Wie kommst du an die Dateien? Alle TV-Geräte, an die ich bisher USB-Platten anschließen konnte, formatierten die Platten mit dem Hinweis auf einen Kopierschutz und darauf, dass man von extern nicht an die Aufnahmen käme. Einen Test dazu habe ich bisher nicht durchgeführt. Die Gefahr des Verlusts der vorhandenen Aufnahmen könnte meinen häuslichen Frieden gefährdet.

      Falls du in dieser Hinsicht mit Erfahrungen aufwarten könntest, wäre ich dir sehr verbunden.

      Tschö, Auge

      --
      200 ist das neue 35.
      1. Hi,

        Ich rödele Filme vom .ts-Format (in dem zeichnet ein Gerät Mitschnitte von Filmen und ähnlichem) zu mp4 um:

        so macht das mein TV-Gerät auch. Es zeichnet MPEG-TS mit der Extension .ts auf, und der eigentliche Nutzinhalt ist dann ein MPEG2-Video bei Programmen in Standard-TV-Auflösung, oder h.264 bei Programmen in Semi-HD (720p) oder Full-HD.

        @Der Martin Hängt da eine USB-Platte am TV-Gerät?

        ja.

        Wie kommst du an die Dateien? Alle TV-Geräte, an die ich bisher USB-Platten anschließen konnte, formatierten die Platten mit dem Hinweis auf einen Kopierschutz und darauf, dass man von extern nicht an die Aufnahmen käme.

        Das habe ich auch schon oft gesehen. Deswegen war ich sehr angetan, als ich vor dem Kauf des Geräts mal die Bedienungsanleitung gelesen habe. Da steht, dass ein externer Datenträger in FAT32 formatiert sein muss. Über das gespeicherte Videoformat stand da nichts, aber das ließ mich zumindest hoffen, dass es irgendein Standardformat wäre.

        Das Gerät nennt sich zwar laut Typenschild BLAUPUNKT, aber da wird auch irgendeine Fernost-Elektronik drin sein. Wann ich das Gerät gekauft habe? Ich meine, so um 2008 bis 2010.

        Einen Test dazu habe ich bisher nicht durchgeführt. Die Gefahr des Verlusts der vorhandenen Aufnahmen könnte meinen häuslichen Frieden gefährdet.

        Hehe, kann ich mir in etwa vorstellen. 😉

        Falls du in dieser Hinsicht mit Erfahrungen aufwarten könntest, wäre ich dir sehr verbunden.

        Meine Eltern haben einen Sat-Receiver mit PVR-Funktion, der tatsächlich ein proprietäres Filesystem verwendet. Was noch dämlicher ist: Das Gerät kann nur eine Aufnahme pro Datenträger speichern. Laut Bedienungsanleitung zwar beliebig viele, soweit der Speicherplatz reicht - aber die Erfahrung zeigt, dass beim Beginn einer neuen Aufnahme immer die bestehende überschrieben wird.

        Jetzt jongliert mein Vater halt mit einer Schachtel voll 4GB-USB-Sticks. 😟

        Einen schönen Tag noch
         Martin

        --
        "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
      2. Alle TV-Geräte, an die ich bisher USB-Platten anschließen konnte, formatierten die Platten mit dem Hinweis auf einen Kopierschutz und darauf, dass man von extern nicht an die Aufnahmen käme.

        XORO HRT 8720: FAT32, ganz normal. Datenträgerbezeichnung ist „USB“.

        Einen Test dazu habe ich bisher nicht durchgeführt. Die Gefahr des Verlusts der vorhandenen Aufnahmen könnte meinen häuslichen Frieden gefährdet.

        Nicht mal Windows formatiert einfach mal eben und ohne Rückfrage Festplatten. Linux gleich gar nicht und das angefressene Obst wird bei der Unterstützung von Dummen hoffentlich auch nicht so weit gehen…

        1. Hallo

          Einen Test dazu habe ich bisher nicht durchgeführt. Die Gefahr des Verlusts der vorhandenen Aufnahmen könnte meinen häuslichen Frieden gefährdet.

          Nicht mal Windows formatiert einfach mal eben und ohne Rückfrage Festplatten. Linux gleich gar nicht und das angefressene Obst wird bei der Unterstützung von Dummen hoffentlich auch nicht so weit gehen…

          Meine Angst bezieht sich nicht darauf, dass die USB-Platte formatiert würde, wenn ich sie an einen Rechner anschließe, sondern darauf, dass der TV-Hersteller ein proprietäres Dateisystem benutzt, auf das ich am Rechner keinen Zugriff erlange und weiterhin darauf, dass wenn ich die Platte wieder an das TV-Gerät anschließe, diese neu formatiert wird und damit die Aufnahmen weg sind. Das gäbe Mecker.

          Tschö, Auge

          --
          200 ist das neue 35.
    3. Ohne weitere Switches für ffmpeg? Ich bin es gewöhnt, dass man da eine ganze Horde von Parametern angeben muss, damit was Vernünftiges dabei rauskommt. Oder hast du die nur der Übersichtlichkeit halber weggelassen?

      Ich habe inzwischen gelernt, dass es ohne Parameter nicht in allen Fällen geht (Der Ton ist manchmal “zerhackstückt“) und bin jetzt bei:

      args='async 1 -b 2000k -ar 44100 -ac 2 -v 0 -f mp4 -vcodec libx264'
      nice -n 19 ffmpeg -n -i  "${inputFile}" $args "${outputFile}"
      

      Ich bin mir aber nicht sicher, ob die optimal sind.

      Frage: Von Arte mitgeschnittene Sendungen haben nach der Umwandlung französischen Ton. Das hier kenne ich zwar, aber hat dafür schon jemand schon jemand eine Lösung?

      1. Hallo,

        Ich habe inzwischen gelernt, dass es ohne Parameter nicht in allen Fällen geht (Der Ton ist manchmal “zerhackstückt“)

        Probleme mit dem Ton hatte ich dann und wann auch schon mal. Aber ich kann mich nicht an Details erinnern.

        args='async 1 -b 2000k -ar 44100 -ac 2 -v 0 -f mp4 -vcodec libx264'
        nice -n 19 ffmpeg -n -i  "${inputFile}" $args "${outputFile}"
        

        Ich bin mir aber nicht sicher, ob die optimal sind.

        Fehlt nicht ein Minus vor dem async? Anyway, optimal ... kommt auf die Erwartungen, das Zielformat (Video-Auflösung) und das Rohmaterial an. Meine Versuche haben mich bei Full-HD zu einer Video-Bitrate von 2500k, bei Semi-HD zu 1600k und bei Standard-TV-Auflösung zu 1200k gebracht. Du gibst 2000k als Brutto-Bitrate an, das schließt Audio mit ein. Möchtest du das vielleicht auf -b:v 2000k präzisieren? Den Parameter -ac 2 kannst du vermutlich weglassen, dann hat die Zieldatei eben genauso viele Kanäle wie die Quelle.

        Frage: Von Arte mitgeschnittene Sendungen haben nach der Umwandlung französischen Ton. Das hier kenne ich zwar, aber hat dafür schon jemand schon jemand eine Lösung?

        Für welches Problem? Ich vermute, der Mitschnitt von arte hat zwei Audio-Streams und der französische ist halt der erste und wird automatisch ausgewählt. Zeig mal die Ausgabe von

        ffmpeg -i <source-video> -hide_banner
        

        Das zeigt dir den kompletten technischen Steckbrief der Videodatei an und sieht bei mir (Beispiel: "Wer weiß denn sowas" vom 19.12.2022 aus der ARD-Mediathek) etwa so aus:

        Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '20221219.mp4':
          Metadata:
            major_brand     : isom
            minor_version   : 1
            compatible_brands: mp42iso2avc1isom
            creation_time   : 2022-12-18 16:54:42
          Duration: 00:45:14.12, start: 0.000000, bitrate: 1301 kb/s
            Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 960x540 [SAR 1:1 DAR 16:9], 1167 kb/s, 50 fps, 50 tbr, 12800 tbn, 100 tbc (default)
            Metadata:
              handler_name    : Hessischer Rundfunk mp4toolbox 1.12.2
              encoder         : Lavc59.37.100 libx264
            Stream #0:1(deu): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
            Metadata:
              handler_name    : Hessischer Rundfunk mp4toolbox 1.12.2
        

        Bei deinem arte-Mitschnitt tauchen zum Schluss vermutlich zwei Audio-Streams auf, einer mit fra und einer mit deu. Welchen du davon haben willst, gibst du ffmpeg mit dem Parameter -map 0:a:0 oder -map 0:a:1 an. Dann muss aber ein zweiter map-Parameter mit -map 0:v:0 dazu, sonst wird die Video-Spur ignoriert! Sobald man -map verwendet, muss man alle Streams angeben, die man in der Ausgabe haben möchte.

        Einen schönen Tag noch
         Martin

        --
        "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
        1. Hm. Bis jetzt sind 120 von 248 Dateien „umgerödelt“.

          → Das wird also noch zwei Tage dauern.

          Schon mal die Streams:

            Stream #0:0[0xcf]: Subtitle: dvb_teletext, 492x250
            Stream #0:1[0xcc]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
            Stream #0:2[0xcd]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
            Stream #0:3[0xc9]: Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
            Stream #0:4[0xca]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp
          

          Mist. Keine Angabe der Sprache, nichts zu greppen. Vielkeicht kann ich es an der Anzahl der Streams festmachen. Ich werde das dann mal austesten und das Skript anpassen.

          Gegentest: Sendung, die offenbar keinen französischen Sprachkanal hat:

           Stream #0:0[0xc9]: Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
            Stream #0:1[0xcf]: Subtitle: dvb_teletext, 492x250
            Stream #0:2[0xcc]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
            Stream #0:3[0xcd]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
            Stream #0:4[0xca]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp
          

          Weitere Tests ergaben, das weder MPV noch celluid (beide können die .ts-Dateien wiedergeben - mit jeden Genuss vernichtenden Frame-Raten auf dem Raspi - zu den Tonkanälen Informationen ausspucken. Vermutlich stehen die wo anders (siehe unten).

          OǸE-HD liefert auf dem ersten Kanal übrigens manchmal die Beschreibung für Blinde. Sicherlich löblich, stört aber meinen Genuss.

          Mal sehen, welche Eigenschaften die anderen Aufzeichnungen haben... oder ob ich die binären Dateien [video].ts.meta und [video].ts.dxt irgendwie „knacken“ kann. Die werden scheinbar nur vom Player der TV-Box benutzt, der ja die „richtige“ Version für den Output wählt.

          Neuer Stand: Bis jetzt sind 122 von 248 Dateien „umgerödelt“...

          1. Hi,

              Stream #0:0[0xcf]: Subtitle: dvb_teletext, 492x250
              Stream #0:1[0xcc]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
              Stream #0:2[0xcd]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
              Stream #0:3[0xc9]: Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
              Stream #0:4[0xca]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp
            

            Mist. Keine Angabe der Sprache, nichts zu greppen.

            bäh, das ist blöd. Dann bleibt nichts anderes übrig, als zu probieren. Ich schmeiß das Video (MPEG-TS oder auch VOB von einer DVD) dann auf VLC. Mit dem kann ich der Reihe nach die Audio-Streams durchspielen.

            Eine automatisierbare Methode fällt mir dazu leider nicht ein.

            Vielkeicht kann ich es an der Anzahl der Streams festmachen.

            Die Reihenfolge kann sich trotzdem ändern. Und ob die Stream-IDs eine Information transportieren, weiß ich auch nicht.

            Gegentest: Sendung, die offenbar keinen französischen Sprachkanal hat:

             Stream #0:0[0xc9]: Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
              Stream #0:1[0xcf]: Subtitle: dvb_teletext, 492x250
              Stream #0:2[0xcc]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
              Stream #0:3[0xcd]: Audio: aac_latm (HE-AAC), 48000 Hz, stereo, fltp
              Stream #0:4[0xca]: Audio: aac_latm (LC), 48000 Hz, stereo, fltp
            

            Aber auch da sind es drei Audio-Streams. Hmmm ...

            OǸE-HD liefert auf dem ersten Kanal übrigens manchmal die Beschreibung für Blinde. Sicherlich löblich, stört aber meinen Genuss.

            Manchmal, soso. Also auch nichts, worauf man sich verlassen kann.

            Einen schönen Tag noch
             Martin

            --
            "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
            1. Ich wollte mich noch bedanken, weil mich Deine Ausführungen so oder so der Lösung näher gebracht haben.

              Manchmal, soso. Also auch nichts, worauf man sich verlassen kann.

              Ich kann ja im schlimmsten Fall auch jeden Audio-Stream in je eine mp4-Datei packen, statt stumpf nur den ersten - und dann mal rasch nachsehen, welche ich behalte…

              Womöglich gibt es sogar eine Möglichkeit, das in einem Schritt zu tun, also das Video nicht zwei- oder dreimal „umzurödeln“.

              Neuer Stand: Bis jetzt sind 123 von 248 Dateien „umgerödelt“...

              1. Hallo,

                Ich wollte mich noch bedanken, weil mich Deine Ausführungen so oder so der Lösung näher gebracht haben.

                de nada, aber es freut mich natürlich trotzdem.

                Ich kann ja im schlimmsten Fall auch jeden Audio-Stream in je eine mp4-Datei packen, statt stumpf nur den ersten - und dann mal rasch nachsehen, welche ich behalte…

                Ja, aber das wäre die dreifache Rechenzeit, die man dafür erstmal verbraten müsste.

                Womöglich gibt es sogar eine Möglichkeit, das in einem Schritt zu tun, also das Video nicht zwei- oder dreimal „umzurödeln“.

                Oder vorab zu sondieren, welcher Audio-Stream nun der ausgewählte ist. In ffplay, dem ultra-schlanken Player aus dem ffmpeg-Paket, kann man mit der Taste a die verfügbaren Audio-Tracks der Reihe nach durchschalten. Das ist zwar auch eher interaktiv, aber basierend auf diesen Erkenntnissen kann man dann den Batchbetrieb definieren.

                Einen schönen Tag noch
                 Martin

                --
                "Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
  2. Situation:

    Ich rödele Filme vom .ts-Format (in dem zeichnet ein Gerät Mitschnitte von Filmen und ähnlichem) zu mp4 um:

    Heute heize ich elektrisch:

    Im Dauerbetrieb mit voller Last... Die Warmluft kommt mit etwas mehr als 37 Grad aus dem Rechner - und 69 von 248 Mitschnitten sind nach einem Tag umgerödelt.

    Ich frage mich gerade, ob ich das (natürlich nur im Winter!) nicht als Rechenleistung-on-Demand verkaufen sollte :-)