Tim-Philipp Müller
ff74718616
pulse: remove pulseaudiosink helper bin
...
This is causing us lots of headaches in 0.10 and needs to be done
differently and properly in 0.11. playbin or decodebin should
reconfigure themselves based on reconfigure events, for example.
2011-12-25 22:21:36 +00:00
Tim-Philipp Müller
2799bcd32e
pulse: update for ring buffer audio format type enum rename
2011-12-25 21:45:45 +00:00
Wim Taymans
4b8975f867
update for removed property probe
2011-12-21 11:59:46 +01:00
Vincent Penquerc'h
cf344d50b1
cairotextoverlay: port to GstCollectPads2
2011-12-14 18:34:25 +00:00
Tim-Philipp Müller
b8b8454bcb
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-12 09:46:27 +00:00
Tim-Philipp Müller
330d984288
Use g_thread_try_new() instead of g_thread_crate() with newer glib versions
2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
66f6e12888
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.
2011-12-12 09:46:27 +00:00
Tim-Philipp Müller
8aebe194aa
gdkpixbufsink: fix inverted pixel-aspect-ratio
...
Spotted by Mike Morrison.
https://bugzilla.gnome.org/show_bug.cgi?id=665882
2011-12-11 18:40:31 +00:00
Tim-Philipp Müller
9c1095f474
pulseaudiosink: don't leak pad template
2011-12-11 17:55:14 +00:00
Tim-Philipp Müller
5bb4dcd89c
soup: fix start/stop race in souphttpclientsink
...
Fix crash or hang in generic/states unit test when doing stop()
right after start(). Create main loop in the start function already
and not just in the thread function, so that stop() always has a
valid main loop to quit on. Also, calling g_main_loop_quit() before
g_main_loop_run() won't work and result in the stop function waiting
for the thread to join forever. Therefore, wait for the thread to
be ready and get the main loop running in the start() function, to
be sure stop() always works.
2011-12-11 17:24:20 +00:00
Tim-Philipp Müller
adb15bf34a
pulse: rename "client" properties to "client-name"
...
Better name, but also matches the property on the jack
elements (where "client" is used for something else).
2011-12-09 16:04:56 +00:00
Tim-Philipp Müller
2e078fa556
jack: don't leak client name when freeing the element
...
And add gtk-doc chunks for the new property.
https://bugzilla.gnome.org/show_bug.cgi?id=665872
2011-12-09 15:50:28 +00:00
Nicolas Baron
92cfb335cd
jack: add "client-name" property to jackaudiosink and jackaudiosrc
...
https://bugzilla.gnome.org/show_bug.cgi?id=665872
2011-12-09 15:45:03 +00:00
Wim Taymans
1538803ac4
update for basesink event handler changes
2011-12-02 22:25:17 +01:00
Wim Taymans
5bfc7b4bfe
update for moved audio interfaces
2011-11-30 07:57:40 +01:00
Thiago Santos
1e6bd5ad57
Revert "pulseaudiosink: fix caps leak"
...
This reverts commit d6a9de9e2a
.
setcaps functions aren't supposed to take ownership of the caps passed
2011-11-29 17:34:49 -03:00
Vincent Penquerc'h
c0e101e93f
various: fix pad template leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:30:27 +00:00
Tim-Philipp Müller
eeaa9e0bbc
pulseaudio: require pulseaudio >= 1.0
2011-11-26 13:54:22 +00:00
Tim-Philipp Müller
be0d6baac5
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstaacparse.c
gst/audioparsers/gstamrparse.c
gst/audioparsers/gstdcaparse.c
gst/audioparsers/gstflacparse.c
gst/effectv/gstradioac.c
gst/effectv/gstradioac.h
gst/effectv/gstripple.c
Some possible FIXMEs remaining in the audio parser getcaps functions.
2011-11-26 13:34:10 +00:00
Arun Raghavan
1f4bb68794
pulsesrc: Implement GstStreamVolume interface
...
PulseAudio 1.0 supports per-source-output volumes, and this exposes the
functionality via the GstStreamVolume interface.
When compiled against pre-1.0 PulseAudio, the interface is not
implemented, and the "volume" or "mute" properties are not available.
This bit of ugliness will go away when we can depend on PulseAudio 1.0
or greater.
https://bugzilla.gnome.org/show_bug.cgi?id=595055
2011-11-25 22:30:41 +05:30
Arun Raghavan
8c6a548698
pulsesrc: Trivial comment copy-paste-o fix
2011-11-25 22:30:41 +05:30
Arun Raghavan
bdf95eb39b
pulseaudiosink: Remove redundant code
2011-11-25 22:30:41 +05:30
Arun Raghavan
f6f1605468
pulseaudiosink: Clean up refcounting in event probe
...
Makes sure we don't leak a refcount if the object is disposed before a
NEWSEGMENT turns up.
2011-11-25 22:30:41 +05:30
Tim-Philipp Müller
2cfb92f253
souphttpsrc: get rid of iradio-* properties, post tags instead
2011-11-24 01:45:43 +00:00
Tim-Philipp Müller
3f7c432869
souphttpsrc: always send icecast request header, drop iradio-mode property
...
Server should ignore unknown/unhandled headers..
2011-11-24 01:41:34 +00:00
Wim Taymans
bb3fbfc18e
pulseaudiosink: avoid endless caps loop
...
Check if the caps are the same before adding a new probe. Because of reconfigure
events, upstreams sends multiple caps events.
2011-11-23 09:26:17 +01:00
Tim-Philipp Müller
736a484129
More printf format warning fixes
2011-11-22 01:40:39 +00:00
Wim Taymans
b7aa7bca52
add parent to activate functions
2011-11-18 13:57:20 +01:00
Wim Taymans
07cc855b24
Merge branch 'master' into 0.11
...
Conflicts:
ext/speex/gstspeexenc.c
gst/rtpmanager/rtpsession.c
2011-11-17 17:17:11 +01:00
Wim Taymans
105650127e
add parent to pad functions
2011-11-17 15:02:55 +01:00
Stefan Sauer
8643d1caaf
collectpads: port API changes
2011-11-17 08:44:45 +01:00
Mark Nauwelaerts
7df8122322
speexenc: ensure to free allocated padded data
2011-11-16 19:08:05 +01:00
Mark Nauwelaerts
c0d86fd26f
speexenc: reset tag setter interface when appropriate
2011-11-16 19:06:09 +01:00
Mark Nauwelaerts
413f445455
flacenc: reset tag setter interface when appropriate
2011-11-16 19:06:07 +01:00
Wim Taymans
6190312214
add parent to query function
2011-11-16 17:27:13 +01:00
Wim Taymans
e7918a5aba
_query_peer_*() -> _peer_query_*()
2011-11-15 18:04:44 +01:00
Wim Taymans
04579335c4
_accept_caps() -> _query_accept_caps()
2011-11-15 18:04:44 +01:00
Wim Taymans
797523efbd
_peer_get_caps() -> _peer_query_caps()
2011-11-15 18:04:44 +01:00
Wim Taymans
b2d508ac40
update for _get_caps() -> _query_caps()
2011-11-15 18:04:44 +01:00
Wim Taymans
75dc9634eb
change getcaps to query
...
Chain up event function in payloaders.
2011-11-15 18:04:44 +01:00
Vincent Penquerc'h
8548b2c777
flacdec: fix spurious timestamp discontinuity
...
We need to tell the base class that we're dropping buffers,
so it drops the input timestamps corresponding to these.
Otherwise, the first actual audio buffers we output will be
stamped with those - GST_CLOCK_TIMESTAMP_NONE. That mismatch
between input buffer count and output buffer count will stay
while playing. With enough headers and long enough buffer
durations, the sink will have played enough before receiving
the first valid timestamp (usually 0), and will trigger an
audible discontinuity.
2011-11-15 13:36:15 +00:00
Tim-Philipp Müller
c27bbe4be2
Update for GstURIHandler get_protocols() changes
2011-11-13 23:44:44 +00:00
Tim-Philipp Müller
a150d1e734
soup, pushfile, rtsp, udp, v4l2: update for GstURIHandler API changes
2011-11-13 18:50:51 +00:00
Wim Taymans
b0ccc61ed3
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
2011-11-11 19:24:27 +01:00
Thiago Santos
d6a9de9e2a
pulseaudiosink: fix caps leak
2011-11-11 11:02:22 -03:00
Mark Nauwelaerts
37c8abcdbd
pulsesink: do not leak clientname when setting up property
2011-11-11 14:59:04 +01:00
Arun Raghavan
6a8af50111
pulse: Chain up dispose() in pulseaudiosink
2011-11-11 18:05:35 +05:30
Wim Taymans
3d9d2c6c05
update for audiobase* rename
2011-11-11 12:01:17 +01:00
Wim Taymans
86e33bc46b
audio: update for base class rename
2011-11-11 11:53:45 +01:00
Wim Taymans
9daea802fa
fix for ringbuffer rename
2011-11-11 11:33:44 +01:00
Wim Taymans
1ad11e307a
update for ringbuffer change
2011-11-11 11:24:00 +01:00
Stefan Sauer
9ce6c731c3
various: add missing includes
2011-11-10 23:09:23 +02:00
René Stadler
3293b88ea1
pulsesink: fix compilation with pulseaudio 0.9
2011-11-10 21:37:38 +01:00
Wim Taymans
7e12b58e37
update for adapter api changes
2011-11-10 18:32:58 +01:00
Wim Taymans
00d3f3a454
fix for audio clock change
2011-11-10 13:50:34 +01:00
Wim Taymans
88e398b0ea
update for removed fixate function
2011-11-10 11:03:18 +01:00
Wim Taymans
aa0b2b7ea7
updates for new acceptcaps query
2011-11-09 17:38:03 +01:00
Wim Taymans
95f3987332
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacdec.c
gst/audioparsers/gstflacparse.c
gst/isomp4/qtdemux.c
2011-11-09 12:18:01 +01:00
Wim Taymans
49658dd5b5
remove query types
2011-11-09 11:53:01 +01:00
Wim Taymans
c48df77320
update for probe api changes
2011-11-08 11:18:06 +01:00
Wim Taymans
de020130e6
fix for probe updates
2011-11-07 17:14:17 +01:00
Vincent Penquerc'h
5a73374f2c
flacdec: fix off by one between granpos and last_stop
2011-11-07 12:38:10 +00:00
Vincent Penquerc'h
6a25727321
cairotextoverlay: add a 'silent' property to skip rendering
...
https://bugzilla.gnome.org/show_bug.cgi?id=662856
2011-11-07 12:35:26 +00:00
Stefan Sauer
fb162c8eb4
controller: port to new controller location and api
2011-11-04 20:15:48 +01:00
Wim Taymans
7753feb4fd
pulseaudiosink: more 0.11 fixing
...
Make sure the caps event gets to the sink.
2011-11-04 16:21:13 +01:00
Wim Taymans
f6f8d9bb17
pulseaudiosink: port some more
...
Rename decodebin2 -> decodebin some more
Cleanup up sinkpad event handling
2011-11-04 15:35:42 +01:00
Wim Taymans
1352a08a71
pulseaudiosink: port some more to 0.11
...
We must not forward the caps event. instead we will decide what to do when the
pad block is taken.
Use decodebin instead of decodebin2
2011-11-04 13:56:06 +01:00
Wim Taymans
e038ab5a0b
tags: update for tag API removal
2011-11-02 12:09:20 +01:00
Wim Taymans
22eb0d2300
Merge branch 'master' into 0.11
2011-11-02 10:40:12 +01:00
Wim Taymans
9a8a8e72c8
structure: fix for api update
2011-11-02 09:06:37 +01:00
Tim-Philipp Müller
9f77b02b15
Update for pad API changes
...
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:52:28 +00:00
Tim-Philipp Müller
d6e1f53233
flacenc: remove dead code from header
...
We require a new-enough libflac that this condition will never apply.
2011-10-30 19:30:14 +00:00
Tim-Philipp Müller
a49818f876
flacdec: parse stream headers from caps in set_format function
...
Not that this seems to be actually needed, libflac happily decodes
stuff even if we just drop all headers and never feed it to the
library.
2011-10-30 19:12:44 +00:00
Tim-Philipp Müller
ab591b6d53
flacdec: don't extract metadata, leave that to the parser or container
2011-10-30 19:12:44 +00:00
Tim-Philipp Müller
5ab43cdf91
flacdec: we expect framed input now, remove some more code
2011-10-30 19:12:39 +00:00
Tim-Philipp Müller
92361863e6
flacdec: naive port to GstAudioDecoder
...
This would probably have been too invasive to do in the 0.10
branch, with all the pull-mode and parser handling code in
there.
2011-10-30 17:39:40 +00:00
Tim-Philipp Müller
9cd17092d8
ext, gst: update for taglist API changes
2011-10-30 11:44:53 +00:00
Wim Taymans
d40e915449
Merge branch 'master' into 0.11
2011-10-28 16:52:08 +02:00
Wim Taymans
3389e79f38
pulseaudiosink: fix porting errors
...
The probes were ported wrongly and caused deadlocks.
2011-10-28 15:11:10 +02:00
Tim-Philipp Müller
ff40deb139
jpegdec: add sof-marker to template caps, so we don't get plugged for lossless jpeg
...
jpegdec (using libjpeg 6.2/8) can't decode some lossless types of JPEG.
https://bugzilla.gnome.org/show_bug.cgi?id=556648
2011-10-28 12:10:34 +01:00
Wim Taymans
65c71b0717
pulse: fix check for empty caps
2011-10-28 12:51:31 +02:00
Wim Taymans
4b6a226263
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
ext/pulse/pulsesink.c
2011-10-27 16:08:22 +02:00
Wim Taymans
fc4684f4c6
fix compilation
2011-10-27 16:03:17 +02:00
Stefan Sauer
2468492f02
interfaces: clean up the use of iface and class/klass
2011-10-21 14:58:41 +02:00
René Stadler
41116224c8
pngenc: increase arbitrary resolution limits
...
Apparently libpng can technically do up to 2^31-1 rows and columns. However it
imposes an (arbitrary) default limit of 1 million (that could theoretically be
lifted by using some additional API).
Moved array allocation to the heap now.
2011-10-21 10:27:04 +02:00
René Stadler
db1f10adc8
pngenc: don't unconditionally allocate 4096 pointers on the stack
...
Instead allocate as many as needed (on the stack still).
2011-10-21 10:26:48 +02:00
René Stadler
65f9354803
pngenc: ensure setcaps was called before chain function
...
This is needed to properly error out for e.g. "fakesrc ! pngenc ! fakesink".
2011-10-21 10:26:20 +02:00
René Stadler
7e390c4635
pngenc: validate input buffer size
...
Just for safety; of course such mismatch represents a bug in another element.
2011-10-21 10:25:51 +02:00
René Stadler
9eb55c3d8f
pngenc: make setcaps more robust, use gstvideo functions
...
A setcaps function needs to actually verify the caps carefully. In this case,
it was possible to e.g. link a video decoder with YUV+RGB template caps to
pngenc. That would cause a crash when the decoder pushes a YUV buffer. Same
thing when pushing a valid buffer that exceeds the resolution limits.
Also, missing framerate caps field would cause a glib critical warning due to
invalid GValue. This fails hard now.
2011-10-21 10:25:08 +02:00
Arun Raghavan
a7790efd04
pulse: Get caps correctly on pad block
...
Instead of always going upstream, we should first see if already got
caps from a setcaps() call.
https://bugzilla.gnome.org/show_bug.cgi?id=661262
2011-10-18 20:02:55 +05:30
Tim-Philipp Müller
e9ad06e202
wavpackenc: don't unref buffer with gst_object_unref()
2011-10-18 12:25:14 +01:00
Wim Taymans
6de67bb014
pulsesink: only use is_pcm for 1.0 of pulseaudio
2011-10-18 12:05:01 +02:00
Wim Taymans
0ade1a5822
pulsesink: only disable trickmodes for !pcm
...
Only disable trickmodes when we are not dealing with raw PCM samples.
2011-10-18 11:58:57 +02:00
Edward Hervey
1a10116bbe
flacenc: Properly register type
...
It's a subclass of GstAudioEncoder and not of GstElement
2011-10-13 17:12:23 +02:00
Wim Taymans
16649b2508
fix compile
2011-10-13 09:02:47 +02:00
Wim Taymans
a5cc912140
Merge branch 'master' into 0.11
...
Conflicts:
ext/jpeg/gstjpegdec.c
gst/rtp/gstrtpvrawpay.c
2011-10-13 08:58:06 +02:00
Thiago Santos
0e167e59d4
pulseaudiosink: Use new GstIterator API correctly
...
GstIterator now uses GValue, use it correctly.
2011-10-12 07:36:09 -03:00
Sjoerd Simons
95db648516
jpegdec: Implement upstream negotiation
...
Add upstream negotiation for jpegdec. Fixes #660275
2011-10-10 21:37:10 +01:00
Wim Taymans
03ca12d974
annodex: port to 0.11
2011-10-10 12:27:06 +02:00
Wim Taymans
aea9b5e8c8
Merge branch 'master' into 0.11
...
Conflicts:
ext/speex/gstspeexenc.c
2011-10-10 11:48:20 +02:00
Thiago Santos
b09704020c
pulse: port pulseutil to 0.11
2011-10-10 00:18:56 -03:00
Thiago Santos
4517eb28c0
pulseaudiosink: port to 0.11
2011-10-09 21:19:30 -03:00
Thiago Santos
358767e217
pulsesink: Fixing getcaps function
...
Update getcaps function to 0.11 API
2011-10-09 21:19:27 -03:00
Mark Nauwelaerts
00a91fc061
speexenc: only push header buffers following initial events
2011-10-09 21:32:32 +02:00
Wim Taymans
586ef0babd
Merge branch 'master' into 0.11
...
Conflicts:
ext/speex/gstspeexdec.c
ext/speex/gstspeexenc.c
gst/isomp4/atoms.c
gst/isomp4/gstqtmux.c
2011-10-06 12:23:39 +02:00
Tim-Philipp Müller
ca77c96c51
speexenc: initialise variable before adding to it
2011-09-29 23:21:46 +01:00
Mark Nauwelaerts
c5354bee04
speexdec: port to audiodecoder
2011-09-29 17:33:25 +02:00
Mark Nauwelaerts
53476c1580
speexenc: clean up some unused remnants
2011-09-29 17:33:23 +02:00
Mark Nauwelaerts
c1909c32c5
speexenc: port to audioencoder
2011-09-29 17:33:21 +02:00
Tim-Philipp Müller
3d01b9f398
flacdec: get rid of granulepos handling
...
Leave that to the parser or demuxer. There's still some
code for operating in DEFAULT (samples) format, but that
will be removed later.
2011-09-28 19:10:27 +01:00
Tim-Philipp Müller
5c28f426d7
flacdec: get rid of pull-mode support and focus on being a decoder
...
Leave all the other stuff to flacparse.
2011-09-28 19:03:13 +01:00
Tim-Philipp Müller
e0d994c9e1
flac, jpeg: fix compiler warning
2011-09-28 17:39:06 +01:00
Wim Taymans
b4524858be
flac: port to 0.11
2011-09-28 17:40:01 +02:00
Wim Taymans
762602d56a
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacenc.c
2011-09-28 17:39:12 +02:00
Mark Nauwelaerts
e8bcd41d73
flacenc: port to audioencoder
2011-09-28 16:14:46 +02:00
Wim Taymans
87fbd1e784
Merge branch 'master' into 0.11
...
Conflicts:
common
ext/pulse/pulsesink.c
ext/soup/gstsouphttpclientsink.c
gst/audioparsers/gstaacparse.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtpmanager/gstrtpjitterbuffer.c
gst/rtpmanager/rtpjitterbuffer.c
gst/rtsp/gstrtspsrc.c
sys/ximage/gstximagesrc.c
2011-09-28 12:44:59 +02:00
Tim-Philipp Müller
3828537857
soup: rename souphttpsink to souphttpclientsink
...
To avoid confusion, and because we might want a server
sink at some point too.
https://bugzilla.gnome.org/show_bug.cgi?id=659947
2011-09-25 15:13:39 +01:00
Tim-Philipp Müller
be7cbd4c21
souphttpsink: don't create unused second sink pad object
...
The base class will create the sink pad.
2011-09-23 16:39:46 +01:00
Vincent Penquerc'h
7e4574e968
speexenc: do not use invalid buffer timestamps
2011-09-19 09:37:58 +02:00
Arun Raghavan
8ca420f547
pulse: New pulseaudiosink element to handle format changes
...
This introduces a new bin which wraps around pulsesink and depending on
the formats supported by the sink, plugs in/out a decodebin2 as
required. This allows users to switch sinks on the stream and adapts
accordingly (for example, you could watch a movie in passthrough mode on
your receiver which supports AC3 decode, then plug out and switch to a
non-digital profile to continue uninterrupted on analog output).
The bin is required because doing the same with playbin2/playsink will
require API changes that cannot be made in 0.10. With 0.11/1.0, we
should be able to ask for upstream caps renegotiation to deal with all
this.
https://bugzilla.gnome.org/show_bug.cgi?id=657179
2011-09-19 07:43:04 +05:30
Konstantin Miller
24d002e04d
souphttpsrc: Don't handle HTTP response 407 as error if proxy authentication data is available
...
Fixes bug #657422 .
2011-09-07 13:28:45 +02:00
Wim Taymans
33f18b8ea4
Merge branch 'master' into 0.11
...
Conflicts:
gst/audioparsers/gstamrparse.c
gst/isomp4/qtdemux.c
2011-09-06 16:06:25 +02:00
Wim Taymans
e204c5934c
-good: port to new audio caps
2011-09-06 13:16:27 +02:00
Sebastian Dröge
7b592ff126
souphttpsrc: Allow positive, non-1.0 segment rates
...
Only negative rates are not supported. Fixes bug #658305 .
2011-09-06 10:34:35 +02:00
Wim Taymans
85d7fe14b2
soup: port soup elements to 0.11
2011-08-29 18:02:15 +02:00
Wim Taymans
34ea60526d
pulse: add some more channels
2011-08-24 18:44:01 +02:00
Wim Taymans
e9df54819c
Merge branch 'master' into 0.11
2011-08-24 14:16:44 +02:00
Arun Raghavan
bd604175c5
pulsesink: Trivial indentation fix
2011-08-23 22:48:34 +05:30
Monty Montgomery
799c8e3d04
flacdec: Correct sample number rounding resulting in timestamp jitter
...
flacdec converts the src timestamp to a sample number, uses that internally, then reconverts the sample number to a timestamp for the output buffer. Unfortunately, sample numbers can't be represented in an integer number of nanoseconds, and the conversion process was truncating rather than rounding, resulting in sample numbers and output timestamps that were often off by a full sample.
This corrects the time->sample convesion
2011-08-23 10:09:41 +02:00
Wim Taymans
0eeffef222
pulsesink: port after merge
2011-08-19 16:13:23 +02:00
Wim Taymans
e1b795ac13
Merge branch 'master' into 0.11
2011-08-19 16:12:01 +02:00
Wim Taymans
77ad0a1363
port more elements to new audio caps and API
2011-08-19 14:01:45 +02:00
David Henningsson
e70020b456
pulsesink: Allow writes in bigger chunks
...
There's no use in splitting the incoming data down to the segsize
limit - by writing as much as possible in one chunk, we increase
performance and avoid PulseAudio unnecessary rewinds.
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-08-19 09:48:27 +02:00
Wim Taymans
09b15d7dfe
port to new audio caps.
2011-08-18 19:21:07 +02:00
Wim Taymans
ce1e7cb108
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacdec.c
2011-08-17 15:52:18 +02:00
Wim Taymans
be4f60b062
jpeg: port to 0.11
...
Also disable smoke for now.
2011-08-17 15:39:27 +02:00
Vincent Penquerc'h
3e0134f51f
flacdec: avoid timestamp/offset tracking going out of sync
...
The libFLAC API is callback based, and we must only call it to
output data when we know we have enough input data. For this
reason, a single processing step is done when receiving a buffer.
However, if there were metadata buffers still pending, a step
intended for the first audio frame might end up writing that
leftover metadata. Since a single step is done per buffer, this
will cause every buffer to be written one step late.
This would add some latency (a bufferfull's worth), possibly
lose a buffer when seeking or the like, and also cause timestamp
and offset to be applied to the wrong buffer, as updates to
the "current" segment last_stop (from incoming buffer timestamp)
will be applied to an output buffer originating from the previous
incoming buffer.
This fixes the issue by ensuring that, upon receiving the first
audio frame, processing is done till all metadata is processed,
so the next "single step" done will be for the audio frame. After
this, we should keep to 1 input buffer -> 1 output buffer and so
avoid getting out of sync.
https://bugzilla.gnome.org/show_bug.cgi?id=650960
2011-08-17 13:40:59 +01:00
Vincent Penquerc'h
e09eb95a5f
flacdec: bail on reserved value
...
Now that we look at the right bits, we can test against the reserved
value as we do for other fields.
https://bugzilla.gnome.org/show_bug.cgi?id=650960
2011-08-17 00:02:38 +01:00
Vincent Penquerc'h
64beef4610
flacdec: fix bit twiddling
...
Right shifting a 8 bit value by 8 bits is twice too much
to get the high 4 bits.
https://bugzilla.gnome.org/show_bug.cgi?id=650960
2011-08-17 00:01:37 +01:00
Vincent Penquerc'h
1549aaba27
flacdec: warn if we see a variable block size where unsupported
...
https://bugzilla.gnome.org/show_bug.cgi?id=650960
2011-08-17 00:01:07 +01:00
Wim Taymans
4bb2b140e9
Merge branch 'master' into 0.11
...
Conflicts:
sys/v4l2/v4l2src_calls.c
2011-08-16 18:35:53 +02:00
Tim-Philipp Müller
26a3a12513
jackaudiosrc: fix error message code
...
And also post 'not found' error if jackd is not even installed.
2011-08-13 16:52:53 +01:00
Edward Hervey
145f6da5bb
aasink: Remove unused variables
2011-08-10 11:28:26 +02:00
Tim-Philipp Müller
9f904ac438
aalib: make sure -DGST_USE_UNSTABLE_API is defined
...
So we don't get warnings.
2011-08-08 15:26:00 +01:00
Wim Taymans
71346020d5
pulsesrc: avoid race in starting
...
Sine the base class now does the negotiation from the streaming thread we have
to be careful and check if the stream is ready before changing its corked state.
2011-08-07 11:17:41 +02:00
Wim Taymans
d9750387c1
pulse: more cleanups
2011-08-04 18:41:29 +02:00
Wim Taymans
9ae85cb662
pulsesrc: small cleanups
2011-08-04 18:15:55 +02:00
Wim Taymans
fcbe26cd6f
pulsesrc: small cleanups
2011-08-04 16:32:39 +02:00
Wim Taymans
ee2aa25e04
port to new API
2011-08-03 18:37:27 +02:00
Wim Taymans
4121021bb2
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulsesink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtp/gstrtph264pay.c
gst/rtpmanager/gstrtpssrcdemux.c
2011-08-03 18:25:30 +02:00
Sebastian Dröge
f18eccd286
hal: Remove hal plugin
...
hal is not developed anymore and nobody is using the plugin nowadays.
2011-08-03 10:59:56 +02:00
Tristan Matthews
c26442a3ba
jackaudiosink: Don't call g_alloca() in process_cb
...
g_alloca() is not RT-safe, so instead we should allocate the
memory needed in advance. Fixes #655866
2011-08-03 09:44:05 +02:00
Tim-Philipp Müller
25ace0e524
pulsesink: fix variable-set-but-not-used compiler warning with older pulse versions
2011-07-29 13:05:42 +01:00
Arun Raghavan
ac7cad431c
pulsesink: Add support for compressed formats
...
This adds support for various compressed formats (AC3, E-AC3, DTS and
MP3) payloaded in IEC 61937 format (used for transmission over S/PDIF,
HDMI and Bluetooth).
The acceptcaps() function allows bins to probe for what formats the sink
being connected to support. This only works after the element is set to
at least READY.
If the underlying sink changes and the format we are streaming is not
available, we emit a message that will allow upstream elements/bins to
block and renegotiate a new format.
2011-07-29 01:25:15 +05:30
Arun Raghavan
a67b536741
pulsesink: Use the extended stream API if available
...
This uses the new extended API for creating streams. This will allow us
to support compressed formats natively in pulsesink as well.
2011-07-29 01:25:15 +05:30
Arun Raghavan
379049809c
pulsesrc: Add a source-output-index property
...
This exposes the source output index of the record stream that we open
so that clients can use this with the introspection if they want (to
move the stream, for example).
2011-07-29 00:07:52 +05:30
Tim-Philipp Müller
ab62599832
speex: update for position/query/convert API changes
2011-07-28 11:38:31 +01:00
Thiago Santos
14b9fb7be6
pulsesrc: Fix default value leaking
...
Remember to free the default value of client name, avoiding a
leak
2011-07-18 15:16:01 -03:00
Wim Taymans
da28ebfbe3
aasink: port to new video API
2011-07-06 17:50:54 +02:00
Wim Taymans
1a0a6f54bb
cacasink: port to 0.11
2011-07-06 17:40:20 +02:00
Wim Taymans
f70da0a542
jpeg: beginnings of porting to 0.11
2011-07-06 16:51:36 +02:00
Wim Taymans
fdf5a49422
speex: port speex elements
2011-07-06 15:57:23 +02:00
Wim Taymans
3fd1106b7e
Merge branch 'master' into 0.11
2011-07-06 12:05:12 +02:00
René Stadler
ae87731de5
pulsesink: prevent race condition causing ref leak
...
Since commit 8bfd80, gst_pulseringbuffer_stop doesn't wait for the
deferred call to be run before returning. This causes a race when
READY->NULL is executed shortly after, which stops the mainloop. This
leaks the element reference which is passed as userdata for the callback
(introduced in commit 7cf996, bug #614765 ).
The correct fix is to wait in READY->NULL for all outstanding calls to
be fired (since libpulse doesn't provide a DestroyNotify for the
userdata). We get rid of the reference passing from 7cf996 altogether,
since finalization from the callback would anyways lead to a deadlock.
Re-fixes bug #614765 .
2011-07-05 16:36:17 +02:00
René Stadler
f8456e2a1a
pulsesink: small cleanup of copy-paste code
2011-07-05 16:36:17 +02:00
René Stadler
3589cee762
pulsesink: remove unused member variable and misleading log message
...
Wim changed it in commit 8bfd80 so that pa_defer_ran is not read
anywhere.
The log message used to annotate a mainloop_wait call which is gone.
2011-07-05 16:36:17 +02:00
Wim Taymans
8b040cfae2
pulse: remove implementsinterface
2011-07-04 18:12:56 +02:00
Mark Nauwelaerts
0c25863253
jpegdec: avoid crashing on invalid input without components
2011-07-04 14:32:27 +02:00
Mark Nauwelaerts
d59a00aa1c
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulsesink.c
2011-07-04 11:48:13 +02:00
David Schleef
f69dcaab58
pulse: Increase ranks to PRIMARY + 10
...
So that pulsesrc/pulsesink get chosen over other possible PRIMARY
src/sinks by autoaudiosink. Presumably, if pulse is available, it
is always preferred over another src/sink.
Fixes : #647540 .
2011-07-03 19:53:42 -07:00
David Schleef
2f94df8032
jpegenc: Don't round up size of encoded buffers
...
For some reason, in code dating to 2001, encoded jpeg buffers were
rounded up to multiples of 4 bytes. With the added bonus that the
extra bytes are unwritten, causing valgrind issues. Oops. I can't
think of any reason why JPEG buffers need to be multiples of 4 bytes,
so I removed the padding. There might be some code somewhere that
depends on this behavior, so if this needs to be reverted, please fix
the valgrind issues.
2011-06-29 23:55:33 -07:00
Andoni Morales Alastruey
d9f4c59c49
dv1394src: make the internal clock thread safe
...
Fixes : #653091 .
2011-06-24 12:01:39 -07:00
Arun Raghavan
04786a6d31
pulse: Drop support for PA versions before 0.9.16
...
This drops support fof PulseAudio versions prior to 0.9.16, which was
released about 1.5 years ago. Testing with very old versions is not
feasible and we don't want to maintain 2 independent code-paths.
2011-06-21 16:47:11 -07:00
Wim Taymans
adee56222b
pulsesink: fix for header cleanups
2011-06-21 18:19:02 +02:00
Tim-Philipp Müller
3d6955d686
Remove esound/esdsink plugin
2011-06-15 15:09:18 +01:00
Tim-Philipp Müller
728732438b
Remove gconf elements and plugin
...
GConf was deprecated in favour of GSettings etc.
2011-06-15 14:37:29 +01:00
Wim Taymans
c2358404c1
jack: port some more
2011-06-09 17:56:18 +02:00
Wim Taymans
3446ca801e
aasink: register template and klass correctly
2011-06-09 11:37:47 +02:00
Wim Taymans
710fa239d5
Merge branch 'master' into 0.11
2011-06-08 18:06:56 +02:00
Wim Taymans
0af32751ae
assink: port aasink to 0.11
2011-06-08 18:05:20 +02:00
David Schleef
6d8d08eac7
souphttpsink: code cleanup
2011-06-04 13:43:28 -07:00
Wim Taymans
0b1bdcf7cb
Merge branch 'master' into 0.11
...
Conflicts:
sys/ximage/ximageutil.c
2011-06-02 18:51:29 +02:00
Sebastian Dröge
252c1afcc2
dvdemux: First query the peer duration in the requested format before converting to BYTES
...
Fixes usage of dvdemux after another demuxer, e.g. mxfdemux.
Fixes bug #650503 .
2011-06-02 13:38:30 +02:00
Sebastian Dröge
e376913fc3
souphttpsink: Fix refcounting of the "session" property
...
Properties should never take ownership of the values
passed to them.
2011-06-02 10:41:52 +02:00
David Schleef
3937abf999
soup: Add souphttpsink
2011-06-01 17:19:02 -07:00
Vincent Penquerc'h
38b596337f
cairotextoverlay: forward new segment events from the sink to the source
...
Not doing so will cause buffers to be received by downstream without
a time base set.
We use the same method avimux uses to get access to the event when
collectpads got the sink event function.
https://bugzilla.gnome.org/show_bug.cgi?id=640323
2011-05-26 11:35:01 +02:00
Vincent Penquerc'h
b99f4be3db
textoverlay: forward source events to sinks
...
Events are passed to the video sink, and to the text sink if it is
linked.
This will allow seeking, for instance.
https://bugzilla.gnome.org/show_bug.cgi?id=586450
2011-05-26 11:33:10 +02:00
Wim Taymans
d89790d545
Merge branch 'master' into 0.11
...
Conflicts:
gst/avi/gstavidemux.c
gst/rtp/gstrtpac3depay.c
gst/rtp/gstrtpg726depay.c
gst/rtp/gstrtpmpvdepay.c
gst/videofilter/gstgamma.c
2011-05-24 17:34:19 +02:00
Tim-Philipp Müller
900b2fb63d
flacdec: also try upstream first for duration query in DEFAULT format
...
https://bugzilla.gnome.org/show_bug.cgi?id=650785
2011-05-23 13:25:44 +01:00
Wim Taymans
cf1248e566
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
2011-05-16 17:52:11 +02:00
Wim Taymans
a0e301ab1a
-good: fix for new API
2011-05-16 17:50:15 +02:00
Pino Toscano
b52c7ebd19
pulse: Define PATH_MAX if it isn't defined
...
GNU Hurd for example doesn't define it.
2011-05-16 09:04:31 +02:00
Sebastian Dröge
d4b9cbc1ae
flacdec: Send EOS when seeking after the end of file instead of failing
...
Fixes bug #649780 .
2011-05-14 11:52:13 +02:00
Wim Taymans
992e3f7c55
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
gst/rtp/gstrtpgstpay.c
2011-04-29 15:49:41 +02:00
Wim Taymans
5ed18ad7b9
jack: port jack elements
2011-04-26 15:42:47 +02:00
Philip Jägenstedt
660987c6d7
jpegdec: documentation typo "jpegddec"
...
https://bugzilla.gnome.org/show_bug.cgi?id=648589
2011-04-25 21:36:28 +01:00
Wim Taymans
a1894ed363
Merge branch 'master' into 0.11
2011-04-25 11:38:28 +02:00
David Schleef
24d57ac961
pngdec: Remove temporary code
...
Now that we depend on (what will be) -base-0.10.33.
2011-04-24 18:53:50 -07:00
Wim Taymans
2f9a7b1a1b
flac: port to 0.11
2011-04-19 18:55:31 +02:00
Wim Taymans
dea50d0b98
use G_DEFINE_TYPE
2011-04-19 17:07:18 +02:00