aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2012-07-28 12:57:05 -0400
committerJustin Ruggles <justin.ruggles@gmail.com>2012-07-29 14:31:54 -0400
commit70d71b58018e640a09a4d919993766a2050cef8d (patch)
tree7f316a550a9edd986013fc25225d94275748540f
parent41f43202cf7648522b4ce0ed7bbb326655dbb9bc (diff)
downloadffmpeg-70d71b58018e640a09a4d919993766a2050cef8d.tar.gz
af_asyncts: add first_pts option
This allows for padding/trimming at the start of stream. By default, no assumption is made about the first frame's expected pts, so no padding or trimming is done.
-rw-r--r--doc/filters.texi7
-rw-r--r--libavfilter/af_asyncts.c3
2 files changed, 8 insertions, 2 deletions
diff --git a/doc/filters.texi b/doc/filters.texi
index d3543b39c0..58a690309a 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -205,6 +205,13 @@ adding/dropping samples.
@item max_comp
Maximum compensation in samples per second.
+@item first_pts
+Assume the first pts should be this value.
+This allows for padding/trimming at the start of stream. By default, no
+assumption is made about the first frame's expected pts, so no padding or
+trimming is done. For example, this could be set to 0 to pad the beginning with
+silence if an audio stream starts after the video stream.
+
@end table
@section channelsplit
diff --git a/libavfilter/af_asyncts.c b/libavfilter/af_asyncts.c
index 4052fbdce7..5a12a6f6da 100644
--- a/libavfilter/af_asyncts.c
+++ b/libavfilter/af_asyncts.c
@@ -49,6 +49,7 @@ static const AVOption options[] = {
{ "min_delta", "Minimum difference between timestamps and audio data "
"(in seconds) to trigger padding/trimmin the data.", OFFSET(min_delta_sec), AV_OPT_TYPE_FLOAT, { 0.1 }, 0, INT_MAX, A },
{ "max_comp", "Maximum compensation in samples per second.", OFFSET(max_comp), AV_OPT_TYPE_INT, { 500 }, 0, INT_MAX, A },
+ { "first_pts", "Assume the first pts should be this value.", OFFSET(pts), AV_OPT_TYPE_INT64, { AV_NOPTS_VALUE }, INT64_MIN, INT64_MAX, A },
{ NULL },
};
@@ -73,8 +74,6 @@ static int init(AVFilterContext *ctx, const char *args)
}
av_opt_free(s);
- s->pts = AV_NOPTS_VALUE;
-
return 0;
}