diff options
Diffstat (limited to 'gst')
-rw-r--r-- | gst/aacparse/gstaacparse.c | 23 | ||||
-rw-r--r-- | gst/autoconvert/Makefile.am | 2 | ||||
-rw-r--r-- | gst/camerabin/Makefile.am | 2 | ||||
-rw-r--r-- | gst/dtmf/Makefile.am | 1 | ||||
-rw-r--r-- | gst/liveadder/Makefile.am | 1 | ||||
-rw-r--r-- | gst/mxf/Makefile.am | 1 | ||||
-rw-r--r-- | gst/nuvdemux/Makefile.am | 2 | ||||
-rw-r--r-- | gst/qtmux/Makefile.am | 1 | ||||
-rw-r--r-- | gst/qtmux/gstqtmux.c | 24 | ||||
-rw-r--r-- | gst/rtpmux/Makefile.am | 1 | ||||
-rw-r--r-- | gst/selector/gstinputselector.c | 18 | ||||
-rw-r--r-- | gst/siren/Makefile.am | 2 | ||||
-rw-r--r-- | gst/valve/Makefile.am | 2 |
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 + |