summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Sabatini <stefasab@gmail.com>2012-03-24 16:11:46 +0100
committerStefano Sabatini <stefasab@gmail.com>2012-03-28 23:39:44 +0200
commit99bb88c588ea9a46a06b966b9014394385ebe1c3 (patch)
tree6ec03f0a320b15d35303ba55ee6eb8757669ebbb
parent247fbf071bb9d30f5341844a3d4ebbd53a986968 (diff)
downloadffmpeg-streaming-99bb88c588ea9a46a06b966b9014394385ebe1c3.zip
ffmpeg-streaming-99bb88c588ea9a46a06b966b9014394385ebe1c3.tar.gz
doc/ffmpeg: update and extend documentation for -copytb
Address trac ticket #1120.
-rw-r--r--doc/ffmpeg.texi26
-rw-r--r--ffmpeg.c2
2 files changed, 25 insertions, 3 deletions
diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 402a4ae..37c941e 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -765,8 +765,30 @@ the parameter is the maximum samples per second by which the audio is changed.
without any later correction.
@item -copyts
Copy timestamps from input to output.
-@item -copytb
-Copy input stream time base from input to output when stream copying.
+@item -copytb @var{mode}
+Specify how to set the encoder timebase when stream copying. @var{mode} is an
+integer numeric value, and can assume one of the following values:
+
+@table @option
+@item 1
+Use the demuxer timebase.
+
+The time base is copied to the output encoder from the corresponding input
+demuxer. This is sometimes required to avoid non monotonically increasing
+timestamps when copying video streams with variable frame rate.
+
+@item 0
+Use the decoder timebase.
+
+The time base is copied to the output encoder from the corresponding input
+decoder.
+
+@item -1
+Try to make the choice automatically, in order to generate a sane output.
+@end table
+
+Default value is -1.
+
@item -shortest
Finish encoding when the shortest input stream ends.
@item -dts_delta_threshold
diff --git a/ffmpeg.c b/ffmpeg.c
index d5e789e..72189f1 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -5072,7 +5072,7 @@ static const OptionDef options[] = {
{ "async", HAS_ARG | OPT_INT | OPT_EXPERT, {(void*)&audio_sync_method}, "audio sync method", "" },
{ "adrift_threshold", HAS_ARG | OPT_FLOAT | OPT_EXPERT, {(void*)&audio_drift_threshold}, "audio drift threshold", "threshold" },
{ "copyts", OPT_BOOL | OPT_EXPERT, {(void*)&copy_ts}, "copy timestamps" },
- { "copytb", HAS_ARG | OPT_INT | OPT_EXPERT, {(void*)&copy_tb}, "copy input stream time base when stream copying", "source" },
+ { "copytb", HAS_ARG | OPT_INT | OPT_EXPERT, {(void*)&copy_tb}, "copy input stream time base when stream copying", "mode" },
{ "shortest", OPT_BOOL | OPT_EXPERT, {(void*)&opt_shortest}, "finish encoding within shortest input" }, //
{ "dts_delta_threshold", HAS_ARG | OPT_FLOAT | OPT_EXPERT, {(void*)&dts_delta_threshold}, "timestamp discontinuity delta threshold", "threshold" },
{ "dts_error_threshold", HAS_ARG | OPT_FLOAT | OPT_EXPERT, {(void*)&dts_error_threshold}, "timestamp error delta threshold", "threshold" },
OpenPOWER on IntegriCloud