aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/avfilter.h
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2010-10-10 22:26:14 +0000
committerStefano Sabatini <stefano.sabatini-lala@poste.it>2010-10-10 22:26:14 +0000
commit867ae7aa5d545414e7f42337479c8b6fd85db28f (patch)
tree4e154b35449e830f7cad079b14ae4ddac8add1f0 /libavfilter/avfilter.h
parentd256d21e3fcef89251ee3140b24d14a034a8219d (diff)
downloadffmpeg-867ae7aa5d545414e7f42337479c8b6fd85db28f.tar.gz
Add a time_base field to AVFilterLink.
This is required for allowing a filter to use a time base different from AV_TIME_BASE_Q, as it was previously assumed. Originally committed as revision 25441 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavfilter/avfilter.h')
-rw-r--r--libavfilter/avfilter.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index 20901a3ef2..e1b093a81f 100644
--- a/libavfilter/avfilter.h
+++ b/libavfilter/avfilter.h
@@ -25,7 +25,7 @@
#include "libavutil/avutil.h"
#define LIBAVFILTER_VERSION_MAJOR 1
-#define LIBAVFILTER_VERSION_MINOR 48
+#define LIBAVFILTER_VERSION_MINOR 49
#define LIBAVFILTER_VERSION_MICRO 0
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
@@ -127,7 +127,12 @@ typedef struct AVFilterBufferRef {
int linesize[8]; ///< number of bytes per line
int format; ///< media format
- int64_t pts; ///< presentation timestamp in units of 1/AV_TIME_BASE
+ /**
+ * presentation timestamp. The time unit may change during
+ * filtering, as it is specified in the link and the filter code
+ * may need to rescale the PTS accordingly.
+ */
+ int64_t pts;
int64_t pos; ///< byte position in stream, -1 if unknown
int perms; ///< permissions, see the AV_PERM_* flags
@@ -598,6 +603,15 @@ struct AVFilterLink {
AVFilterBufferRef *cur_buf;
AVFilterBufferRef *out_buf;
+
+ /**
+ * Define the time base used by the PTS of the frames/samples
+ * which will pass through this link.
+ * During the configuration stage, each filter is supposed to
+ * change only the output timebase, while the timebase of the
+ * input link is assumed to be an unchangeable property.
+ */
+ AVRational time_base;
};
/**