Warum Audio Bitstreamfilter -bsf:a aac_adtstoasc in ffmpeg Kommandozeile vom Set "Mac Speichern" ?
-
Set “Mac Speichern” → Hilfsprogramme ffmpeg:
Bechreibung:
ffmpeg
Zieldateiname:%t-%T-%Z.mp4
Programm :bin/ffmpeg
Schalter:-i %f -c copy -bsf:a aac_adtstoasc **
Präfix:http
Suffix:m3u8
Warum belässt man den A/V Stream nicht 1:1 wie er ist (
-c copy
bewirkt dies) sondern wendet am Audio-Stream mit-bsf:a
den Bitstream-Filter aac_adtstoasc an?- Warum liefert überhaupt der Rundfunkbetreiber mit ADTS Headern aus?
- Was bezweckt MediaThekView mit dieser Nachbearbeitung?
Ich hab dazu gar keine Meinung. Würde nur gerne verstehen warum. Wenn man vom Original etwas wegnimmt, muss es ja irgend eine Art von Grund/Absicht dafür geben. Danke!
-
-
Weil die Streams im ts-Format sind und für mp4 der Header modifiziert werden muß, weggenommen wird da nix
https://wiki.multimedia.cx/index.php/ADTS
Dieser Schalter für ffmpeg wird quasi überall empfohlen. Ob er wirklich nötig ist weiß ich nicht, aber schaden tut er schon mal nicht.
Aber du kannst ihn auch einfach rausnehmen und berichten was ohne ihn passiert. -
@porg sagte: Warum liefert überhaupt der Rundfunkbetreiber mit ADTS Headern aus?
Weil bei Streaming-Formaten (TS) eben geeignete Audiobitstream-Formate zum Einsatz kommen müssen.
@porg sagte: Was bezweckt MediaThekView mit dieser Nachbearbeitung?
Kompatibilität mit dem MP4-Container-Format bzw. mit On-board-Software der OS (macOS, Win).
Als ich vor Jahren diese Ergänzung im Schalter vorschlug, warnte FFmpeg – ohne Verwendung von “-bsf:a aac_adtstoasc” – sogar explizit davor, dass das Audiobitstream-Format ungeeignet sei.
Und die Audiospur einer trotzdem generierten Datei konnte von den System-Standardplayern (QuickTime Player, Windows Media Player) nicht abgespielt werden. Wenn ich mich richtig erinnere, konnte der Decoder bei VLC, MPlayer aber die Spur decodieren.Wenn ich die FFmpeg-Specs richtig verstanden habe, würden aktuelle FFmpeg-Version heute automatisch das Bitstream-Format ändern:
Please note that it is auto-inserted for MP4A-LATM and MOV/MP4 and related formats.
So gesehen wäre “-bsf:a aac_adtstoasc” im Schalter nicht mehr nötig. Das kannst du ja gerne testen.
@porg sagte: Wenn man vom Original etwas wegnimmt, muss es ja irgend eine Art von Grund/Absicht dafür geben.
Der bisherige ADTS-Header wird gelöscht, da er nicht mehr benötigt wird und da ja ein neuer MP4-Container-kompatibler Header geschrieben wurde.