Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH] avfilter/vsrc_ddagrab: add option to control pts offset removal
@ 2023-04-11 20:18 Jan Ekström
  2023-04-11 20:37 ` Marton Balint
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Ekström @ 2023-04-11 20:18 UTC (permalink / raw)
  To: ffmpeg-devel

This keeps the default behavior as-is by defaulting to true,
while allowing to start the timestamps with the offset from
av_gettime_relative epoch start. This allows for synchronization
with other capture modules that utilize the same epoch start, such
as DShow audio capture.
---
 libavfilter/vsrc_ddagrab.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libavfilter/vsrc_ddagrab.c b/libavfilter/vsrc_ddagrab.c
index 042842104f..14fb4abd10 100644
--- a/libavfilter/vsrc_ddagrab.c
+++ b/libavfilter/vsrc_ddagrab.c
@@ -100,6 +100,7 @@ typedef struct DdagrabContext {
     int        out_fmt;
     int        allow_fallback;
     int        force_fmt;
+    int        start_pts_at_zero;
 } DdagrabContext;
 
 #define OFFSET(x) offsetof(DdagrabContext, x)
@@ -123,6 +124,8 @@ static const AVOption ddagrab_options[] = {
                                                    OFFSET(allow_fallback), AV_OPT_TYPE_BOOL,   { .i64 = 0    },       0,       1, FLAGS },
     { "force_fmt",  "exclude BGRA from format list (experimental, discouraged by Microsoft)",
                                                    OFFSET(force_fmt),  AV_OPT_TYPE_BOOL,       { .i64 = 0    },       0,       1, FLAGS },
+    { "start_pts_at_zero", "start timestamps at PTS=0, removing any initial offset",
+                                                   OFFSET(start_pts_at_zero), AV_OPT_TYPE_BOOL, { .i64 = 1   },       0,       1, FLAGS },
     { NULL }
 };
 
@@ -913,7 +916,7 @@ static int ddagrab_request_frame(AVFilterLink *outlink)
         av_usleep(delay);
     }
 
-    if (!dda->first_pts)
+    if (dda->start_pts_at_zero && !dda->first_pts)
         dda->first_pts = now;
     now -= dda->first_pts;
 
-- 
2.40.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".

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-04-11 20:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-11 20:18 [FFmpeg-devel] [PATCH] avfilter/vsrc_ddagrab: add option to control pts offset removal Jan Ekström
2023-04-11 20:37 ` Marton Balint

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