summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Vincent Penquerc'h [Fri, 25 Nov 2011 12:39:20 +0000 (12:39 +0000)]
opusdec: fix bogus assertion
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
Vincent Penquerc'h [Thu, 24 Nov 2011 13:29:56 +0000 (13:29 +0000)]
opus: multichannel support
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.
Vincent Penquerc'h [Wed, 23 Nov 2011 17:32:03 +0000 (17:32 +0000)]
opusdec: shuffle supported sample rates to favor 48000
Vincent Penquerc'h [Wed, 23 Nov 2011 16:36:54 +0000 (16:36 +0000)]
opusenc: remove useless setup field
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.
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.
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
Vincent Penquerc'h [Tue, 22 Nov 2011 18:33:17 +0000 (18:33 +0000)]
opus: add test
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.
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.
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.
Vincent Penquerc'h [Mon, 21 Nov 2011 17:48:54 +0000 (17:48 +0000)]
opus: move header magic testing to gstopusheader
Vincent Penquerc'h [Mon, 21 Nov 2011 17:01:49 +0000 (17:01 +0000)]
opusdec: skip pre-skip samples
Vincent Penquerc'h [Mon, 21 Nov 2011 12:50:22 +0000 (12:50 +0000)]
opusdec: read pre-skip from first header if available
Vincent Penquerc'h [Mon, 21 Nov 2011 12:02:28 +0000 (12:02 +0000)]
opusenc: reset tagsetter interface on stop
Vincent Penquerc'h [Mon, 21 Nov 2011 11:44:01 +0000 (11:44 +0000)]
opusdec: handle NULL packets (used for PLC)
Vincent Penquerc'h [Mon, 21 Nov 2011 11:28:10 +0000 (11:28 +0000)]
opusdec: light cleanup
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.
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.
Vincent Penquerc'h [Sat, 19 Nov 2011 15:58:09 +0000 (15:58 +0000)]
opusenc: fix terminating NUL being written in signature
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).
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
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.
Vincent Penquerc'h [Wed, 16 Nov 2011 18:43:53 +0000 (18:43 +0000)]
opusenc: fix constrained-vbr property name typo
Vincent Penquerc'h [Wed, 16 Nov 2011 18:35:29 +0000 (18:35 +0000)]
opusdec: let the base class handle all timing
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.
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.
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.
Vincent Penquerc'h [Wed, 16 Nov 2011 16:56:43 +0000 (16:56 +0000)]
opus: port to base audio encoder/decoder
Vincent Penquerc'h [Thu, 10 Nov 2011 17:13:40 +0000 (17:13 +0000)]
opusenc: fix bandwidth property type mismatch
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
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
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
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
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
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
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
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
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
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.
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