Vincent Penquerc'h
ad4da8dd0e
opus: set author to myself, and update copyright notices
...
because as slomo noted, in fact pretty much all the code in there is mine.
2012-06-15 10:39:41 +01:00
Vincent Penquerc'h
3dc1ef35b1
opusdec: read gain from the right place in the header
...
It's at byte offset 16, not 14.
2012-05-29 17:24:33 +01:00
Vincent Penquerc'h
209e3c5e39
opusdec: do not assert on bad header, error out instead
2012-05-27 23:45:53 +01:00
Vincent Penquerc'h
7d731ac155
opusdec: fix lost packet handling for FEC/PLC
...
The base audio decoder sends zero size packets, not NULL buffers,
to signal dropped packets.
2012-05-24 22:56:41 +01:00
Mark Nauwelaerts
5bb216046e
opusdec: tweak caps negotiation
...
... so as to avoid leaking caps or manipulating NULL caps.
2012-04-10 17:29:11 +02:00
Wim Taymans
0d84de3fa9
opusdec: fix for caps api change
2012-03-12 17:06:11 +01:00
Mark Nauwelaerts
fa02111b7c
opus: port to updated 0.11
2012-03-07 17:18:48 +01:00
Edward Hervey
d5b34263cd
Merge remote-tracking branch 'origin/master' into 0.11-premerge
...
Conflicts:
docs/libs/Makefile.am
ext/kate/gstkatetiger.c
ext/opus/gstopusdec.c
ext/xvid/gstxvidenc.c
gst-libs/gst/basecamerabinsrc/Makefile.am
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideoencoder.c
gst/asfmux/gstasfmux.c
gst/audiovisualizers/gstwavescope.c
gst/camerabin2/gstcamerabin2.c
gst/debugutils/gstcompare.c
gst/frei0r/gstfrei0rmixer.c
gst/mpegpsmux/mpegpsmux.c
gst/mpegtsmux/mpegtsmux.c
gst/mxf/mxfmux.c
gst/videomeasure/gstvideomeasure_ssim.c
gst/videoparsers/gsth264parse.c
gst/videoparsers/gstmpeg4videoparse.c
2011-12-30 11:41:17 +01:00
Vincent Penquerc'h
f807905786
opus: properly create channel mapping tables
...
There are two of them, unintuitively enough; the one passed
to the encoder should not be the one that gets written to the
file. The former maps the input to an ordering which puts
paired channels first, while the latter moves the channels
to Vorbis order. So add code to calculate both, and we now
have properly paired channels where appropriate.
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-09 15:04:20 +00:00
Olivier Crête
16bb45d64a
opusdec: header cleanup
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 14:03:02 +00:00
Olivier Crête
b7d53c866b
opusdec: Truncate caps first
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 14:03:00 +00:00
Vincent Penquerc'h
f6ebc2de8e
opusdec: default to stereo 48000 Hz if possible when no headers seen
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 13:57:38 +00:00
Vincent Penquerc'h
51b02f61fc
opusdec: guard against decoding 0 samples
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-02 15:19:52 +00:00
Vincent Penquerc'h
b8431a03a7
various: fix pad template ref leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Tim-Philipp Müller
619915ea74
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
2011-11-26 15:37:25 +00:00
Danilo Cesar Lemes de Paula
64c3d73642
opusenc: Fixing "Unused var" compiling error for opus codec
...
https://bugzilla.gnome.org/show_bug.cgi?id=664815
2011-11-25 15:32:12 +00:00
Vincent Penquerc'h
287a0c646e
opus: add some more debug information about channel mapping
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
1e00fbdacb
opusdec: fix bogus assertion
2011-11-25 15:31:59 +00:00
Edward Hervey
a8024bb698
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
2011-11-25 12:48:58 +01:00
Vincent Penquerc'h
d38f4b8a09
opus: multichannel support
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
670c365400
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.
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
e4ae3e89fa
opusdec: shuffle supported sample rates to favor 48000
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
5c8812f58c
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.
2011-11-23 14:03:30 +00:00
Vincent Penquerc'h
bfdda8e09a
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.
2011-11-23 12:08:01 +00:00
Wim Taymans
296786c011
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
2011-11-23 11:08:39 +01:00
Vincent Penquerc'h
5be77031ca
opus: move header magic testing to gstopusheader
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
354c7824aa
opusdec: skip pre-skip samples
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
1e81bc4b64
opusdec: read pre-skip from first header if available
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
a6ca3673b4
opusdec: handle NULL packets (used for PLC)
2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
de87d061fc
opusdec: light cleanup
2011-11-21 11:51:21 +00:00
Wim Taymans
f566dae7dc
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
2011-11-17 17:32:42 +01:00
Vincent Penquerc'h
656e1f8d9f
opusdec: let the base class handle all timing
2011-11-16 18:35:29 +00:00
Vincent Penquerc'h
310daa5096
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.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
ffc4408d53
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.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
f978a60f38
opus: port to base audio encoder/decoder
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
acf18e34be
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.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
afbc4fdd71
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.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
9690361d04
opusdec: remove buffer pool, buffers are not constant size
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
dc1e8fef48
opus: port to encoder/decoder base classes
2011-11-14 13:50:23 +00:00
Vincent Penquerc'h
73d0c7516f
opus: port to 0.11
2011-11-11 17:46:41 +00:00
Vincent Penquerc'h
ab1d420f88
opusdec: fix decoding
...
A simple ... opusenc ! opusdec ... pipeline now works.
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:37 +02:00
Vincent Penquerc'h
f9d4dd5215
opus: properly setup caps and init state from caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:21:15 +02:00
Vincent Penquerc'h
24577fcf6d
opusdec: opus supports a select set of sampling rates
...
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:20:52 +02:00
Vincent Penquerc'h
00a6c9ac64
opus: make it build against current, and remove cruft
...
https://bugzilla.gnome.org/show_bug.cgi?id=660364
2011-10-03 11:20:46 +02:00
David Schleef
1d33a3f18e
opus: duplicate from CELT
...
Copy the celt plugin and convert it to Opus. Mostly works.
2011-07-07 12:05:53 -07:00