3b1b / 3b1b/manim

Manim generates variable framerate video instead of the constant value in the CONFIG

Offen
#1,000 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
93.8k
Forks
7.7k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

FFMPEG `concat` function that Manim uses for partial movie files concatenation creates variational framerate video instead of constant. You can check it with these 2 video files [00000](https://dl.dropboxusercontent.com/s/vzzb25hv1qza81o/00000.mp4) and [00001](https://dl.dropboxusercontent.com/s/9bgvjedm6c1lrys/00001.mp4):
```
ffmpeg -y -f concat -safe 0 -i file_list.txt -loglevel error -c copy test.mp4

file_list.txt:
file '00000.mp4'
file '00001.mp4'

00000.mp4:
Duration: 00:00:00.42, start: 0.000000, bitrate: 204 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 182 kb/s,
60 fps, 60 tbr, 15360 tbn, 120 tbc (default)

00001.mp4:
Duration: 00:00:01.63, start: 0.000000, bitrate: 58 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 48 kb/s,
60 fps, 60 tbr, 15360 tbn, 120 tbc (default)
```

The result has a different framerate:
```
test.mp4:
Duration: 00:00:02.05, start: 0.000000, bitrate: 85 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 76 kb/s,
59.99 fps, 60 tbr, 15360 tbn, 120 tbc (default)
```

I checked for a VFR:
```
ffmpeg -i 00000.mp4 -vf vfrdet -an -f null -
VFR:0.000000 (0/24)

ffmpeg -i 00001.mp4 -vf vfrdet -an -f null -
VFR:0.000000 (0/97)

ffmpeg -i test.mp4 -vf vfrdet -an -f null -
VFR:0.016393 (2/120) min: 256 max: 261 avg: 258
```

Manim generates two CFR inputs for ffmpeg concatenation and one VFR output of this concatenation. Is it possible to get `VFR:0` after the concatenation?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.