Mark Nauwelaerts
5b4dc02523
audioencoder: add some properties to tweak baseclass behaviour
...
... so subclass can also rely upon never being bothered with less data
than it desires or with some NULL buffer it can't do any interesting with.
2012-02-16 12:35:51 +01:00
Mark Nauwelaerts
95306e8fef
audiodecoder: assert some more that subclass parsed frame has proper len
2012-02-16 12:35:40 +01:00
Wim Taymans
c7d0fb556f
audiodecoder: chain up to parent for defaults
...
Chain up to the parent instead of using the FALSE return value from
the event function (because it's otherwise impossible to return an error).
2012-02-15 13:42:19 +01:00
Wim Taymans
b2fbb2e587
audiodecoder: call default event handler
...
Call the default event handler for unknown events.
2012-02-15 13:03:59 +01:00
Wim Taymans
fbf0b4b6cc
tagdemux: refactor the tag find function
...
Move the code to find the tags and to typefind the data into a separate
function. Call this function from the loop function.
2012-02-15 12:29:12 +01:00
Wim Taymans
8dd93b897f
tagdemux: don't to data processing in state change
...
Start a task to perform the pulling and typefind of the tags.
2012-02-15 10:12:55 +01:00
Tim-Philipp Müller
e40ea30972
discoverer: try harder to obtain a duration if we don't get one right away
...
If we don't get a duration right away, set the pipeline to playing
and sleep a bit, then try again. This is ugly, but the least worst
we can do right now. The alternative would be to make parsers etc.
return some bogus duration estimate even after only having pushed
a single frame, for example.
Fixes discoverer showing 0 durations for some mp3 and aac files
(e.g. soweto-adts.aac).
2012-02-14 19:36:43 +00:00
Wim Taymans
ee2c699016
tagdemux: fix src query handler
...
We don't want to blindly forward all queries.
2012-02-14 13:25:25 +01:00
Wim Taymans
6c51a80f6f
videometa: adjust for memory api change
2012-02-13 18:12:01 +01:00
Tim-Philipp Müller
06ea77710a
tag: make GstTagMux base class a bit more functional
...
We can't use G_DEFINE_*TYPE here because we need the klass in the _init
method to get to the padtemplates. Fixes 'GstTagDemux subclass GstTagDemux
did not set up a {sink,src} pad template' warnings.
2012-02-12 16:54:56 +00:00
Wim Taymans
e615e4c2cf
video: add performance log for frame copy
2012-02-09 16:03:35 +01:00
Wim Taymans
f31d5d7505
debug: add some performance debug
2012-02-09 15:28:54 +01:00
Wim Taymans
a75e9102c5
GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING
2012-02-08 15:17:49 +01:00
Tim-Philipp Müller
bd4bf43171
rtsp: make g-ir-scanner include Gio-2.0 to suppress complaints about GSocket etc.
2012-02-07 23:42:48 +00:00
Mark Nauwelaerts
97d60612a4
audiodecoder: remove stray obsolete declaration
2012-02-06 22:10:28 +01:00
Mark Nauwelaerts
2bf1a4428e
audio: correctly fill in fallback channel positions in stereo case
2012-02-06 22:10:28 +01:00
Wim Taymans
bfa00d0996
video: mark endianness correctly
2012-02-06 18:33:59 +01:00
Wim Taymans
774f80d49c
tagdemux: push event in the right direction
...
Push the stored events in the right direction
2012-02-06 15:54:34 +01:00
Tim-Philipp Müller
8c9639d1e3
tag: fix up define that tells code where to find the license translations too
...
Tell code about new location of translation dict.
2012-02-06 13:49:12 +00:00
Wim Taymans
6c08f53416
audiofilter: configure info after calling vmethod
...
First call the vmethod and then configure the audioinfo in the baseclass. This
allows subclasses to know about the old format.
2012-02-06 13:23:26 +01:00
Wim Taymans
0c5755730b
videofilter: take care of in_place transform
...
If the subclass doesn't implement a transform_frame function we need to force
the baseclass into in_place transform.
2012-02-06 13:23:25 +01:00
Sebastian Dröge
e4501ce1be
tag: Install license translations into $(pkgdatadir)/0.11
...
This prevents file conflicts with GStreamer 0.10.
2012-02-06 11:45:16 +01:00
Mark Nauwelaerts
fa63d7181d
video: add GST_VIDEO_INFO_COMP_BITS
2012-02-06 10:52:01 +01:00
Sebastian Dröge
103c59af24
video: Add GST_VIDEO_INFO_COMP_WIDTH
2012-02-06 09:53:22 +01:00
Wim Taymans
fe3e9b90dd
audioencoder: don't unref caps parameter
...
Fix refcounting on incomming caps to make sure we don't unref it too much.
2012-02-03 09:51:00 +01:00
Tim-Philipp Müller
24749aa2db
discoverer: mark GError argument of "discovered" signal with STATIC_SCOPE
...
So the error is passed to the callback as is without a copy being made.
2012-02-01 19:34:22 +00:00
Sebastian Dröge
1cb4029d00
audioencoder: gst_pad_get_pad_template_caps() now returns a new reference, don't forget to unref
2012-02-01 16:33:30 +01:00
Sebastian Dröge
5aa6748151
audio{enc,dec}oder: Check if srcpad caps are a subset of the template caps
2012-02-01 16:32:53 +01:00
Sebastian Dröge
0370b0dc12
audioencoder: Add gst_audio_encoder_set_output_format() function for consistency
2012-02-01 16:27:47 +01:00
Sebastian Dröge
dbd43c7dd3
audiodecoder: Rename set_outcaps() to set_output_format() and take a GstAudioInfo as parameter
2012-02-01 16:27:47 +01:00
George Kiagiadakis
1251fb3fc0
video: Use host endianness when generating caps for 16-bit rgb formats
...
This is necessary in order to match what the caps strings in
video.h contain for 16-bit rgb formats and also to match how
gst_video_format_parse_caps expects them.
https://bugzilla.gnome.org/show_bug.cgi?id=667681
2012-01-30 15:56:44 +00:00
Wim Taymans
fa400c372b
videopool: update for allocator api update
2012-01-30 13:10:40 +01:00
Olivier Crête
e391118125
Use macros to register boxed types thread safely
2012-01-28 14:53:21 +00:00
Olivier Crête
cb044668d3
rtcpbuffer: Set the map.size to the current size of the RTCP packet
...
maxsize is the maximum size
2012-01-27 19:01:55 +01:00
Olivier Crête
b993b8457d
rtpcbuffer: To write inside a RTCP buffer, you must be able to read
...
So always require read
2012-01-27 19:01:55 +01:00
Olivier Crête
6b559a50fb
rtcpbuffer: Return errors if the map mode doesn't match the actions
2012-01-27 19:01:55 +01:00
Olivier Crête
ab359d36d5
rtcpbuffer: Don't try to modify read-only buffers
2012-01-27 19:01:55 +01:00
Wim Taymans
30af2fe7d6
audiosrc: wait on the right cond variable
...
This broke with a merge commit
2012-01-27 18:27:26 +01:00
Wim Taymans
e2c50fbf0c
tagdemux: use default event handler for delayed events
2012-01-26 19:48:59 +01:00
Wim Taymans
e7575bc525
rtp: improve structures
...
Remove flags that is in the mapinfo now
2012-01-25 12:30:53 +01:00
Wim Taymans
fcdc385aa1
port to new map API
2012-01-25 12:30:53 +01:00
Olivier Crête
1a592199e9
rtpbasepayload: Port to group-less GstBufferList
2012-01-25 11:55:02 +01:00
Sebastian Dröge
68c0790817
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/interfaces/propertyprobe.c
sys/xvimage/xvimagesink.c
2012-01-25 11:50:54 +01:00
David Schleef
bd900a6c85
propertyprobe: fix documentation
2012-01-23 09:29:45 -08:00
Tim-Philipp Müller
ef75dd6e90
discoverer: use G_TYPE_ERROR instead of GST_TYPE_G_ERROR
2012-01-22 01:47:14 +00:00
Mark Nauwelaerts
2d3b3395cc
tag: exif: add missing break
2012-01-19 16:43:27 +01:00
Wim Taymans
d9ef75b799
rtcp: handle size update correctly
...
Do explicit resize to set the size of a buffer instead of setting a value in
unmap.
2012-01-19 15:20:01 +01:00
Wim Taymans
5be917d5bd
appsrc: handle NULL caps correctly
2012-01-19 15:18:58 +01:00
Wim Taymans
5872bcc33a
Update for memory API changes
2012-01-19 12:15:18 +01:00
Wim Taymans
3d42f0f6ed
port to new glib thread API
2012-01-19 11:36:17 +01:00
Tim-Philipp Müller
576bbb4fd8
Remove compatibility code cruft for old GLib versions
2012-01-18 17:22:21 +00:00
Mark Nauwelaerts
3e312e6e16
baseaudiosink: commit correct number of samples when not syncing
2012-01-17 21:46:58 +01:00
Sebastian Dröge
aed2666b53
rtsp: Port to GIO
2012-01-17 16:38:45 +01:00
Sebastian Dröge
cfa7083e94
sdp: Port to GIO for multicast address detection
2012-01-17 13:27:05 +01:00
Mark Nauwelaerts
974c678ec8
audiodecoder: register state change function
2012-01-17 11:53:51 +01:00
Matej Knopp
5c91ca3256
videopool: fix printf warning in debug message
...
https://bugzilla.gnome.org/show_bug.cgi?id=662607
2012-01-15 13:58:24 +00:00
Tim-Philipp Müller
e96aaec6bb
GST_TYPE_DATE -> G_TYPE_DATE
2012-01-12 23:35:44 +00:00
Tim-Philipp Müller
68785cc2e7
discoverer: fix up for GstTagList != GstStructure
2012-01-12 23:25:22 +00:00
Tim-Philipp Müller
0461ed2ada
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst-libs/gst/pbutils/gstdiscoverer-types.c
gst-libs/gst/pbutils/gstdiscoverer.c
tests/check/Makefile.am
2012-01-12 23:21:17 +00:00
Vincent Penquerc'h
ab7e72ad70
discoverer: fix structure leak
...
I hit the 'misc' one, but let's also make sure the topology
one get freed as well, though I do not know if this can happen
twice.
2012-01-12 14:27:25 +00:00
Reynaldo H. Verdejo Pinochet
1a8ee4536c
Add missing DEFAULT_INCLUDES on androgenizer call
...
Fix building of the libgstvideo module on Android by adding the
missing and needed $(DEFAULT_INCLUDES) to CFLAGS for the
androgenizer call on gst-libs/gst/video/Makefile.am
Before this change, building was failing due to gst-plugins-base/
and gst-plugins-base/gst-libs/gst/video being left out of the
include path.
2012-01-11 21:04:40 -03:00
Vincent Penquerc'h
426f991b52
discoverer: fix leaks caused by some base class dtors not being called
2012-01-11 12:52:17 +00:00
Vincent Penquerc'h
96e40584ce
discoverer: fix caps and discoverer object ref leaks
2012-01-11 12:16:28 +00:00
Vincent Penquerc'h
9ab18d7a68
discoverer: add a few consts where appropriate
2012-01-11 11:55:59 +00:00
Vincent Penquerc'h
7ad6431837
discoverer: fix pad leak
2012-01-11 11:55:36 +00:00
Sebastian Dröge
de19cfdd8a
audio: More UNPOSITION flag sanity checks
...
..and turn the GST_WARNING() into a g_warning(). This is a programming
error and should be fixed.
2012-01-11 10:49:49 +01:00
Sebastian Dröge
a03f70e3cd
audio: Add validity check for the UNPOSITIONED audio flag
...
Also reset the flag when parsing caps.
2012-01-11 10:44:37 +01:00
Tim-Philipp Müller
b155e094ed
discoverer: use GST_TYPE_TAG_LIST for tag lists
...
They may not be structures in 0.11/1.0.
2012-01-10 18:29:22 +00:00
Tim-Philipp Müller
5f20af6ce5
discoverer: fix potential tag list leaks
...
Not that I have ever seen these in practice, but if they
can't happen we may just as well just assign the new tag
list. Merge properly to be on the safe side, and also
avoid a useless tag list copy in the normal case where
there is no tag list yet.
2012-01-10 18:29:21 +00:00
Tim-Philipp Müller
b794f78d26
discoverer: fix potential caps leak
...
in last else chunk.
2012-01-10 18:29:21 +00:00
Sebastian Dröge
dc8984d76c
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/app/gstappsrc.c
gst-libs/gst/audio/multichannel.h
gst-libs/gst/video/videooverlay.c
gst/playback/gstplaysink.c
gst/playback/gststreamsynchronizer.c
tests/check/Makefile.am
win32/common/libgstvideo.def
2012-01-10 13:15:12 +01:00
Sebastian Dröge
05beab5382
audiometa: Improve GstAudioDownmixMeta to be actually usable
...
This now has a two-dimensional array of coefficients
as required and also stores the source and destination
channel positions.
2012-01-10 12:46:05 +01:00
Sebastian Dröge
67c8b0dfbd
audio: Don't crash if NULL positions are passed to gst_audio_info_set_format()
2012-01-10 12:02:56 +01:00
Sebastian Dröge
5cb3d75dbf
audiobasesink: Fix infinite recursion by chaining up to the correct parent class vfunc
2012-01-09 14:19:54 +01:00
Sebastian Dröge
bb3eb93ee9
audio: Don't check for channel positions in valid order when converting to a channel mask
2012-01-09 08:24:23 +01:00
Tim-Philipp Müller
9f042ae224
rtspconnection: make hostname lookup more thread-safe
...
Don't write IP number string to return into a static
array which is shared amongst all threads (note: of
course a copy is returned).
https://bugzilla.gnome.org/show_bug.cgi?id=666711
2012-01-07 20:16:41 +00:00
Tim-Philipp Müller
1031fedaf0
discoverer: make is_subtitle_caps thread-safe
2012-01-07 19:39:42 +00:00
Edward Hervey
82da418201
audio: Fix size check
...
We fail (and return) if the size is *NOT* a multiple of samples.
2012-01-06 15:14:59 +01:00
Vincent Penquerc'h
5cf87eedc4
video: overlays may now have premultiplied alpha
...
https://bugzilla.gnome.org/show_bug.cgi?id=666177
2012-01-06 10:19:19 +00:00
Havard Graff
95be60de15
Fix various unlikely, but still potential memoryleaks in error code paths
...
https://bugzilla.gnome.org/show_bug.cgi?id=667311
2012-01-05 13:27:23 +00:00
Havard Graff
b11d516c46
appsrc: implement get_caps vfunc
...
This allows downstream elements to query what caps are available.
https://bugzilla.gnome.org/show_bug.cgi?id=667312
2012-01-05 13:12:33 +00:00
Wim Taymans
dd43d0697e
audio: expose API to convert channel array to a mask
2012-01-05 13:59:32 +01:00
Wim Taymans
1317811af6
riff: don't use NULL arrays
2012-01-05 12:31:51 +01:00
Pascal Buhler
0febae7443
rtcpbuffer: prevent overflow of 16bit header length.
...
RTCP header can be (2^16 + 1) * 4 bytes long, so when validating a bogus
packet it was possible to get a 16bit overflow resulting in a length of 0.
This would put the gst_rtcp_buffer_validate_data function in a endless loop.
https://bugzilla.gnome.org/show_bug.cgi?id=667313
2012-01-05 11:12:25 +00:00
Sebastian Dröge
9e072ea844
audio: Improve/fix handling of NONE layouts
2012-01-05 10:34:25 +01:00
Sebastian Dröge
8dcea5d498
audio: Add support again for more than 64 channels with NONE layouts
2012-01-05 10:34:25 +01:00
Sebastian Dröge
31c9f7d09a
audio: Fix GST_AUDIO_CHANNEL_POSITION_MASK macro
2012-01-05 10:34:25 +01:00
Sebastian Dröge
c52b50a517
riff: Return a channel reorder map for raw audio when creating the caps
2012-01-05 10:34:25 +01:00
Sebastian Dröge
7cd0659032
riff: Add the layout field to the raw audio caps
2012-01-05 10:34:24 +01:00
Sebastian Dröge
9d56bf7712
audioencoder: Proxy the channel mask field instead of the old channel-layout field
2012-01-05 10:34:24 +01:00
Sebastian Dröge
8fe5dc53e0
audiocdsrc: Add the layout field to the caps
2012-01-05 10:34:24 +01:00
Sebastian Dröge
810bfec656
audio: Add "layout" field to the raw audio caps
...
This can be used to differentiate between interleaved
and non-interleaved audio and whatever comes in the future.
2012-01-05 10:34:24 +01:00
Sebastian Dröge
e2c6b8ec4d
audio: Add function to reorder channel positions from any order to the GStreamer order
2012-01-05 10:34:24 +01:00
Sebastian Dröge
bd40936409
audioringbuffer: Use new function to get a channel reordering map
2012-01-05 10:34:24 +01:00
Sebastian Dröge
9e930a1ade
audio: Add documentation for the new functions
2012-01-05 10:34:24 +01:00
Sebastian Dröge
c9c12372a5
audio: Add public functions to check channel positions validity and to get a reorder map
2012-01-05 10:34:24 +01:00
Sebastian Dröge
ee80a97a2a
riff: Port to the new multichannel caps
2012-01-05 10:34:24 +01:00
Sebastian Dröge
225238a913
audioringbuffer: Add support for reordering of channels
2012-01-05 10:34:16 +01:00
Sebastian Dröge
c227f5e77e
audio: Add new channel positions and simplify channel expression in the caps
...
The available channel positions are all channels from SMPTE 2036-2-2008
(in that order) and DTS Coherent Acoustics, which are basically all 28
channels that currently can appear.
The channels are now expressed in the caps as a channel-mask, which
describes which of the channels are present, and an optional
channel-reorder-map, which must only be used after negotiation for
fixated caps.
For negotiation only the channel-mask and the channel count is relevant
and all elements are expected to handle all reorder maps. Elements that
don't can use the new API to reorder an audio buffer from any order to
another order.
This simplifies negotiation a lot while still having as few reorderings
necassary as possible and still allow all kinds of channel layouts.
2012-01-05 10:27:21 +01:00
Philip Flarsheim
08af765ea2
docs: add win32 code snippets to GstXOverlay Gtk+ example
2012-01-05 01:54:29 +00:00