platform/upstream/gstreamer.git
12 years agoMerge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Mon, 28 Nov 2011 23:20:58 +0000 (23:20 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11

12 years agoMerge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11
Tim-Philipp Müller [Mon, 28 Nov 2011 23:20:32 +0000 (23:20 +0000)]
Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11

12 years agoMerge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11
Tim-Philipp Müller [Mon, 28 Nov 2011 23:20:02 +0000 (23:20 +0000)]
Merge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11

Conflicts:
ext/rtmp/gstrtmpsink.c

12 years agovarious: fix pad template ref leaks
Vincent Penquerc'h [Mon, 28 Nov 2011 13:08:27 +0000 (13:08 +0000)]
various: fix pad template ref leaks

https://bugzilla.gnome.org/show_bug.cgi?id=662664

12 years agoMerge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Sun, 27 Nov 2011 23:33:45 +0000 (23:33 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11

12 years agoMerge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Sat, 26 Nov 2011 15:37:25 +0000 (15:37 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11

Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusparse.c
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideodecoder.h

12 years agoopusenc: Fixing "Unused var" compiling error for opus codec
Danilo Cesar Lemes de Paula [Fri, 25 Nov 2011 13:41:19 +0000 (11:41 -0200)]
opusenc: Fixing "Unused var" compiling error for opus codec

https://bugzilla.gnome.org/show_bug.cgi?id=664815

12 years agoopusenc: only use mono streams for > 2 channels
Vincent Penquerc'h [Fri, 25 Nov 2011 14:00:18 +0000 (14:00 +0000)]
opusenc: only use mono streams for > 2 channels

I'm getting odd results with packing streams into stereo
streams, and using only mono streams is enough in all cases.

12 years agoopus: add some more debug information about channel mapping
Vincent Penquerc'h [Fri, 25 Nov 2011 12:47:42 +0000 (12:47 +0000)]
opus: add some more debug information about channel mapping

12 years agoopusenc: do not cause the decoder to apply the channel mapping again
Vincent Penquerc'h [Fri, 25 Nov 2011 12:40:31 +0000 (12:40 +0000)]
opusenc: do not cause the decoder to apply the channel mapping again

Since we already reorder channels, we do not want to write that
reordering in the header, or the decoder will do it again.

12 years agoopusdec: fix bogus assertion
Vincent Penquerc'h [Fri, 25 Nov 2011 12:39:20 +0000 (12:39 +0000)]
opusdec: fix bogus assertion

12 years agoMerge remote-tracking branch 'origin/master' into 0.11
Edward Hervey [Fri, 25 Nov 2011 11:48:58 +0000 (12:48 +0100)]
Merge remote-tracking branch 'origin/master' into 0.11

Conflicts:
ext/faac/gstfaac.c
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
gst/audiovisualizers/gstspacescope.c
gst/colorspace/colorspace.c

12 years agoopus: pre-skip and output gain are little endian, remove reminder note
Vincent Penquerc'h [Thu, 24 Nov 2011 13:38:59 +0000 (13:38 +0000)]
opus: pre-skip and output gain are little endian, remove reminder note

12 years agoopus: multichannel support
Vincent Penquerc'h [Thu, 24 Nov 2011 13:29:56 +0000 (13:29 +0000)]
opus: multichannel support

12 years agoopus: switch to multistream API
Vincent Penquerc'h [Wed, 23 Nov 2011 17:49:58 +0000 (17:49 +0000)]
opus: switch to multistream API

It's very similar to the basic API, and is a superset ot it,
which will allow encoding and decoding more than 2 channels.

12 years agoopusdec: shuffle supported sample rates to favor 48000
Vincent Penquerc'h [Wed, 23 Nov 2011 17:32:03 +0000 (17:32 +0000)]
opusdec: shuffle supported sample rates to favor 48000

12 years agoopusenc: remove useless setup field
Vincent Penquerc'h [Wed, 23 Nov 2011 16:36:54 +0000 (16:36 +0000)]
opusenc: remove useless setup field

13 years agoopusdec: implement replay gain
Vincent Penquerc'h [Wed, 23 Nov 2011 13:22:12 +0000 (13:22 +0000)]
opusdec: implement replay gain

It would ideally be better to leave this to a rgvolume element,
but we don't control the pipeline. So do it by default, and allow
disabling it via a property, so the correct volume should always
be output.

13 years agoopusdec: add in-band FEC support
Vincent Penquerc'h [Wed, 23 Nov 2011 11:58:54 +0000 (11:58 +0000)]
opusdec: add in-band FEC support

This allows reconstruction of lost packets if FEC info is included
in the next packet, at the cost of extra latency. Since we do not
know if the stream has FEC (and this can change at runtime), we
always incur the latency, even if we never lose any frame, or see
any FEC information. Off by default.

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 23 Nov 2011 10:08:39 +0000 (11:08 +0100)]
Merge branch 'master' into 0.11

Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
ext/opus/gstopusparse.c
gst/audiovisualizers/gstwavescope.c
gst/filter/Makefile.am
gst/filter/gstfilter.c
gst/filter/gstiir.c
gst/playondemand/gstplayondemand.c

13 years agoopusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING
Tim-Philipp Müller [Tue, 22 Nov 2011 20:27:50 +0000 (20:27 +0000)]
opusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING

13 years agoopus: add test
Vincent Penquerc'h [Tue, 22 Nov 2011 18:33:17 +0000 (18:33 +0000)]
opus: add test

13 years agoopusenc: allow setting most properties at PLAYING time
Vincent Penquerc'h [Tue, 22 Nov 2011 17:04:09 +0000 (17:04 +0000)]
opusenc: allow setting most properties at PLAYING time

Opus allows these to be changed during encoding, transparently
to the decoder.

13 years agoopusenc: bound the bitrate to more sensible values
Vincent Penquerc'h [Tue, 22 Nov 2011 16:14:06 +0000 (16:14 +0000)]
opusenc: bound the bitrate to more sensible values

Go from the bounds mentioned in the spec, and allow some more
variation.
In particular, don't allow silly low bitrates, and allow reaching
the maximum useful bitrate.

13 years agoopusenc: fix crash on pathological parameters
Vincent Penquerc'h [Tue, 22 Nov 2011 15:33:20 +0000 (15:33 +0000)]
opusenc: fix crash on pathological parameters

Asking for 1 bit/s would select a 0 byte buffer, leading
to a crash. Buffer size is now controlled by a max-payload-size
property, which can't be less than 2.

13 years agoopus: move header magic testing to gstopusheader
Vincent Penquerc'h [Mon, 21 Nov 2011 17:48:54 +0000 (17:48 +0000)]
opus: move header magic testing to gstopusheader

13 years agoopusdec: skip pre-skip samples
Vincent Penquerc'h [Mon, 21 Nov 2011 17:01:49 +0000 (17:01 +0000)]
opusdec: skip pre-skip samples

13 years agoopusdec: read pre-skip from first header if available
Vincent Penquerc'h [Mon, 21 Nov 2011 12:50:22 +0000 (12:50 +0000)]
opusdec: read pre-skip from first header if available

13 years agoopusenc: reset tagsetter interface on stop
Vincent Penquerc'h [Mon, 21 Nov 2011 12:02:28 +0000 (12:02 +0000)]
opusenc: reset tagsetter interface on stop

13 years agoopusdec: handle NULL packets (used for PLC)
Vincent Penquerc'h [Mon, 21 Nov 2011 11:44:01 +0000 (11:44 +0000)]
opusdec: handle NULL packets (used for PLC)

13 years agoopusdec: light cleanup
Vincent Penquerc'h [Mon, 21 Nov 2011 11:28:10 +0000 (11:28 +0000)]
opusdec: light cleanup

13 years agoopusenc: do not push header buffers
Vincent Penquerc'h [Sun, 20 Nov 2011 09:58:06 +0000 (09:58 +0000)]
opusenc: do not push header buffers

Opus headers appear only when muxed in Ogg, so only place them
on the caps, where oggmux will find them, but other elements will
be blithely unaware of them.

13 years agoopus: make opusparse set headers on caps
Vincent Penquerc'h [Sun, 20 Nov 2011 09:52:46 +0000 (09:52 +0000)]
opus: make opusparse set headers on caps

Header-on-caps code moved to a new shared location to avoid
duplicating the code.

13 years agoopusenc: fix terminating NUL being written in signature
Vincent Penquerc'h [Sat, 19 Nov 2011 15:58:09 +0000 (15:58 +0000)]
opusenc: fix terminating NUL being written in signature

13 years agoopusenc: make frame-size an enum
Vincent Penquerc'h [Wed, 16 Nov 2011 19:40:20 +0000 (19:40 +0000)]
opusenc: make frame-size an enum

It only supports a set number of specific values (including
a non integer one).

13 years agoopusenc: the encoder might not make use of all the bytes
Vincent Penquerc'h [Wed, 16 Nov 2011 19:22:44 +0000 (19:22 +0000)]
opusenc: the encoder might not make use of all the bytes

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 17 Nov 2011 16:32:42 +0000 (17:32 +0100)]
Merge branch 'master' into 0.11

Conflicts:
ext/celt/gstceltdec.c
ext/opus/gstopusdec.c
ext/opus/gstopusdec.h
ext/opus/gstopusenc.c
ext/opus/gstopusenc.h
ext/opus/gstopusparse.c

13 years agoopusenc: do not include variable fields in caps
Vincent Penquerc'h [Wed, 16 Nov 2011 18:49:03 +0000 (18:49 +0000)]
opusenc: do not include variable fields in caps

Those can vary from one packet to the next, so have no reason
to be in the caps.

13 years agoopusenc: fix constrained-vbr property name typo
Vincent Penquerc'h [Wed, 16 Nov 2011 18:43:53 +0000 (18:43 +0000)]
opusenc: fix constrained-vbr property name typo

13 years agoopusdec: let the base class handle all timing
Vincent Penquerc'h [Wed, 16 Nov 2011 18:35:29 +0000 (18:35 +0000)]
opusdec: let the base class handle all timing

13 years agoopusparse: add opusparse element
Vincent Penquerc'h [Tue, 15 Nov 2011 19:53:33 +0000 (19:53 +0000)]
opusparse: add opusparse element

A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.

13 years agoopusdec: allow negotiation of rate/channels with downstream
Vincent Penquerc'h [Wed, 16 Nov 2011 17:24:20 +0000 (17:24 +0000)]
opusdec: allow negotiation of rate/channels with downstream

Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.

13 years agoopusdec: rewrite logic
Vincent Penquerc'h [Wed, 16 Nov 2011 17:05:17 +0000 (17:05 +0000)]
opusdec: rewrite logic

Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.

13 years agoopus: port to base audio encoder/decoder
Vincent Penquerc'h [Wed, 16 Nov 2011 16:56:43 +0000 (16:56 +0000)]
opus: port to base audio encoder/decoder

13 years agoopusdec: allow negotiation of rate/channels with downstream
Vincent Penquerc'h [Wed, 16 Nov 2011 13:26:35 +0000 (13:26 +0000)]
opusdec: allow negotiation of rate/channels with downstream

Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.

13 years agoopusdec: rewrite logic
Vincent Penquerc'h [Wed, 16 Nov 2011 01:14:32 +0000 (01:14 +0000)]
opusdec: rewrite logic

Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.

13 years agoopusdec: remove buffer pool, buffers are not constant size
Vincent Penquerc'h [Tue, 15 Nov 2011 23:00:32 +0000 (23:00 +0000)]
opusdec: remove buffer pool, buffers are not constant size

13 years agoopusparse: add opusparse element
Vincent Penquerc'h [Tue, 15 Nov 2011 19:53:33 +0000 (19:53 +0000)]
opusparse: add opusparse element

A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.

13 years agoopusenc: fix pointer mismatch in memcpy on drain
Vincent Penquerc'h [Tue, 15 Nov 2011 17:49:48 +0000 (17:49 +0000)]
opusenc: fix pointer mismatch in memcpy on drain

13 years agoopus: port to encoder/decoder base classes
Vincent Penquerc'h [Mon, 14 Nov 2011 13:41:58 +0000 (13:41 +0000)]
opus: port to encoder/decoder base classes

13 years agoopus: port to 0.11
Vincent Penquerc'h [Fri, 11 Nov 2011 17:46:41 +0000 (17:46 +0000)]
opus: port to 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Fri, 11 Nov 2011 09:39:17 +0000 (10:39 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 10 Nov 2011 17:34:48 +0000 (18:34 +0100)]
Merge branch 'master' into 0.11

13 years agoopusenc: fix bandwidth property type mismatch
Vincent Penquerc'h [Thu, 10 Nov 2011 17:13:40 +0000 (17:13 +0000)]
opusenc: fix bandwidth property type mismatch

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 10 Nov 2011 11:14:19 +0000 (12:14 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 9 Nov 2011 11:24:37 +0000 (12:24 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 9 Nov 2011 11:19:04 +0000 (12:19 +0100)]
Merge branch 'master' into 0.11

Conflicts:
gst/colorspace/colorspace.c

13 years agoopusenc: fix latency query
Vincent Penquerc'h [Wed, 5 Oct 2011 17:25:58 +0000 (18:25 +0100)]
opusenc: fix latency query

This makes live 'audiosrc ! opusenc ! opusdec ! audiosink' pipelines
actually work without all audio being dumped.

https://bugzilla.gnome.org/show_bug.cgi?id=660999

13 years agoopusenc: use debug level for debug info, not error
Vincent Penquerc'h [Wed, 5 Oct 2011 14:47:06 +0000 (15:47 +0100)]
opusenc: use debug level for debug info, not error

https://bugzilla.gnome.org/show_bug.cgi?id=660999

13 years agoopusenc: fix calculation of filler data size
Vincent Penquerc'h [Thu, 29 Sep 2011 13:22:33 +0000 (14:22 +0100)]
opusenc: fix calculation of filler data size

https://bugzilla.gnome.org/show_bug.cgi?id=660469

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Mon, 7 Nov 2011 09:02:00 +0000 (10:02 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Fri, 4 Nov 2011 10:01:42 +0000 (11:01 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 2 Nov 2011 09:31:24 +0000 (10:31 +0100)]
Merge branch 'master' into 0.11

13 years agoMerge remote-tracking branch 'origin/master' into 0.11
Tim-Philipp Müller [Mon, 31 Oct 2011 14:51:32 +0000 (14:51 +0000)]
Merge remote-tracking branch 'origin/master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 27 Oct 2011 14:13:56 +0000 (16:13 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 18 Oct 2011 12:32:05 +0000 (14:32 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Sun, 16 Oct 2011 13:28:31 +0000 (15:28 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Sat, 8 Oct 2011 09:17:11 +0000 (11:17 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 6 Oct 2011 12:05:42 +0000 (14:05 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 4 Oct 2011 11:29:21 +0000 (13:29 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Mon, 3 Oct 2011 09:24:04 +0000 (11:24 +0200)]
Merge branch 'master' into 0.11

13 years agoopusdec: fix decoding
Vincent Penquerc'h [Wed, 28 Sep 2011 13:57:02 +0000 (14:57 +0100)]
opusdec: fix decoding

A simple ... opusenc ! opusdec ... pipeline now works.

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoopusenc: moan if we get an unexpected amount of data
Vincent Penquerc'h [Wed, 28 Sep 2011 13:56:18 +0000 (14:56 +0100)]
opusenc: moan if we get an unexpected amount of data

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoopus: properly setup caps and init state from caps
Vincent Penquerc'h [Wed, 28 Sep 2011 13:22:02 +0000 (14:22 +0100)]
opus: properly setup caps and init state from caps

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoopusenc: use the same frame size setup as the opus test code
Vincent Penquerc'h [Wed, 28 Sep 2011 12:25:21 +0000 (13:25 +0100)]
opusenc: use the same frame size setup as the opus test code

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoopusdec: opus supports a select set of sampling rates
Vincent Penquerc'h [Wed, 28 Sep 2011 12:24:52 +0000 (13:24 +0100)]
opusdec: opus supports a select set of sampling rates

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoopus: make it build against current, and remove cruft
Vincent Penquerc'h [Wed, 28 Sep 2011 12:24:21 +0000 (13:24 +0100)]
opus: make it build against current, and remove cruft

https://bugzilla.gnome.org/show_bug.cgi?id=660364

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Mon, 26 Sep 2011 20:31:17 +0000 (22:31 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Tue, 6 Sep 2011 14:13:28 +0000 (16:13 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 25 Aug 2011 10:49:26 +0000 (12:49 +0200)]
Merge branch 'master' into 0.11

Conflicts:
ext/resindvd/rsnwrappedbuffer.c

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Wed, 17 Aug 2011 17:01:39 +0000 (19:01 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 4 Aug 2011 07:40:46 +0000 (09:40 +0200)]
Merge branch 'master' into 0.11

13 years agoMerge branch 'master' into 0.11
Wim Taymans [Thu, 4 Aug 2011 07:36:07 +0000 (09:36 +0200)]
Merge branch 'master' into 0.11

Conflicts:
common
configure.ac
gst/colorspace/colorspace.c
gst/colorspace/colorspace.h
gst/colorspace/gstcolorspace.c

13 years agoopus: duplicate from CELT
David Schleef [Sun, 5 Jun 2011 07:54:19 +0000 (00:54 -0700)]
opus: duplicate from CELT

Copy the celt plugin and convert it to Opus.  Mostly works.

22 years agobuilding up speed
Thomas Vander Stichele [Mon, 17 Dec 2001 18:37:01 +0000 (18:37 +0000)]
building up speed

Original commit message from CVS:
building up speed