Gibt es nur wenige Standard-Videobildraten?


11

Kann eine Videodatei in modernen digitalen Videos mit einer beliebigen Bildrate markiert werden? Oder werden nur wenige spezifische Frameraten weitgehend unterstützt? Mit "modern" meine ich Software-Player wie Quicktime, VLC, Roku, Spielekonsolen usw. Ich bin gespannt, was die Videostandards selbst für zulässige Bildraten halten und was dann in der Praxis tatsächlich funktioniert.

Ich verstehe, dass 24 fps, 25 fps, 30 fps, 50 fps und 60 fps weit verbreitete Standards sind. HandBrake bietet auch 5, 10 und 15; sind das Standardoptionen? Kann ich eine beliebige FPS-Nummer verwenden? Und was ist mit den nicht ganzzahligen Raten wie 23.976 und 29.97? Werden sie von Software tatsächlich anders behandelt als 24 und 30? Ich sehe auch Verweise auf "variable Bildrate" in H.264-Streams; funktioniert das tatsächlich und wenn ja, was nutzt es?

Meine spezielle Frage ist, wie man einige 8-mm-Filmscans am besten codiert. Die Quelle ist 16 fps, der 8-mm-Filmstandard. Im Moment verdopple ich jedes zweite Bild, um es auf 24 fps zu bringen, was in Ordnung ist, aber ich frage mich, warum ich das Video nicht einfach als 16 fps markieren kann. FWIW Ich habe H.264 mp4-Dateien mit Handbrake mit 15 fps erstellt und festgestellt, dass sie nur in VLC korrekt wiedergegeben werden. Mac Quicktime hat sie zu schnell abgespielt, wahrscheinlich 24 fps.

Antworten:


11

Es gibt mehrere "Standard" -Bildraten, aber es werden so viele, dass die Unterstützung beliebiger Frameraten einfacher ist als die spezifische Unterstützung vieler spezifischer. Dies gilt insbesondere für Software-Player wie VLC.

Es gibt immer mehr Unterstützung für VARIABLE fps. (VFR, variable Bildrate). Hier ist das Intervall zwischen Bildern innerhalb desselben Videos keine Konstante. Viele Videocontainer-Dateiformate (wie Matroska ( .mkv) oder MPEG-4 ( .mp4eng verwandt mit Apples .mov)) speichern nicht einmal eine FPS-Nummer, sondern eine Zeitbasis (z. B. 1/30 Sekunde) und dann jedes Bild hat einen Zeitstempel als Vielfaches dieser Zeitbasis. Es ist nur so, dass das Intervall zwischen jedem Bild eine oder eine kleine ganzzahlige Anzahl von Einheiten der Zeitbasis in einem CFR-Video (konstante Bildrate) ist.

Überwachungskamera-Material mit nahezu doppelten Bildern wäre ein offensichtlicher Anwendungsfall für VFR. Auch mehr, wenn es mit einem simplen Video-Codec komprimiert wird, der die zeitliche Redundanz nicht gut ausnutzt (mit Inter- (p- und b-) Frames). (Spielen Sie mit ffmpeg -vf mpdecimate, um Near-Dup-Frames zu löschen. Verwenden Sie -vsync 2diese Option, wenn Sie auf mp4 ausgeben, da dies aus irgendeinem Grund nicht die Standardeinstellung für diesen Muxer ist, sondern für mkv.)

Ein weiterer Fall sind moderne Smartphones. Zum Beispiel nimmt das Moto G (2. Generation) meines Bruders VFR-Videos auf. Es senkt die Bildrate, wenn der Sensor mehr Licht benötigt. Einige der Ausgaben von Mediainfo auf einer von der Telefonsoftware erstellten MP3-Datei, die in Innenräumen aufgezeichnet wurde:

Bit rate                                 : 9 999 Kbps
Width                                    : 1 280 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 16:9
Rotation                                 : 90°
Frame rate mode                          : Variable
Frame rate                               : 16.587 fps
Minimum frame rate                       : 14.985 fps
Maximum frame rate                       : 30.030 fps

Die Wiedergabe eines einzelnen VFR-Videostreams ist nicht schwierig. Die Software bereitet gerade das nächste Bild für die Anzeige vor, schläft, bis es angezeigt werden soll, wacht dann auf und zeigt es an.

Etwas komplizierter wird es, wenn man berücksichtigt, dass Menschen Videobilder nur sehen können, wenn sie von einem Monitor angezeigt werden. VFR-Monitore existieren, sind aber immer noch selten. (Google für G-Sync Freesync).

Das Ändern des angezeigten Bildes während des Scannens auf den Monitor führt zu einem hässlichen Zerreißen des Videos (häufig beim Spielen eines Spiels mit ausgeschaltetem vsync). Dies beschränkt einen Player darauf, das angezeigte Bild bei 50 oder 60 Hz zu ändern. (CRTs unterstützen beliebige Vrefresh-Raten innerhalb eines Bereichs, aber es ist kompliziert, Modi mit allen richtigen Timings zu erstellen, sodass die meisten Leute nur ein paar feste Refresh-Raten verwendet haben. Und jetzt haben die Leute LCDs, die sowieso nur eine feste Refresh-Rate unterstützen. Bis Freesync-Monitore sind sowieso weiter verbreitet. Ich freue mich sehr darauf. :)

Bei Videobildraten, die nicht ein Vielfaches oder ein Faktor der Monitoraktualisierungsrate sind, werden einige Bilder für 3 Monitoraktualisierungen angezeigt, andere beispielsweise für 2, selbst wenn das Video eine konstante Geschwindigkeit von 25 fps haben soll (auf einem 60Hz Monitor).

Die Dinge werden komplizierter, wenn Sie mit mehreren Clips arbeiten und zwischen ihnen oder Bild-in-Bild oder verschiedenen anderen Effekten verblassen möchten. Es ist viel einfacher, Videobearbeitungssoftware zu schreiben, wenn Sie davon ausgehen können, dass alle Clips gleichzeitig einen neuen Frame haben. (Sie erzwingen, dass die Clipausrichtung an ganzen Frames einrastet.)

Aus diesem Grund zwingen NLEs (wie kdenlive oder pitivi, um zufällige Beispiele für freie Software auszuwählen) Sie eher zu einem festen FPS und löschen / duplizieren Frames aus Ihren Clips, damit sie mit dieser Framerate übereinstimmen. Der von Ihnen gewählte CFR kann beliebig sein, muss jedoch normalerweise für das gesamte "Projekt" konstant sein.

(Funktionieren NLEs vollständig mit VFR-Clips und erzeugen in diesem Fall eine VFR-Ausgabe?)

Zusammenfassend lässt sich sagen, dass, sobald wir Monitore und Betriebssysteme mit variabler Synchronisierung haben, das einzige, was uns zurückhält, die Videobearbeitung sein wird, denke ich. Und Rundfunk, denn anscheinend ist CFR auch dafür eine große Sache?

Für den Fall, dass Sie sich fragen, sind die 29.970 (tatsächlich 30000/1001) und 23.976 (tatsächlich 24000/1001, aus der Telecining) lästigen nicht ganzzahligen Bildraten der Fehler der Farbe NTSC. Suche nach 1.001 . Wenn sie nur bereit gewesen wären, ein paar Schwarzweißgeräte zu riskieren, die nicht in der Lage sind, eine zusätzliche Frequenz von 0,1% für den Audio-Unterträger zu verarbeiten, wäre der Welt dieser Unsinn erspart geblieben. (Ich glaube, ich habe irgendwo einen anderen Artikel gesehen, in dem es eher so klang, als wären viele Sets in Ordnung gewesen, aber sie waren sich nicht sicher, ob sie perfekt kompatibel sind. Wikipedia lässt es so klingen, als hätten keine Sets einen um 0,1% höheren Audio-Unterträger handhaben können Fakten.)

Ärgerliche Bildraten sind jedoch eine der geringeren Sünden des Rundfunks. Es ist wirklich Interlacing, das auf modernen Bildschirmen (alle Pixel gleichzeitig beleuchtet) den Fluch der Videoqualität darstellt, und das hätte sich nicht geändert. Ich verstehe immer noch nicht, warum Interlacing für HDTV beibehalten wurde. Warum wurde 1080i60 jemals definiert, anstatt 720p60 zu verwenden, um die gleiche zeitliche Auflösung für Sport und andere Dinge zu erhalten? Es ist ähnlich wie 1920x540p60, aber mit einem dummen vertikalen Versatz zwischen ungeraden und geraden Feldern, der auf der Empfangsseite viel Berechnung erfordert, damit es nicht schrecklich aussieht.

bearbeiten:

Für Ihren Anwendungsfall würde ich unbedingt empfehlen, beim nativen FPS zu archivieren. Werfen Sie keine Informationen weg, indem Sie Frames ablegen. Dupen Sie keine Frames und vergrößern Sie Ihre Dateien nicht (oder lassen Sie Ihren h.264-Encoder mehr Zeit damit verbringen, die Duplikate zu bemerken und einen Frame voller Skip-Makroblöcke auszugeben, der nur 20 Bytes für den gesamten Frame benötigt).

Wenn wir hoffentlich in Zukunft alle über Freesync-Displays verfügen, die jede Framerate wiedergeben können, sollten Sie Ihr Pullup auf 24 fps rückgängig machen, damit Ihr Video reibungsloser abgespielt wird! Oder wenn sich Freesync irgendwie nicht durchsetzt oder die Anzeige nach LCDs CFR ist, ist die Ratenkonvertierung wahrscheinlich sowieso am besten zur Wiedergabezeit. Es ist nicht so, dass 24fps sogar perfekt auf einem 60-Hz-Monitor abgespielt werden. (Ich bemerke visuell nicht die Tatsache, dass einige Frames für 3 * 1/60 angezeigt werden, während andere für 2 * 1/60 angezeigt werden, aber es ist wahr).

Wenn Sie Probleme mit Quicktime haben, dann IDK. Stellen Sie möglicherweise sicher, dass Handbrake Dateien mit der richtigen Framerate im Bitstream h.264 sowie im Container erstellt. (Ja, h.264-Header können anscheinend eine Framerate speichern, die von den Angaben im Container getrennt ist. Weitere Informationen finden Sie in den Dokumenten mkvmerge --fix-bitstream-timing-information. Versuchen Sie --default-duration 16fps, damit eine mkv-Datei zu erstellen. Muxen Sie diese dann zurück auf mp4 und prüfen Sie, ob dadurch die Quicktime behoben wird. ) Oder vielleicht gibt es überhaupt eine Möglichkeit, dies mit mp4-Tools zu tun. Siehe zum Beispiel: /ubuntu/370692/how-to-change-the-framerate-of-a-video-without-reencoding

Ich kann garantieren, dass die beliebige Bildrate mp4 gültig ist und sogar die variable Bildrate mp4 gültig ist. Wenn Quicktime es falsch spielt, könnte es die Schuld von Quicktime sein. Oder vielleicht ist Handbrake schuld daran, dass die Datei falsch ist. Normalerweise benutze ich ffmpeg direkt, weil ich ein Kommandozeilen-Ninja bin.


2

Um Ihre Frage zu beantworten: Ja, Sie können eine Videodatei im Allgemeinen in einer beliebigen Bildrate codieren. (Einige Software-Programme beschränken Sie möglicherweise, um die Software zu vereinfachen.) Die Frage ist, ob das von Ihnen gewählte Übermittlungsformat dies unterstützt und ob das Wiedergabegerät dies unterstützt.

Wenn Sie einen 8-mm-Film mit 16 fps haben, würde ich ihn mit 16 fps codieren, wenn ich wüsste, dass die Wiedergabegeräte, die ich unterstützen wollte, damit umgehen können. Wenn nicht, würde ich wahrscheinlich Software verwenden, die den optischen Fluss unterstützt (manchmal auch als Bewegungsschätzung bezeichnet), um ihn mit 24 fps zu codieren. Dies ist wahrscheinlich die nächste Bildrate, die wahrscheinlich von Codierungssoftware, Decodierungssoftware und den meisten Wiedergabehardware unterstützt wird.

Software (oder Hardware), die den optischen Fluss unterstützt, generiert Zwischenbilder basierend auf der Bewegung von Objekten in Ihrem Video. Anstatt entweder ein Bild zu wiederholen oder sogar 2 Bilder zu mischen, wird ein neues Bild generiert, das normalerweise ziemlich nahe an dem liegt, was tatsächlich aufgenommen worden wäre, wenn Sie mit der Ausgabebildrate aufgenommen hätten.


Ich würde mit der nativen Framerate codieren, um zu vermeiden, dass Informationen weggeworfen oder Frames dupliziert werden, um zusätzliche Arbeit für einen Codec zu erstellen. Außerdem werden wir hoffentlich in Zukunft alle Freesync-Displays haben, die jede Framerate spielen können. Wenn nicht, erfolgt die Ratenkonvertierung wahrscheinlich am besten zur Wiedergabezeit. wenn wir über Archivierungsskalen sprechen.
Peter Cordes

2

Nach der Geschichte kommen 24 FPS aus Kino (Filme). Der Film war in Fotoband und die Geschwindigkeit wurde gewählt, um Bewegungen glatt zu machen.

25 FPS kommen von der Frequenz der Leistung in Europa, 50 Hz (50 FPS stammen aus derselben Quelle, verdoppeln sie jedoch tatsächlich). Tatsächlich hatte das Fernsehen in Europa 50 FPS, aber halbe Bilder, sie sind interlaced

30 FPS kommen von der Frequenz der Leistung in den USA, 60 Hz (60 FPS stammen aus derselben Quelle, verdoppeln sie jedoch tatsächlich). Tatsächlich war das Fernsehen in den USA 60 FPS, aber halbe Bilder, sie sind interlaced

16 FPS ist für professionelle Zwecke nicht so weit verbreitet wie Standard. Vielleicht ist dies der Grund, warum es in den meisten aktuellen Softwareprogrammen nicht verwendet wird. Darüber hinaus wird ein solches FPS die schnelle Bewegung nicht "glätten". Ich habe eine verrückte Idee, wie man 16 FPS machen kann, um besser zu passen 24. Juts bekommen alle geraden und ungeraden Frames und machen so etwas wie einen Durchschnitt zwischen ihnen :)


Vielen Dank für die Hilfe, aber sie beantwortet meine Frage nicht. Ich bin mir der Ursprünge von 24, 25, 50 und 60 bewusst. Ich frage, ob andere Frameraten funktionieren sollen.
Nelson

1

Es gibt festgelegte Standards für Fernseh- und Filmvideos, denen die meisten Videos entsprechen. Ein Computer kann häufig Videos mit mehreren Frameraten anzeigen. Einige Fernsehgeräte haben jedoch möglicherweise Probleme mit ungeraden Bildraten, da sie möglicherweise speziellere Anzeigeschaltungen verwenden. Selbst auf einem Computer stimmt die tatsächlich angezeigte Bildrate möglicherweise nicht mit der der Videodatei überein, abhängig von den unterstützten Aktualisierungsraten des Monitors.

Ja, die nicht ganzzahligen Bildraten werden unterschiedlich angezeigt. Sie werden als Drop-Frame bezeichnet und existieren hauptsächlich aus alten Gründen. Bei der Wiedergabe wird von Zeit zu Zeit ein Bild (aus dem Timecode) gelöscht, um den Zeitunterschied auszugleichen, und die Bilder werden mit der richtigen Geschwindigkeit verteilt, um sie glatt zu halten. Dies hat jedoch mehr mit der Synchronisierung von Inhalten in älteren Formaten und der Verhinderung von Synchronisierungsproblemen zu tun, die nicht mehr relevant sind.

Sie können nicht standardmäßige Bildraten verwenden und es sollte auf PCs gut wiedergegeben werden, aber es entspricht nicht dem Standardvideo für Dinge wie Bluray und kann auf einigen Fernsehgeräten möglicherweise nicht gut wiedergegeben werden. (Und selbst bei denen, an denen es funktioniert, wird es wahrscheinlich in Echtzeit heruntergezogen, um einer Standard-Framerate zu entsprechen, wobei ein im Voraus durchgeführtes Pulldown wahrscheinlich zu einer besseren Qualität führen würde.)


@ user1118321 ja, und danke, dass Sie darauf hingewiesen haben, dass es klarer sein könnte.
AJ Henderson

-1

Bei Ihrer Frage geht es nicht um gängige Tarife, sondern um den Tarif, den Sie zum Digitalisieren Ihres Films verwenden sollten. Die Antwort: Sie sollten nach Möglichkeit die ursprüngliche Rate verwenden, da Sie die Quelle in digitaler Form beibehalten möchten. Dann können Sie es in die Bildrate konvertieren, die Sie zum Anzeigen benötigen. In früheren Zeiten bedeutete dies normalerweise 24 fps für die Theaterpräsentation und 29,97 fps für das Video. Heutzutage können Sie fast alles tun, aber Sie benötigen eine gute Quelle, die so sauber wie möglich zum Original passt.


Nein, meine Frage betraf die üblichen Tarife. Und wurde vor Jahren angemessen beantwortet.
Nelson

-3

Ein paar andere Notizen. Erstens werden 48 fps dank The Hobbit und jetzt der Unterstützung von YouTube für die Framerate immer beliebter und häufiger. Zweitens sind 30 fps normalerweise 29,97 fps und 60 fps ungefähr 59,94.


2
Eigentlich bedeutet 30 nicht immer 29,97. Manchmal ist es wirklich 30. Gleiches gilt für 24. 23.98, 24, 29.97, 30, 50, 59.94 und 60 sind alle perfekt gültige, häufig verwendete Frameraten. Diejenigen mit Dezimalstellen sollen mit dem Rundfunkfernsehen in verschiedenen Ländern kompatibel sein, aber sie sind auch im Internet immer noch ein faires Spiel. Einige Hersteller von Videokameras "lügen" jedoch über ihre Frameraten. Eine mit 24p gekennzeichnete Kamera liefert möglicherweise 23,98, um dem Verbraucher sowohl die Kopfschmerzen bei Streifenproblemen als auch die technischen Details zu ersparen.
Jason Conrad

@JasonConrad Bildraten sind nicht immer gerundete Dezimalstellen, für die meisten Consumer-Kameras jedoch.
KC McLaughlin

@KCMcLaughlin - Tatsächlich wird es bei Progressive-Scan-Geräten immer wahrscheinlicher, dass der Drop-Frame gelöscht wird und die Ganzzahl-Frameraten direkt erhöht werden. 29.97 und 23.976 sind zu diesem Zeitpunkt ein reines Erbe und wurden zunehmend durch reine ganzzahlige Bildraten ersetzt.
AJ Henderson

@KCMcLaughlin Color NTSC war nie 29.97fps. Es war und ist 30000/1001. In ähnlicher Weise wird 24p-Inhalt, der auf Farb-NTSC übertragen wird, tatsächlich 24000/1001 sein. Außerdem zeichnet meine Digitalkamera (Lumix) 30 fps auf, nicht 30 / 1.001. A / V würde desynchronisieren, wenn ich eine andere Anzahl von Bildern pro 48 Aktiva Audio wiedergeben würde.
Peter Cordes
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.