summaryrefslogtreecommitdiffstats
path: root/gst
diff options
context:
space:
mode:
Diffstat (limited to 'gst')
-rw-r--r--gst/aacparse/gstaacparse.c23
-rw-r--r--gst/autoconvert/Makefile.am2
-rw-r--r--gst/camerabin/Makefile.am2
-rw-r--r--gst/dtmf/Makefile.am1
-rw-r--r--gst/liveadder/Makefile.am1
-rw-r--r--gst/mxf/Makefile.am1
-rw-r--r--gst/nuvdemux/Makefile.am2
-rw-r--r--gst/qtmux/Makefile.am1
-rw-r--r--gst/qtmux/gstqtmux.c24
-rw-r--r--gst/rtpmux/Makefile.am1
-rw-r--r--gst/selector/gstinputselector.c18
-rw-r--r--gst/siren/Makefile.am2
-rw-r--r--gst/valve/Makefile.am2
13 files changed, 61 insertions, 19 deletions
diff --git a/gst/aacparse/gstaacparse.c b/gst/aacparse/gstaacparse.c
index fdbcfb56..c9ad0b5f 100644
--- a/gst/aacparse/gstaacparse.c
+++ b/gst/aacparse/gstaacparse.c
@@ -585,7 +585,6 @@ gst_aacparse_check_valid_frame (GstBaseParse * parse,
{
const guint8 *data;
GstAacParse *aacparse;
- guint needed_data = 1024;
gboolean ret = FALSE;
aacparse = GST_AACPARSE (parse);
@@ -601,22 +600,30 @@ gst_aacparse_check_valid_frame (GstBaseParse * parse,
/* There is nothing to parse */
*framesize = GST_BUFFER_SIZE (buffer);
ret = TRUE;
- }
- else if (aacparse->header_type == DSPAAC_HEADER_NOT_PARSED ||
+ } else if (aacparse->header_type == DSPAAC_HEADER_NOT_PARSED ||
aacparse->sync == FALSE) {
+
ret = gst_aacparse_detect_stream (aacparse, data, GST_BUFFER_SIZE (buffer),
framesize, skipsize);
+
} else if (aacparse->header_type == DSPAAC_HEADER_ADTS) {
+ guint needed_data = 1024;
+
ret = gst_aacparse_check_adts_frame (aacparse, data,
GST_BUFFER_SIZE (buffer), framesize, &needed_data);
- }
- if (!ret) {
- /* Increase the block size, we want to find the header by ourselves */
- GST_DEBUG ("buffer didn't contain valid frame, skip = %d", *skipsize);
- gst_base_parse_set_min_frame_size (GST_BASE_PARSE (aacparse), needed_data);
+ if (!ret) {
+ GST_DEBUG ("buffer didn't contain valid frame");
+ gst_base_parse_set_min_frame_size (GST_BASE_PARSE (aacparse),
+ needed_data);
+ }
+
+ } else {
+ GST_DEBUG ("buffer didn't contain valid frame");
+ gst_base_parse_set_min_frame_size (GST_BASE_PARSE (aacparse), 1024);
}
+
return ret;
}
diff --git a/gst/autoconvert/Makefile.am b/gst/autoconvert/Makefile.am
index 5c799bde..22e8a676 100644
--- a/gst/autoconvert/Makefile.am
+++ b/gst/autoconvert/Makefile.am
@@ -5,3 +5,5 @@ libgstautoconvert_la_SOURCES = gstautoconvert.c gstautoconvert.h
libgstautoconvert_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS)
libgstautoconvert_la_LIBADD = $(GST_LIBS_LIBS)
libgstautoconvert_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS)
+libgstautoconvert_la_LIBTOOLFLAGS = --tag=disable-static
+
diff --git a/gst/camerabin/Makefile.am b/gst/camerabin/Makefile.am
index 1f060b78..3691af85 100644
--- a/gst/camerabin/Makefile.am
+++ b/gst/camerabin/Makefile.am
@@ -30,7 +30,7 @@ libgstcamerabin_la_LIBADD = \
$(top_builddir)/gst-libs/gst/interfaces/libgstphotography-$(GST_MAJORMINOR).la
libgstcamerabin_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-libgstcamerabin__la_LIBTOOLFLAGS = --tag=disable-static
+libgstcamerabin_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = gstcamerabin.h \
gstcamerabinxoverlay.h \
diff --git a/gst/dtmf/Makefile.am b/gst/dtmf/Makefile.am
index c96a3a41..3bdabbb4 100644
--- a/gst/dtmf/Makefile.am
+++ b/gst/dtmf/Makefile.am
@@ -13,4 +13,5 @@ noinst_HEADERS = gstdtmfsrc.h \
libgstdtmf_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS) -DEXTERN_BUF -DRTP_SUPPORT
libgstdtmf_la_LIBADD = $(GST_LIBS_LIBS) -lm
libgstdtmf_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstrtp-@GST_MAJORMINOR@
+libgstdtmf_la_LIBTOOLFLAGS = --tag=disable-static
diff --git a/gst/liveadder/Makefile.am b/gst/liveadder/Makefile.am
index 3db27f48..e2783332 100644
--- a/gst/liveadder/Makefile.am
+++ b/gst/liveadder/Makefile.am
@@ -4,5 +4,6 @@ libgstliveadder_la_SOURCES = liveadder.c
libgstliveadder_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS)
libgstliveadder_la_LIBADD = $(GST_LIBS_LIBS)
libgstliveadder_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstaudio-0.10
+libgstliveadder_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = liveadder.h
diff --git a/gst/mxf/Makefile.am b/gst/mxf/Makefile.am
index 617ab685..96534c4b 100644
--- a/gst/mxf/Makefile.am
+++ b/gst/mxf/Makefile.am
@@ -23,6 +23,7 @@ libgstmxf_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS
libgstmxf_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) \
-lgstvideo-@GST_MAJORMINOR@
libgstmxf_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstmxf_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = \
mxfquark.h \
diff --git a/gst/nuvdemux/Makefile.am b/gst/nuvdemux/Makefile.am
index 9a5b7e53..ef19fb63 100644
--- a/gst/nuvdemux/Makefile.am
+++ b/gst/nuvdemux/Makefile.am
@@ -5,6 +5,6 @@ libgstnuvdemux_la_CFLAGS = ${GST_CFLAGS}
libgstnuvdemux_la_LIBADD = $(GST_BASE_LIBS)
libgstnuvdemux_la_LDFLAGS = ${GST_PLUGIN_LDFLAGS}
libgstnuvdemux_la_SOURCES = gstnuvdemux.c
-libgstnuvdemuxla_LIBTOOLFLAGS = --tag=disable-static
+libgstnuvdemux_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = gstnuvdemux.h
diff --git a/gst/qtmux/Makefile.am b/gst/qtmux/Makefile.am
index e93ff67b..6bf65577 100644
--- a/gst/qtmux/Makefile.am
+++ b/gst/qtmux/Makefile.am
@@ -14,6 +14,7 @@ libgstqtmux_la_SOURCES = gstqtmux.c \
libgstqtmux_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS)
libgstqtmux_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS)
libgstqtmux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+libgstqtmux_la_LIBTOOLFLAGS = --tag=disable-static
# headers we need but don't want installed
noinst_HEADERS = gstqtmux.h \
diff --git a/gst/qtmux/gstqtmux.c b/gst/qtmux/gstqtmux.c
index c3ac67fb..4b4344b0 100644
--- a/gst/qtmux/gstqtmux.c
+++ b/gst/qtmux/gstqtmux.c
@@ -75,6 +75,19 @@
#include <gst/gst.h>
#include <gst/base/gstcollectpads.h>
+#include <sys/types.h>
+#ifdef G_OS_WIN32
+#include <io.h> /* lseek, open, close, read */
+#undef lseek
+#define lseek _lseeki64
+#undef off_t
+#define off_t guint64
+#endif
+
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
#include "gstqtmux.h"
GST_DEBUG_CATEGORY_STATIC (gst_qt_mux_debug);
@@ -603,8 +616,17 @@ gst_qt_mux_send_buffered_data (GstQTMux * qtmux, guint64 * offset)
if (fflush (qtmux->fast_start_file))
goto flush_failed;
- if (fseek (qtmux->fast_start_file, 0, SEEK_SET))
+#ifdef HAVE_FSEEKO
+ if (fseeko (qtmux->fast_start_file, (off_t) 0, SEEK_SET) != 0)
goto seek_failed;
+#elif defined (G_OS_UNIX) || defined (G_OS_WIN32)
+ if (lseek (fileno (qtmux->fast_start_file), (off_t) 0,
+ SEEK_SET) == (off_t) - 1)
+ goto seek_failed;
+#else
+ if (fseek (qtmux->fast_start_file, (long) 0, SEEK_SET) != 0)
+ goto seek_failed;
+#endif
/* hm, this could all take a really really long time,
* but there may not be another way to get moov atom first
diff --git a/gst/rtpmux/Makefile.am b/gst/rtpmux/Makefile.am
index be9bc080..17447ba6 100644
--- a/gst/rtpmux/Makefile.am
+++ b/gst/rtpmux/Makefile.am
@@ -5,6 +5,7 @@ libgstrtpmux_la_SOURCES = gstrtpmuxer.c gstrtpmux.c gstrtpdtmfmux.c
libgstrtpmux_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS) -DEXTERN_BUF -DRTP_SUPPORT
libgstrtpmux_la_LIBADD = $(GST_LIBS_LIBS)
libgstrtpmux_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) -lgstrtp-@GST_MAJORMINOR@
+libgstrtpmux_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = gstrtpmux.h gstrtpdtmfmux.h
diff --git a/gst/selector/gstinputselector.c b/gst/selector/gstinputselector.c
index ec1ae542..7a458b0f 100644
--- a/gst/selector/gstinputselector.c
+++ b/gst/selector/gstinputselector.c
@@ -402,16 +402,18 @@ gst_selector_pad_event (GstPad * pad, GstEvent * event)
}
case GST_EVENT_TAG:
{
- GstTagList *tags;
+ GstTagList *tags, *oldtags, *newtags;
- GST_OBJECT_LOCK (selpad);
- if (selpad->tags)
- gst_tag_list_free (selpad->tags);
gst_event_parse_tag (event, &tags);
- if (tags)
- tags = gst_tag_list_copy (tags);
- selpad->tags = tags;
- GST_DEBUG_OBJECT (pad, "received tags %" GST_PTR_FORMAT, selpad->tags);
+
+ GST_OBJECT_LOCK (selpad);
+ oldtags = selpad->tags;
+
+ newtags = gst_tag_list_merge (oldtags, tags, GST_TAG_MERGE_REPLACE);
+ selpad->tags = newtags;
+ if (oldtags)
+ gst_tag_list_free (oldtags);
+ GST_DEBUG_OBJECT (pad, "received tags %" GST_PTR_FORMAT, newtags);
GST_OBJECT_UNLOCK (selpad);
break;
}
diff --git a/gst/siren/Makefile.am b/gst/siren/Makefile.am
index 1d81b3ff..56b6a3de 100644
--- a/gst/siren/Makefile.am
+++ b/gst/siren/Makefile.am
@@ -12,3 +12,5 @@ libgstsiren_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS)
libgstsiren_la_LIBADD = $(GST_LIBS_LIBS) $(GST_BASE_LIBS) \
-lgstrtp-@GST_MAJORMINOR@ -lm
libgstsiren_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS)
+libgstsiren_la_LIBTOOLFLAGS = --tag=disable-static
+
diff --git a/gst/valve/Makefile.am b/gst/valve/Makefile.am
index 0e78b5ac..09ffadf2 100644
--- a/gst/valve/Makefile.am
+++ b/gst/valve/Makefile.am
@@ -5,3 +5,5 @@ libgstvalve_la_SOURCES = gstvalve.c gstvalve.h
libgstvalve_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS)
libgstvalve_la_LIBADD = $(GST_LIBS_LIBS)
libgstvalve_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS)
+libgstvalve_la_LIBTOOLFLAGS = --tag=disable-static
+