Commit 1343b9bf authored by Tobias Reineke's avatar Tobias Reineke Committed by Tim-Philipp Müller
Browse files

shout2: Add compatibility for libshout >= 2.4.2

In libshout >=2.4.2 shout_open() can return SHOUTERR_RETRY in addition
to SHOUTERR_BUSY.

The nonblocking example in libshout fixes the problem in a similar
way, as mentioned by the author in this issue:
https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2316

Fixes gstreamer/gst-plugins-good#848

Part-of: <gstreamer/gst-plugins-good!1108>
parent ea73a989
Pipeline #450541 passed with stages
in 34 minutes and 30 seconds
......@@ -567,7 +567,13 @@ gst_shout2send_connect (GstShout2send * sink)
ret = shout_open (sink->conn);
/* wait for connection or timeout */
#ifdef SHOUTERR_RETRY
/* starting with libshout 2.4.2, shout_open() has broken API + ABI and
* can also return SHOUTERR_RETRY (a new define) to mean "try again" */
while (ret == SHOUTERR_BUSY || ret == SHOUTERR_RETRY) {
#else
while (ret == SHOUTERR_BUSY) {
#endif
if (gst_util_get_timestamp () - start_ts > sink->timeout * GST_MSECOND) {
goto connection_timeout;
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment