| 14 Jul 2025 |
matthewcroughan - nix.zone | * I think I'll make a minimal icecast example if I ever figure this out | 14:47:43 |
@saiko:knifepoint.net | it probably reacts to one of these https://github.com/NixOS/nixpkgs/blob/nixos-25.05/nixos/modules/services/web-servers/nginx/default.nix#L107 | 14:48:53 |
@saiko:knifepoint.net | (Host or X-Forwarded-Host) | 14:49:27 |
matthewcroughan - nix.zone | Another thing is that icecast is http 1.0 afaik | 14:49:58 |
n4ch723hr3r | also: arent those proprietary extensions to icecast against its license (GPLv2 or later) | 14:50:05 |
matthewcroughan - nix.zone | we enable http2 on all nginx virtualhosts by default | 14:50:14 |
Zhaofeng Li | In reply to @matthewcroughan:defenestrate.it
https://icecast.foo.com/stream doesn't work via a nginx proxy, because the stream is not http But it has to be http, right? Otherwise it won't work for the web client | 14:50:14 |
n4ch723hr3r | i looked up http/3 just now bcs i wondered that as well and found a proprietary fork/wrapper | 14:50:31 |
matthewcroughan - nix.zone | It isn't, and I don't know why it works | 14:50:36 |
matthewcroughan - nix.zone | I just know that when I proxy it, the client (nginx in that case) gets 502 bad gateway because.. | 14:50:55 |
matthewcroughan - nix.zone | This is the error you get | 14:51:11 |
n4ch723hr3r | also icecast development seems kind of slow | 14:54:15 |
n4ch723hr3r |  Download image.png | 14:54:26 |
n4ch723hr3r | 4 commits this year .__. | 14:54:39 |
matthewcroughan - nix.zone | https://hls.somafm.com/ | 14:57:51 |
matthewcroughan - nix.zone |
While there are many players that support HLS, many still do not support metadata display (e.g. Artist, Title).
| 14:58:02 |
n4ch723hr3r | metadata is usually done seperately via json | 14:58:34 |
n4ch723hr3r | or websockets if you want to be fancy | 14:58:46 |
matthewcroughan - nix.zone | I can see why people aren't bothering then | 14:58:48 |
matthewcroughan - nix.zone | icecast sorted that out a long time ago | 14:58:52 |
matthewcroughan - nix.zone | and why it remains a bit of an experiment | 14:59:11 |
matthewcroughan - nix.zone | Internet radio is a solved problem when you use icecast, and more of an experiment and unfinished when you use HLS | 14:59:32 |
n4ch723hr3r | i'd say its DIY if you dont use icecast | 15:00:05 |
matthewcroughan - nix.zone | mpv 'https://hls.somafm.com/hls/groovesalad/FLAC/program.m3u8'
● Audio --aid=1 (flac 2ch 48000 Hz 983 kbps) [default]
AO: [pipewire] 48000Hz stereo 2ch s16
A: 00:00:01 / 00:00:29 (7%) Cache: 27s/3MB
Exiting... (Quit)
| 15:00:28 |
matthewcroughan - nix.zone | whereas if you use the non-hls stream, MPV will show you all the metadata | 15:00:42 |
n4ch723hr3r | oh true thats a thing that you'd have to look into seperately | 15:01:15 |
n4ch723hr3r | probably a big problem is that there isnt much interest in this anymore since spotify and youtube became so popular | 15:01:33 |
matthewcroughan - nix.zone | Yes, internet radio itself as a category requires more development, even though HLS is the superior way to achieve it, it's unfinished as you can see by my mpv command above | 15:02:00 |
emily | mpv just doesn't implement HLS timed metadata. the stream does have it. | 15:02:03 |
matthewcroughan - nix.zone | Yes, that's what I mean by unfinished | 15:02:20 |