Commit graph

2438 commits

Author SHA1 Message Date
Sebastian Dröge
106bc2b17b souphttpsrc: Add "compress" property to enable/disable automatic gzip/deflate content encoding handling 2014-02-12 13:00:13 +01:00
Sebastian Dröge
9cac68709a souphttpsrc: Retry connection if we're finished before the content size only if we actually have a content size
https://bugzilla.gnome.org/show_bug.cgi?id=722185
2014-02-12 12:39:10 +01:00
Sebastian Dröge
436d41fa8e souputils: Fix compiler warning
gstsouputils.c:35:25: error: comparison of constant 9 with expression of type
      'SoupLoggerLogLevel' is always false
      [-Werror,-Wtautological-constant-out-of-range-compare]
2014-02-12 10:08:50 +01:00
Reynaldo H. Verdejo Pinochet
4f42fff349 souphttp*: add ability to do HTTP session logging
This changeset adds the loggin infrastructure and
mods both souphttpsrc and souphttclientsink to use it.

https://bugzilla.gnome.org/show_bug.cgi?id=721764
2014-02-11 17:50:44 -03:00
Sebastian Dröge
cf31a4284b souphttpsrc: Add mapping for NOT_FOUND and NOT_AUTHORIZED errors 2014-02-11 13:25:46 +01:00
Sebastian Dröge
5514bc2785 souphttpsrc: Don't duplicate status_code to GStreamer error mapping 2014-02-11 13:25:22 +01:00
Sebastian Dröge
fd55cb324d id3v2mux: Fix another compiler warning 2014-02-08 21:01:32 +01:00
Sebastian Dröge
f299fc899c id3v2mux: Fix unitialized variable compiler warning
error: variable 'image_type' is used uninitialized
whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
2014-02-08 17:27:51 +01:00
Tim-Philipp Müller
85501e6c2a flacenc: order format in template caps by preference
To minimise risk of bad fixation, though audioconvert
at least should be smart enough to avoid it.
2014-02-04 21:26:56 +01:00
Rafał Mużyło
ac4df5e2c5 gst: Don't use endianness-specific S8 audio format
It does not exist.

https://bugzilla.gnome.org/show_bug.cgi?id=723331
2014-02-04 13:44:29 +01:00
Julien Isorce
90b01fce61 cairooverlay: add support for RGB16
https://bugzilla.gnome.org/show_bug.cgi?id=723289
2014-01-31 14:17:54 +00:00
Tim-Philipp Müller
4480a25844 shout2send: error out if no caps were received
Instead of assuming that input is ogg.
2014-01-21 10:56:19 +00:00
Tim-Philipp Müller
d7210befdc shout2send: accept audio/webm, audio/ogg and video/ogg as well
Those are advertised in the template caps, but the
setcaps handler didn't handle them. But then oggmux
and oggparse at least for now still always output
application/ogg anyway, so that wasn't a real problem.
2014-01-21 00:49:44 +00:00
Reynaldo H. Verdejo Pinochet
0e159e3b03 souphttpsrc: use status code macro instead of 407
Rest of the code is using the _PROXY_AUTHENTICATION_REQUIRED
macro too. Easier to understand if you don't recall HTTP
error codes by heart.
2014-01-03 14:15:59 -03:00
Reynaldo H. Verdejo Pinochet
ac7d346355 shout2send: change audio_format field to format
This element and the underlying libshout2 library
can handle video media files too. The code already
handles video/webm so the name gets confusing. Also
add and use DEFAULT_FORMAT macro Instead of hardwiring
SHOUT_FORMAT_VORBIS at init

https://bugzilla.gnome.org/show_bug.cgi?id=721342
2014-01-03 14:15:59 -03:00
Reynaldo H. Verdejo Pinochet
667c803730 shout2send: clarify meaning of the URL prop
https://bugzilla.gnome.org/show_bug.cgi?id=721342
2014-01-03 14:15:59 -03:00
Reynaldo H. Verdejo Pinochet
e6321ecb74 shout2send: docs, add a sample pipeline
And finish adding shout2send to the docs while at it

https://bugzilla.gnome.org/show_bug.cgi?id=721342
2014-01-03 14:15:59 -03:00
Reynaldo H. Verdejo Pinochet
4182f42f7b gdkpixbufoverlay: remove spurious @see_also 2014-01-03 14:15:59 -03:00
Reynaldo H. Verdejo Pinochet
9dd6e22ba9 shout2send: drop IP only requirement for _set_host()
libshout2 (we require > 2.0 at config time) supports
both IP and hostname for _set_host(). Dropped an
outdated FIXME regarding this limitation, adjusted
some comments and changed the param blurb to reflect
this too.
2013-12-27 01:31:33 -03:00
Reynaldo H. Verdejo Pinochet
786f87ef30 shout2send: Retarget FIXME to 2.0 2013-12-27 01:31:20 -03:00
Sebastian Dröge
92c3211c79 id3v2mux: Set picture type in the APIC frames 2013-12-16 16:17:07 +01:00
Sebastian Dröge
d60ac3cfea id3v2mux: Set image-description from the info struct, not the caps 2013-12-16 16:14:52 +01:00
Sebastian Dröge
d9deb95012 wavpackdec: Require caps to be set before accepting any data 2013-12-05 12:15:19 +01:00
Sebastian Dröge
c880e36779 speexdec: Require caps to be set before accepting any data 2013-12-05 12:13:33 +01:00
Sebastian Dröge
774e56b051 flacdec: Require caps to be set before accepting any data 2013-12-05 12:13:10 +01:00
Sebastian Dröge
5c8163a685 vpx: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:42:34 +01:00
Olivier Crête
dc782af133 pulsesink: Free device_info in accepts caps
https://bugzilla.gnome.org/show_bug.cgi?id=719811
2013-12-04 16:24:06 -05:00
Thiago Santos
6bb6a5cdf4 jpegdec: deprecate max-errors
The property wasn't use internally, let the base class handle the
number of errors to tolerate.
2013-11-25 11:58:58 -03:00
Thiago Santos
be2f2f196a jpegdec: let the base class decide when to return an error
The base videodecoder class has an error counting feature to tolerate
a few errors before posting an error message. So don't force the
error and let the base class decide when it should happen

https://bugzilla.gnome.org/show_bug.cgi?id=710762
2013-11-25 11:03:34 -03:00
Thiago Santos
673b8ca1c1 jpegdec: Add data skipping on input
Add missing bytes skipping when bad input is received.

https://bugzilla.gnome.org/show_bug.cgi?id=710762
2013-11-25 11:03:26 -03:00
Tim-Philipp Müller
d9c2914c90 g_memmove() is deprecated
Just use plain memmove(), g_memmove() is deprecated in
recent GLib versions.

https://bugzilla.gnome.org/show_bug.cgi?id=712811
2013-11-21 15:30:34 +00:00
Tim-Philipp Müller
d506409af5 docs: get rid of 'Since: 0.10.x' markers
And some gtk-doc markup fixes.
2013-11-18 14:47:35 +00:00
Sebastian Dröge
4f288a5234 wavpackenc: Fix writing of MD5 sums and other metadata blocks
These don't have the FINAL_BLOCK flag set.
2013-10-31 19:15:12 +01:00
Djalma Lúcio Soares da Silva
a22d61007a hdv1394src: Make it possible to select a camera by its GUID
The source hdv1394src has the guid property that permits select a camera
connected from its GUID number.
However when this property is setted the selected camera is not changed.
The source continues using the default camera.

This problem was solved using the function iec61883_cmp_connect.
The reference for the function could be found here:
http://www.dennedy.org/libiec61883/API-iec61883-cmp-connect.html

The solution came from dvgrab source code.

https://bugzilla.gnome.org/show_bug.cgi?id=710415
2013-10-31 17:26:08 +01:00
Thiago Santos
856c07ea00 souphttpsrc: do not emit EOS when connection drops
If the pipeline is stalled for too long, souphttpsrc will block and
stop fetching data from the network. This can cause the connection to
drop and souphttpsrc would handle it as an EOS. This patch makes it
persist and try to fetch more data until the end of the content length
or until receiving an error that it is beyong limits in case the content
is unknown.

https://bugzilla.gnome.org/show_bug.cgi?id=683536
2013-10-11 16:10:16 -03:00
Sebastian Dröge
c65a8881f9 dvdec: Don't send segment event before caps
https://bugzilla.gnome.org/show_bug.cgi?id=709728
2013-10-10 13:52:35 +02:00
Sebastian Dröge
fa399bf834 dvdemux: Send stream-start, caps and segment events in the right order
https://bugzilla.gnome.org/show_bug.cgi?id=709728
2013-10-09 17:46:33 +02:00
Matthieu Bouron
e5c443594f jpegdec: Relax sink caps
Since jpegdec already parse the jpeg stream, the sink caps could be
relaxed. This will allow jpegdec to be selected in more case and in
particular when the jpeg typefinder does not find the width and height.

https://bugzilla.gnome.org/show_bug.cgi?id=709352
2013-10-04 10:33:13 +02:00
Thiago Santos
c84282b9a6 souphttpsrc: do not do http requests in READY
HEAD requests to discover if the server is seekable shouldn't be done in
READY as it might lock the main thread that is doing the state change.

https://bugzilla.gnome.org/show_bug.cgi?id=705371
2013-09-18 18:36:38 +02:00
Tim-Philipp Müller
1dfc1f2686 Don't use setlocale in plugins()
Only apps should call setlocale(), not libraries.
2013-09-01 21:18:38 +01:00
Olivier Crête
e00b8f0a4a pulsesink: Add property to find out the device currently in use
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 15:03:29 -04:00
Olivier Crête
d379e237c1 pulsesink: De-duplicate code to get the current sink input info
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 14:37:28 -04:00
Olivier Crête
8f9fbfa992 pulsesink: Implement changing the device while playing
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 14:25:30 -04:00
Olivier Crête
691b04e5c9 pulsesrc: Add property to find out the device currently in use
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 13:32:04 -04:00
Olivier Crête
d56f4718c2 pulsesrc: De-duplicate code to get the current source output info
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 13:32:04 -04:00
Olivier Crête
c3642e3ecf pulsesrc: Implement changing the device while playing
https://bugzilla.gnome.org/show_bug.cgi?id=590768
2013-08-22 13:32:04 -04:00
Akihiro Tsukada
fda72021d2 pulsesink: Add support for AAC pass-through
https://bugzilla.gnome.org/show_bug.cgi?id=694445
2013-08-21 21:48:56 +02:00
Kishore Arepalli
1e917822a9 gdkpixbufoverlay: crashes if any property changes during playback when location property is not set
https://bugzilla.gnome.org/show_bug.cgi?id=702988
2013-08-21 21:42:02 +02:00
Olivier Crête
db84b928a3 pulse: Share static caps definition between src and sink
The src was also missing 24-bit sample formats
2013-08-21 15:23:12 -04:00
Tim-Philipp Müller
cebfacd1fa jpegenc: don't ignore return value from _finish_frame()
gst_video_encoder_finish_frame() will return FLOW_OK here if
there's no output buffer.
2013-08-21 13:05:00 +01:00
Olivier Crête
dd5d93f0f6 pulse: Remove unused GstPulseProbe 2013-08-19 12:56:27 -04:00
Sebastian Dröge
de7e1cb6dd flacenc: Properly set headers via the base class instead of just pushing them downstream
Prevents buffers from being send before the caps and segment events.
2013-08-16 13:26:50 +02:00
Sebastian Dröge
b1e442236f ext: Use new flush vfunc of video codec base classes and remove reset implementations 2013-08-15 15:08:05 +02:00
Tim-Philipp Müller
604bfa586e soup: don't use deprecated soup_message_headers_get() API 2013-08-14 11:54:19 +01:00
Andoni Morales Alastruey
24b4ea3418 souphttpsrc: fix critical setting a NULL uri redirection 2013-08-13 12:02:29 +02:00
Andoni Morales Alastruey
b9faeab236 souphttpsrc: add redirection to the URI query 2013-08-12 16:40:26 +02:00
Sebastian Dröge
c12c9e7632 flacenc: Fix handling of image tags
The caps should be used to get the mimetype and there is
only an info structure for the GstSample if the image-type
is not NONE.
2013-07-28 18:09:33 +02:00
Sebastian Dröge
2fa5c708f3 flacenc: Don't crash if there is no image tag information
https://bugzilla.gnome.org/show_bug.cgi?id=705018
2013-07-28 18:04:32 +02:00
Arnaud Vrac
e67655608c souphttpsrc: always ignore HEAD errors
https://bugzilla.gnome.org/show_bug.cgi?id=704241
2013-07-25 18:01:30 +02:00
Sebastian Dröge
ef4a21253b jpegenc: Clean up reset/start/stop handling 2013-07-25 14:26:37 +02:00
Sebastian Dröge
4944183061 jpegdec: Use base class error handling function instead of replicating it here 2013-07-25 14:26:37 +02:00
Sebastian Dröge
6f39f5d49f jpegdec: Clean up handling of reset/start/stop 2013-07-25 14:26:37 +02:00
Sebastian Dröge
c123519fed dvdemux: Add support for group-id in the stream-start event 2013-07-22 15:30:12 +02:00
Arnaud Vrac
37458a4a17 vpx: fix compilation when encoder or decoder headers are not installed
https://bugzilla.gnome.org/show_bug.cgi?id=704547
2013-07-19 14:21:28 +02:00
Wim Taymans
5750a67765 sink: alaw/mulaw caps don't have a layout property 2013-07-12 12:32:42 +02:00
Wim Taymans
8248ff8232 pulse: relax mulaw and alaw format checks
The audio library considers them as encoded formats and does not fill in the
sample width. The audio ringbuffers identifies the format as alaw/mulaw and that
is always 8 bits.
2013-07-12 12:32:42 +02:00
Thiago Santos
9a7321872f souphttpsrc: ignore errors from HEAD request
HEAD requests are used to check the server headers to see if it
seekable. Ignore errors from those requests as they shouldn't be
critical.

https://bugzilla.gnome.org/show_bug.cgi?id=704053
2013-07-12 10:01:26 +02:00
Andoni Morales Alastruey
66dbe3151a souphttpsrc: also consider stop positions in seeks
Use seek stop position as range end for requests

https://bugzilla.gnome.org/show_bug.cgi?id=702206
2013-07-01 13:55:13 -03:00
Thiago Santos
5bc5f4a0f6 souphttpsrc: allow seeks in ready
On is_seekable, check if the server's headers have already been
received. If not, do a HEAD request to get them before responding
to basesrc.

https://bugzilla.gnome.org/show_bug.cgi?id=702206
2013-07-01 13:55:13 -03:00
Kishore Arepalli
5d98c9d500 gdkpixbufoverlay: Allow negative offsets to specify offset from bottom/right
https://bugzilla.gnome.org/show_bug.cgi?id=702826
2013-07-01 13:08:39 +02:00
Sebastian Dröge
943520382f vp8dec: Error out gracefully if we get an unsupported color format
In theory we can only get I420 though, just to be on the safe side.
2013-06-22 10:59:17 +02:00
Sebastian Dröge
9b7a6a3f90 vp9: Add support for YV12, Y42B and Y444 color formats
The encoder does not work with Y42B and Y444 yet it seems.
2013-06-22 10:57:41 +02:00
Sebastian Dröge
9788976fd4 vp9dec: Update default postproc settings from vp9_dx_iface.c 2013-06-22 10:26:18 +02:00
Sebastian Dröge
f67af2936f vpx: Add initial, experimental VP9 support 2013-06-21 18:22:12 +02:00
Arun Raghavan
7486e2fc53 Revert "pulsesink: Make 2.0 dependency optional"
This reverts commit 01457027e0.

We'll just depend on PulseAudio 2.0 or above instead of having the bug
partially fixed based on the installed libpulse version.
2013-06-13 14:23:08 +05:30
Arun Raghavan
01457027e0 pulsesink: Make 2.0 dependency optional
The getcaps function we added uses some pa_format_info_get_prop...
accessor functions that were only added in 2.0, so we only have our
getcaps implementation exist if we're compiling against libpulse 2.0 or
above.

Eventually, we could bump the minimum requirement to 2.0 or above.

https://bugzilla.gnome.org/show_bug.cgi?id=686459
2013-06-13 12:44:32 +05:30
Arun Raghavan
c7e65777e1 pulsesink: Cache the getcaps/acceptcaps probe stream
getcaps is called frequently during stream setup, and creating a new
stream each time is very inefficient. There's some more room for
optimisation by caching the queried sink formats as well, but this needs
some more changes to listen for format changes on the sink (for when
supported formats change between probe stream creation and sink
querying).

https://bugzilla.gnome.org/show_bug.cgi?id=686459
2013-06-10 13:05:43 +05:30
Arun Raghavan
14e784f9fc pulsesink: Add a getcaps function
This allows us to have more fine-tuned caps in READY or above. However,
this is _really_ inefficient since we create a new stream and query sink
for every getcaps in READY, which on a simple gst-launch line happens
about 35 times. The next step is to cache getcaps results.

https://bugzilla.gnome.org/show_bug.cgi?id=686459
2013-06-10 13:05:24 +05:30
Arun Raghavan
84238d3ea4 pulsesink: Take a lock on the ringbuffer in acceptcaps
This is needed as a concurrent state change could pull the context or
stream out from under our feet.

https://bugzilla.gnome.org/show_bug.cgi?id=686459
2013-06-10 13:05:16 +05:30
Sebastian Dröge
bae53878e6 png: Link with libgstbase for GstByteReader and GstAdapter 2013-06-07 15:38:25 +02:00
Arun Raghavan
e5fad95306 pulsesink: Get rid of acceptcaps side-effects
The sink info callback should not have side-effects on the GstPulseSink
object since we are sometimes using with a dummy stream in acceptcaps.

https://bugzilla.gnome.org/show_bug.cgi?id=686459
2013-06-06 16:15:48 +05:30
Sebastian Dröge
f287756f87 gdkpixbufdec: Keep serialized events in order, and don't send SEGMENT before CAPS 2013-05-28 15:47:38 +02:00
Tom Greenwood
5532989728 vp8enc: Add property to manually specify the timebase of the encoder
https://bugzilla.gnome.org/show_bug.cgi?id=695709
2013-05-26 10:23:08 +02:00
Thiago Santos
a8460654d5 jpegdec: fix compiler warning on type check 2013-05-07 19:29:17 -03:00
Sebastian Dröge
8ca4a47cdc jpegdec: By default assume that we're working on non-packetized input
Only detecting this in set_format() does not work because we might
not get any caps at all, e.g. from filesrc.
2013-05-07 16:32:03 +02:00
Sebastian Dröge
0392a0dc3d pngdec: Implement parsing functionality
This allows to plug pngdec directly without a parser if that
is desired.

Parsing code is based on pngparse.
2013-05-07 16:31:59 +02:00
Sebastian Dröge
797ebfc32b cacasink: Fix support for RGB formats and add support for more of them 2013-05-07 15:54:24 +02:00
Sebastian Dröge
c43e7001ab souphttpsrc: Don't consider the content size from the HTTP headers as absolutely correct
The HTTP server could give wrong information, e.g. if the HTTP stream is
chunk-encoded or compressed, or if the server does not know the complete size
at the time when the file is requested by the client.

Also see
https://bugs.webkit.org/show_bug.cgi?id=115354
2013-05-04 13:22:04 +02:00
Arun Raghavan
cc5562a8d9 pulsesink: Better error message when server version is too old
We check for the library version at configure time, but the server
version can only really be checked at run-time.

https://bugzilla.gnome.org/show_bug.cgi?id=698768
2013-04-29 11:54:26 +05:30
Stefan Sauer
7e3793e378 flactag: forward caps event
This ensures that the downstream element will get the event and negotiates. Add
a FIXME for updating the streamheader field on th caps.
2013-04-17 21:12:55 +02:00
Stefan Sauer
ddedf6b797 flac: add more logging 2013-04-17 20:29:02 +02:00
Philippe Normand
d975a70f12 souphttpsrc: fix SCHEDULING query support
Chain the query up to parent before adding _BANDWIDTH_LIMITED flag,
so that all the other flags get set, and push mode gets added as
supported activation mode.

https://bugzilla.gnome.org/show_bug.cgi?id=693484
https://bugzilla.gnome.org/show_bug.cgi?id=698156
2013-04-16 19:53:18 +01:00
Philippe Normand
b857cb38dd souphttpsrc: basic scheduling query support
Answer to scheduling queries with default parameters and the new
_BANDWIDTH_LIMITED_FLAG so that downstream is advised to minimize seek
operations and perform on-disk buffering if possible.

Bug 693484
2013-04-16 16:46:20 +02:00
Sebastian Dröge
b0b0557c48 gst: Add better support for static plugins 2013-04-15 15:54:11 +02:00
Tim-Philipp Müller
24bc3c46f9 souphttpsrc: add back "iradio-mode" property to disable sending of icecast request headers
In 1.0 we now always send the icecast request headers by default, which
makes the server send icecasts metadata inserted into the stream if it
supports that. However, there are some use cases where this is not
desirable, like when just saving a radio stream to disk, so add back
the "iradio-mode" property to allow people to disable this.

https://bugzilla.gnome.org/show_bug.cgi?id=697984
2013-04-14 12:39:28 +01:00
Stefan Sauer
33752425e7 pulsesink: add a little more docs to the audioclock 2013-04-11 20:47:18 +02:00
Thibault Saunier
c82102b158 gdkpixbufsink: Add timestamp/running-time/stream-time to the emited message 2013-04-06 15:10:06 -03:00
Tom Greenwood
3d335cb1ed vp8dec: Improve logging when vpx_codec_peek_stream_info fails
Decode failures and missing keyframes should get different debug
output.

https://bugzilla.gnome.org/show_bug.cgi?id=697232
2013-04-04 11:48:53 +02:00
Stefan Sauer
ce06005f2a flacenc: remove old since comments and update logging
Don't pretend that we have a timestamp on a buffer when we never set one.
2013-04-03 20:30:09 +02:00
Tom Greenwood
4d0542220e vp8enc: Fix for divide by zero when using 0/1 framerate
https://bugzilla.gnome.org/show_bug.cgi?id=695709
2013-03-25 10:05:25 +01:00