Mersad Jelacic
d430eb65c5
audiosink: avoid deadlocking audioringbuffer thread
...
... when it goes into wait for ringbuffer starting just after such
having been signalled.
Fixes #661738 .
2011-10-28 14:07:40 +02:00
Mark Nauwelaerts
981070eb44
audiodecoder: having gather queue contents implies some draining is in order
...
... which ensures e.g. processing and sending last fragment of reverse playback
downstream at EOS.
2011-10-19 16:51:09 +02:00
Tim-Philipp Müller
4e59e63ff7
baseaudiosink: fix unused variable compiler warning if debugging in core is disabled
...
https://bugzilla.gnome.org/show_bug.cgi?id=660150
2011-10-19 00:32:13 +01:00
Alessandro Decina
bc6f00becb
audioencoder: fix compile warning
2011-10-09 16:48:18 +02:00
Mark Nauwelaerts
871b1584c9
audioencoder: only resync to upstream upon discont in perfect ts mode
...
... as documented, where discont is marked here if tolerance has been
exceeded.
2011-10-08 20:20:10 +02:00
Mark Nauwelaerts
a7ce550d04
audiodecoder: fix timestamp tolerance handling
2011-10-08 20:20:06 +02:00
Mark Nauwelaerts
d8312994aa
audiodecoder: handle empty input by discarding
2011-10-08 20:20:03 +02:00
Mark Nauwelaerts
37c629fcc6
audioencoder: make upstream queries MT-safe
2011-10-07 14:52:50 +02:00
Mark Nauwelaerts
77069f01b1
audiodecoder: make upstream queries and events MT-safe
2011-10-07 14:52:48 +02:00
Vincent Penquerc'h
93900d47ed
encoding-profile: add a function to create a profile from a discoverer info
...
Only A/V streams are added at the moment, there does not seem to be
a similar way to add other streams (eg, subtitles).
https://bugzilla.gnome.org/show_bug.cgi?id=642878
2011-10-03 11:51:23 +02:00
Mark Nauwelaerts
8633eb391d
audiodecoder: really push pending events
2011-09-28 15:42:46 +02:00
Tim-Philipp Müller
e4e2e3c7b0
audioencoder: remove more tags from upstream tag events such as bitrate tags
...
We want to remove all codec specific tags.
2011-09-28 14:32:20 +01:00
Mark Nauwelaerts
01d27ee084
audioencoder: only got_data if we really got some
...
... which avoids going loopy with casual subclass.
2011-09-27 16:58:44 +02:00
Mark Nauwelaerts
24d71cf7a6
audioencoder: really push pending events
2011-09-27 16:58:41 +02:00
Mark Nauwelaerts
803b65613b
audioencoder: send tag event after pending events
...
... which probably includes a pending newsegment event.
2011-09-27 16:21:55 +02:00
Mark Nauwelaerts
89f6720545
audioencoder: protect pending_events with proper lock
2011-09-27 16:21:45 +02:00
Mark Nauwelaerts
9a9541ff35
audioencoder: clean up some documentation
2011-09-27 16:21:41 +02:00
Sebastian Dröge
e4c895dfaf
audioencoder: Improve set_frame_sample_{min,max} documentation
2011-09-26 16:35:55 +02:00
Sebastian Dröge
b767be2f68
audiodecoder: Fix thread safety issues if both pads have different streaming threads
2011-09-26 16:22:00 +02:00
Sebastian Dröge
d0bf465248
audiodecoder: Delay sending of serialized events to finish_frame()
2011-09-26 16:19:42 +02:00
Sebastian Dröge
f3f416004f
Revert "audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code"
...
This reverts commit 11e375486e
.
GST_BOILERPLATE() can't define an abstract type and
G_DEFINE_ABSTRACT_TYPE() does not pass the class struct to
the instance_init function and there's no way to get the
class struct of the current type in instance_init().
2011-09-26 16:02:51 +02:00
Sebastian Dröge
4fa9749106
audioencoder: Add support for requesting a minimum and maximum number of samples per frame
...
This extends the special case of a fixed number of samples per frame
that was supported before already.
2011-09-26 15:59:22 +02:00
Sebastian Dröge
16c3d6b3d5
audioencoder: Fix thread safety issues if both pads have different streaming threads
2011-09-26 15:45:40 +02:00
Sebastian Dröge
61ffd7cb42
audioencoder: Delay sending of serialized events to finish_frame()
...
This makes sure that the caps are already set before any serialized
events are sent downstream.
2011-09-26 15:42:14 +02:00
Sebastian Dröge
11e375486e
audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code
2011-09-26 15:34:54 +02:00
Mark Nauwelaerts
abafb030ac
audioencoder: add some tag handling convenience help
2011-09-26 15:15:03 +02:00
Mark Nauwelaerts
a99b313c26
audioencoder: provide CODEC/AUDIO_CODEC handling
2011-09-26 15:10:08 +02:00
Mark Nauwelaerts
aae0312e10
audioencoder: filter AUDIO_CODEC/CODEC tags from passing tag events
2011-09-26 15:10:06 +02:00
Mark Nauwelaerts
001b4a0072
audioencoder: proxy some more optional downstream caps fields to upstream
2011-09-22 15:47:06 +02:00
Mark Nauwelaerts
2a362a95f7
audioencoder: changed is verily the opposite of equal
2011-09-22 15:47:06 +02:00
Mark Nauwelaerts
b420dd54ea
audioencoder: prevent crashing when comparing to a freshly inited GstAudioInfo
2011-09-22 15:46:56 +02:00
Mark Nauwelaerts
7fa7de9221
audio: some more accessor macros for GstAudioInfo
2011-09-22 15:45:05 +02:00
Mark Nauwelaerts
b44978befe
audiodecoder: fix documentation typo
2011-09-22 15:45:01 +02:00
Age Bosma
043ee22e25
discoverer: Don't use gtk-doc /* < ... > */ style comments for signals
...
The /*< ... >*/ style is only used for public|protected|private,
signal comments use /* signals */. This prevents the some code
parsers/binding generators to be confused by the comment.
2011-09-19 14:36:00 +02:00
Mark Nauwelaerts
e574f58e71
rtspdefs: add RTCP-Interval header
2011-09-19 11:32:23 +02:00
Tim-Philipp Müller
454c554b11
docs: minor addition to GST_TAG_ID3V2_HEADER_SIZE docs
2011-09-12 19:55:40 +01:00
Tim-Philipp Müller
55182ed841
baseaudiosrc: don't try to fixate "width" field for alaw/mulaw
...
Fixes warning when trying to fixate e.g. pulsesrc ! audio/x-alaw ! fakesink.
2011-09-10 18:30:55 +01:00
Tim-Philipp Müller
0f38f86182
colorbalance: add some guards to interface methods
...
https://bugzilla.gnome.org/show_bug.cgi?id=658584
2011-09-09 13:09:43 +01:00
Wim Taymans
dc28bd1b63
audio: rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN
2011-09-06 16:27:27 +01:00
Tim-Philipp Müller
36a75bdb71
audio: update internal silent sample defines as well to match 0.11
2011-09-06 15:46:45 +01:00
Tim-Philipp Müller
91d1112360
audio: update audio format enums to match changes in 0.11
...
And add new audio format info stuff to docs.
2011-09-06 15:36:51 +01:00
Tim-Philipp Müller
9a8a989a22
docs: more docs clean-ups
2011-09-06 10:07:33 +01:00
Tim-Philipp Müller
5e61db25b5
audio: fix GST_AUDIO_FORMAT_INFO_IS_*() macros to return a boolean
2011-09-05 23:28:20 +01:00
Tim-Philipp Müller
ba05716485
docs: some docs love
2011-09-05 23:28:20 +01:00
Tim-Philipp Müller
7563e0c9cf
docs: add GstAudioDecoder and GstAudioEncoder to documentation
2011-09-05 23:28:20 +01:00
Tim-Philipp Müller
86e6343759
audio: rename GstBaseAudioDecoder/Encoder to GstAudioDecoder/Encoder
...
API: gst_gst_audio_decoder_finish_frame()
API: gst_gst_audio_decoder_get_audio_info()
API: gst_gst_audio_decoder_get_byte_time()
API: gst_gst_audio_decoder_get_delay()
API: gst_gst_audio_decoder_get_latency()
API: gst_gst_audio_decoder_get_max_errors()
API: gst_gst_audio_decoder_get_min_latenc()y
API: gst_gst_audio_decoder_get_parse_state()
API: gst_gst_audio_decoder_get_plc()
API: gst_gst_audio_decoder_get_plc_aware()
API: gst_gst_audio_decoder_get_tolerance()
API: gst_gst_audio_decoder_get_type()
API: gst_gst_audio_decoder_set_byte_time()
API: gst_gst_audio_decoder_set_latency()
API: gst_gst_audio_decoder_set_max_errors()
API: gst_gst_audio_decoder_set_min_latency()
API: gst_gst_audio_decoder_set_plc()
API: gst_gst_audio_decoder_set_plc_aware()
API: gst_gst_audio_decoder_set_tolerance()
API: gst_gst_audio_encoder_finish_frame()
API: gst_gst_audio_encoder_get_audio_info()
API: gst_gst_audio_encoder_get_frame_max()
API: gst_gst_audio_encoder_get_frame_samples()
API: gst_gst_audio_encoder_get_hard_resync()
API: gst_gst_audio_encoder_get_latency()
API: gst_gst_audio_encoder_get_lookahead()
API: gst_gst_audio_encoder_get_mark_granule()
API: gst_gst_audio_encoder_get_perfect_timestamp()
API: gst_gst_audio_encoder_get_tolerance()
API: gst_gst_audio_encoder_get_type()
API: gst_gst_audio_encoder_proxy_getcaps()
API: gst_gst_audio_encoder_set_frame_max()
API: gst_gst_audio_encoder_set_frame_samples()
API: gst_gst_audio_encoder_set_hard_resync()
API: gst_gst_audio_encoder_set_latency()
API: gst_gst_audio_encoder_set_lookahead()
API: gst_gst_audio_encoder_set_mark_granule()
API: gst_gst_audio_encoder_set_perfect_timestamp()
API: gst_gst_audio_encoder_set_tolerance()
https://bugzilla.gnome.org/show_bug.cgi?id=642690
2011-09-05 23:28:13 +01:00
Tim-Philipp Müller
67a12c9c72
pbutils: don't depend on libgstvideo just to parse some caps
...
Let's extract those ints and fractions ourselves and not depend
on libgstvideo.
2011-08-27 14:57:41 +01:00
Tim-Philipp Müller
517153e85a
audio: add GstBaseAudioDecoder and GstBaseAudioEncoder to build
...
However, libgstaudio now depends on libgstvideo (via pbutils).
https://bugzilla.gnome.org/show_bug.cgi?id=642690
API: gst_audio_info_clear()
API: gst_audio_info_convert()
API: gst_audio_info_copy()
API: gst_audio_info_free()
API: gst_audio_info_from_caps()
API: gst_audio_info_init()
API: gst_audio_info_to_caps()
API: gst_base_audio_decoder_finish_frame()
API: gst_base_audio_decoder_get_audio_info()
API: gst_base_audio_decoder_get_byte_time()
API: gst_base_audio_decoder_get_delay()
API: gst_base_audio_decoder_get_latency()
API: gst_base_audio_decoder_get_max_errors()
API: gst_base_audio_decoder_get_min_latency()
API: gst_base_audio_decoder_get_parse_state()
API: gst_base_audio_decoder_get_plc()
API: gst_base_audio_decoder_get_plc_aware()
API: gst_base_audio_decoder_get_tolerance()
API: gst_base_audio_decoder_get_type()
API: gst_base_audio_decoder_set_byte_time()
API: gst_base_audio_decoder_set_latency()
API: gst_base_audio_decoder_set_max_errors()
API: gst_base_audio_decoder_set_min_latency()
API: gst_base_audio_decoder_set_plc()
API: gst_base_audio_decoder_set_plc_aware()
API: gst_base_audio_decoder_set_tolerance()
API: gst_base_audio_encoder_finish_frame()
API: gst_base_audio_encoder_get_audio_info()
API: gst_base_audio_encoder_get_frame_max()
API: gst_base_audio_encoder_get_frame_samples()
API: gst_base_audio_encoder_get_hard_resync()
API: gst_base_audio_encoder_get_latency()
API: gst_base_audio_encoder_get_lookahead()
API: gst_base_audio_encoder_get_mark_granule()
API: gst_base_audio_encoder_get_perfect_timestamp()
API: gst_base_audio_encoder_get_tolerance()
API: gst_base_audio_encoder_get_type()
API: gst_base_audio_encoder_proxy_getcaps()
API: gst_base_audio_encoder_set_frame_max()
API: gst_base_audio_encoder_set_frame_samples()
API: gst_base_audio_encoder_set_hard_resync()
API: gst_base_audio_encoder_set_latency()
API: gst_base_audio_encoder_set_lookahead()
API: gst_base_audio_encoder_set_mark_granule()
API: gst_base_audio_encoder_set_perfect_timestamp()
API: gst_base_audio_encoder_set_tolerance()
2011-08-27 14:47:50 +01:00
Tim-Philipp Müller
58f515f06a
docs: add since markers to baseaudio{decoder,encoder} documentation
2011-08-27 14:47:50 +01:00
Tim-Philipp Müller
90e3d25891
baseaudiodecoder, baseaudioencoder: fix some compiler warnings
...
Leaving the GST_USE_UNSTABLE_API guards in until some of the
ported decoders have been updated and it's clear that I didn't
mess up anywhere porting things to the new audio API.
2011-08-27 14:47:49 +01:00