AVC, h264 und ffmpeg (gelöst)
AVC, h264 und ffmpeg (gelöst)
Soweit ich die wikipedia-Artikel verstanden habe, sind die Bezeichnungen AVC und h264 synonym. Stimmt das?
Zuletzt geändert von fischig am 22.07.2024 13:39:39, insgesamt 1-mal geändert.
Re: AVC und h264
Ja. Der Englische Wikipedia-Artikel erklärt das auch.
Re: AVC und h264
Danke!
Zusatzfrage: x264 auch?
Dann echte Weiterfrage :
bei der Anlsyse meiner HD-Fernsehmitschnitte via VDR zeigt mediainfo: immer
Um den - soweit mir bekannt unnützen Ballast des Mitschnitts loszuwerden und zu einer akzeptableren Dateigröße zu kommen, konvertiere ich den dann mit:
Unter dem Eindruck meiner eigenen Vermutung, dachte ich, dass vielleicht mit
schneller machen zu können. War aber nicht.
Die Bitraten blieben im Bereich des Mitschnittes (etwas kleiner, wegen überflüssiger Nullen?)
Zusatzfrage: x264 auch?
Dann echte Weiterfrage :
bei der Anlsyse meiner HD-Fernsehmitschnitte via VDR zeigt mediainfo: immer
Code: Alles auswählen
Format AVC
Code: Alles auswählen
ffmpeg -i [mitschnitt].ts -vcodec h264 -crf 20 [video].mkv
Code: Alles auswählen
ffmpeg -i [mitschnitt].ts - vcodec copy -crf 20 [video].mkv
Die Bitraten blieben im Bereich des Mitschnittes (etwas kleiner, wegen überflüssiger Nullen?)
Re: AVC und h264
x264 ist ein h264-Encoder, eine Bibliothek bzw. ein Programm, um h264-Videos zu erzeugen.
Ich vermute(!), dass du durch die Angabe eines crf-Wertes trotz Angabe von "vcodec copy" eine Reencodierung erzwingst, was dann natürlich auch entsprechend Zeit kostet.fischig hat geschrieben:22.07.2024 09:14:07Um den - soweit mir bekannt unnützen Ballast des Mitschnitts loszuwerden und zu einer akzeptableren Dateigröße zu kommen, konvertiere ich den dann mit:Unter dem Eindruck meiner eigenen Vermutung, dachte ich, dass vielleicht mitCode: Alles auswählen
ffmpeg -i [mitschnitt].ts -vcodec h264 -crf 20 [video].mkv
schneller machen zu können. War aber nicht.Code: Alles auswählen
ffmpeg -i [mitschnitt].ts - vcodec copy -crf 20 [video].mkv
Die Bitraten blieben im Bereich des Mitschnittes (etwas kleiner, wegen überflüssiger Nullen?)
Re: AVC und h264
Plausibel! Ok ich versuch's mal mit AVC/avc oder x264.
Ergebnis: Schlägt alles fehl. ffmpeg besteht auf h264. AVC/avc und x264 kennt er nicht.
Ergebnis: Schlägt alles fehl. ffmpeg besteht auf h264. AVC/avc und x264 kennt er nicht.
Re: AVC und h264
Wie @hikaru schon schriebt, du kanst enteder eine -v:c copy (Kopieren)fischig hat geschrieben: [...] schneller machen zu können. War aber nicht.
oder -crf (neu kodieren) machen beides zusammen geht nicht
gruss MaGe.
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.
Re: AVC und h264
Nochmal:
h264/avc ist der Name des Codecs (des "Formats"), x264 der Name des Encoders (der Software).
ffmpeg benutzt über die Abhängigkeit von libavcodec und libx264 bereits x264 zum Encodieren von h264-Videos. Es gibt x264 auch als eigenständiges Encodierprogramm, aber das brauchst du nicht.
h264/avc ist der Name des Codecs (des "Formats"), x264 der Name des Encoders (der Software).
ffmpeg benutzt über die Abhängigkeit von libavcodec und libx264 bereits x264 zum Encodieren von h264-Videos. Es gibt x264 auch als eigenständiges Encodierprogramm, aber das brauchst du nicht.
Re: AVC und h264
Ok, x264 war daneben.
Aber ich frag' mich halt, warum, wenn der codec doch derselbe ist (avc/h264), man keine Dateigrößenreduzierung via crf ohne Neucodierung erreichen kann.
Aber ich frag' mich halt, warum, wenn der codec doch derselbe ist (avc/h264), man keine Dateigrößenreduzierung via crf ohne Neucodierung erreichen kann.
Re: AVC und h264
Stark vereinfachtes Beispiel: du hast nen Korb voller Äpfel und willst weniger haben, und dafür schlechtere Äpfel opfern. Dein Algorithmus dazu sei "x braune Stellen" als Schwellwert zum Wegwerfen (analog zum h264-Verfahren, wo ebenso "unnötige" Daten entfernt werden). crf entspricht gaaaaanz grob x (weder rechnerisch noch sonstwie, aber das ist der Parameter hier). Du kannst den Korb nicht einfach in einen anderen Korb umräumen und nen anderen Schwellwert haben, ohne dir alle Äpfel nochmal anzusehen, auch wenn die Methode zum Aussortieren die gleiche bleibt.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nicht • Don't break debian! • Wie man widerspricht
Windows ist doof, Linux funktioniert nicht • Don't break debian! • Wie man widerspricht
Re: AVC und h264
Die Seite kennst du?fischig hat geschrieben: [...] man keine Dateigrößenreduzierung via crf ohne Neucodierung erreichen kann.
Konstanter Ratenfaktor (CRF)
Verwenden Sie diesen Ratenkontrollmodus, wenn Sie die beste Qualität beibehalten möchten und die Dateigröße keine Rolle spielt. Dies ist der empfohlene Ratenkontrollmodus für die meisten Anwendungen.
https://trac-ffmpeg-org.translate.goog/ ... _tr_pto=sc
gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.
Re: AVC und h264
Das scheint mir der springende Punkt zu sein. Oder so herum: copy setzt beim -vcodec crf außer Kraft. ffmpeg will für crf einen codec haben, auch wenn es den bereits kennt/kennen sollte.TRex hat geschrieben:ohne dir alle Äpfel nochmal anzusehen
Hey!
Das hier funktioniert mit deutlicher Bitratenreduzierung:
Code: Alles auswählen
ffmpeg -i [mitschnitt].ts -crf 20 -acodec copy [mitschnitt].mkv
Code: Alles auswählen
ffmpeg -i [mitschnitt].ts -vcodec h264 -crf 20 -acodec copy [mitschnitt].mkv
Ja, kenne ich. Das „keine“ in der Beschreibung ist meiner Meinung nach ungenau. Zutreffender wäre meiner Meinung nach „nur eine untergeordnete“/„keine entscheidende“ oder etwas in der Art.
Ich wüsste nicht, warum ich crf verwenden sollte, wenn ich damit nicht auch eine Dateigrößen-/Durchschnittsbitraten-Änderung bewirken wollte.
Re: AVC und h264
## Bei mir mit einem 5 Min test beide gleich ##fischig hat geschrieben: Das hier funktioniert mit deutlicher Bitratenreduzierung:
Code: Alles auswählen
ffmpeg -i Million_Dollar_Baby.m2t -t 300 -crf 20 -acodec copy -sn Million_Dollar_Baby-ohne-h264.mkv
147,8 MiB (155.012.783) - bitrate: 4133 kb/s
Code: Alles auswählen
ffmpeg -i Million_Dollar_Baby.m2t -t 300 -vcodec h264 -crf 20 -acodec copy -sn Million_Dollar_Baby-mit-h264.mkv
147,8 MiB (155.012.783) - bitrate: 4133 kb/s
gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.
Re: AVC, h264 und ffmpeg (gelöst)
@MaGe
Weißt du du vielleicht, ob Million-Dollar-Baby bei arte.de mit französischen Untertiteln kommt? Dann würde ich morgen mal wieder kaffeine bemühen.
Weißt du du vielleicht, ob Million-Dollar-Baby bei arte.de mit französischen Untertiteln kommt? Dann würde ich morgen mal wieder kaffeine bemühen.
Re: AVC, h264 und ffmpeg (gelöst)
fischig hat geschrieben: Weißt du du vielleicht, ob Million-Dollar-Baby bei arte.de mit französischen Untertiteln kommt?
Code: Alles auswählen
ccextractor Million_Dollar_Baby.m2t
- No teletext page specified, first received suitable page is 888, not guaranteed
Notice: Teletext page with possible subtitles detected: 151
Notice: Teletext page with possible subtitles detected: 150
Notice: Teletext page with possible subtitles detected: 152
## Ja ##
Code: Alles auswählen
ffmpeg -fix_sub_duration -txt_format text -txt_page 888 -i Million_Dollar_Baby.m2t -ss 00:05:21.856 -to 02:10:38.256 Million_Dollar_Baby.srt
1
00:06:18,920 --> 00:06:19,160
...
2
00:06:51,680 --> 00:06:54,640
-Quand je l'ai rencontré,
3
00:06:54,640 --> 00:06:54,920
il était déjà considéré
comme le meilleur soigneur.
4
00:07:47,920 --> 00:08:41,440
profondeurs de chair. Et Frankie
avait toujours une solution.
gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.
-
- Beiträge: 498
- Registriert: 24.09.2020 14:51:14
Re: AVC und h264
So wie ein „Schreib den Roman einfach Wort für Wort ab“ ein „Zielsprache ist Englisch“ außer Kraft setzt, ja.fischig hat geschrieben:22.07.2024 11:45:31Das scheint mir der springende Punkt zu sein. Oder so herum: copy setzt beim -vcodec crf außer Kraft.TRex hat geschrieben:ohne dir alle Äpfel nochmal anzusehen
-vcodec copy heißt: pack das kodierte Videomaterial so, wie es ist, in die neue Datei um. Ohne neu zu kodieren. Also ohne einen Codec überhaupt zu benutzen. Natürlich brauchst du dann weder einen Codec noch einen CRF anzugeben, weil der CRF eben ein Parameter zum Kodieren ist, das du aber gar nicht durchführst.
Um einen CRF anzuwenden, musst du neu kodieren. Um neu zu kodieren, brauchst du einen Codec. Wenn du keinen Codec angibst, nimmt ffmpeg seinen Default, und das dürfte h264 sein.ffmpeg will für crf einen codec haben, auch wenn es den bereits kennt/kennen sollte.
--ks
Hier so: Debian Stable/Sid (nach Laune) – KDE Plasma – Lenovo Thinkpad T470p – i7-7700HQ – 32GB RAM
Re: AVC, h264 und ffmpeg (gelöst)
@Ma Ge
Bingo!
Bingo!
Re: AVC, h264 und ffmpeg (gelöst)
Unter dem Vorbehalt, dass ich in dem Video-Codec-Bezeichner-Dschungel nicht wirklich durchblicke, habe ich das hier nochmal überprüft:
Bleibt offen, was passiert, wenn ffmpeg den codec nicht kennt. Ein solches Video dürfte schwer zu finden sein. Oder man müsste sich den code anschauen, um's zu verfizieren.
Es sieht eher so aus, wie zuletzt von mir vermutet: wird kein codec angegeben, nimmt ffmpeg den vorhandenen. Ich habe das mal getestet mit einer alten Aufzeichnung, bei der garantiert kein h264 im Ausgagnsvideo steckt:kreuzschnabel hat geschrieben:Wenn du keinen Codec angibst, nimmt ffmpeg seinen Default, und das dürfte h264 sein.
Code: Alles auswählen
Input #0, avi, from 'Men_at_Work_09.07.25_das4_125.avi':
Stream #0:0: Video: mpeg4 (Simple Profile)
Input #0, avi, from 'men-at-work.avi':
Stream #0:0: Video: mpeg4 (Simple Profile)
Re: AVC, h264 und ffmpeg (gelöst)
ffmpeg stellt anhand der angegebenen Dateieindungen automatisch fest,fischig hat geschrieben: [...] wird kein codec angegeben, nimmt ffmpeg den vorhandenen [...]
was in welches Format wie konvertiert werden muß
## VOB-Datei
Stream #0:1[0x1e0]: Video: mpeg2video
Stream #0:2[0x80]: Audio: ac3,
Code: Alles auswählen
ffmpeg -i VTS_01_8.VOB VTS_01_8.avi
Stream #0:0: Video: mpeg4
Stream #0:1: Audio: mp3
gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.
-
- Beiträge: 498
- Registriert: 24.09.2020 14:51:14
Re: AVC, h264 und ffmpeg (gelöst)
Die Endung legt lediglich das Containerformat fest. An Codecs kann da Unterschiedliches drin sein. Ob und wie konvertiert wird, ist mehr oder weniger deine Entscheidung als Anwender, das wird vom Container nicht vorgegeben (gut, der Rahmen wird vorgegeben, nicht jeder Container kann jeden Codec enthalten).MaGe hat geschrieben:23.07.2024 10:57:37ffmpeg stellt anhand der angegebenen Dateieindungen automatisch fest,
was in welches Format wie konvertiert werden muß
--ks
Hier so: Debian Stable/Sid (nach Laune) – KDE Plasma – Lenovo Thinkpad T470p – i7-7700HQ – 32GB RAM
Re: AVC, h264 und ffmpeg (gelöst)
Ob du mir das glaubst oder nicht, diese Tatsache ist mir hinlänglich bekannt.kreuzschnabel hat geschrieben: Die Endung legt lediglich das Containerformat fest.[...]
Und auch das steht im Internet.
ffmpeg -i [input_file_name] [output_file_name]
Das Argument -i gibt die Eingabedatei an. Auf den Namen der Eingabedatei
folgt der Name der Ausgabedatei. Dieser kann eine beliebige Dateierweiterung
haben (z. B. .mkv, .mp4, .mp3). FFmpeg erkennt das Eingabeformat automatisch
und konvertiert es in das durch die Dateierweiterung angegebene Ausgabeformat.
Richtig.fischig hat geschrieben: Es sieht eher so aus, wie zuletzt von mir vermutet: wird kein codec angegeben, nimmt ffmpeg den vorhandenen [...]
## Wenn ich a.avi in b.avi konvertiere bekomme ich mpeg4
## Und wenn ich VTS_01_8.mp4 mit Video: h264
in VTS_01_8.avi konvertiere bekomme ich mpeg4
Stream #0:0: Video: mpeg4
Stream #0:1: Audio: mp3
gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.
Uns rottet die soziale Kälte viel früher aus.