Error messages should be translated. URIs and filenames should not
be part of the error message string that's shown to the user.
soup_message->reason_phrase is not translated and not suitable as
error message for users (see libsoup documentation). Also fix up
error codes a bit, as far as possible with the existing codes.
Use g_slist_prepend as we don't care about the order. Check for list == NULL
instead of iterating the list to see if it is empty. Move ctx allocation down
to prevent leak in case of failure.
Don't leak the pulsesink element by having the clock keep a ref to the sink.
Create the clock only once in the constructor and use the baseaudiosink clock
cleanup code.
And as a result, don't ignore WRONG_STATE and NOT_LINKED.
Both mean that it's a good idea to pass them upstream instead
of pretending that everything is good.
Allows the application to modify the client name used to connect when
connecting to the PulseAudio daemon. Note however that updating the
property after the element reached the READY state will have no
effect until the next NULL->READY transition.
Fixes bug #627174.
Before they contained the URL before the actual failure. The other
way around makes more sense and we do the same in other elements
like filesrc.
Fixes bug #627289.
Avoid to create a new PA context for each new client by using a hash
table containing the list of ring-buffers and the shared PA context
for each client. Doing this will improve application memory usage in
the cases where multiple pipelines involving multiple pulsesink
elements are used.
Fixes bug #624338.
If the application requests a state-change and pulsesink fails to open
the ring_buffer device the mainloop attribute of the sink should be
cleaned up to avoid future state-change (NULL->READY) failures.
The existing get_type() implementation is racy, and the
g_type_class_ref() workaround didn't actually work because
it was in the wrong function. Since class creation in GObject
is thread-safe these days (since 2.16), the class_ref workaround
is no longer needed and it is sufficient to ensure the _get_type()
function is thread-safe, which G_TYPE_DEFINE does.
https://bugzilla.gnome.org/show_bug.cgi?id=624338
This reverts commit b6788153161b4e07fbf3d42a2d8921ea049305d0.
There's no gdk-pixbuf3 anymore. gdk-pixbuf was separated from GTK+
and will stay at version 2.0 for GTK+ 3.0.
Fixes a regression introduced when fixing bug #583047 in
commit a391bf52cc3c580c7a0a2316ca52eb66da3b85c1
Skip the data when libjpeg asks it to be skipped on
one of its callbacks.