From: Sebastian Dröge Date: Wed, 25 Jan 2012 12:22:43 +0000 (+0100) Subject: Merge branch 'master' into 0.11 X-Git-Tag: 1.19.3~507^2~15832 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a2a430024136fd947637ff56a4fea6a2689ca59d;p=platform%2Fupstream%2Fgstreamer.git Merge branch 'master' into 0.11 Conflicts: configure.ac ext/kate/gstkateenc.c gst/colorspace/colorspace.c gst/mpegvideoparse/mpegvideoparse.c --- a2a430024136fd947637ff56a4fea6a2689ca59d diff --cc configure.ac index 035cf19,a0f0c39..c90b7a2 --- a/configure.ac +++ b/configure.ac @@@ -208,9 -196,12 +210,11 @@@ AM_CONDITIONAL(HAVE_GST_CHECK, test "x$ AG_GST_CHECK_GST_PLUGINS_BASE($GST_MAJORMINOR, [$GSTPB_REQ], yes) dnl check for uninstalled plugin directories for unit tests - AG_GST_CHECK_GST_PLUGINS_GOOD($GST_MAJORMINOR, [0.11.0]) - AG_GST_CHECK_GST_PLUGINS_UGLY($GST_MAJORMINOR, [0.11.0]) - AG_GST_CHECK_GST_PLUGINS_FFMPEG($GST_MAJORMINOR, [0.11.0]) -dnl skip these checks for normal installed setups to avoid confusion + AG_GST_CHECK_UNINSTALLED_SETUP([ - AG_GST_CHECK_GST_PLUGINS_GOOD($GST_MAJORMINOR, [0.10.25]) - AG_GST_CHECK_GST_PLUGINS_UGLY($GST_MAJORMINOR, [0.10.16]) - AG_GST_CHECK_GST_PLUGINS_FFMPEG($GST_MAJORMINOR, [0.10.11]) ++ AG_GST_CHECK_GST_PLUGINS_GOOD($GST_MAJORMINOR, [0.11.0]) ++ AG_GST_CHECK_GST_PLUGINS_UGLY($GST_MAJORMINOR, [0.11.0]) ++ AG_GST_CHECK_GST_PLUGINS_FFMPEG($GST_MAJORMINOR, [0.11.0]) + ]) dnl Check for documentation xrefs GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`" diff --cc ext/kate/gstkateenc.c index 8ee8b69,8b782c6..450e8e6 --- a/ext/kate/gstkateenc.c +++ b/ext/kate/gstkateenc.c @@@ -924,33 -951,27 +924,32 @@@ gst_kate_enc_chain_text (GstKateEnc * k ("kate_encode_set_markup_type: %d", ret)); rflow = GST_FLOW_ERROR; } else { - char *text; - gsize text_len; - const char *text = (const char *) GST_BUFFER_DATA (buf); - size_t text_len = GST_BUFFER_SIZE (buf); ++ const char *text; ++ size_t text_len; ++ gboolean need_unmap = TRUE; + kate_float t0 = start / (double) GST_SECOND; + kate_float t1 = stop / (double) GST_SECOND; + text = gst_buffer_map (buf, &text_len, NULL, GST_MAP_READ); - if (text) { - kate_float t0 = start / (double) GST_SECOND; - kate_float t1 = stop / (double) GST_SECOND; - GST_LOG_OBJECT (ke, "Encoding text: %*.*s (%u bytes) from %f to %f", - (int) text_len, (int) text_len, text, text_len, t0, t1); - - ret = kate_encode_text (&ke->k, t0, t1, text, text_len, &kp); + if (text == NULL) { + text = ""; + text_len = 0; ++ need_unmap = FALSE; + } - if (G_UNLIKELY (ret < 0)) { - GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL), - ("Failed to encode text: %d", ret)); - rflow = GST_FLOW_ERROR; - } else { - rflow = - gst_kate_enc_chain_push_packet (ke, &kp, start, stop - start + 1); - } - } else { - /* FIXME: this should not be an error, we should ignore it and move on */ + GST_LOG_OBJECT (ke, "Encoding text: %*.*s (%u bytes) from %f to %f", + (int) text_len, (int) text_len, GST_BUFFER_DATA (buf), + GST_BUFFER_SIZE (buf), t0, t1); + ret = kate_encode_text (&ke->k, t0, t1, text, text_len, &kp); + if (G_UNLIKELY (ret < 0)) { GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL), - ("no text in text packet")); + ("Failed to encode text: %d", ret)); rflow = GST_FLOW_ERROR; + } else { + rflow = gst_kate_enc_chain_push_packet (ke, &kp, start, stop - start + 1); } - gst_buffer_unmap (buf, text, text_len); ++ if (need_unmap) ++ gst_buffer_unmap (buf, text, text_len); } return rflow; diff --cc ext/resindvd/resindvdbin.c index 5885b23,c1a29eb..8c2d94f --- a/ext/resindvd/resindvdbin.c +++ b/ext/resindvd/resindvdbin.c @@@ -699,9 -698,9 +698,9 @@@ demux_pad_added (GstElement * element, } else if (g_str_equal (gst_structure_get_name (s), "video/x-dvd-subpicture")) { dest_pad = gst_element_get_request_pad (dvdbin->pieces[DVD_ELEM_SPU_SELECT], - "sink%d"); + "sink_%u"); skip_mq = TRUE; - } else if (can_sink_caps (dvdbin->pieces[DVD_ELEM_AUDDEC], caps)) { + } else if (can_sink_caps (dvdbin->pieces[DVD_ELEM_AUD_MUNGE], caps)) { GST_LOG_OBJECT (dvdbin, "Found audio pad w/ caps %" GST_PTR_FORMAT, caps); dest_pad = gst_element_get_request_pad (dvdbin->pieces[DVD_ELEM_AUD_SELECT], diff --cc gst/mpegtsdemux/tsdemux.c index 4f51abd,0162ab9..2ed04c5 --- a/gst/mpegtsdemux/tsdemux.c +++ b/gst/mpegtsdemux/tsdemux.c @@@ -1048,8 -1043,9 +1048,9 @@@ create_pad_for_stream (MpegTSBase * bas GST_LOG ("subtitling"); template = gst_static_pad_template_get (&private_template); name = g_strdup_printf ("private_%04x", bstream->pid); - caps = gst_caps_new_simple ("subpicture/x-dvb", NULL); + caps = gst_caps_new_empty_simple ("subpicture/x-dvb"); g_free (desc); + break; } /* hack for itv hd (sid 10510, video pid 3401 */ if (program->program_number == 10510 && bstream->pid == 3401) {