Haakon Sporsheim [Mon, 4 Apr 2011 15:23:53 +0000 (17:23 +0200)]
tag: Remove constness to silence MS compiler.
https://bugzilla.gnome.org/show_bug.cgi?id=646744
Haakon Sporsheim [Mon, 4 Apr 2011 15:23:13 +0000 (17:23 +0200)]
tag: Explicit cast to GThreadFunc to silence MS compiler.
https://bugzilla.gnome.org/show_bug.cgi?id=646744
Stefan Kost [Mon, 4 Apr 2011 12:56:50 +0000 (15:56 +0300)]
Automatic update of common submodule
From 1ccbe09 to c3cafe1
Trond Andersen [Fri, 11 Mar 2011 09:41:11 +0000 (10:41 +0100)]
rtcpbuffer: fix invalid read in validation of padding in rtcp packet
Stian Johansen [Wed, 23 Feb 2011 09:55:12 +0000 (10:55 +0100)]
baseaudiosrc: Add src object lock around call to ringbuffer parse caps.
A race was observed between query() and setcaps() where the latter would
change the ringbuffer spec while the former was performing operations
based this data.
Havard Graff [Sat, 22 Jan 2011 22:09:32 +0000 (23:09 +0100)]
baseaudiosrc: protect against ringbuffer disappearing while in a query
Observed a case where the src went to null-state during the query,
hence the spec pointer was no longer valid, and
gst_util_unit64_scale_int crashed (assertion `denom > 0´failed)
Add locking to make sure the ringbuffer can't disappear.
Havard Graff [Tue, 8 Feb 2011 17:27:43 +0000 (18:27 +0100)]
baseaudiosink: don't allow aligning behind the read-segment
Given a large enough drift-tolerance, one could end up in a situation
where one would keep aligning the written buffers behind the current
read-segment position. The result for the reader would be complete
silence, possible preceded by very choppy audio.
By checking the available headroom, one can determine if there is
room to do alignment, or if one should resort to a resync instead to get
the pointers back on track.
Also refactor the alignment-logic out of the render function for cleaner
code.
David Schleef [Fri, 1 Apr 2011 20:55:26 +0000 (13:55 -0700)]
Remove setting of plugindir from Makefiles
David Schleef [Thu, 24 Mar 2011 06:10:51 +0000 (23:10 -0700)]
video: Fix height calculation for YUV9/YVU9
Josep Torra [Fri, 1 Apr 2011 13:34:30 +0000 (15:34 +0200)]
oggmux: fix warning building in mac os x
Josep Torra [Fri, 1 Apr 2011 13:33:42 +0000 (15:33 +0200)]
textoverlay: fix comparison is always false due to limited range of data type
Perform calculation in a temp var with enough room as there's guarantee that
ret will be able to hold the result for example in _blit_AYUV.
Sebastian Dröge [Fri, 1 Apr 2011 10:52:05 +0000 (12:52 +0200)]
vorbistag: Write GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE as METADATA_BLOCK_PICTURE
This is the official, standardized way of embedding images into
vorbiscomments now.
Sebastian Dröge [Fri, 1 Apr 2011 10:28:28 +0000 (12:28 +0200)]
vorbistag: Add support for METADATA_BLOCK_PICTURE tags
This is the official, standardized way of embedding pictures
inside vorbiscomments now. Parsing code taken from flacparse
and slightly changed.
Fixes bug #635669.
Sebastian Dröge [Fri, 1 Apr 2011 10:09:44 +0000 (12:09 +0200)]
vorbistag: Use g_base64_decode_inplace()
Instead of using the GLib base64 decoding functions manually to
do inplace base64 decoding. This makes the code easier to understand.
Sebastian Dröge [Fri, 1 Apr 2011 09:00:38 +0000 (11:00 +0200)]
oggmux: Store the segment directly inside the pad
Also initialize it always in TIME format. We require TIME segments
in oggmux anyway and drop newsegment events in other formats and
assume an open-ended segment starting at 0.
Sebastian Dröge [Fri, 1 Apr 2011 08:57:08 +0000 (10:57 +0200)]
oggmux: Reset the segment on flush-stop events and when going back to READY
Thiago Santos [Thu, 3 Mar 2011 11:45:15 +0000 (08:45 -0300)]
oggmux: Use running time instead of timestamps
Theora and vorbis use running time (which is correct) for calculating
the granulepos for their ogg packets. Oggmux, however, used
timestamps to order the received buffers.
This patch makes it use the running time to compare buffer times
and also to timestamp pushed buffers.
Some bits of the code still use timestamps, but they are only
used to calculate durations, so it should be fine.
https://bugzilla.gnome.org/show_bug.cgi?id=643775
Thiago Santos [Wed, 16 Feb 2011 19:07:49 +0000 (16:07 -0300)]
oggmux: Keep track of pad's segments
https://bugzilla.gnome.org/show_bug.cgi?id=643775
Sebastian Dröge [Fri, 1 Apr 2011 08:39:31 +0000 (10:39 +0200)]
textoverlay: Add support for xBGR and RGBx
Now all RGB variants are supported.
Lane Brooks [Tue, 18 Jan 2011 04:12:18 +0000 (21:12 -0700)]
textoverlay: Added support for ARGB and other RGB alpha variants
Lane Brooks [Tue, 11 Jan 2011 17:34:33 +0000 (10:34 -0700)]
textoverlay: converted AYUV to use 'A OVER B' alpha compositing
'A OVER B' compositing is explained at
http://en.wikipedia.org/wiki/Alpha_compositing.
Previously, overlaying text on a transparent background image left the
text overlay also transparent. This pipeline shows such an example:
gst-launch videotestsrc pattern=white ! video/x-raw-yuv,format=\(fourcc\)AYUV ! alpha alpha=0.0 ! textoverlay text=Testing auto-resize=False font-desc=60px ! videomixer ! ffmpegcolorspace ! autovideosink
With this patch, text is composited "OVER" the background image and
thus is visible regardless of the alpha of the background image. The
overlay in the above pipeline works after applying this patch.
Mark Nauwelaerts [Mon, 28 Mar 2011 20:00:25 +0000 (22:00 +0200)]
baseaudiosink: arrange for running clock when rendering eos
Commit
ba2e500bd992d8ad7db0da923801964964835967 ensured to provide
a running clock when EOS had finished rendering. However,
other measures are needed (and were in place before) to ensure a
running clock when EOS still needs rendering (i.e. waiting).
So, specifically, re-introduce eos_rendering removed in aforementioned commit,
this time as a public variable so subclasses can be aware of the situation.
Fixes (part of) #645961.
API: GstBaseAudioSink:eos_rendering
Edward Hervey [Thu, 31 Mar 2011 10:37:32 +0000 (12:37 +0200)]
tests: Fixes libsabi for MacOSX/32bit.
GStaticRecMutex is 60bytes on macosx/32bit (As opposed to 40).
Fixes #644996
Sebastian Dröge [Thu, 31 Mar 2011 08:38:43 +0000 (10:38 +0200)]
libsabi: Add structure sizes for x86-64
Tim-Philipp Müller [Wed, 9 Mar 2011 11:51:14 +0000 (11:51 +0000)]
libs: make sure gobject-introspection scanner calls gst_init()
Cherry-picked from 0.11, since it's the right thing to do (we
now silently rely on various _get_type() working without
gst_init() having been called).
Tim-Philipp Müller [Wed, 30 Mar 2011 19:57:32 +0000 (20:57 +0100)]
libs: replace 0.10 with @GST_MAJORMINOR@ in Makefile.am
For easier cherry-picking/merging later.
Tim-Philipp Müller [Wed, 30 Mar 2011 14:47:38 +0000 (15:47 +0100)]
tests: add typefind test for application/x-hls
To make sure we don't break detection when we add typefinding
for normal m3u8 playlists.
Tim-Philipp Müller [Wed, 30 Mar 2011 14:44:45 +0000 (15:44 +0100)]
typefindfunctions: rename type playlist/m3u8 to application/x-hls
We should keep playlist/m3u8 available for normal m3u8 playlists,
which we we'll likely support some day. Also, we probably don't
want this handled like other playlists, so application/* seems
more appropriate in this case, even if it's really just a playlist.
Sebastian Dröge [Wed, 30 Mar 2011 07:18:00 +0000 (09:18 +0200)]
typefind: Fix comment typo and add a link the the HTTP live streaming spec
Sebastian Dröge [Wed, 30 Mar 2011 07:12:25 +0000 (09:12 +0200)]
typefind: Use the DataScanCtx for the m3u8 typefinder
Andoni Morales Alastruey [Mon, 14 Feb 2011 18:05:09 +0000 (19:05 +0100)]
typefind: add m3u8 playlists
Thiago Santos [Mon, 21 Mar 2011 18:34:09 +0000 (15:34 -0300)]
tagxmpwriter: Add check tests
https://bugzilla.gnome.org/show_bug.cgi?id=645167
Thiago Santos [Thu, 17 Mar 2011 18:42:28 +0000 (15:42 -0300)]
tagxmpwriter: Adds a new GstTagXmpWriter interface
The GstTagXmpWriter interface is to be implemented on elements that
provide xmp serialization. It allows users to select which
xmp schemas should be used on serialization.
API: GstTagXmpWriter
https://bugzilla.gnome.org/show_bug.cgi?id=645167
Thiago Santos [Fri, 18 Mar 2011 12:28:23 +0000 (09:28 -0300)]
tag: xmp: Add function to list the available schemas
Adds a function to list the available schemas in our xmp lib
https://bugzilla.gnome.org/show_bug.cgi?id=645167
Sebastian Dröge [Tue, 29 Mar 2011 13:41:33 +0000 (15:41 +0200)]
encodebin: Requesting a pad again now gives a g_return_val_if_fail()
Before the behaviour was undefined and implemented differently by elements,
now core checks for this (and other problems) and returns NULL and an assertion.
Tim-Philipp Müller [Sat, 26 Mar 2011 19:36:50 +0000 (19:36 +0000)]
oggparse: fix list iteration code
Not that it really matters, but let's fix it before someone
notices and makes fun of us.
Tim-Philipp Müller [Sat, 26 Mar 2011 12:01:05 +0000 (12:01 +0000)]
tests: ignore new libsabi test binary
Tim-Philipp Müller [Sat, 26 Mar 2011 11:59:54 +0000 (11:59 +0000)]
oggparse: make sure buffer metadata is writable before setting caps on buffers
Sebastian Dröge [Fri, 25 Mar 2011 21:14:44 +0000 (22:14 +0100)]
Automatic update of common submodule
From 193b717 to 1ccbe09
Stefan Kost [Fri, 25 Mar 2011 12:55:52 +0000 (14:55 +0200)]
Automatic update of common submodule
From b77e2bf to 193b717
Stefan Kost [Fri, 25 Mar 2011 09:06:35 +0000 (11:06 +0200)]
docs: do xrefs for non installed books too
Get the xrefs from the builddir for the books in the same package. This fixes
the cross references if one does not have the docs already installed.
Robert Swain [Fri, 25 Feb 2011 15:46:29 +0000 (16:46 +0100)]
docs: Add an interlaced video design document
Sebastian Dröge [Fri, 25 Mar 2011 08:29:38 +0000 (09:29 +0100)]
Automatic update of common submodule
From d8814b6 to b77e2bf
Sebastian Dröge [Fri, 25 Mar 2011 08:03:13 +0000 (09:03 +0100)]
Automatic update of common submodule
From 6aaa286 to d8814b6
Stefan Kost [Thu, 24 Mar 2011 16:48:59 +0000 (18:48 +0200)]
Automatic update of common submodule
From 6aec6b9 to 6aaa286
Sebastian Dröge [Thu, 24 Mar 2011 13:22:00 +0000 (14:22 +0100)]
playsink: Update comment about why an audio queue is needed
Sebastian Dröge [Thu, 24 Mar 2011 13:21:01 +0000 (14:21 +0100)]
Revert "playsink: Only add a queue before the audio sink if visualizations are enabled"
This reverts commit
df886c0622257bb8635e5bd0fc7fc3da20bfc3be.
Sebastian Dröge [Thu, 24 Mar 2011 13:03:31 +0000 (14:03 +0100)]
playsink: Only add a queue before the audio sink if visualizations are enabled
The queue is not needed otherwise and will add some delay to track
switches.
Thiago Santos [Wed, 23 Mar 2011 15:42:04 +0000 (12:42 -0300)]
tests: video: Uncommenting test
Pushed a commented test by accident, uncommenting it.
Thiago Santos [Wed, 23 Mar 2011 15:02:42 +0000 (12:02 -0300)]
video: adds missing function to win32 def
Thiago Santos [Wed, 23 Mar 2011 15:02:35 +0000 (12:02 -0300)]
video: Getting component offsets without dimensions is fine if it is not YUV
This fixes a regression that an assertion would happen if
gst_video_get_component_offset would be called with width or
height as 0.
Calling it with 0 is fine if the format isn't yuv and this
was already being used in some other places of video.c
Thiago Santos [Wed, 23 Mar 2011 14:13:57 +0000 (11:13 -0300)]
tests: video: Add a test for checking rgb caps creation
This new test for checking rgb caps creation exposes a regression
Sebastian Dröge [Tue, 15 Mar 2011 13:45:03 +0000 (14:45 +0100)]
playsink: Remember automatically created sinks for future reconfigures
Also allow reuse of sink elements in error cases.
Sebastian Dröge [Wed, 16 Mar 2011 14:27:51 +0000 (15:27 +0100)]
playbin2: Check if an already existing sink supports the non-raw format too
Before we were assuming that a sink will always support all non-raw formats
in a single stream.
Arun Raghavan [Thu, 10 Mar 2011 13:34:51 +0000 (19:04 +0530)]
playbin2: Check if an element accepts requisite caps before selecting
In addition to ensuring that an element we want to select in
autoplug-select can enter the READY state, we also now check if it can
accept the caps we wish to plug it for. This is handy for sinks that
need to perform a probe to figure out whether they can actually handle a
given format.
Sebastian Dröge [Wed, 16 Mar 2011 14:56:34 +0000 (15:56 +0100)]
playbin2: Set sinks to READY before checking if it accept caps
Fixes bug #642732.
Sebastian Dröge [Wed, 16 Mar 2011 14:56:34 +0000 (15:56 +0100)]
playbin2: Always prefer the custom set sink and also set it back to NULL in all cases.
Sebastian Dröge [Thu, 17 Mar 2011 12:47:10 +0000 (13:47 +0100)]
playbin2: Only consider the audio/video sinks in autoplug_continue for the normal uridecodebin
Considering them for the subtitle uridecodebin will add audio/video
streams that might be in a file used as subtitle file.
David Schleef [Tue, 22 Mar 2011 18:59:40 +0000 (11:59 -0700)]
video: Add gst_video_format_new_template_caps()
Thiago Santos [Thu, 24 Feb 2011 11:42:34 +0000 (08:42 -0300)]
videoscale: Fix assertion on caps fixation
When fixating caps, from_par should always be initialized
with a fixed value.
In case the fixation is from src to sink pad it was setting
the from par (srcpad par) to a fraction range, this patch initializes
it to 1/1, based on the assumption that missing PAR is 1/1.
https://bugzilla.gnome.org/show_bug.cgi?id=641952
Luis de Bethencourt [Tue, 22 Mar 2011 11:44:49 +0000 (12:44 +0100)]
configure.ac: redundant use of AC_MSG_RESULT()
cleaned the redundant use of AC_MSG_RESULT() in configure.ac
Luis de Bethencourt [Fri, 18 Mar 2011 18:34:57 +0000 (19:34 +0100)]
autogen: wingo signed comment
Fraxinas [Mon, 21 Mar 2011 18:22:30 +0000 (19:22 +0100)]
encoding-profile: Fix syntax in Example: Creating a profile
https://bugzilla.gnome.org/show_bug.cgi?id=645437
Thiago Santos [Mon, 21 Mar 2011 21:33:03 +0000 (18:33 -0300)]
tag: xmp: Add missing schema creation
tiff schema entries were being added to the previous
schema (xap) because a new one wasn't being created
for it.
Olivier Crête [Fri, 18 Mar 2011 01:50:15 +0000 (21:50 -0400)]
rtpbuffer: Off-by-one error when creating RTP header extensions with a two-byte header
Mart Raudsepp [Wed, 16 Mar 2011 13:38:31 +0000 (15:38 +0200)]
textoverlay: Clean up alignment docs a bit and remove horiz top alignment enum
Mart Raudsepp [Mon, 7 Feb 2011 07:13:39 +0000 (09:13 +0200)]
check: Really fix the linking order of libs/tag
Follow-up to commit 5f5c52c, which only fixed the CFLAGS order.
Fix the linker order as well.
Tim-Philipp Müller [Wed, 16 Mar 2011 10:19:42 +0000 (10:19 +0000)]
uridecodebin: post proper error message if decodebin2/typefind elements are missing
Post better error messages in case typefind/decodebin2 are missing or
could not be loaded for some reason (e.g. because they inadvertently
got blacklisted).
https://bugzilla.gnome.org/show_bug.cgi?id=644892
Blaise Gassend [Tue, 15 Mar 2011 18:47:11 +0000 (19:47 +0100)]
alsamixer: Store return values of poll functions in a signed integer
Negative return values are used for errors and storing
them in an unsigned integer will make it impossible to
detect the errors.
Fixes bug #644845.
Sebastian Dröge [Mon, 14 Mar 2011 18:42:49 +0000 (19:42 +0100)]
oggmux: Increase the seen header packets count when seeing a header packet
This fixes muxing of Speex content and possibly other formats where the
header detection works by counting the packets.
Fixes bug #644745.
Tim-Philipp Müller [Mon, 14 Mar 2011 18:35:27 +0000 (18:35 +0000)]
typefinding: add depth and endianness to DTS caps
https://bugzilla.gnome.org/show_bug.cgi?id=644208
Stefan Kost [Mon, 14 Mar 2011 09:14:04 +0000 (11:14 +0200)]
textoverlay: use a class wide mutex to work around pango reentrance issues
Pango is not reentrant. Use a class wide mutex to protect pange use in
gst_text_overlay_render_pangocairo(). This works reliable in contrast to the
hack in my previous commit.
Fixes Bug #412678
Stefan Kost [Mon, 14 Mar 2011 09:12:53 +0000 (11:12 +0200)]
Revert "textoverlay: add a hack to init the pango engine"
This reverts commit
fee3266056b522cdd34e606b5682553d35eec5a1.
Stefan Kost [Mon, 14 Mar 2011 08:09:35 +0000 (10:09 +0200)]
plaback: trim trailing whitespace
Stefan Kost [Mon, 14 Mar 2011 08:05:34 +0000 (10:05 +0200)]
decodebin2: reflow configuring new multiqueue instance
Use a single g_object_set to configure the new multiqueue instance. Also don't
needlessly set "use-buffering" if it is the default.
Stefan Kost [Fri, 4 Mar 2011 12:52:01 +0000 (14:52 +0200)]
textoverlay: drop trailing whitespaces
Stefan Kost [Fri, 4 Mar 2011 12:52:28 +0000 (14:52 +0200)]
textoverlay: add a hack to init the pango engine
Layout a single char to pre-create all resources.
Tim-Philipp Müller [Sat, 12 Mar 2011 17:51:41 +0000 (17:51 +0000)]
tests: add libscpp unit test to make sure g++ likes our library headers
Thiago Santos [Thu, 10 Mar 2011 17:22:38 +0000 (14:22 -0300)]
tests: encodebin: Add reuse test case
Adds a test case to check if encodebin can be reused
https://bugzilla.gnome.org/show_bug.cgi?id=644416
Thiago Santos [Thu, 10 Mar 2011 17:38:47 +0000 (14:38 -0300)]
encodebin: Tear down old profiles when setting new ones
In NULL/READY, we should be able to switch profiles on encodebin,
this patch makes it tear down old profiles when new ones are set
if in NULL/READY states
https://bugzilla.gnome.org/show_bug.cgi?id=644416
Andoni Morales Alastruey [Fri, 22 Oct 2010 12:01:26 +0000 (14:01 +0200)]
multifdsink: disconnect inactive clients in the select loop too
Clients are usually disconnected in the streaming thread if their inactivity
is bigger than the timeout. If no new buffers are to be rendered in the sink,
these clients will never be disconnected and for that reason it should be
handled in the select() loop too.
Arun Raghavan [Wed, 3 Nov 2010 09:07:07 +0000 (14:37 +0530)]
discoverer: Don't wait for subtitle streams to preroll
Subtitle streams being parse can cause the pipeline to wait indefinitely
to PREROLL. This makes subtitle streams got to PAUSED even if no data is
available. This should not be a cause for concern as we don't expect to
get much data for subtitle streams other than language tags from the
container.
https://bugzilla.gnome.org/show_bug.cgi?id=632291
Mark Nauwelaerts [Thu, 3 Mar 2011 18:14:38 +0000 (19:14 +0100)]
baseaudiosink: start ringbuffer upon going to PLAYING and already EOS
... otherwise we may end up without running clock in PLAYING.
Fixes #636886.
Stefan Kost [Fri, 4 Mar 2011 12:39:45 +0000 (14:39 +0200)]
playbin2: set several properties in one go
g_object_set is a varargs function. Save 7 g_obvject_calls (and the overhead of
them) by using it accordingly.
Tim-Philipp Müller [Wed, 2 Mar 2011 15:38:01 +0000 (15:38 +0000)]
typefindfunctions: fix compiler warning on 32-bit systems
Mark 64-bit interger constant as such to avoid warnings such as:
gsttypefindfunctions.c:2152: error: integer constant is too large for ‘long’ type
Mark Nauwelaerts [Mon, 28 Feb 2011 17:52:47 +0000 (18:52 +0100)]
configure.ac: export plugin description more platform independent
Fixes #642504.
Mark Nauwelaerts [Mon, 28 Feb 2011 17:32:33 +0000 (18:32 +0100)]
Automatic update of common submodule
From 1de7f6a to 6aec6b9
Stefan Kost [Mon, 28 Feb 2011 08:10:22 +0000 (10:10 +0200)]
tests: add ABI test suite for libs
Sebastian Dröge [Sun, 27 Feb 2011 08:32:55 +0000 (09:32 +0100)]
decodebin2: Only prevent to autoplug the same parser multiple times for the same chain
Parsers are the only element class that are not changing the data and
could lead to an infinite loop. Other element classes like demuxers,
e.g. id3demux, can be used multiple times in a row and sometimes are.
Sebastian Dröge [Sat, 26 Feb 2011 22:43:39 +0000 (23:43 +0100)]
decodebin2: Break the double-factory checking loop immediately if the factory was used already
Sebastian Dröge [Sat, 26 Feb 2011 22:39:03 +0000 (23:39 +0100)]
decodebin2: Don't use the same element multiple times in the same chain
This is going to lead to an infinite loop of this element and can easily
happen with parsers that accept their own src caps on the sinkpad.
Sebastian Dröge [Sat, 26 Feb 2011 22:20:42 +0000 (23:20 +0100)]
decodebin2: Improve detection of raw caps in expose-all-streams=false mode
Previously we only checked against the raw caps but we should also
check against the return value of autoplug-continue. Additionally fix
a thread-safety issue with accessing the raw caps.
David Schleef [Sat, 26 Feb 2011 03:37:07 +0000 (19:37 -0800)]
video: Add support for r210
Robert Swain [Mon, 3 Jan 2011 10:41:56 +0000 (11:41 +0100)]
gstvideo: Add GST_VIDEO_BUFFER_PROGRESSIVE flag
Maps to GST_BUFFER_FLAG_MEDIA4. The purpose is to explicitly indicate
whether a telecined buffer is progressive or not without having to make
assumptions based on previous buffers.
Sebastian Dröge [Thu, 24 Feb 2011 19:59:48 +0000 (20:59 +0100)]
encodebin: Fix double unref in unit test
Tim-Philipp Müller [Tue, 22 Feb 2011 14:54:55 +0000 (14:54 +0000)]
checks: add a simple unit test for the source-setup signal
Tim-Philipp Müller [Tue, 22 Feb 2011 12:56:48 +0000 (12:56 +0000)]
playbin2, uridecodebin: add "source-setup" signal
Add "source-setup" signal for convenience and discoverability. No need
to figure out "notify::source", look up the notify callback signature,
then do an g_object_get() to get the source element..
https://bugzilla.gnome.org/show_bug.cgi?id=626152
Sebastian Dröge [Thu, 24 Feb 2011 15:22:53 +0000 (16:22 +0100)]
oggmux: Don't handle GstCollectData as GstObject, use the pad instead
Sebastian Dröge [Thu, 24 Feb 2011 15:02:50 +0000 (16:02 +0100)]
encodebin: Fix memory leaks related to request pads
Request pads have to be released by the caller and must be
unreffed after releasing them.
Sebastian Dröge [Thu, 24 Feb 2011 14:55:00 +0000 (15:55 +0100)]
encodebin: Return a new reference of the pad for the "request-pad" signal
The GObject signal code assumes that the signal handlers return a
new reference or copy. Fixes bug #641927.