diff options
author | Edward Hervey <edward@centricular.com> | 2024-06-18 09:10:16 +0200 |
---|---|---|
committer | Backport Bot <gitlab-backport-bot@gstreamer-foundation.org> | 2024-06-18 19:03:31 +0100 |
commit | ef5fe0b33ba3bd07576833dba26837cc1af49db6 (patch) | |
tree | c2e48417e0b8ed5b17f04b43b02f8a90afe444fe | |
parent | aa5092dabff3e696f541b746dae3a4127cda6eda (diff) |
tsdemux: Fix maximum PCR/DTS values
* PTS/DTS are stored as 33 bit
* PCR is 33bit multiplied by 300
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7058>
-rw-r--r-- | subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtspacketizer.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtspacketizer.c b/subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtspacketizer.c index 882948d212..fdc7851dcd 100644 --- a/subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtspacketizer.c +++ b/subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtspacketizer.c @@ -31,10 +31,12 @@ /* Skew calculation pameters */ #define MAX_TIME (2 * GST_SECOND) -/* maximal PCR time */ -#define PCR_MAX_VALUE (((((guint64)1)<<33) * 300) + 298) +/* 90kHz maximum values, coded in 33bits */ +#define MAX_33BIT (((guint64)1) << 33) +#define PTS_DTS_MAX_VALUE (MAX_33BIT - 1) +/* maximal PCR time, 27Mhz, coded with additional 9bits */ +#define PCR_MAX_VALUE (MAX_33BIT * 300 - 1) #define PCR_GST_MAX_VALUE (PCR_MAX_VALUE * GST_MSECOND / (PCR_MSECOND)) -#define PTS_DTS_MAX_VALUE (((guint64)1) << 33) #include "mpegtspacketizer.h" #include "gstmpegdesc.h" |