From: Anton Khirnov <anton@khirnov.net> To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH 02/13] fftools/ffmpeg_filter: make sub2video heartbeat more robust Date: Thu, 23 Nov 2023 20:14:57 +0100 Message-ID: <20231123191524.11296-4-anton@khirnov.net> (raw) In-Reply-To: <20231123191524.11296-2-anton@khirnov.net> Avoid making decisions based on current graph input state, which makes the output dependent on the order in which the frames from different inputs are interleaved. Makes the output of fate-filter-overlay-dvdsub-2397 more correct - the subtitle appears two frames later, which is closer to its PTS as stored in the file. --- fftools/ffmpeg_filter.c | 3 +-- tests/ref/fate/filter-overlay-dvdsub-2397 | 4 ++-- tests/ref/fate/sub2video | 8 +++++--- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index b7da105141..b6fbc5b195 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2274,8 +2274,7 @@ void ifilter_sub2video_heartbeat(InputFilter *ifilter, int64_t pts, AVRational t or if we need to initialize the system, update the overlayed subpicture and its start/end times */ sub2video_update(ifp, pts2 + 1, NULL); - - if (av_buffersrc_get_nb_failed_requests(ifp->filter)) + else sub2video_push_ref(ifp, pts2); } diff --git a/tests/ref/fate/filter-overlay-dvdsub-2397 b/tests/ref/fate/filter-overlay-dvdsub-2397 index 7df4f50776..45c026f540 100644 --- a/tests/ref/fate/filter-overlay-dvdsub-2397 +++ b/tests/ref/fate/filter-overlay-dvdsub-2397 @@ -489,12 +489,12 @@ 1, 3877, 3877, 10, 2013, 0x95a39f9c 1, 3887, 3887, 10, 2013, 0x4f7ea123 1, 3897, 3897, 10, 2013, 0x9efb9ba1 -0, 117, 117, 1, 518400, 0xbf8523da +0, 117, 117, 1, 518400, 0x61e0f688 1, 3907, 3907, 10, 2013, 0xf395b2cd 1, 3917, 3917, 10, 2013, 0x261a881e 1, 3927, 3927, 10, 2013, 0x7f2d9f72 1, 3937, 3937, 10, 2013, 0x0105b38d -0, 118, 118, 1, 518400, 0x41890ed6 +0, 118, 118, 1, 518400, 0xa47de755 1, 3952, 3952, 10, 2013, 0x0e5db67e 1, 3962, 3962, 10, 2013, 0xfc9baf97 0, 119, 119, 1, 518400, 0x588534fc diff --git a/tests/ref/fate/sub2video b/tests/ref/fate/sub2video index 80abe9c905..76347322f3 100644 --- a/tests/ref/fate/sub2video +++ b/tests/ref/fate/sub2video @@ -68,7 +68,8 @@ 0, 258, 258, 1, 518400, 0x34cdddee 0, 269, 269, 1, 518400, 0xbab197ea 1, 53910000, 53910000, 2696000, 2095, 0x61bb15ed -0, 270, 270, 1, 518400, 0x4db4ce51 +0, 270, 270, 1, 518400, 0xbab197ea +0, 271, 271, 1, 518400, 0x4db4ce51 0, 283, 283, 1, 518400, 0xbab197ea 1, 56663000, 56663000, 1262000, 1013, 0xc9ae89b7 0, 284, 284, 1, 518400, 0xe6bc0ea9 @@ -137,7 +138,7 @@ 1, 168049000, 168049000, 1900000, 1312, 0x0bf20e8d 0, 850, 850, 1, 518400, 0xbab197ea 1, 170035000, 170035000, 1524000, 1279, 0xb6c2dafe -0, 851, 851, 1, 518400, 0x8780239e +0, 851, 851, 1, 518400, 0xbab197ea 0, 858, 858, 1, 518400, 0xbab197ea 0, 861, 861, 1, 518400, 0x6eb72347 1, 172203000, 172203000, 1695000, 1826, 0x9a1ac769 @@ -161,7 +162,8 @@ 0, 976, 976, 1, 518400, 0x923d1ce7 0, 981, 981, 1, 518400, 0xbab197ea 1, 196361000, 196361000, 1524000, 1715, 0x695ca41e -0, 982, 982, 1, 518400, 0x6e652cd2 +0, 982, 982, 1, 518400, 0xbab197ea +0, 983, 983, 1, 518400, 0x6e652cd2 0, 989, 989, 1, 518400, 0xbab197ea 1, 197946000, 197946000, 1160000, 789, 0xc63a189e 0, 990, 990, 1, 518400, 0x25113966 -- 2.42.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-11-23 19:19 UTC|newest] Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-11-23 19:14 [FFmpeg-devel] [PATCH v2] ffmpeg CLI multithreading Anton Khirnov 2023-11-23 19:14 ` [FFmpeg-devel] [PATCH 01/13] lavfi/buffersink: avoid leaking peeked_frame on uninit Anton Khirnov 2023-11-23 22:16 ` Paul B Mahol 2023-11-27 9:45 ` Nicolas George 2023-11-23 19:14 ` Anton Khirnov [this message] 2023-11-27 9:40 ` [FFmpeg-devel] [PATCH 02/13] fftools/ffmpeg_filter: make sub2video heartbeat more robust Nicolas George 2023-11-27 9:42 ` Nicolas George 2023-11-27 13:02 ` Paul B Mahol 2023-11-27 13:49 ` Nicolas George 2023-11-27 14:08 ` Paul B Mahol 2023-11-29 10:18 ` Anton Khirnov 2023-11-23 19:14 ` [FFmpeg-devel] [PATCH 03/13] fftools/ffmpeg_filter: track input/output index in {Input, Output}FilterPriv Anton Khirnov 2023-11-23 19:14 ` [FFmpeg-devel] [PATCH 04/13] fftools/ffmpeg: make sure FrameData is writable when we modify it Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 05/13] fftools/ffmpeg_filter: move filtering to a separate thread Anton Khirnov 2023-11-24 22:56 ` Michael Niedermayer 2023-11-25 20:18 ` [FFmpeg-devel] [PATCH 05/13 v2] " Anton Khirnov 2023-11-25 20:23 ` [FFmpeg-devel] [PATCH 05/13] " James Almer 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 06/13] fftools/ffmpeg_filter: buffer sub2video heartbeat frames like other frames Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 07/13] fftools/ffmpeg_filter: reindent Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 08/13] fftools/ffmpeg_mux: add muxing thread private data Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 09/13] fftools/ffmpeg_mux: move bitstream filtering to the muxer thread Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 10/13] fftools/ffmpeg_demux: switch from AVThreadMessageQueue to ThreadQueue Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 11/13] fftools/ffmpeg_enc: move encoding to a separate thread Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 12/13] fftools/ffmpeg: add thread-aware transcode scheduling infrastructure Anton Khirnov 2023-11-23 19:15 ` [FFmpeg-devel] [PATCH 13/13] fftools/ffmpeg: convert to a threaded architecture Anton Khirnov 2023-11-24 22:26 ` Michael Niedermayer 2023-11-25 20:32 ` [FFmpeg-devel] [PATCH 13/13 v2] " Anton Khirnov 2023-11-30 13:08 ` Michael Niedermayer 2023-11-30 13:34 ` Anton Khirnov 2023-11-30 20:48 ` Michael Niedermayer 2023-12-01 11:15 ` [FFmpeg-devel] [PATCH 13/13 v3] " Anton Khirnov 2023-12-01 14:24 ` Nicolas George 2023-12-01 14:27 ` Anton Khirnov 2023-12-01 14:42 ` Nicolas George 2023-12-01 14:46 ` Anton Khirnov 2023-12-01 14:50 ` Nicolas George 2023-12-01 14:58 ` Anton Khirnov 2023-12-01 15:25 ` Nicolas George 2023-12-01 19:49 ` Anton Khirnov 2023-12-04 15:25 ` Nicolas George 2023-12-04 16:25 ` Anton Khirnov 2023-12-04 16:37 ` Nicolas George 2023-12-04 17:07 ` Anton Khirnov 2023-12-06 12:55 ` Nicolas George 2023-12-06 13:21 ` James Almer 2023-12-06 13:38 ` Nicolas George 2023-12-07 17:26 ` Paul B Mahol 2023-12-21 11:53 ` Paul B Mahol 2023-12-22 10:26 ` Anton Khirnov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20231123191524.11296-4-anton@khirnov.net \ --to=anton@khirnov.net \ --cc=ffmpeg-devel@ffmpeg.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git