-
-
Notifications
You must be signed in to change notification settings - Fork 130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
output.harbor does not send ICY metadata #3369
Comments
I would like to include additional information regarding this issue.
Tests:
|
ok, had to adapt the main.liq a bit since i'm running liquidsoap from a docker container ❯ ls
main.liq music
❯ ls music
1.mp3 2.mp3
❯ cat main.liq
s1 = single("music/1.mp3")
s2 = single("music/2.mp3")
s = rotate([s1, s2])
output.harbor(
%mp3(bitrate=320),
mksafe(s),
port=8000,
mount="/stream",
metaint=512,
) starting liquidsoap container with version docker run --rm -v $(pwd)/main.liq:/etc/liquidsoap/liquidsoap.liq -v $(pwd)/music:/music --network host --name liq savonet/liquidsoap:v2.2.0 /etc/liquidsoap/liquidsoap.liq ❗ had to use ❯ curl http://localhost:8000/stream -H 'Icy-MetaData: 1' -s -v
* Trying 127.0.0.1:8000...
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET /stream HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.81.0
> Accept: */*
> Icy-MetaData: 1
>
* Received HTTP/0.9 when not allowed
* Closing connection 0 running ❯ curl http://localhost:8000/stream -H 'icy-metaData: 1' -s -v
* Trying 127.0.0.1:8000...
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET /stream HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.81.0
> Accept: */*
> icy-metaData: 1
>
* Received HTTP/0.9 when not allowed
* Closing connection 0 running for i in $(seq 1 10);do curl https://localhost:8000/stream -H 'Icy-MetaData: 1' -s | head -c 700 | grep -aoP 'StreamTitle=.*?;';done Now, running same commands on liquidsoap container with version docker run --rm -v $(pwd)/main.liq:/etc/liquidsoap/liquidsoap.liq -v $(pwd)/music:/music --network host --name liq savonet/liquidsoap:v2.1.4 /etc/liquidsoap/liquidsoap.liq i get the following: ❯ curl http://localhost:8000/stream -H 'Icy-MetaData: 1' -s -v
* Trying 127.0.0.1:8000...
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET /stream HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.81.0
> Accept: */*
> Icy-MetaData: 1
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Content-type: audio/mpeg
< icy-metaint: 512
* no chunk, no close, no size. Assume close to signal end
<
* Failure writing output to destination
* Closing connection 0
*
❯ curl http://localhost:8000/stream -H 'icy-metaData: 1' -s -v
* Trying 127.0.0.1:8000...
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET /stream HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.81.0
> Accept: */*
> icy-metaData: 1
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Content-type: audio/mpeg
* no chunk, no close, no size. Assume close to signal end
<
* Failure writing output to destination
* Closing connection 0
❯ curl http://localhost:8000/stream -H 'Icy-MetaData: 1' -s | head -c 700 | grep -aoP 'StreamTitle=.*?;'
StreamTitle='1';
❯ for i in $(seq 1 10);do curl http://localhost:8000/stream -H 'Icy-MetaData: 1' -s | head -c 700 | grep -aoP 'StreamTitle=.*?;';done
StreamTitle='2';
|
Using Liquidsoap in docker via official savonet/liquidsoap:b9b936d image from docker http://hub.docker.com,
when connecting directly to
output.harbor
, ICY metadata is not sent (though metadata seems to be read from files).Listening to same stream via IceCast2, ICY metadata is received in player.
using:
and this test script:
connecting to stream
output.harbor
via:> mpv --http-header-fields='Icy-MetaData: 1' 'http://127.0.0.1:8500/stream.mp3'
Liquidsoap shows:
Same thing on
/stream.aac
Using
savonet/liquidsoap:v2.2.0
, same behavior as above.Using
savonet/liquidsoap:v2.1.4
, everything works as expected.It seems to be the exact same behavior as described by bug #358, which is now marked as closed, so maybe a regression was introduced?
The text was updated successfully, but these errors were encountered: