mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
ffmpeg: rewrite vsync / notimestamps handling
The qatar implementation makes no sense. a muxer without timestamps is constant fps thus needs vsync. the crc/mp5 are special cases that have timestamps yet allow any nonsensical timestamps. raw (yuv/rgb) video is constant fps thus needs vsync too. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
8e576d5830
commit
957867ab13
3
ffmpeg.c
3
ffmpeg.c
@ -1246,8 +1246,7 @@ static void do_video_out(AVFormatContext *s,
|
|||||||
|
|
||||||
format_video_sync = video_sync_method;
|
format_video_sync = video_sync_method;
|
||||||
if (format_video_sync < 0)
|
if (format_video_sync < 0)
|
||||||
format_video_sync = (s->oformat->flags & AVFMT_NOTIMESTAMPS) ? 0 :
|
format_video_sync = (s->oformat->flags & AVFMT_VARIABLE_FPS) ? ((s->oformat->flags & AVFMT_NOTIMESTAMPS) ? 0 : 2) : 1;
|
||||||
(s->oformat->flags & AVFMT_VARIABLE_FPS) ? 2 : 1;
|
|
||||||
|
|
||||||
if (format_video_sync) {
|
if (format_video_sync) {
|
||||||
double vdelta = sync_ipts - ost->sync_opts + duration;
|
double vdelta = sync_ipts - ost->sync_opts + duration;
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
346d38d330ab5cb0caa6b5537167bc0d *./tests/data/lavf/lavf.gxf
|
346d38d330ab5cb0caa6b5537167bc0d *./tests/data/lavf/lavf.gxf
|
||||||
796392 ./tests/data/lavf/lavf.gxf
|
796392 ./tests/data/lavf/lavf.gxf
|
||||||
./tests/data/lavf/lavf.gxf CRC=0x345f86eb
|
./tests/data/lavf/lavf.gxf CRC=0x102918fd
|
||||||
|
Loading…
x
Reference in New Issue
Block a user