From ac9a2971bd7e9a54f4411ee5463eef406af46e88 Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Tue, 10 Nov 2015 17:58:58 +1100 Subject: [PATCH] tsdemux: provide our own definition of log2() The log2 function/macro doesn't exist when targetting android API < 18 (or MSVC < 2013) whereas our current baseline is API 9. --- gst/mpegtsdemux/tsdemux.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gst/mpegtsdemux/tsdemux.c b/gst/mpegtsdemux/tsdemux.c index 15cf2b8..6b14a4f 100644 --- a/gst/mpegtsdemux/tsdemux.c +++ b/gst/mpegtsdemux/tsdemux.c @@ -51,6 +51,8 @@ #include +#define _gst_log2(x) (log(x)/log(2)) + /* * tsdemux * @@ -1297,7 +1299,7 @@ create_pad_for_stream (MpegTSBase * base, MpegTSBaseStream * bstream, (&br, gst_byte_reader_get_remaining (&br)), gst_byte_reader_get_remaining (&br)); - stream_count_minus_one_len = ceil (log2 (channels)); + stream_count_minus_one_len = ceil (_gst_log2 (channels)); if (!gst_bit_reader_get_bits_uint8 (&breader, &stream_count_minus_one, stream_count_minus_one_len)) { @@ -1309,7 +1311,7 @@ create_pad_for_stream (MpegTSBase * base, MpegTSBaseStream * bstream, stream_count = stream_count_minus_one + 1; coupled_stream_count_len = - ceil (log2 (stream_count_minus_one + 2)); + ceil (_gst_log2 (stream_count_minus_one + 2)); if (!gst_bit_reader_get_bits_uint8 (&breader, &coupled_stream_count, coupled_stream_count_len)) { @@ -1322,7 +1324,7 @@ create_pad_for_stream (MpegTSBase * base, MpegTSBaseStream * bstream, coupled_count = coupled_stream_count; channel_mapping_len = - ceil (log2 (stream_count_minus_one + 1 + + ceil (_gst_log2 (stream_count_minus_one + 1 + coupled_stream_count + 1)); channel_mapping = g_new0 (guint8, channels); for (i = 0; i < channels; i++) { -- 2.7.4