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 1/9] fftools/ffmpeg: drop the -async option
@ 2022-09-28  9:55 Anton Khirnov
  2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 2/9] fftools/ffmpeg: drop always-true conditions Anton Khirnov
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Anton Khirnov @ 2022-09-28  9:55 UTC (permalink / raw)
  To: ffmpeg-devel

It has been deprecated in favor of the aresample filter for almost 10
years.

Another thing this option can do is drop audio timestamps and have them
generated by the encoding code or the muxer, but
- for encoding, this can already be done with the setpts filter
- for muxing this should almost never be done as timestamp generation by
  the muxer is deprecated, but people who really want to do this can use
  the setts bitstream filter
---
 doc/ffmpeg.texi         | 12 ------------
 fftools/ffmpeg.c        |  2 +-
 fftools/ffmpeg.h        |  1 -
 fftools/ffmpeg_filter.c | 10 ----------
 fftools/ffmpeg_mux.c    |  3 +--
 fftools/ffmpeg_opt.c    |  3 ---
 6 files changed, 2 insertions(+), 29 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 42440d93b4..e9020b30d5 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1697,18 +1697,6 @@ The default is -1.1. One possible usecase is to avoid framedrops in case
 of noisy timestamps or to increase frame drop precision in case of exact
 timestamps.
 
-@item -async @var{samples_per_second}
-Audio sync method. "Stretches/squeezes" the audio stream to match the timestamps,
-the parameter is the maximum samples per second by which the audio is changed.
--async 1 is a special case where only the start of the audio stream is corrected
-without any later correction.
-
-Note that the timestamps may be further modified by the muxer, after this.
-For example, in the case that the format option @option{avoid_negative_ts}
-is enabled.
-
-This option has been deprecated. Use the @code{aresample} audio filter instead.
-
 @item -adrift_threshold @var{time}
 Set the minimum difference between timestamps and audio data (in seconds) to trigger
 adding/dropping samples to make it match the timestamps. This option effectively is
diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index 69716de6b6..f84701ec75 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -1048,7 +1048,7 @@ static void do_audio_out(OutputFile *of, OutputStream *ost,
     if (!check_recording_time(ost))
         return;
 
-    if (frame->pts == AV_NOPTS_VALUE || audio_sync_method < 0)
+    if (frame->pts == AV_NOPTS_VALUE)
         frame->pts = ost->sync_opts;
     ost->sync_opts = frame->pts + frame->nb_samples;
 
diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h
index ede0b2bd96..8acc83e92a 100644
--- a/fftools/ffmpeg.h
+++ b/fftools/ffmpeg.h
@@ -656,7 +656,6 @@ extern float audio_drift_threshold;
 extern float dts_delta_threshold;
 extern float dts_error_threshold;
 
-extern int audio_sync_method;
 extern enum VideoSyncMethod video_sync_method;
 extern float frame_drop_threshold;
 extern int do_benchmark;
diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c
index 17928cea2c..82abb38a93 100644
--- a/fftools/ffmpeg_filter.c
+++ b/fftools/ffmpeg_filter.c
@@ -892,16 +892,6 @@ static int configure_input_audio_filter(FilterGraph *fg, InputFilter *ifilter,
     last_filter = filt_ctx;                                                 \
 } while (0)
 
-    if (audio_sync_method > 0) {
-        char args[256] = {0};
-
-        av_strlcatf(args, sizeof(args), "async=%d", audio_sync_method);
-        av_strlcatf(args, sizeof(args), ":min_hard_comp=%f", audio_drift_threshold);
-        if (!fg->reconfiguration)
-            av_strlcatf(args, sizeof(args), ":first_pts=0");
-        AUTO_INSERT_FILTER_INPUT("-async", "aresample", args);
-    }
-
     snprintf(name, sizeof(name), "trim for input stream %d:%d",
              ist->file_index, ist->st->index);
     if (copy_ts) {
diff --git a/fftools/ffmpeg_mux.c b/fftools/ffmpeg_mux.c
index b781e1f5a6..395f7cc89f 100644
--- a/fftools/ffmpeg_mux.c
+++ b/fftools/ffmpeg_mux.c
@@ -102,8 +102,7 @@ static int write_packet(OutputFile *of, OutputStream *ost, AVPacket *pkt)
         goto fail;
     }
 
-    if ((st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && ost->vsync_method == VSYNC_DROP) ||
-        (st->codecpar->codec_type == AVMEDIA_TYPE_AUDIO && audio_sync_method < 0))
+    if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && ost->vsync_method == VSYNC_DROP)
         pkt->pts = pkt->dts = AV_NOPTS_VALUE;
 
     if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) {
diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c
index 5febe319e4..8f57b699f1 100644
--- a/fftools/ffmpeg_opt.c
+++ b/fftools/ffmpeg_opt.c
@@ -157,7 +157,6 @@ float audio_drift_threshold = 0.1;
 float dts_delta_threshold   = 10;
 float dts_error_threshold   = 3600*30;
 
-int audio_sync_method = 0;
 enum VideoSyncMethod video_sync_method = VSYNC_AUTO;
 float frame_drop_threshold = 0;
 int do_benchmark      = 0;
@@ -3910,8 +3909,6 @@ const OptionDef options[] = {
         "set video sync method globally; deprecated, use -fps_mode", "" },
     { "frame_drop_threshold", HAS_ARG | OPT_FLOAT | OPT_EXPERT,      { &frame_drop_threshold },
         "frame drop threshold", "" },
-    { "async",          HAS_ARG | OPT_INT | OPT_EXPERT,              { &audio_sync_method },
-        "audio sync method", "" },
     { "adrift_threshold", HAS_ARG | OPT_FLOAT | OPT_EXPERT,          { &audio_drift_threshold },
         "audio drift threshold", "threshold" },
     { "copyts",         OPT_BOOL | OPT_EXPERT,                       { &copy_ts },
-- 
2.35.1

_______________________________________________
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] 9+ messages in thread

end of thread, other threads:[~2022-09-28  9:59 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-28  9:55 [FFmpeg-devel] [PATCH 1/9] fftools/ffmpeg: drop the -async option Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 2/9] fftools/ffmpeg: drop always-true conditions Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 3/9] fftools/ffmpeg: move forced keyframe processing into its own function Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 4/9] fftools/ffmpeg: cosmetics Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 5/9] fftools/ffmpeg: drop never-set OutputStream.first_pts Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 6/9] fftools/ffmpeg: stop setting OutputStream.sync_opts for streamcopy Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 7/9] fftools/ffmpeg: pass the timestamp to check_recording_time() Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 8/9] fftools/ffmpeg: rename OutputStream.sync_opts to next_pts Anton Khirnov
2022-09-28  9:55 ` [FFmpeg-devel] [PATCH 9/9] fftools/ffmpeg: move some code from init_output_stream() to init_output_stream_encode() Anton Khirnov

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