Robert Rosengren
e99a6f3142
audio: Use GST_BUFFER_PTS instead of deprecated GST_BUFFER_TIMESTAMP
...
GST_BUFFER_PTS already used in audio code base (e.g. gstaudiodecoder),
so migrate completely from deprecated GST_BUFFER_TIMESTAMP for better
readability, as gstcompat.h defines GST_BUFFER_TIMESTAMP directly to PTS
anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1048 >
2021-02-25 02:04:44 +00:00
Vivia Nikolaidou
2527c8f9f8
libs: audio: Handle meta changes in gst_audio_buffer_truncate
...
Set timestamp and duration to GST_CLOCK_TIME_NONE unless trim==0,
because that function doesn't know the rate and therefore can't
calculate them. Set offset and offset_end to appropriate values. Make it
clear in the documentation that the caller is responsible for setting
the timestamp and duration.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/869
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1039 >
2021-02-18 11:25:32 +02:00
Jan Alexander Steffens (heftig)
297a5f09b1
libs: audio: Fix gst_audio_buffer_truncate meta handling
...
In the non-interleaved case, it made `buffer` writable but then changed
the meta of the non-writable buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1035 >
2021-02-15 17:32:04 +01:00
George Kiagiadakis
b33d70e97f
libs: audio: add a new gst_audio_buffer_truncate() function
...
Essentially this moves the truncation logic out of gst_audio_buffer_clip()
so that it can be used in other places, like in audiorate.
https://bugzilla.gnome.org/show_bug.cgi?id=796740
2018-07-12 12:08:10 +03:00
George Kiagiadakis
9cb09e7269
libs: audio: implement support for non-interleaved audio in gst_audio_buffer_clip()
...
https://bugzilla.gnome.org/show_bug.cgi?id=796740
2018-07-12 11:59:06 +03:00
Thibault Saunier
099ac9faf2
docs: Convert gtkdoc comments to markdown
...
Modernizing the documentation, making it simpler to read an
modify and allowing us to possibly switch to hotdoc in the
future.
2017-03-10 18:19:17 -03:00
Stefan Sauer
7986a8ed3d
audio: don't deref NULL
...
gst_buffer_copy_region() can return NULL when the buffer meta-data is invalid.
See https://bugzilla.gnome.org/show_bug.cgi?id=772200
2016-10-20 15:42:50 +02:00
Stefan Sauer
409534f242
audio: fix doc string again.
...
There was a second '*' at the start of the line. Reword + reformat to make it
obvious.
2016-10-17 09:47:54 +02:00
Stefan Sauer
86d18fa9ff
audio: fix typo in doc string
2016-10-14 14:21:52 +02:00
Kipp Cannon
f7a31a79f4
audio: Add const to segment parameter of gst_audio_buffer_clip()
...
e.g., allows this to be used with the reference retrieved by
gst_event_parse_segment().
https://bugzilla.gnome.org/show_bug.cgi?id=765663
2016-04-27 12:26:07 +03:00
Wim Taymans
b8bea9d8be
audio: add debug categories
2015-11-06 17:29:22 +01:00
Reynaldo H. Verdejo Pinochet
aa1883d5d7
audiobase*: Drop trailing withespaces
2013-12-27 01:36:09 -03: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
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
Mark Nauwelaerts
162433795a
audio: properly handle clipping of empty buffer
2012-10-15 18:48:01 +02:00
Olivier Crête
b35bc51ed6
audio: Fix annotations
2012-09-13 17:11:56 -04:00
Edward Hervey
2817bdadc9
libs: Remove "Since" markers and minor doc fixups
2012-07-13 12:11:06 +02:00
Wim Taymans
3da0b71876
audio: split audio header into logical parts
2012-06-08 10:10:08 +02:00
Wim Taymans
4e1ed6f649
audio: fix debug line
2012-03-13 12:39:52 +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
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
2bf1a4428e
audio: correctly fill in fallback channel positions in stereo case
2012-02-06 22:10:28 +01:00
Wim Taymans
fcdc385aa1
port to new map API
2012-01-25 12:30:53 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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