Sebastian Dröge
4a69d6ba3b
audiodecoder: Don't ignore ::start/stop return values
2014-08-25 13:15:07 +03:00
Jan Schmidt
02d1ab0d1c
audiodecoder: Don't drain and flush on SEGMENT events.
...
As was done for the base video decoder in commit 695675, don't
flush out the decoder on a new SEGMENT event. Segment events
may be a new segment, but are also often segment updates for
the current segment where the old data should be kept. For new
segments, a STREAM_START event will already trigger a drain, but
make sure to flush any remaining partial data then as well.
https://bugzilla.gnome.org/show_bug.cgi?id=734666
2014-08-12 23:54:41 +10:00
Sebastian Rasmussen
a285f7126b
audioencoder: Mark caps argument as not being transferred
...
https://bugzilla.gnome.org/show_bug.cgi?id=734540
2014-08-10 10:45:14 +01:00
Sebastian Dröge
368d75fe75
audiodecoder: Handle CAPS events immediately instead of delaying them
...
https://bugzilla.gnome.org/show_bug.cgi?id=733147
2014-07-21 09:36:00 +02:00
Sebastian Dröge
1e64667fe0
libs: There is no G_TYPE_CHECK_INTERFACE_TYPE and G_TYPE_CHECK_INTERFACE_CAST
...
Remove the macros that used them, nobody could've used them anyway.
2014-06-26 16:18:46 +02:00
Sebastian Dröge
909dd7831b
audiodecoder: Don't be too picky about the output frame counter
...
With most decoder libraries, and especially when accessing codecs via
OpenMAX or similar APIs, we don't have the ability to properly related
the output buffers to a number of input samples. And could e.g. get
a fractional number of input buffers decoded at a time.
Previously this would in the end lead to an error message and stopped
playback. Change it to a warning message instead and try to handle it
gracefully. In theory the subclass can now get timestamp tracking
wrong if it completely misuses the API, but if on average it behaves
correct (and gst-omx and others do) it will continue to work properly.
Also add a test for the new behaviour.
We don't change it in the encoder yet as that requires more internal logic
changes AFAIU and I'm not aware of a case where this was a problem so far.
2014-06-20 11:02:55 +02:00
Thibault Saunier
12df7fa49d
audiodecoder: Keep still meaningfull pending events on FLUSH_STOP
...
Only EOS and segment should be deleted in that case.
https://bugzilla.gnome.org/show_bug.cgi?id=709868
2014-06-03 13:03:21 +02:00
Thibault Saunier
967d1fb982
audioencoder: Keep still meaningfull pending events on FLUSH_STOP
...
Only EOS and segment should be deleted in that case.
https://bugzilla.gnome.org/show_bug.cgi?id=709868
2014-06-03 13:03:16 +02:00
Philip Withnall
ba87655628
audio: Add a missing precondition to gst_audio_format_from_string()
...
https://bugzilla.gnome.org/show_bug.cgi?id=730874
2014-05-28 11:34:01 +02:00
Thiago Santos
09b8f902ea
audiodecoder: return EOS when segment is over
...
if a buffer is clipped by being completely out of segment, check if this
buffer is after the end of the segment and return EOS upstream
https://bugzilla.gnome.org/show_bug.cgi?id=709224
2014-05-26 19:26:45 -03:00
Sebastian Dröge
68f5350c66
Release 1.3.1
2014-05-03 17:50:10 +02:00
Haakon Sporsheim
7c97a1c6cf
audiodecoder: Make caps writable before fixating
...
https://bugzilla.gnome.org/show_bug.cgi?id=729114
2014-04-29 09:58:21 +02:00
Tim-Philipp Müller
bcb8068e27
docs: remove outdated and pointless 'Last reviewed' lines from docs
...
They are very confusing for people, and more often than not
also just not very accurate. Seeing 'last reviewed: 2005' in
your docs is not very confidence-inspiring. Let's just remove
those comments.
2014-04-26 23:28:57 +01:00
Edward Hervey
74eb5fa995
audiodecoder: Plug caps leaks
...
We were returning in various places without unreffing the caps, and
we were also leaking (overwriting) the caps we got from _get_current_caps()
Spotted by Haakon Sporsheim in #gstreamer
2014-04-25 11:30:37 +02:00
Vincent Penquerc'h
dda777803c
audiocdsrc: guard aginst overflow
...
An audio CD may contain about a tenth of the samples 32 bit can
represent, so it doesn't seem likely this will be hit in practice.
Coverity 1139805
2014-04-10 12:35:03 +01:00
Vincent Penquerc'h
7618699ffd
audiobasesink: avoid possible sample count overflow
...
At 48 kHz, 2<<31 samples is reached before 13 hours so it
sounds plausible this would be hit.
Coverity 1139800, 1139801
2014-04-10 11:06:00 +01:00
Josep Torra
6ce7ade7c6
audioringbuffer: parse channels field from compressed audio caps
...
Also parse channels as an optional field in the caps for compressed
audio formats.
2014-04-08 12:54:04 +02:00
Vincent Penquerc'h
169166d0a2
audiobasesink: clip start samples to match clipped start time
...
Clock slaving can clip start time to zero, giving us a shorted
duration than we originally got. To keep in sync, we must then
discard the samples falling before that zero timestamp.
This possibly fixes random distortion caused by constant PA
underflows which are never resynced.
2014-04-04 17:04:06 +01:00
Rafał Mużyło
5496d09eb4
audio: map channels=1,channel-mask=0 to MONO instead of NONE
...
Fixes problem in audioconvert, which would end up using
a mixmatrix when converting between different mono format
because it thinks MONO positioning is different from
unpositioned channels, which is not the case in this
special case. The mixmatrix would end up being 0.0 so
audioconvert would convert to silence samples.
https://bugzilla.gnome.org/show_bug.cgi?id=724509
2014-02-18 10:41:47 +00:00
Sebastian Dröge
bc92cd8f67
audiosrc: Fix typo in docs
...
We read *from* the audio device, not to it.
2014-02-09 11:28:48 +01:00
Stefan Sauer
76ec6d3760
docs: doc fixes for audio library
...
Add sections docs for audiometa. Fix sections docs for audiochannels. Remove old
mixerutil section.
2014-02-03 09:36:43 +01:00
Thiago Santos
e00dc5b879
audioencoder: push pending events and tags before EOS
...
if there are tags or events pending and an EOS is received, push those
events and tags before the EOS.
2014-01-29 12:33:59 -03:00
Wim Taymans
6a88d6f8cd
audiobasesink: make _get_time more threadsafe
...
We call the _get_time function from the provided clock and we don't lock
the sink object for performance reasons. Make sure we only read and
check variables once so that they don't change while we are executing
the code.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720661
2014-01-21 11:25:18 +01:00
Thiago Santos
695ddbd56f
audiodecoder: copy rate and channels from input before fixating output caps
...
For default caps generation when handling gap events that are sent
before any buffer, try to use caps that are closer to what upstream
provided to avoid fixating rate or channels to 1 as default.
So there are the steps:
1) Try to set rate, channels and channel-mask from upstream if provided
2) Fixate the rate and channels to the default rate and channels from
audio lib
3) Fixate the caps just to be sure everything is fixed
4) If no channel-mask was provided and channels > 2, use a default
channel-mask (taken from audioconvert code)
https://bugzilla.gnome.org/show_bug.cgi?id=722144
2014-01-15 15:20:39 -03:00
Thiago Santos
95a56dbda7
audiodecoder: avoid parsing caps event if it is not used
...
Saves some cpu
2014-01-14 09:34:44 -03:00
Thiago Santos
8cf8332b91
audiodecoder: make sure caps is set before forwarding gap event
...
Before trying to generate a default fixated caps when handling a gap
event, make sure that the same strategy that is used when handling
a buffer has been attempted. Otherwise audiodecoder will ignore
upstream caps settings such as rate and channels and will likely
end with a caps with channels=1 and rate=1.
https://bugzilla.gnome.org/show_bug.cgi?id=722144
2014-01-14 09:34:44 -03:00
Jan Schmidt
f0b655e1ad
audiobasesrc: Avoid unnecessary configuration
...
Port a change from audiobasesink from def07410
, to ignore setcaps
when the caps don't actually change, and avoid a reconfiguration
and reset of the ringbuffer in that case.
2014-01-03 02:20:39 +11:00
Sebastian Dröge
58592a2af3
audio/video-info: Properly initialize the info structures in set_format()
...
And don't assume in other code that set_format() preserves any fields at
all. These assumptions were already made here for fields that were changed
by set_format().
2013-12-30 10:53:24 +01:00
Sebastian Dröge
65732d9c97
audio/video-info: Initialize the complete struct to 0 in the beginning
...
Instead of only initializing some parts in some code paths. Also
makes it easier to use the reserved bits of the structs later.
https://bugzilla.gnome.org/show_bug.cgi?id=720810
2013-12-30 10:15:20 +01:00
Reynaldo H. Verdejo Pinochet
5f07c1ed4e
audiobasesrc: Bunch of cosmetic/grammar fixes
2013-12-27 01:36:09 -03:00
Reynaldo H. Verdejo Pinochet
0a6d6e1fff
audiobasesrc: Retarget FIXME to 2.0
...
Properly fixing this one would break API.
2013-12-27 01:36:09 -03:00
Reynaldo H. Verdejo Pinochet
aa1883d5d7
audiobase*: Drop trailing withespaces
2013-12-27 01:36:09 -03:00
Reynaldo H. Verdejo Pinochet
d1b3454299
audiobasesrc: Break some too long lines
2013-12-27 01:36:09 -03:00
Reynaldo H. Verdejo Pinochet
6b17d86692
audiobasesrc: Add FIXME for times in NSECONDS
...
Timebase is in nanoseconds pretty much everywhere else
2013-12-27 01:36:09 -03:00
Jan Schmidt
c24a1254c9
audiodecoder: Choose a default initial caps before sending GAP
...
If there are no caps from the audio decoder when handling a GAP
event - as when one is received right at the start on a DVD without
initial audio - then choose any default caps for downstream and
then send the GAP, so the audio sink has a configured format in
which to start the ringbuffer.
Also, make the audio sink reject a GAP without caps with a clearer
error message.
Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=603921
2013-12-27 04:04:45 +11:00
Reynaldo H. Verdejo Pinochet
21190b9749
gstaudiobasesink: Always reset last_align
...
Should be done for all the reset_sync() cases. Not
only for the READY to PAUSED one.
2013-12-20 18:06:25 -03:00
Reynaldo H. Verdejo Pinochet
032779ff13
gstaudiobasesink: Reset last_align to 0, not -1
...
This is the expected behavior in READY -> PAUSED
2013-12-20 18:02:42 -03:00
Reynaldo H. Verdejo Pinochet
c1de7cdefb
gstaudiobasesink: Always reset avg_skew on _reset
...
Only case in which it wasn't (READY to PAUSED) should
have had this value reseted too.
2013-12-20 17:58:43 -03:00
Reynaldo H. Verdejo Pinochet
adf800087c
gstaudiobasesink: Retarget FIXME to 2.0
...
Properly fixing this one would break API
2013-12-20 17:48:22 -03:00
Reynaldo H. Verdejo Pinochet
d35db35258
gstaudiobasesink: Factor out reset sync routine
2013-12-20 17:47:38 -03:00
Reynaldo H. Verdejo Pinochet
b324d67586
gstaudiobasesink: Drop dead _sink_async_play() code
2013-12-20 13:58:34 -03:00
Reynaldo H. Verdejo Pinochet
2f04733a4b
gstaudiobasesink: Break some too long lines
2013-12-20 13:58:33 -03:00
Reynaldo H. Verdejo Pinochet
187b106202
gstaudiobasesink: Cosmetics, grammar/spelling
...
- Drop repeated 'yet' from debug msg
- Drop repeated 'to' from param desc
- Some spelling
2013-12-20 13:58:33 -03:00
Edward Hervey
b97c711def
audio/video: Initialize all {audio|video}info fields
...
Fixes "Unitialized Scalar Variable" issues reported by Coverity.
Has the added advantage of detecting whether somebody *does* use those
fields (ending up with a invalid address).
https://bugzilla.gnome.org/show_bug.cgi?id=720810
2013-12-20 14:47:22 +01:00
Reynaldo H. Verdejo Pinochet
86b0a0d6d0
gstaudiobasesink: Refactor alignment computation for clarity
2013-12-19 18:05:44 -03:00
Todd Agulnick
38d8fa12a5
Some compiler warning fixes to satisfy XCode compiler
...
https://bugzilla.gnome.org/show_bug.cgi?id=720513
2013-12-16 16:51:29 +01:00
Wim Taymans
df3718ea2b
audiobasesink: handle the RESYNC flag
...
Also resync when a buffer with the RESYNC flag is seen.
2013-12-05 16:27:35 +01:00
Julien Isorce
e68317f070
audiodec/enc: clear reconfigure flag if negotiate succeeds
...
So that it avoids to send an allocation query twice.
One from an early call to gst_audio_encoder_negotiate from a
subclass, then one from gst_audio_encoder_allocate_output_buffer.
Which means that previously gst_audio_encoder_negotiate was not
clearing the GST_PAD_FLAG_NEED_RECONFIGURE even on success.
Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=719684
2013-12-05 15:19:16 +00:00
Sebastian Dröge
400d4baf92
audiodecoder: Use FALSE instead of 0
2013-12-05 11:37:09 +01:00
Mark Nauwelaerts
6e639b73ff
audiodecoder: no fallback to segment start for reverse playback
...
See https://bugzilla.gnome.org/show_bug.cgi?id=709965
2013-12-04 19:24:25 +01:00
Mark Nauwelaerts
387e5f0c14
audiodecoder: use segment start as fallback ts if no other available
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709965
2013-12-02 20:36:21 +01:00
Sebastian Dröge
f8477e6b88
audiodecoder: error out if no frames are decoded before eos
...
Raise an error in case no frames are decoded before EOS and we
have input, meaning that data was received but it was somehow invalid.
Based on the videodecoder change, merged here for consistency.
https://bugzilla.gnome.org/show_bug.cgi?id=711094
2013-11-26 12:29:30 +01:00
Sebastian Dröge
b0788ce054
audiodecoder: Allow using -1 for infinite tolerated errors
...
Allows using -1 to make audiodecoder never post an error message
after decoding errors.
Based on the videodecoder change, merged here for consistency.
https://bugzilla.gnome.org/show_bug.cgi?id=711094
2013-11-26 12:20:33 +01:00
Mark Nauwelaerts
b13a722746
audioencoder: also set output buffer DTS
2013-11-16 15:25:38 +01:00
Sebastian Dröge
3fb235c53c
audio: Update ORC dist files
2013-11-03 15:58:35 +01:00
Sebastian Dröge
081f009e25
audio-format: Use ORC for filling memory with silence samples
2013-11-03 15:58:35 +01:00
Takashi Iwai
6d659e3c6f
audioringbuffer: Don't clear need_reorder flag too early
...
gst_audio_ring_buffer_set_channel_positions() checks whether the given
positions are identical with the current setup and returns
immediately if so. But it also clears need_reorder flag before this
comparison, thus this flag might be wrongly cleared if the function is
called twice with the same channel positions.
Move the flag clearance after the check.
https://bugzilla.gnome.org/show_bug.cgi?id=709754
2013-10-09 19:00:33 +02:00
Johannes Dewender
019ef0747d
audiocdsrc: Don't consider trailing data tracks for MusicBrainz disc id calculation
...
MusicBrainz removes trailing data tracks from releases on the server
and also for the calculation of the MusicBrainz Disc ID.
https://bugzilla.gnome.org/show_bug.cgi?id=708991
2013-10-01 22:24:22 +02:00
David Svensson Fors
09d628f8f1
audioringbuffer: check if acquired in set_timestamp
...
Also use GST_OBJECT_LOCK when accessing object data in set_timestamp.
https://bugzilla.gnome.org/show_bug.cgi?id=702230
2013-10-01 22:12:07 +02:00
Matej Knopp
dbaf1bf0a3
audio: change buffer timestamp when clipping even if data hasn't been trimmed
...
https://bugzilla.gnome.org/show_bug.cgi?id=708952
2013-09-28 11:39:43 +02:00
Wim Taymans
c9ff3e4f98
audiobasesink: do big correction for large drift
...
If we are using skew slaving and we drift more than twice the allowed amount, do
a big correction to get back on track more quickly.
2013-09-25 16:03:07 +02:00
Sebastian Dröge
420e229829
audioencoder/decoder: Mark pads as requiring reconfiguration again if negotiation fails
...
Otherwise we might end up in non-optimal configuration, especially
when a flush happened during reconfiguration.
2013-09-12 09:42:36 +02:00
Wim Taymans
d3641943b3
docs: fix some doc blocks
2013-09-09 15:52:05 +02:00
Mathieu Duponchelle
d1cb9c994b
video/audio: #define metadata strings.
...
For instance "orientation" becomes GST_VIDEO_ORIENTATION_METADATA.
2013-09-09 15:37:02 +02:00
Sebastian Dröge
96ab6db422
audioencoder: Simplify pushing of pending events during negotiation
...
And also don't send the same caps twice.
2013-08-23 19:17:16 +02:00
Sebastian Dröge
daf017ced8
audiodecoder: Fix last commit and simplify code a lot
2013-08-23 19:10:48 +02:00
Edward Hervey
f9ebfd57f8
audiodecoder: Fix previous commit
...
(sorry)
2013-08-23 16:59:30 +02:00
Edward Hervey
cd3fe60c68
audiodecoder: Don't push out identical caps
...
This avoids triggering plenty of extra code/methods/overhead downstream when
we can just quickly check whenever we want to set caps whether they are
identical or not
https://bugzilla.gnome.org/show_bug.cgi?id=706600
2013-08-23 15:22:05 +02:00
Tim-Philipp Müller
6b070784c4
audio: make direct includes work again
...
Not nice to break people's code if we can avoid it. Could
add a warning in the next cycle, and then require single
includes in the cycle after.
https://bugzilla.gnome.org/show_bug.cgi?id=695889
2013-08-16 14:14:11 +01:00
Youness Alaoui
ca2a515373
audiodecoder: Clear taglist on reception of a STREAM_START event
...
https://bugzilla.gnome.org/show_bug.cgi?id=705109
2013-08-12 13:02:59 +02:00
Matej Knopp
197376212c
audiodecoder: do not leak input caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=704926
2013-07-26 15:37:04 +01:00
Sebastian Dröge
99ef452fc4
audio/videodecoder: Rename variable in macro from dec to __dec
...
Otherwise it might shadow another variable in the outside scope
and cause interesting side effects.
2013-07-25 14:11:28 +02:00
Sebastian Dröge
50fd867a43
audioencoder: Don't return not-negotiated if flushing
...
If the pad is flushing after a failed negotiation, return
GST_FLOW_FLUSHING instead from finish_frame().
https://bugzilla.gnome.org/show_bug.cgi?id=701763
2013-06-30 18:17:42 +02:00
Mathieu Duponchelle
97e68b36c7
audiodecoder: Don't return not-negotiated if flushing
...
If the pad is flushing after a failed negotiation, return GST_FLOW_FLUSHING.
https://bugzilla.gnome.org/show_bug.cgi?id=701763
2013-06-25 12:51:55 -04:00
Jonas Holmberg
82e5ec553b
audioencoder: unref before memset
...
Unref allocator and input_caps in encoder context before memsetting the
context.
2013-06-19 13:56:28 +02:00
Ognyan Tonchev
f240d34c7e
audiobasesrc: add 2 missing gst_buffer_unmap () calls
...
There are 2 missing calls to gst_buffer_unmap () in the error handling in
create ().
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702467
2013-06-17 16:34:26 +02:00
Sebastian Dröge
ff5d3313d4
Release 1.1.1
2013-06-05 18:31:27 +02:00
Sebastian Dröge
c06377b385
audioencoder: Remove private copy of gst_audio_info_is_equal()
...
And improve the public one a bit based on it.
2013-06-01 09:06:22 +02:00
Sebastian Dröge
5065e76b1c
audio: Add gst_audio_info_is_equal()
2013-05-30 23:56:52 +02:00
Sebastian Dröge
b8c6413a8e
audio: Always provide a buffer in gst_audio_(enc|dec)oder_allocate_output_buffer()
...
We have no way of tell the caller of the exact error (e.g. if we're flushing),
so will have to wait until the caller uses API that returns a GstFlowReturn,
for example when pushing this buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=700006
2013-05-24 16:54:46 +02:00
Alexander Schrab
a049b102da
alsasrc: Make using driver timestamps possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=699744
2013-05-20 11:25:17 +02:00
Sebastian Dröge
be154ee9d6
audio-info: Always pass NULL as position parameter to gst_audio_info_set_format()
...
https://bugzilla.gnome.org/show_bug.cgi?id=700259
2013-05-15 09:26:56 +02:00
Sebastian Dröge
b401f447d2
audio-info: For more than 64 channels don't allow a channel layout
...
More than 64 channels have all channels unpositioned.
https://bugzilla.gnome.org/show_bug.cgi?id=700259
2013-05-14 09:34:21 +02:00
Sebastian Dröge
351405d8a0
audio: Make sure to push pre-caps events before the caps event
2013-05-08 15:56:34 +02:00
Tim-Philipp Müller
f5c0d61be7
Update disted orc backup files
...
Generated with 0.4.17 now.
2013-04-22 13:58:33 +01:00
Sebastian Dröge
d537a21075
audioencoder: Ignore caps events if the input caps did not change
2013-04-18 09:58:36 +02:00
Sebastian Dröge
d1a08af605
audiodecoder: Ignore caps events if the input caps did not change
2013-04-18 09:58:36 +02:00
Tim-Philipp Müller
e96ca66c36
docs: add some more audio macros
2013-04-17 09:26:40 +01:00
Sebastian Dröge
98f41f1c39
audioringbuffer: Also reset segbase
2013-04-15 10:13:14 +02:00
Paul HENRYS
587b2721c8
audioringbuffer: Reset segdone when releasing audioringbuffer
...
https://bugzilla.gnome.org/show_bug.cgi?id=697723
2013-04-15 10:09:49 +02:00
Wim Taymans
76d71da1c4
audiodecoder: don't make negative timestamp
...
Clamp timestamp interpollation to 0 to avoid going negative. This should not
happen, really, but until the interpolation is improved this seems better.
2013-03-31 13:46:30 +02:00
Wim Taymans
03f658dda2
audiodecoder: forward stream-start immediately
2013-03-30 19:14:37 +01:00
Stefan Sauer
e4ee1dde02
audioencoder: api doc fixes.
2013-03-29 10:33:35 +01:00
Paul HENRYS
78a8531c75
audiobasesrc: Fix ringbuffer handling when settings caps
...
ringbuffer was released after setting values to its spec field
in gst_audio_base_src_setcaps(). This led to failure in case
gst_audio_base_src_setcaps() is called more than one time.
https://bugzilla.gnome.org/show_bug.cgi?id=696540
2013-03-25 10:16:03 +01:00
Marc Leeman
0fa50b44f0
audioringbuffer: avoid division by 0 when outputting debug info
...
https://bugzilla.gnome.org/show_bug.cgi?id=695832
2013-03-15 09:06:07 +00:00
Akihiro Tsukada
a32877125f
audio: add support for AAC pass-through
...
https://bugzilla.gnome.org/show_bug.cgi?id=694443
2013-02-27 00:38:05 +00:00
Stefan Sauer
b274ff7c21
audioringbuffer: log a few more details (e.g. obj-name)
2013-02-25 19:55:00 +01:00
Tim-Philipp Müller
6682215d9d
audio: fix GST_AUDIO_INFO_ENDIANNESS macro
2013-02-16 13:06:54 +00:00
Tim-Philipp Müller
664adc6e19
gst-libs: use GST_*_1_0 environment variables everywhere
...
The _1_0 suffixed environment variables override the
non-suffixed ones, so if we're in an environment that
sets the _1_0 suffixed ones, such as jhbuild, we need
to set those to make sure ours actually always get
used.
2013-01-16 10:16:27 +00:00
Tim-Philipp Müller
b4def63f55
audio: don't use uninitialized variable in debug log
...
https://bugzilla.gnome.org/show_bug.cgi?id=667317
2012-12-29 14:29:53 +00:00
Wim Taymans
fe93457191
audioclock: mark as using some other clock
...
We need to mark our clock as using some other clock source. Alsa source uses the
clock type to decide if it can use alsa driver timestamps or not.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690465
2012-12-20 16:48:04 +01:00
Wim Taymans
5e04fcd2ef
audiobasesrc: init variable
...
We need to initialize this variable because we can't be sure that the subclass
will set it.
2012-12-20 16:47:56 +01:00
Tim-Philipp Müller
68f366a8d3
audiobasesrc: bail out if subclass posts an error
...
Use new ringbuffer ERROR state to make all the various
threads bail out correctly when the subclass posts an
error. It's a bit iffy to communicate this properly
between the different bits of code.
https://bugzilla.gnome.org/show_bug.cgi?id=690197
2012-12-17 20:50:32 +00:00
Tim-Philipp Müller
4f49c7a33b
audioringbuffer: add GST_AUDIO_RING_BUFFER_STATE_ERROR state
...
API: GST_AUDIO_RING_BUFFER_STATE_ERROR
https://bugzilla.gnome.org/show_bug.cgi?id=690197
2012-12-17 20:50:32 +00:00
Thiago Santos
929edc2572
audiobasesrc: Always resync the ringbuffer on the first buffer
...
In SKEW mode, use next_sample == -1 to check for the first sample
when starting to read samples so it resyncs the ringbuffer and
timestamps are ok.
Suggestion from Teemu Katajisto <teemu.katajisto@digia.com>
https://bugzilla.gnome.org/show_bug.cgi?id=648359
2012-12-17 11:47:34 +01:00
Sebastian Dröge
3f82e919dd
libs: Use foo/foo.h as single-include header consistently everywhere
...
https://bugzilla.gnome.org/show_bug.cgi?id=688785
2012-12-12 17:13:10 +00:00
Tim-Philipp Müller
fbff6c6fb1
audioencoder: add some more debug info and remove obsolete comment
2012-12-02 12:33:43 +00:00
Tim-Philipp Müller
8827437b61
audio: remove bogus Since marker from docs
...
It was causing perl warnings in gtk-doc code.
2012-11-21 23:19:14 +00:00
Evan Nemerson
4d77fba46c
libs: Add missing single include headers and use them in GIRs
2012-11-21 11:01:24 +01:00
Tim-Philipp Müller
71e46b2478
gst_adapter_prev_timestamp -> gst_adapter_prev_pts
...
https://bugzilla.gnome.org/show_bug.cgi?id=675598
2012-11-14 00:03:15 +00:00
Sebastian Dröge
32139f9a3d
audio: Use new GType for GThread instead of just G_TYPE_POINTER
2012-11-12 11:45:47 +01:00
Sebastian Dröge
d209727644
audiodecoder: Reset error count to 0 after successfully decoding a frame
2012-11-09 16:48:54 +01:00
Tim-Philipp Müller
5f59b4f7ee
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Miguel Angel Cabrera Moya
244fdcc69a
audiobasesink: use the same type as the internal type to return it
...
https://bugzilla.gnome.org/show_bug.cgi?id=687466
2012-11-02 19:52:38 +00:00
Wim Taymans
5f44303925
audioringbuffer: reset spec on _release
...
Reset the caps and the audioinfo when releasing the ringbuffer.
Fixed a bug with reusing pulsesink.
2012-10-30 10:33:04 +00:00
Tim-Philipp Müller
a4f2df6341
Revert "g-i: change g-ir-scanner arg --library=libgstfoo-X.la to --library=gstfoo-X"
...
This reverts commit e39fbe6b7e
.
Looks like we need to pass the full .la file after all in a setup
with libtool, or it might not find the library, e.g. like
ERROR: can't resolve libraries to shared libraries: gstfft-1.0
Conflicts:
gst-libs/gst/audio/Makefile.am
gst-libs/gst/pbutils/Makefile.am
Also see https://bugzilla.gnome.org/show_bug.cgi?id=603710
2012-10-29 12:47:05 +00:00
Tim-Philipp Müller
973f4f09ea
audio: try harder to make g-i use the build-tree libgsttag
...
without adding additional --library= tags, which shouldn't be there.
https://bugzilla.gnome.org/show_bug.cgi?id=679315
2012-10-28 17:59:27 +00:00
Tim-Philipp Müller
e39fbe6b7e
g-i: change g-ir-scanner arg --library=libgstfoo-X.la to --library=gstfoo-X
...
As it should be according to the man page.
https://bugzilla.gnome.org/show_bug.cgi?id=679315
2012-10-28 17:35:57 +00:00
Mark Nauwelaerts
45d802b63f
audiodecoder: track forced decoding state
2012-10-24 14:46:22 +02:00
Sebastian Dröge
1813701ef2
audiobasesink: Add explanation to the GAP event handling code
2012-10-24 11:22:29 +02:00
Sebastian Dröge
b793d0bfae
audiobasesink: Properly handle GAP events
...
These are now converted into silence buffers if they have
a duration or cause the ringbuffer and clock to be started
if they don't have a duration.
Fixes bug #685273 .
2012-10-24 11:19:05 +02:00
Tim-Philipp Müller
277ca04976
audiodecoder: don't leak message strings when error is not fatal
...
https://bugzilla.gnome.org/show_bug.cgi?id=681192
2012-10-20 11:38:10 +01:00
Tim-Philipp Müller
3ee2ad255b
audiocdsrc: mention TOCs in docs
2012-10-17 19:59:57 +01:00
Mark Nauwelaerts
162433795a
audio: properly handle clipping of empty buffer
2012-10-15 18:48:01 +02:00
Josep Torra
d8d9f0db97
audiodecoder: set of base_ts for segment formats other than time
...
Fixes setting of converted segment start as base_ts when estimate rate
is allowed.
2012-10-11 13:17:01 +02:00
Sebastian Dröge
e779002cfd
audiodecoder: Don't unref caps twice
...
Thanks to Josep Torra for noticing.
2012-10-10 15:50:31 +02:00
Wim Taymans
3591df23b1
docs: playbin2 -> playbin
2012-10-09 12:20:10 +02:00
Andoni Morales Alastruey
8a5cf5ef4d
audio/video: update documentation for vfunc's that require chaining up
2012-10-08 13:04:02 +02:00
Tim-Philipp Müller
cdb22274e6
audioencoder: make stop() vfunc also optional
...
Just change default value, since we also don't want to fail
if we want to deactivate and aren't active or want to activate
and are already active.
https://bugzilla.gnome.org/show_bug.cgi?id=685490
2012-10-04 13:40:32 +01:00
Andoni Morales Alastruey
795d366a0c
audioencoder: don't fail if the start vfunc is not implemented
...
Fix behaviour to match documentation and decoder class behaviour.
https://bugzilla.gnome.org/show_bug.cgi?id=685490
2012-10-04 13:14:10 +01:00
Michael Smith
92560517e8
Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base
2012-10-03 10:45:26 -07:00
Michael Smith
a29c4f9489
meta registration: use g_once functions to register these threadsafely.
2012-10-03 10:44:59 -07:00
Arun Raghavan
9f9718715a
audio: Explicitly specify endianness for IEC 61937 payloading
...
This is required since some systems (DirectSound and OS X) manage the
final byte order themselves.
https://bugzilla.gnome.org/show_bug.cgi?id=678021
2012-09-19 09:15:16 +05:30
Mark Nauwelaerts
c629a44162
replace gst_tag_list_free with gst_tag_list_unref
2012-09-14 17:53:21 +02:00
Wim Taymans
a57198a0ba
audio: improve property description
...
Improve the description of the latency-time and buffer-time properties in the
audio sink and source.
2012-09-14 16:08:50 +02:00
Sebastian Dröge
6e33f2d464
audiodecoder: Don't output an (unreffed) buffer in error cases
2012-09-14 14:54:22 +02:00
Tim-Philipp Müller
f7c6aa5abd
Release 0.11.94
2012-09-14 02:47:54 +01:00
Olivier Crête
b35bc51ed6
audio: Fix annotations
2012-09-13 17:11:56 -04:00
Wim Taymans
0ce33461c8
audiosrc: check for flushing state in provide_clock
...
Only provide a clock when we are not flushing, this means that we have posted a
PROVIDE_CLOCK message. We used to check if we were acquired but that doesn't
work anymore now that we do the negotiation async in the streaming thread: it's
possible that we are still negotiating when the pipeline asks us for a clock.
2012-09-10 12:19:22 +02:00
Wim Taymans
44dab50b7a
ringbuffer: add method to check the flushing state
2012-09-10 12:19:22 +02:00
Mark Nauwelaerts
75fe950c33
gst-libs: restore original full padding
2012-09-10 11:45:44 +02:00
Pontus Oldberg
a2f8ec4f5a
ringbuffer: add support for timestamps
...
Make it possible for subclasses to provide the timestamp (as an absolute time
against the pipeline clock) of the last read data.
Fix up alsa to provide the timestamp received from alsa. Because the alsa
timestamps are in monotonic time, we can only do this when the monotonic clock
has been selected as the pipeline clock.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=635256
2012-09-10 11:34:14 +02:00
Mark Nauwelaerts
a29fab200c
audio{de,en}coder: use GstClockTime parameters where appropriate
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683672
2012-09-10 11:20:50 +02:00
Thibault Saunier
dc5bb008a3
audio: port to the new GLib thread API
2012-09-09 20:41:06 -03:00
Tim-Philipp Müller
2079a8c12b
Remove glib-compat-private.h stuff we don't need any more
...
It's all been ported to the latest GLib API now.
2012-09-09 18:36:49 +01:00
Mark Nauwelaerts
c9d3f32cc9
audioencoder: plug some leaks
2012-09-06 12:16:59 +02:00
Wim Taymans
668ce33384
update for basesink change
2012-09-04 12:18:11 +02:00
Tim-Philipp Müller
a99a1042b9
gst_message_new_duration() -> gst_message_new_duration_changed()
2012-09-02 01:27:17 +01:00
Jan Schmidt
5dafecad31
audiodecoder: Handle GAP events in place of segment updates
...
Use them to trigger generation of an empty output buffer or
to send pending events downstream and trigger pre-roll
2012-08-31 12:42:12 -07:00
Edward Hervey
def07410ef
audiobasesink: Avoid resetting ringbuffer when not needed
...
If the ringbuffer was configured to the same caps as previously, we
don't need to reconfigure it.
2012-08-14 18:56:00 +02:00
Víctor Manuel Jáquez Leal
f7f0c55e5f
audiodecoder: getter for allocator
...
Sometimes the decoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.
This patch expose a getter accessor for the negotiated memory allocator.
2012-08-14 15:47:34 +02:00
Víctor Manuel Jáquez Leal
936ec3eb8f
audioencoder: getter for allocator
...
Sometimes the encoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.
This patch expose a getter accessor for the negotiated memory allocator.
2012-08-14 15:47:29 +02:00
Tim-Philipp Müller
2ff4d2efe3
audioencoder: return TRUE from _set_output_format() if all is good
...
Fixes not-negotiated errors in wavpackenc unit test.
2012-08-13 23:34:52 +01:00
Sebastian Dröge
62ec7f837d
audioencoder: Let global tag events be handled the same way as other events
2012-08-09 17:06:31 +02:00
Sebastian Dröge
e9fbba63b5
audiodecoder: Let global tag events be handled the same way as other events
2012-08-09 16:55:19 +02:00
Sebastian Dröge
2a1f8a4da3
audio: Merge upstream stream tags
2012-08-09 16:24:47 +02:00
Sebastian Dröge
7f0e65bb46
audio: Always keep a complete taglist around
...
Otherwise updates to the tags will cause non-updated
tags to be lost downstream.
2012-08-09 15:48:03 +02:00
Sebastian Dröge
bc4d923982
audioencoder: Add negotiate vfunc that is used to negotiate with downstream
...
The default implementation negotiates a buffer pool and allocator
with downstream.
2012-08-09 15:27:33 +02:00
Sebastian Dröge
9309272309
audioencoder: Decouple setting of output format and downstream negotiation
...
This makes the audio encoder base class more similar to the video
encoder base class.
2012-08-09 15:21:01 +02:00
Sebastian Dröge
513d4f7cd1
audiodecoder: Add negotiate vfunc that is used to negotiate with downstream
...
The default implementation negotiates a buffer pool and allocator
with downstream.
2012-08-09 15:10:05 +02:00
Sebastian Dröge
e1702d62a0
audiodecoder: Decouple setting of output format and downstream negotiation
...
This makes the audio decoder base class more similar to the video
decoder base class.
2012-08-09 15:02:27 +02:00
Tim-Philipp Müller
6422f2d085
Update .gitignore
2012-08-08 09:06:30 +01:00
Tim-Philipp Müller
ca31913c04
audiocdsrc: update for TOC API change
2012-07-28 11:13:12 +01:00
Sebastian Dröge
99d73c94e9
tag: Update for taglist/tag event API changes
2012-07-28 00:35:02 +02:00
Wim Taymans
683a38ad65
update for new variable names
2012-07-27 15:24:43 +02:00
Wim Taymans
40a0624e99
audio-format: fix shift for 18 bits samples
...
The 18bits of the sample are in the LSB so we need to shift them 14 positions to
bring them to 32 bits.
2012-07-26 15:42:38 +02:00
Mark Nauwelaerts
c91615bd82
audio{de,en}coder: delay input caps processing until processing data
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680614
2012-07-26 14:35:30 +02:00
Mark Nauwelaerts
28537dc73c
audioencoder: avoid setting output caps twice
...
... which may not be handled or appreciated well downstream,
e.g. muxers only performing header setup once.
2012-07-25 15:58:19 +02:00
Mark Nauwelaerts
1f962bc108
audioencoder: also consider filter caps in getcaps
2012-07-25 15:58:19 +02:00
Mark Nauwelaerts
26d74941fb
Revert "audioencoder: plug caps ref leak"
...
This reverts commit 08ff5899a7
.
Was not a leak to begin with as we did not have ownership of caps.
2012-07-25 12:30:54 +02:00
Mark Nauwelaerts
08ff5899a7
audioencoder: plug caps ref leak
2012-07-25 11:58:26 +02:00
Mark Nauwelaerts
473371f943
audiodecoder: hold caps ref while needed
2012-07-25 11:58:26 +02:00
Mark Nauwelaerts
d55529621c
audioencoder: correctly compare audio info positions
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680553
2012-07-25 11:58:26 +02:00
Mark Nauwelaerts
65ea6dee60
audiodecoder: only arrange to reconfigure if data provided
...
... otherwise audio format need not be known already.
2012-07-24 14:48:59 +02:00
Mark Nauwelaerts
d63a4024b8
audiodecoder: minor doc fix
2012-07-24 12:30:21 +02:00
Wim Taymans
5ff002b47a
audio: prefix orc_* functions with audio_orc_*
...
To avoid potential conflicts in other modules when statically linking
2012-07-23 17:16:34 +02:00
Sebastian Dröge
d55d7fdc38
audio: Renegotiate if necessary
...
And also correct usage of the base class stream lock.
2012-07-23 12:01:12 +02:00
Sebastian Dröge
7b06c34868
audiodecoder: Handle allocation query
2012-07-23 11:42:22 +02:00
Sebastian Dröge
0814d38e98
audiodecoder: Add propose_allocation, decide_allocation vfuncs and functions to allocate buffers with information from the allocation query results
2012-07-23 10:28:05 +02:00
Sebastian Dröge
0513d3d9f4
audioencoder: Add propose_allocation, decide_allocation vfuncs and functions to allocate buffers with information from the allocation query results
2012-07-23 10:20:05 +02:00
Edward Hervey
55f692eff6
audiodecoder: Don't assert on pad caps not being set
...
The decoder might have been de-activated in the meantime (resulting
in NULL pad caps).
If the decoder really isn't configured, then it will error out further
down when checking whether the GST_AUDIO_INFO_IS_VALID()
https://bugzilla.gnome.org/show_bug.cgi?id=667562
2012-07-19 10:55:53 +02:00
Evan Nemerson
7a7374f2ef
audiometa: add missing array array annotations
2012-07-17 11:07:18 +02:00
Evan Nemerson
17815020fd
audio: add missing array and element-type annotations for binary data
2012-07-17 11:06:57 +02:00
Evan Nemerson
fd91104636
audio-channels: add missing array-related annotations
2012-07-17 11:06:47 +02:00
Evan Nemerson
1606028c08
audioencoder: add missing element-type to set_headers method
2012-07-17 11:06:22 +02:00
Edward Hervey
2817bdadc9
libs: Remove "Since" markers and minor doc fixups
2012-07-13 12:11:06 +02:00
Edward Hervey
c9428c96b1
baseaudiosink: Resync when ringbuffer resets
...
When the ringbuffer gets restarted (like in setcaps), we *will* have
to resync against the new values.
Without this we end up blindly assuming the new samples align to the
old ones.
2012-07-12 09:51:35 +02:00
Sebastian Dröge
9de1b170b3
audiocdsrc: Remove the TOC query handling
2012-07-05 12:35:35 +02:00
Sebastian Dröge
0ac1596d8d
audiocdsrc: Update for TOC API changes
2012-07-05 12:29:00 +02:00
Sebastian Dröge
b362ec3a57
audiocdsrc: Only push TOC event, the TOC message is handled by the sinks
2012-07-03 17:31:54 +02:00
Tim-Philipp Müller
df70b2d2ce
audiocdsrc: send TOC event downstream if we're in continuous mode
...
If we're in continuous mode where we'll play the entire CD from
start to finish, send a TOC event downstream so any downstream
muxers can write a TOC to indicate where the various tracks
start and end.
2012-06-28 23:41:16 +01:00
Tim-Philipp Müller
b27c649a48
audiocdsrc: post TOC message on the bus on start-up
...
First attempt at implement the various GstToc API
bits in GstAudioCdSrc.
https://bugzilla.gnome.org/show_bug.cgi?id=668996
2012-06-26 19:53:35 +01:00
Tim-Philipp Müller
a821d428bb
audio: make sure g-i doesn't parse orc-generated gstaudiopack.h file
2012-06-24 00:28:40 +01:00
Wim Taymans
c003efcc63
audiobasesink: fix for basesink API change
2012-06-18 11:40:36 +02:00
Jan Schmidt
d9740bf9ba
audio decoder: Add some debug output for bad caps from children
2012-06-12 23:52:35 +10:00
Vincent Penquerc'h
f8b8711081
audiodecoder: push queued events only when we have a first buffer
...
https://bugzilla.gnome.org/show_bug.cgi?id=675812
2012-06-11 11:29:13 +01:00
Wim Taymans
9d6967fe9a
Add generated orc files
2012-06-08 17:57:43 +02:00
Wim Taymans
12ac9f0aa2
Also build the orc generated code
2012-06-08 17:57:43 +02:00
Wim Taymans
3f8c5ea036
audio: add orc enabled pack and unpack functions
2012-06-08 17:57:43 +02:00
Wim Taymans
8e393d898a
audio: add flag to mark possible unpack formats
...
Make a new flag to mark formats that can be used in pack and unpack functions.
Mark S32NE and F64NE as those unpack formats
2012-06-08 17:57:43 +02:00
Sebastian Dröge
462c4cc3d8
audio: Remove unused, generated marshallers
2012-06-08 11:28:56 +02:00
Wim Taymans
3da0b71876
audio: split audio header into logical parts
2012-06-08 10:10:08 +02:00
Wim Taymans
a2172bdb4b
update for tag event change
2012-06-06 13:05:47 +02:00
Sebastian Dröge
2667d4bb82
Revert "audiodecoder: Error out earlier in a few places if something goes wrong"
...
This reverts commit eb68a2d5a7
.
This sometimes errors out too early now, needs some more thoughts.
2012-06-04 10:01:42 +02:00
Sebastian Dröge
f609b3a627
audiodecoder: Return setcaps return value instead of always TRUE
2012-06-04 09:56:30 +02:00
Sebastian Dröge
eb68a2d5a7
audiodecoder: Error out earlier in a few places if something goes wrong
2012-06-02 17:16:13 +02:00
Wim Taymans
c66da2c74b
audio: add flags for the pack/unpack functions
...
Add a flag argument to the pack and unpack function so that we can expand it
later when needed. We could for example prefer a High Quality pack/unpack
operation later.
2012-05-29 09:54:43 +02:00
Arun Raghavan
9c29cd70ee
audio: Fix DTS IEC61937 payloading
...
DTS type I-III specify the burst length in bits. Only type IV (which we
do not currently support) needs it to be specified in bytes. Thanks to
Julien Moutte for pointing this out.
2012-05-25 12:38:32 +02:00
Sebastian Rasmussen
b7b123964b
gst-libs: make pkg-config get path to pkg-config dirs from configure
...
When --with-pkg-config-path is supplied to configure this path is now
explicitly propagated to pkg-config.
https://bugzilla.gnome.org/show_bug.cgi?id=673377
2012-05-05 23:26:20 +01:00
Sebastian Dröge
69b18ab09d
gst-libs: Remove interfaces libs and mixer/tuner interfaces
...
The navigation interface is now in the video library.
2012-04-13 13:14:13 +02:00
Alban Browaeys
6c8abf24cf
libs: Link against internal tag library
2012-04-11 09:58:49 +02:00
Sebastian Dröge
8091546694
audio: Remove obsolete FIXME 0.11
2012-04-11 09:57:35 +02:00
Alessandro Decina
ebf80977c4
audiodecoder: don't discard timestamps when consecutive input buffers have the same ts
...
Avoid pushing out buffers with the same timestamp only if the out buffers are
decoded from the same input buffer. Instead keep the timestamps when upstream
pushes consecutive buffers with the same ts.
2012-04-05 10:19:46 +02:00
Mark Nauwelaerts
6eeca397fc
audioencoder: plug a definite and rare leak
2012-04-04 19:57:35 +02:00
Sebastian Dröge
65307dd132
gst: Update versioning
2012-04-04 14:55:15 +02:00
Mark Nauwelaerts
91aa1eb7dd
audio{de,en}coder: fixup documentation
2012-04-02 14:23:33 +02:00
Sebastian Dröge
b701534204
audioencoder: Fix handling of offset/offset-end for Ogg codecs
...
Fixes the vorbisenc unit test.
2012-03-31 12:55:15 +02:00
Sebastian Dröge
a103fa85a9
audio{en,de}coder: Track input and output segments separately
...
They can go out of sync for some time if processing of buffers
on the old segment happens after the segment was received.
2012-03-30 13:21:09 +02:00
Sebastian Dröge
9cd9f00799
audioencoder: Add gst_audio_encoder_set_headers() to the docs
2012-03-30 12:57:02 +02:00
Sebastian Dröge
78bcb67ea5
audioencoder: Add function to set in-stream headers
...
API: gst_audio_encoder_set_headers()
This makes the hack in vorbisenc and probably others in ::pre_push()
unnecessary.
2012-03-30 12:47:28 +02:00
Sebastian Dröge
f791ec1f10
audioencoder: Rename ::event() to ::sink_event() and add ::src_event()
2012-03-30 12:23:13 +02:00
Sebastian Dröge
d8cb235fe4
audiodecoder: Rename ::event() to ::sink_event() and add ::src_event()
2012-03-30 12:23:13 +02:00
Sebastian Dröge
40a4f2f8aa
audiodecoder: Rename _byte_time() to _estimate_rate()
...
Which is telling more about what this actually does and is more
consistent with the video base classes.
2012-03-30 11:51:47 +02:00
Mark Nauwelaerts
2ddc6bb63d
audiodecoder: handle downstream seeking query
...
... or not, in line with how segment events are treated.
2012-03-28 16:41:01 +02:00
Wim Taymans
77a4f5865b
audioencoder: avoid caps copy
2012-03-27 15:44:43 +02:00
Wim Taymans
32bd12dba9
Merge branch 'master' into 0.11
...
Conflicts:
.gitignore
common
configure.ac
ext/vorbis/gstvorbisdeclib.h
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/riff/riff-read.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
tests/check/libs/video.c
2012-03-22 11:35:13 +01:00
Wim Taymans
a619d3a8b0
update for memory api changes
2012-03-20 13:20:36 +01:00
Mark Nauwelaerts
278b0f093b
audio: include audio enumtypes
2012-03-19 16:18:56 +01:00
Wim Taymans
dfb8e7cb2c
don't pass random pointers to pull_range
2012-03-16 21:46:47 +01:00
Wim Taymans
4e1ed6f649
audio: fix debug line
2012-03-13 12:39:52 +01:00
Wim Taymans
25137962ad
fix for caps API changes
2012-03-11 19:04:41 +01:00
Wim Taymans
7296ef7c63
audiobasesink: add some G_LIKELY
2012-03-09 17:15:38 +01:00
Wim Taymans
94869bff38
audio: avoid buffer copy when nothing is clipped
...
when nothing is clipped, return the input buffer instead of creating and
returning an identical copy.
2012-03-09 16:17:54 +01:00
Sebastian Dröge
7ff608889a
audio{en,de}coder: Add optional open/close vfuncs
...
This can be used to do something in NULL->READY, like checking
if a hardware codec is actually available and to error out early.
2012-03-09 10:56:07 +01:00
Tim-Philipp Müller
29c266ccff
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
common
docs/libs/gst-plugins-base-libs.types
ext/pango/gsttextoverlay.c
ext/vorbis/gstvorbisdec.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
sys/ximage/ximagesink.c
sys/xvimage/xvimagesink.c
2012-03-08 20:31:34 +00:00
Mark Nauwelaerts
8a3f818dce
audiodecoder: add some tag handling convenience help
2012-03-06 16:17:37 +01:00
Mark Nauwelaerts
5a0fff76f3
audiodecoder: add baseclass _CAST macro
2012-03-06 16:17:33 +01:00
Mark Nauwelaerts
d19f5467cc
audio: add helper function to convert mask to channel positions
...
... as there may be other than raw audio formats using a channel mask,
and there is already one to convert the other way around.
2012-03-05 13:03:57 +01:00
Mark Nauwelaerts
debbc75272
audioencoder: stop proxying some old-style 0.10 raw audio caps fields
2012-03-05 13:03:57 +01:00
Mark Nauwelaerts
1a2863bf33
audioencoder: store segment event as pending event to forego dropping it
2012-03-05 13:03:57 +01:00
Mark Nauwelaerts
aae64c40a8
audiodecoder: plug caps leak when setting output format
2012-03-05 13:03:57 +01:00
Mark Nauwelaerts
3b0a2a60da
audiodecoder: enhance some debug statement
2012-03-05 11:04:20 +01:00
Sebastian Dröge
f7939bb43f
Merge branch 'master' into 0.11
...
Conflicts:
NEWS
RELEASE
configure.ac
docs/plugins/gst-plugins-base-plugins.args
docs/plugins/gst-plugins-base-plugins.hierarchy
docs/plugins/gst-plugins-base-plugins.interfaces
docs/plugins/inspect/plugin-adder.xml
docs/plugins/inspect/plugin-alsa.xml
docs/plugins/inspect/plugin-app.xml
docs/plugins/inspect/plugin-audioconvert.xml
docs/plugins/inspect/plugin-audiorate.xml
docs/plugins/inspect/plugin-audioresample.xml
docs/plugins/inspect/plugin-audiotestsrc.xml
docs/plugins/inspect/plugin-cdparanoia.xml
docs/plugins/inspect/plugin-encoding.xml
docs/plugins/inspect/plugin-ffmpegcolorspace.xml
docs/plugins/inspect/plugin-gdp.xml
docs/plugins/inspect/plugin-gio.xml
docs/plugins/inspect/plugin-gnomevfs.xml
docs/plugins/inspect/plugin-libvisual.xml
docs/plugins/inspect/plugin-ogg.xml
docs/plugins/inspect/plugin-pango.xml
docs/plugins/inspect/plugin-playback.xml
docs/plugins/inspect/plugin-subparse.xml
docs/plugins/inspect/plugin-tcp.xml
docs/plugins/inspect/plugin-theora.xml
docs/plugins/inspect/plugin-typefindfunctions.xml
docs/plugins/inspect/plugin-uridecodebin.xml
docs/plugins/inspect/plugin-videorate.xml
docs/plugins/inspect/plugin-videoscale.xml
docs/plugins/inspect/plugin-videotestsrc.xml
docs/plugins/inspect/plugin-volume.xml
docs/plugins/inspect/plugin-vorbis.xml
docs/plugins/inspect/plugin-ximagesink.xml
docs/plugins/inspect/plugin-xvimagesink.xml
gst-libs/gst/app/gstappsink.c
gst-libs/gst/audio/mixer.c
gst-libs/gst/audio/mixer.h
gst-libs/gst/tag/gstxmptag.c
gst-libs/gst/video/colorbalance.c
gst-libs/gst/video/colorbalance.h
gst/adder/gstadder.c
gst/playback/gstplaybasebin.c
gst/playback/gstplaybin2.c
gst/playback/gstplaysink.c
gst/videoscale/gstvideoscale.c
tests/check/elements/videoscale.c
tests/examples/seek/seek.c
tests/examples/v4l/probe.c
win32/common/_stdint.h
win32/common/audio-enumtypes.c
win32/common/config.h
2012-03-02 10:00:55 +01:00
Wim Taymans
502c12f827
update for metadata API changes
2012-02-29 17:25:10 +01:00
Wim Taymans
a232714065
meta: add return value to transform
2012-02-28 16:18:30 +01:00
Wim Taymans
1c05eeece5
update for metadata tags
2012-02-28 12:10:14 +01:00
Philippe Normand
63ace8872d
audio: link against libm
...
It is used in gststreamvolume.
2012-02-27 14:36:25 +00:00
Edward Hervey
59918e841f
Suppress deprecation warnings in selected files, for g_value_array_* mostly
2012-02-27 14:28:15 +01:00
Wim Taymans
5a0354b416
audioencoder: don't leak event
2012-02-27 13:08:36 +01:00
Wim Taymans
15eb385412
audioencoder: use default event function
...
Implement a default event function so that subclasses can call it without having
to return FALSE (and make it impossible to report errors).
2012-02-27 12:49:52 +01:00
Wim Taymans
525f330142
update for metadata changes
2012-02-24 10:26:04 +01:00
Wim Taymans
268d52fd33
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/rtsp/gstrtspconnection.c
win32/common/libgstaudio.def
2012-02-17 23:46:17 +01:00
Tim-Philipp Müller
0f6c8a27a7
docs: add new audio base class API to docs and .def file
2012-02-17 15:08:36 +00:00
Wim Taymans
e44dd9db8f
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/pbutils/gstdiscoverer.c
2012-02-16 14:23:28 +01:00
Mark Nauwelaerts
439884d628
audiodecoder: add some properties to tweak baseclass behaviour
...
... so subclass can also rely upon never being bothered with some NULL buffer
it can't do any interesting with, or with any data before it received
any format configuration (and setup properly).
2012-02-16 12:35:53 +01:00
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
a75e9102c5
GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING
2012-02-08 15:17:49 +01: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
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
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
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
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
fcdc385aa1
port to new map API
2012-01-25 12:30:53 +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
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
Mark Nauwelaerts
974c678ec8
audiodecoder: register state change function
2012-01-17 11:53:51 +01: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
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
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
Wim Taymans
dd43d0697e
audio: expose API to convert channel array to a mask
2012-01-05 13:59:32 +01: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
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
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
Wim Taymans
e9eaf17eae
audioencoder: turn assert into a real error
...
Post a real error instead of just asserting. Fixes a unit test.
2012-01-02 15:42:39 +01:00
Tim-Philipp Müller
26e612aeda
playback, mixerutils: gst_registry_get_default() -> gst_registry_get()
2012-01-02 14:32:11 +00:00
Wim Taymans
ed6fd4eb2f
audio: add flag for unpositioned layout
...
Check if thr layout is explicitly unpositioned and set a flag in the
audio info structure.
2012-01-02 15:01:58 +01:00
Tim-Philipp Müller
c3e6e23b85
audio, rtsp: remove private/protected gtk-doc markup for enums
...
This confuses glib-mkenums, and is not really useful anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=666618
2012-01-02 00:19:57 +00:00
Tim-Philipp Müller
d877ef13f5
docs: make gtk-doc happier
2011-12-30 19:24:09 +00:00
Tim-Philipp Müller
62e5a67376
audiocdsrc: remove some probing-related vfuncs
...
GstPropertyProbe was removed, so these aren't actually used
and we probably want something different for the new API.
2011-12-30 16:26:47 +00:00
Tim-Philipp Müller
6a85353a92
audiocdsrc: update for GstIndex removal
2011-12-30 16:18:39 +00:00
Tim-Philipp Müller
31890ef59b
audiocdsrc: make private bits private
2011-12-30 16:12:30 +00:00
Edward Hervey
f562a29284
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/theora/gsttheoraenc.c
gst-libs/gst/tag/gstexiftag.c
gst/adder/gstadder.c
gst/adder/gstadder.h
gst/playback/gstdecodebin2.c
gst/playback/gstsubtitleoverlay.c
tests/check/libs/tag.c
2011-12-30 13:21:35 +01:00
Tim-Philipp Müller
3dfdd6be9d
audioringbuffer: rename GST_BUFTYPE_* to GST_AUDIO_RING_BUFFER_FORMAT_TYPE_*
...
Bit unwieldy, but more appropriate. Could also be moved into
audio.h as GstAudioFormatType.
2011-12-25 21:38:21 +00:00
Tim-Philipp Müller
80095caa40
audioringbuffer: remove unused GstAudioRingBufferSegState enum and field
2011-12-25 21:23:11 +00:00
Mark Nauwelaerts
e3c78ff661
audioencoder: add a few more debug statements
2011-12-22 16:58:37 +01:00
Mark Nauwelaerts
9bfa65b7d3
audiodecoder: tweak documentation
2011-12-22 16:58:34 +01:00
Wim Taymans
ddc05e0ed1
propertyprobe: remove propertyprobe
...
Remove the propertyprobe interface
Improve docs
2011-12-21 11:58:53 +01:00
Sebastian Dröge
2760dd2068
audiobasesrc: Use guint8 instead of guchar
2011-12-20 14:36:28 +01:00
Sebastian Dröge
338622fe7e
audioringbuffer: Use guint8 instead of guchar
2011-12-20 14:36:28 +01:00
Mark Nauwelaerts
c41f3cbef0
audiodecoder: set a non-zero default maximum tolerated errors
...
Whereas the previous default 0 was backwards compatible in that it lead
to erroring out immediately upon any error, elements that are really
ported and using the base class error macro can be assumed to intend to
improve behaviour rather than maintaining the old one. So, make it easy
on those and any future one and tolerate some errors by default, as intended.
Fixes #666579 .
2011-12-20 12:50:18 +01:00
Wim Taymans
7505b7a55c
add audio metadata
...
Add some audio metadata to describe a downmix matrix.
Add metadata to media type document.
2011-12-20 12:02:25 +01:00
Vincent Penquerc'h
12be1e6fc5
baseaudiosink: fix late buffer leak
2011-12-13 12:55:45 +00:00
Tim-Philipp Müller
fb6d09055a
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/alsa/gstalsadeviceprobe.c
ext/alsa/gstalsamixer.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextoverlay.h
gst-libs/gst/audio/gstaudiobasesink.c
gst-libs/gst/audio/gstaudioringbuffer.c
gst-libs/gst/audio/gstaudiosrc.c
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst/encoding/gststreamcombiner.c
gst/encoding/gststreamsplitter.c
gst/playback/gstplaybasebin.c
gst/playback/gststreamsynchronizer.c
gst/playback/gstsubtitleoverlay.c
gst/playback/gsturidecodebin.c
sys/xvimage/xvimagesink.c
tests/examples/Makefile.am
win32/common/libgstvideo.def
Video overlay composition disabled for now, needs
porting to buffer meta.
2011-12-08 01:19:03 +00:00
Wim Taymans
f096b8a8d8
ringbuffer: remove old _full version
2011-12-06 15:06:12 +01:00
Wim Taymans
9e97260c9f
fix for basesrc changes
2011-12-06 13:59:11 +01:00
Tim-Philipp Müller
5440ae3c18
Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
...
GStaticRecMutex is part of our API/ABI, not much we can do here
in 0.10 for most of these.
2011-12-04 20:50:25 +00:00
Tim-Philipp Müller
0d98aa25b8
Work around deprecated thread API in glib master
...
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.
Replace g_thread_create() with g_thread_try_new().
2011-12-04 17:16:30 +00:00
Wim Taymans
1225aa9a78
update for basesink event handler changes
2011-12-02 22:24:43 +01:00
Tim-Philipp Müller
177525f89f
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst-libs/gst/netbuffer/gstnetbuffer.c
gst/ffmpegcolorspace/avcodec.h
gst/ffmpegcolorspace/gstffmpegcodecmap.c
gst/ffmpegcolorspace/imgconvert.c
gst/ffmpegcolorspace/imgconvert_template.h
gst/ffmpegcolorspace/mem.c
gst/playback/README
gst/playback/gstplaybasebin.c
gst/playback/gstplaybasebin.h
gst/playback/gstplaybin.c
sys/v4l/v4lmjpegsrc_calls.c
sys/v4l/videodev_mjpeg.h
tests/check/elements/gnomevfssink.c
2011-12-02 11:10:17 +00:00
Piotr Fusik
14644457b0
various: typo fixes
...
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Wim Taymans
59113af604
Use the new GstSample for snapshots
...
Make appsink return a GstSample. Remove the pull_buffer_list method because it
is not very useful anymore.
Pass GstSample to the conversion function.
Update playbin2 and examples
2011-12-01 16:53:11 +01:00
Edward Hervey
e44db979f9
audio: Add audio-marshal.list to dist-ed files
2011-11-30 11:33:41 +01:00
Wim Taymans
47cbb230e9
audio: move audio interfaces
...
Move the audio related interfaces to the audio library.
2011-11-30 07:57:02 +01:00
Tim-Philipp Müller
0c056a04fe
Merge commit '4a58223e4c824fedc024af435337a769e8ce593e' into 0.11
2011-11-28 21:20:10 +00:00
Wim Taymans
5b868bd424
Update for indexable change
2011-11-28 18:24:03 +01:00
Wim Taymans
468d1dde89
audio: update for clock provider API change
2011-11-28 17:51:41 +01:00
Mark Nauwelaerts
4a58223e4c
audioencoder: elaborate some documentation
2011-11-28 11:37:33 +01:00
Mark Nauwelaerts
9f57d91137
audiodecoder: add some documentation
2011-11-28 11:37:27 +01:00
Mark Nauwelaerts
856a5dd581
audiodecoder: really discard NULL decoded frame altogether
...
... including any timestamp, rather than having that one influence base_ts.
2011-11-28 11:37:23 +01:00
Tim-Philipp Müller
32b14c6ed3
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/vorbis/gstvorbisenc.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysinkconvertbin.c
gst/videorate/gstvideorate.c
2011-11-26 12:12:59 +00:00
Tim-Philipp Müller
a0639dad38
audio: remove unstable API guards from the audio decoder and encoder base classes
2011-11-25 13:11:54 +00:00
Matej Knopp
817f39608c
Fix printf format compiler warnings for OSX / 64bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662607
2011-11-22 01:00:59 +00:00
Wim Taymans
8fc2a21775
update for activation changes
2011-11-21 13:35:34 +01:00
Wim Taymans
d0bd5f04c0
update for new scheduling query
2011-11-18 17:58:58 +01:00
Wim Taymans
1ad4d20607
add parent to activate functions
2011-11-18 13:56:04 +01:00
Wim Taymans
285702a1a6
fix for scheduling mode rename
2011-11-18 12:37:10 +01:00
Wim Taymans
7afdff3575
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/gstaudiodecoder.c
2011-11-17 17:07:41 +01:00
Wim Taymans
e302833e65
add parent to pad functions
2011-11-17 12:48:25 +01:00
Mark Nauwelaerts
69c2c46472
audioencoder: invalidate format info when setup negotiation failed
...
... which ensures nothing subsequently tries to slip past _chain
and into a possibly improperly setup subclass.
2011-11-16 19:03:47 +01:00
Vincent Penquerc'h
f17f918b75
audiodecoder: accept dropped buffers before we know the format
...
This allows flacdec to not emit audio for headers, while allowing
the base audio decoder to keep its timestamps in sync.
2011-11-16 16:54:03 +00:00
Wim Taymans
2202511e77
add parent to query function
2011-11-16 17:25:17 +01:00
Wim Taymans
28157e6f21
_query_peer_*() -> _peer_query_*()
2011-11-15 18:04:17 +01:00
Wim Taymans
ab9ffa93f5
change getcaps to query
...
Add sink and src event functions in rtpbasepayload
Add query vmethod to rtpbasepayload.
2011-11-15 18:04:16 +01:00
Vincent Penquerc'h
3e095382a1
audiodecoder: accept dropped buffers before we know the format
...
This allows flacdec to not emit audio for headers, while allowing
the base audio decoder to keep its timestamps in sync.
2011-11-15 13:29:31 +00:00
Robert Swain
a23dff1fbb
audio: Remove some unused variables
2011-11-14 12:49:50 +01:00
Mark Nauwelaerts
38615abdd8
audiodecoder: improve reverse playback
...
... by doing some more (reverse) timestamp interpolating and
refactoring downstream pushing.
Fixes #661983 .
2011-11-14 12:00:06 +01:00
Tim-Philipp Müller
c76e5804b3
Update for GstURIHandler get_protocols() changes
2011-11-13 23:44:23 +00:00
Tim-Philipp Müller
455f337e3d
gio, appsrc, appsink, cdaudiosrc: update for GstURIHandler API changes
2011-11-13 18:22:06 +00:00
Tim-Philipp Müller
4b0dce5148
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst-libs/gst/audio/Makefile.am
gst-libs/gst/audio/audio.h
tests/examples/seek/jsseek.c
tests/examples/seek/seek.c
tests/icles/test-colorkey.c
2011-11-13 13:36:29 +00:00
Tim-Philipp Müller
cd21e69913
audio: add GST_AUDIO_INFO_IS_VALID macro and use in audio decoder base class
...
API: GST_AUDIO_INFO_IS_VALID
2011-11-13 13:18:16 +00:00
Tim-Philipp Müller
394b1f8c3c
audio: fix order in LIBADD
...
Local libs must come first.
2011-11-12 12:13:05 +00:00
Tim-Philipp Müller
756c9e2948
audio: fix order in LIBADD
...
Local libs must come first.
2011-11-12 11:58:59 +00:00
Tim-Philipp Müller
dfc13ec632
cdda: rename GstCddaBaseSrc to GstAudioCdSrc and move to libgstaudio
...
Another mini-lib down, to make space for new mini libs.
Remove bogus copyright line while at it.
2011-11-12 11:58:58 +00:00
Wim Taymans
c42e257751
audio: fix docs
2011-11-11 19:13:52 +01:00
Wim Taymans
b645287775
audio: fix headers
...
Add const to some methods.
Add padding.
Add GType for GstAudioInfo and GstAudioFormatInfo.
Add new/copy/free for GstAudioInfo.
2011-11-11 17:53:03 +01:00
Wim Taymans
a3416bc11f
rename baseaudio* -> audiobase*
2011-11-11 12:00:52 +01:00
Wim Taymans
ee7072fe7e
rename GstBaseAudio* ->GstAudioBase*
2011-11-11 11:52:47 +01:00
Wim Taymans
3d0ac3ded2
rename files to match contained objects
2011-11-11 11:33:15 +01:00
Wim Taymans
6511f36fdb
audio: GstRingBuffer -> GstAudioRingBuffer
2011-11-11 11:21:41 +01:00
Wim Taymans
b81af23992
audio: rename internal audio ringbuffer
2011-11-11 10:54:39 +01:00
Wim Taymans
ad8f694ec6
remove bogus files
...
They got somehow commited in 7012e88090
2011-11-11 10:39:52 +01:00
Wim Taymans
e338792ab0
update for adapter api changes
2011-11-10 18:32:39 +01:00
Wim Taymans
f8ef57ca48
Merge branch 'master' into 0.11
2011-11-10 17:26:12 +01:00
Vincent Penquerc'h
0d47c615ad
baseaudiosink: make unsigned properties unsigned, not signed
2011-11-10 15:55:31 +00:00
Wim Taymans
57eaf388e0
audio: fix base class vmethods
2011-11-10 16:24:12 +01:00
Wim Taymans
ea9bc40bf9
audiosrc: avoid deadlock
2011-11-10 16:05:19 +01:00
Wim Taymans
1f8fe283f6
audioclock: remove _full version
2011-11-10 13:51:23 +01:00
Wim Taymans
d77c8cafee
Merge branch 'master' into 0.11
...
Conflicts:
common
ext/pango/gsttextoverlay.c
gst-libs/gst/video/video.c
2011-11-09 12:11:59 +01:00
Wim Taymans
372b9329b9
remove query types
2011-11-09 11:47:54 +01:00
Tim-Philipp Müller
d7fc45f42e
docs: fix up some Since: markers
2011-11-07 23:05:44 +00:00
Wim Taymans
7ac25e9b26
Merge branch 'master' into 0.11
...
Conflicts:
common
configure.ac
gst-libs/gst/audio/gstbaseaudiosink.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysinkaudioconvert.c
gst/playback/gstplaysinkaudioconvert.h
gst/playback/gstplaysinkvideoconvert.c
gst/playback/gstplaysinkvideoconvert.h
2011-11-07 12:23:15 +01:00
Felipe Contreras
3df415d4c7
baseaudiosink: make discont-wait configurable
...
Now we can configure how much time to wait before deciding that a
discont has happened.
Also, adds getter and setter to allow derived implementations to set
this value upon construction.
Suggestions and several improvements by Havard Graff.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2011-11-07 11:58:46 +01:00
Felipe Contreras
0a111bf26e
baseaudiosink: delay the resyncing of timestamp vs ringbuffertime
...
A common problem for audio-playback is that the timestamps might not
be completely linear. This is specially common when doing streaming over
a network, where you can have jittery and/or bursty packettransmission,
which again will often be reflected on the buffertimestamps.
Now, the current implementation have a threshold that says how far the
buffertimestamp is allowed o drift from the ideal aligned time in the
ringbuffer. This was an instant reaction, and ment that if one buffer
arrived with a timestamp that would breach the drift-tolerance, a resync
would take place, and the result would be an audible gap for the
listener.
The annoying thing would be that in the case of a "timestamp-outlier",
you would first resync one way, say +100ms, and then, if the next
timestamp was "back on track", you would end up resyncing the other way
(-100ms) So in fact, when you had only one buffer with slightly off
timestamping, you would end up with *two* audible gaps. This is the
problem this patch addresses.
The way to "fix" this problem with the previous implementation, would
have been to increase the "drift-tolerance" to a value that was greater
than the largest timestamp-outlier one would normally expect. The big
problem with this approach, however, is that it will allow normal
operations with a huge offset timestamp vs running-time, which is
detrimental to lip-sync. If the drift-tolerance is set to 200ms, it
basically means that lip-sync can easily end up being off by that much.
This patch will basically start a timer when the first breach of
drift-tolerance is detected. If any following timestamp for the next n
nanoseconds gets "back on track" within the threshold, it has basically
eliminated the effect of an outlier, and the timer is stopped. If,
however, all timestamps within this time-limit are breaching the
threshold, we are probably facing a more permanent offset in the
timestamps, and a resync is allowed to happen.
So basically this patch offers something as rare as both higher
accuracy, it terms of allowing smaller drift-tolerances, as well as much
smoother, less glitchy playback!
Commit message and improvments by Havard Graff.
Fixes bug #640859 .
2011-11-07 11:33:32 +01:00
Felipe Contreras
3f1395afae
baseaudiosink: rename some variables
2011-11-07 11:18:34 +01:00
Felipe Contreras
fbde258be6
baseaudiosink: use gst_util_uint64_scale_int when appropriate
...
It's probably safer this way.
2011-11-07 11:11:08 +01:00
Felipe Contreras
369cf3f14a
baseaudiosink: split drift-tolerance into alignment-threshold
...
So that drift-tolerance is used for clock slaving resync, and
alignment-threshold is for timestamp drift.
2011-11-07 11:10:05 +01:00
Felipe Contreras
58b9818853
baseaudiosink: trivial comment fixes
...
Some found by Havard Graff.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2011-11-07 10:57:56 +01:00
Wim Taymans
2f8292b495
ringbuffer: store bpf in the right variable
2011-11-04 13:21:24 +01:00
Wim Taymans
a5fa136c0b
update for tag API removal
2011-11-02 12:11:16 +01:00
Wim Taymans
5bdfd6d899
structure: fix for api update
2011-11-02 09:04:27 +01:00
Tim-Philipp Müller
b52c5819fb
Update for pad API changes
...
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:34:28 +00:00
Tim-Philipp Müller
220ccdf275
audioencoder: save audio info parsed in setcaps in encoder context
...
Otherwise we'll just error out when the first buffer gets pushed.
This is a porting artefact, in 0.10 the infos were allocated on the
heap, now we're doing everything with stack-allocated structs.
2011-10-31 14:22:39 +00:00
Tim-Philipp Müller
5ee51e47a1
ext, gst, gst-libs, tests: update for tag list API changes
2011-10-31 14:22:39 +00:00
René Stadler
7eb0985282
audio: remove old C file generated from template
...
Not sure how this one got pulled into a merge. In 0.10, it was moved away to
gst-template a long time ago. gstaudiofilterexample.c got generated from
gstaudiofiltertemplate.c.
2011-10-31 15:19:54 +01:00
Wim Taymans
95281cc306
Merge branch 'master' into 0.11
2011-10-28 16:24:44 +02:00
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
Wim Taymans
b70275fa10
audiofilter: use BPF for unit_size
2011-10-28 11:37:31 +02:00
René Stadler
9beff28579
audiofilter: fix get_unit_size
2011-10-28 11:24:00 +02:00
René Stadler
5d2154ff4b
audiofilter: init audio info sooner
2011-10-28 11:24:00 +02:00
René Stadler
372cf41a6d
audio, video: init audio/video format info to UNKNOWN format
...
This is to prevent e.g. GST_AUDIO_INFO_FORMAT() from crashing on a NULL pointer
dereference when used with an unset info.
2011-10-28 11:24:00 +02:00
Wim Taymans
016d036137
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
gst-libs/gst/audio/gstbaseaudiosink.c
gst/audioconvert/channelmixtest.c
gst/playback/gstplaybasebin.c
gst/playback/gstsubtitleoverlay.c
tests/examples/Makefile.am
tests/examples/audio/Makefile.am
2011-10-27 15:44:58 +02:00
Stefan Sauer
53d7d2e966
interfaces: clean up the use of iface and class/klass
2011-10-21 14:46:48 +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
Edward Hervey
12a8fff8ac
audio: Add some default channel positions
2011-10-17 12:00:55 +02:00
Edward Hervey
b4858253dc
audio: Properly handle signedness in gst_audio_format_build_integer()
2011-10-17 12:00:16 +02:00
Edward Hervey
45c4a19472
audio: Indent and doc fixes
2011-10-17 11:45:39 +02:00
Wim Taymans
f1088ed647
update for UNEXPECTED -> EOS flowreturn
2011-10-10 11:39:52 +02:00
Tim-Philipp Müller
ab949eebbd
audiodecoder: update to 0.11 API after merge
2011-10-09 16:15:54 +01:00
Tim-Philipp Müller
303dbaf84b
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
tests/check/pipelines/vorbisdec.c
tests/check/pipelines/vorbisenc.c
2011-10-09 16:08:36 +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
Wim Taymans
73b894107a
Merge branch 'master' into 0.11
...
Conflicts:
ext/vorbis/gstvorbisdec.c
ext/vorbis/gstvorbisenc.c
ext/vorbis/gstvorbisenc.h
gst/audiotestsrc/gstaudiotestsrc.c
2011-10-08 10:19:06 +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
Edward Hervey
b8219faa90
audio: Make sure 'channels' and 'channel-positions' are coherent
...
If channel-positions are present, check they match the reported
'channels' value.
2011-10-05 11:57:54 +02:00
Edward Hervey
70d967da7c
audio: Fix overread in channel positions
...
The array we're writing to is limited to 64 ... but the amount of
input positions might be lower than 64. Therefore use MIN and not
MAX to know how many values to read from the array.
2011-10-05 11:51:07 +02:00
Tim-Philipp Müller
6ec5fc8d95
audio: don't use GST_PTR_FORMAT for segments
...
Avoids crashes with debugging output enabled.
2011-09-30 10:56:02 +01:00
Wim Taymans
1395378575
audiodecoder: fix refcounting error
2011-09-28 16:08:14 +02:00
Wim Taymans
ca6ebee870
ringbuffer: store info so we can debug it
2011-09-28 16:07:53 +02:00
Wim Taymans
f97a9bdc68
Merge branch 'master' into 0.11
2011-09-28 15:46:40 +02:00
Mark Nauwelaerts
8633eb391d
audiodecoder: really push pending events
2011-09-28 15:42:46 +02:00
Wim Taymans
19626cf27a
audiodecoder: add method to set output caps
...
Add a method to configure the output caps. Subclasses can't use
gst_pad_set_caps() anymore because then we won't see the caps.
Unbreak the padtemplate registration, the GTypeClass that is configured in the
object during _init is not the right one, we need to use the klass passed as the
argument to the init function..
2011-09-28 15:35:56 +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
Wim Taymans
19346c2c3b
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/gstaudioencoder.c
gst/playback/gstplaybin2.c
gst/videotestsrc/videotestsrc.c
2011-09-28 11:35:46 +02: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
Wim Taymans
4bf9022e0c
docs: improve docs
2011-09-27 11:19:24 +02:00
Wim Taymans
c290b8044a
audioenc: fix compilation
2011-09-26 21:11:14 +02:00
Wim Taymans
f71511edd2
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/gstaudiodecoder.c
gst-libs/gst/audio/gstaudioencoder.c
gst/encoding/gstencodebin.c
2011-09-26 19:22:05 +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
Edward Hervey
17bfba09f1
Merge branch 'master' into 0.11
...
Conflicts:
ext/ogg/gstoggdemux.c
ext/pango/gsttextoverlay.c
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/audio/gstbaseaudiosrc.c
gst/playback/gstsubtitleoverlay.c
gst/videorate/gstvideorate.c
2011-09-23 18:27:11 +02:00
Edward Hervey
3f45eb1cfc
gst-libs: Temporarily remove dependency of gstaudio on gstpbutils
...
Also re-order the SUBDIRS in the higher-level Makefile so it cleanly
installs.
https://bugzilla.gnome.org/show_bug.cgi?id=657675
2011-09-23 16:17:45 +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
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
4529c6dc32
Merge remote-tracking branch 'origin/master' into 0.11
...
Merge in doc updates for audio enums from 0.10, and get rid
of the #if #else in the enum list, since that confuses gtk-doc.
Conflicts:
gst-libs/gst/audio/audio.c
gst-libs/gst/audio/audio.h
2011-09-06 16:42:42 +01:00
Wim Taymans
dc28bd1b63
audio: rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN
2011-09-06 16:27:27 +01:00
Wim Taymans
f04b8fd8af
audio/video add descriptions
...
Add a description to the audio and video format info in case we want to use this
later.
2011-09-06 16:46:48 +02: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
Wim Taymans
c0d31dd555
rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN
2011-09-06 16:46:02 +02: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
Wim Taymans
7012e88090
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/audio.h
gst-libs/gst/audio/gstaudiodecoder.c
gst-libs/gst/audio/gstaudiodecoder.h
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/audio/gstbaseaudioencoder.h
gst/playback/Makefile.am
gst/playback/gstplaybin.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkvideoconvert.c
gst/playback/gstsubtitleoverlay.c
gst/videorate/gstvideorate.c
gst/videoscale/gstvideoscale.c
win32/common/libgstaudio.def
2011-09-06 15:24:32 +02:00
Wim Taymans
33196cdd2c
audio: change audio format syntax a little
...
Remove the _ in front of the endianness prefix.
Remove the _3 postfix for the 24 bits formats.
Add a _32 postfix after the formats that occupy extra space beyond their
natural size.
The result is that the GST_AUDIO_NE() macro can simply append the endianness
after all formats and that we only specify a different sample width when it is
different from the natural size of the sample. This makes things more consistent
and follows the pulseaudio conventions instead of the alsa ones.
2011-09-06 12:06:39 +02: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
Wim Taymans
e694528155
base: port to 0.11
2011-08-29 13:28:08 +02:00
Wim Taymans
057aecc34e
audio: fix after merge
2011-08-29 11:42:35 +02:00
Wim Taymans
e1287b97ab
Merge branch 'master' into 0.11
...
Conflicts:
ext/ogg/gstoggmux.c
gst-libs/gst/audio/audio.c
gst-libs/gst/audio/audio.h
gst-libs/gst/audio/multichannel.h
gst-libs/gst/pbutils/Makefile.am
gst-libs/gst/pbutils/gstdiscoverer.c
gst/playback/gstplaysinkaudioconvert.c
gst/playback/gstplaysinkvideoconvert.c
win32/common/libgstaudio.def
2011-08-29 11:37:36 +02: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
Tim-Philipp Müller
52ecb383d7
baseaudioutils: remove, merged into or superseded by audio.c
2011-08-27 14:47:49 +01:00
Tim-Philipp Müller
7f0c7e5f82
baseaudioencoder: port to new GstAudioInfo API
2011-08-27 14:47:49 +01:00
Tim-Philipp Müller
c89b49bfaf
baseaudiodecoder: port to GstAudioInfo API
2011-08-27 14:47:49 +01:00
Tim-Philipp Müller
946ddb6462
audio: add gst_audio_info_{init,clear} and gst_audio_info_{copy,free}
2011-08-27 14:47:49 +01:00
Tim-Philipp Müller
63a3d360dc
audio: add GstAudioFormat, GstAudioFormatInfo and GstAudioInfo
...
Same as in 0.11, but with caps parsing/serialising for 0.10 style
caps. Add setting default channel positions.
2011-08-27 14:47:01 +01:00
Mark Nauwelaerts
bf4a28f420
baseaudioencoder: remove leftover experimental code
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
35b172004c
audioutils: modify _parse, add GType support functions
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
a4d5e33224
baseaudiodecoder: move properties to private storage and add
...
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
7939d37936
baseaudiodecoder: rename property
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
d71e427c49
baseaudiodecoder: replace context helper structure by various
...
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
a39a66dd4b
baseaudioencoder: move properties to private storage and add
...
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
41a0d6f8f0
baseaudioencoder: rename some properties
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
6302c9d31d
baseaudioencoder: replace context helper structure by various
...
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
d1ab04f029
baseaudio: rename GstAudioState to GstAudioFormatInfo
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
ecf57f2b73
baseaudioencoder: TEMP; avoid some imperfect ts jitter ?
...
... even when not in perfect mode ?
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
5a40343102
baseaudioencoder: debug format fixes
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
cedbedbbca
baseaudiodecoder: debug format fix
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
8b6109cdbe
baseaudiodecoder: fixup documentation
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts
5003868dc7
baseaudiodecoder: fix FLUSH_STOP actions
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
660aa2e2c0
baseaudiodecoder: preserve upstream seek event seqnum
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
d1f5c34fe7
baseaudioencoder: use buffer running time for granule calculation
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
6c04035eec
baseaudiodecoder: minor fix in ts resync
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
d46006b198
baseaudiodecoder: improve glitch resilience
...
Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first
atom out of place, while on the other hand not failing indefinitely.
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
79b41f59f6
baseaudiodecoder: add limited legacy seeking support
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
0c33df6540
baseaudiodecoder: cater for audio-codec tag
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
1dbbe7c89d
baseaudiodecoder: initial version
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
87409f2587
baseaudioencoder: misc fixes
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
8c61685554
baseaudio: add audioutils for caps and query handling helper utils
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
cb04eaaa8f
baseaudioencoder: mark unstable API
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
b47c08ba17
baseaudioencoder: fix clearing context
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
e3cae1619c
baseaudioencoder: simplify latency variable handling
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
9ce2edc918
baseaudioencoder: minor fixes and code simplifications
...
Also modify and elaborate a bit on pre_push (though currently unused to no harm).
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
d0e9fbf3db
baseaudioencoder: additional documentation on granule semantics and
...
configuration
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts
9f7849eac9
baseaudioencoder: elaborate property names
2011-08-27 14:46:58 +01:00
Mark Nauwelaerts
bf61f04577
baseaudioencoder: rename state field xint to is_int
2011-08-27 14:46:58 +01:00