Jump to content

Recommended Posts

ryancey
Posted

Seems like playing SHOUTcast streams (http://stream1.jungletrain.net:8000/) is not working anymore via STRM files

It works everywhere else. Pretty sure it worked before though.

Tried with several STRM contents:

http://stream1.jungletrain.net:8000/
http://stream1.jungletrain.net:8000/;.mp3
http://stream1.jungletrain.net:8000/;stream.mp3

Didn't try with the betas, because I didn't see anything related in the changelog.

 

2026-05-10 22:06:35.736 Info UniversalAudioService-0HNLES1HS0CR1:00000005: http/1.1 HEAD http://host1/emby/Audio/276511/universal?UserId=x_secret3_x&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus,mp3|mp3,mp2,mp3|mp2,m4a|aac,mp4|aac,flac,webma,webm,wav|PCM_S16LE,wav|PCM_S24LE,ogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=x_secret2_x&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false. Source Ip: host2, Accept=*/*, Host=zik.badfile.net, User-Agent=Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:150.0) Gecko/20100101 Firefox/150.0, Accept-Encoding=gzip, deflate, br, zstd, Accept-Language=fr-FR,en-US;q=0.9,en;q=0.8, Referer=https://host1/web/index.html, X-Real-IP=192.168.1.105, X-Forwarded-For=192.168.1.105, X-Forwarded-Host=zik.badfile.net, X-Forwarded-Proto=https, X-Forwarded-Ssl=on, X-Forwarded-Port=1001, X-Original-URI=/emby/Audio/276511/universal?UserId=86d349f91e6f4802ac355cce7c7ff3c5&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus%2Cmp3%7Cmp3%2Cmp2%2Cmp3%7Cmp2%2Cm4a%7Caac%2Cmp4%7Caac%2Cflac%2Cwebma%2Cwebm%2Cwav%7CPCM_S16LE%2Cwav%7CPCM_S24LE%2Cogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=a8a98d6467514b8e840e960ac336749f&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false, DNT=1, sec-fetch-dest=empty, sec-fetch-mode=cors, sec-fetch-site=same-origin, priority=u=4
2026-05-10 22:06:35.859 Info UniversalAudioService-0HNLES1HS0CR1:00000005: User policy for Raphaël. EnableAudioPlaybackTranscoding: True
2026-05-10 22:06:35.898 Info HttpClient: GET http://stream1.jungletrain.net:8000/
2026-05-10 22:06:36.051 Error HttpClient: Error getting response from http://stream1.jungletrain.net:8000/
	*** Error Report ***
	Version: 4.9.3.0
	Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Linux version 6.1.0-44-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP
	OS/Process: x64/x64
	Framework: .NET 8.0.22
	Runtime: system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /system
	MediaBrowser.Model.Net.HttpException: MediaBrowser.Model.Net.HttpException: Received an invalid status line: 'ICY 200 OK'.
	 ---> System.Net.Http.HttpRequestException: Received an invalid status line: 'ICY 200 OK'.
	   at System.Net.Http.HttpConnection.ParseStatusLineCore(Span`1 line, HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.ParseStatusLine(HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
	   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	   --- End of inner exception stack trace ---
	Source: 
	TargetSite: 
	No Stack Trace Available
	InnerException: System.Net.Http.HttpRequestException: Received an invalid status line: 'ICY 200 OK'.
	Source: System.Net.Http
	TargetSite: Void ParseStatusLineCore(System.Span`1[System.Byte], System.Net.Http.HttpResponseMessage)
	   at System.Net.Http.HttpConnection.ParseStatusLineCore(Span`1 line, HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.ParseStatusLine(HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
	   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	
2026-05-10 22:06:36.068 Error UniversalAudioService-0HNLES1HS0CR1:00000005: Error processing request
	*** Error Report ***
	Version: 4.9.3.0
	Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Linux version 6.1.0-44-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP
	OS/Process: x64/x64
	Framework: .NET 8.0.22
	Runtime: system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /system
	MediaBrowser.Model.Net.HttpException: MediaBrowser.Model.Net.HttpException: Received an invalid status line: 'ICY 200 OK'.
	 ---> System.Net.Http.HttpRequestException: Received an invalid status line: 'ICY 200 OK'.
	   at System.Net.Http.HttpConnection.ParseStatusLineCore(Span`1 line, HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.ParseStatusLine(HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
	   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	   --- End of inner exception stack trace ---
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsync(HttpRequestOptions options, String httpMethod)
	   at Emby.Server.Implementations.HttpServer.HttpResultFactory.GetContent(StaticFileResultOptions options, Int64 offset, Int64 length, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.FileWriter.SetContentResponseHeaders(Nullable`1 reportedTotalContentLength, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpResultFactory.GetStaticResult(IRequest requestContext, StaticResultOptions options)
	   at Emby.Server.MediaEncoding.Api.Progressive.BaseProgressiveStreamingService.ProcessRequest(StreamRequest request, Boolean isHeadRequest)
	   at Emby.Server.MediaEncoding.Api.UniversalAudioService.GetUniversalStream(GetUniversalAudioStream request, Boolean isHeadRequest, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.Services.ServiceController.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IServerApplicationHost appHost, IRequest httpReq, IResponse httpRes, IStreamHelper streamHelper, RestPath restPath, String responseContentType, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IRequest httpReq, RestPath restPath, String urlString, String localPath, String contentTypeInPath, CancellationToken cancellationToken)
	Source: Emby.Server.Implementations
	TargetSite: Void MoveNext()
	InnerException: System.Net.Http.HttpRequestException: Received an invalid status line: 'ICY 200 OK'.
	Source: System.Net.Http
	TargetSite: Void ParseStatusLineCore(System.Span`1[System.Byte], System.Net.Http.HttpResponseMessage)
	   at System.Net.Http.HttpConnection.ParseStatusLineCore(Span`1 line, HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.ParseStatusLine(HttpResponseMessage response)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
	   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
	   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	
2026-05-10 22:06:36.073 Info UniversalAudioService-0HNLES1HS0CR1:00000005: http/1.1 Response 500 to host2. Time: 338ms. HEAD http://host1/emby/Audio/276511/universal?UserId=x_secret3_x&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus,mp3|mp3,mp2,mp3|mp2,m4a|aac,mp4|aac,flac,webma,webm,wav|PCM_S16LE,wav|PCM_S24LE,ogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=x_secret2_x&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false. Headers: Content-Type=text/plain, Date=Sun, 10 May 2026 22:06:35 GMT, Server=UPnP/1.0 DLNADOC/1.50, Content-Length=46, Cross-Origin-Resource-Policy=cross-origin, Private-Network-Access-Name=nacho, Private-Network-Access-Id=3ad46a13a6094db1a9b1c9b9c5f87be5
2026-05-10 22:06:36.079 Info UniversalAudioService-0HNLES1HS0CR1:00000006: http/1.1 GET http://host1/emby/Audio/276511/universal?UserId=x_secret3_x&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus,mp3|mp3,mp2,mp3|mp2,m4a|aac,mp4|aac,flac,webma,webm,wav|PCM_S16LE,wav|PCM_S24LE,ogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=x_secret2_x&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false. Source Ip: host2, Accept=audio/webm,audio/ogg,audio/wav,audio/*;q=0.9,application/ogg;q=0.7,video/*;q=0.6,*/*;q=0.5, Host=zik.badfile.net, User-Agent=Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:150.0) Gecko/20100101 Firefox/150.0, Accept-Encoding=identity, Accept-Language=fr-FR,en-US;q=0.9,en;q=0.8, Range=bytes=0-, Referer=https://host1/web/index.html, X-Real-IP=192.168.1.105, X-Forwarded-For=192.168.1.105, X-Forwarded-Host=zik.badfile.net, X-Forwarded-Proto=https, X-Forwarded-Ssl=on, X-Forwarded-Port=1001, X-Original-URI=/emby/Audio/276511/universal?UserId=86d349f91e6f4802ac355cce7c7ff3c5&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus%2Cmp3%7Cmp3%2Cmp2%2Cmp3%7Cmp2%2Cm4a%7Caac%2Cmp4%7Caac%2Cflac%2Cwebma%2Cwebm%2Cwav%7CPCM_S16LE%2Cwav%7CPCM_S24LE%2Cogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=a8a98d6467514b8e840e960ac336749f&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false, DNT=1, sec-fetch-dest=audio, sec-fetch-mode=cors, sec-fetch-site=same-origin, priority=u=4
2026-05-10 22:06:36.081 Info UniversalAudioService-0HNLES1HS0CR1:00000006: GetPostedPlaybackInfo request. IsPlayback: true, isInLocalNetwork: False
2026-05-10 22:06:36.083 Info UniversalAudioService-0HNLES1HS0CR1:00000006: User policy for Raphaël. EnableAudioPlaybackTranscoding: True
2026-05-10 22:06:36.084 Info SessionManager: Adding playSession 1778450793733 to session 817919cc5a3b8e0d922e42c2b6bb8e88
2026-05-10 22:06:36.087 Info HttpClient: GET http://stream1.jungletrain.net:8000/
2026-05-10 22:06:36.088 Error UniversalAudioService-0HNLES1HS0CR1:00000006: Error processing request
	*** Error Report ***
	Version: 4.9.3.0
	Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Linux version 6.1.0-44-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP
	OS/Process: x64/x64
	Framework: .NET 8.0.22
	Runtime: system/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /system
	MediaBrowser.Model.Net.HttpException: MediaBrowser.Model.Net.HttpException: Cancelling connection to http://stream1.jungletrain.net:8000/ due to a previous timeout.
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
	   at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsync(HttpRequestOptions options, String httpMethod)
	   at Emby.Server.Implementations.HttpServer.HttpResultFactory.GetContent(StaticFileResultOptions options, Int64 offset, Int64 length, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.FileWriter.SetContentResponseHeaders(Nullable`1 reportedTotalContentLength, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpResultFactory.GetStaticResult(IRequest requestContext, StaticResultOptions options)
	   at Emby.Server.MediaEncoding.Api.Progressive.BaseProgressiveStreamingService.ProcessRequest(StreamRequest request, Boolean isHeadRequest)
	   at Emby.Server.MediaEncoding.Api.UniversalAudioService.GetUniversalStream(GetUniversalAudioStream request, Boolean isHeadRequest, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.Services.ServiceController.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IServerApplicationHost appHost, IRequest httpReq, IResponse httpRes, IStreamHelper streamHelper, RestPath restPath, String responseContentType, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IRequest httpReq, RestPath restPath, String urlString, String localPath, String contentTypeInPath, CancellationToken cancellationToken)
	Source: Emby.Server.Implementations
	TargetSite: Void MoveNext()
	
2026-05-10 22:06:36.089 Info UniversalAudioService-0HNLES1HS0CR1:00000006: http/1.1 Response 500 to host2. Time: 10ms. GET http://host1/emby/Audio/276511/universal?UserId=x_secret3_x&DeviceId=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&MaxStreamingBitrate=4000002&Container=opus,mp3|mp3,mp2,mp3|mp2,m4a|aac,mp4|aac,flac,webma,webm,wav|PCM_S16LE,wav|PCM_S24LE,ogg&TranscodingContainer=aac&TranscodingProtocol=hls&AudioCodec=aac&api_key=x_secret2_x&PlaySessionId=1778450793733&StartTimeTicks=0&EnableRedirection=true&EnableRemoteMedia=false. Headers: Content-Type=text/plain, Date=Sun, 10 May 2026 22:06:35 GMT, Server=UPnP/1.0 DLNADOC/1.50, Content-Length=88, Cross-Origin-Resource-Policy=cross-origin, Private-Network-Access-Name=nacho, Private-Network-Access-Id=3ad46a13a6094db1a9b1c9b9c5f87be5
2026-05-10 22:06:36.123 Info PlaystateService-0HNLES1HS0CR1:0000000A: http/1.1 POST http://host1/emby/Sessions/Playing?X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&X-Emby-Client-Version=4.9.3.0&X-Emby-Token=x_secret2_x&X-Emby-Language=en-us&reqformat=json. Source Ip: host2, UserAgent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:150.0) Gecko/20100101 Firefox/150.0
2026-05-10 22:06:36.164 Info SessionManager: Playback start reported by app Emby Web 4.9.3.0 on Firefox playing Jungle Train. Position: 0 ms. PlaySessionId: 1778450793733. IsPaused: False
2026-05-10 22:06:36.169 Info PlaystateService-0HNLES1HS0CR1:0000000A: http/1.1 Response 204 to host2. Time: 46ms. POST http://host1/emby/Sessions/Playing?X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&X-Emby-Client-Version=4.9.3.0&X-Emby-Token=x_secret2_x&X-Emby-Language=en-us&reqformat=json. 
2026-05-10 22:06:36.179 Info PlaystateService-0HNLES1HS0CR1:0000000B: http/1.1 POST http://host1/emby/Sessions/Playing/Stopped?X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&X-Emby-Client-Version=4.9.3.0&X-Emby-Token=x_secret2_x&X-Emby-Language=en-us&reqformat=json. Source Ip: host2, UserAgent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:150.0) Gecko/20100101 Firefox/150.0
2026-05-10 22:06:36.184 Info SessionManager: Playback stopped reported by app Emby Web 4.9.3.0 on Firefox playing Jungle Train. Position: 0 ms. PlaySessionId: 1778450793733. IsPaused: False
2026-05-10 22:06:36.186 Info SessionManager: Removed playSession 1778450793733 from session 817919cc5a3b8e0d922e42c2b6bb8e88
2026-05-10 22:06:36.187 Info PlaystateService-0HNLES1HS0CR1:0000000B: http/1.1 Response 204 to host2. Time: 7ms. POST http://host1/emby/Sessions/Playing/Stopped?X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=7d81ee4a-0623-40c7-96c3-b79a526fe5b0&X-Emby-Client-Version=4.9.3.0&X-Emby-Token=x_secret2_x&X-Emby-Language=en-us&reqformat=json. 

 

ryancey
Posted (edited)

Thanks for the details, I understand SHOUTCast has its own way of sending data, although objectively the issue still is in Emby, not in the thousands of internet radios running SHOUTCast right?

Also, SHOUTCast predates Emby by a long time and every decent player knows how to play SHOUTCast streams by now

Do you imply that it won't be fixed?

Edited by ryancey
Posted

We have not added support for anything proprietary to shoutcast, let's put it that way.

ryancey
Posted

Can you plan the support of SHOUTCast radios in the future? It doesn't seem like a major pain according to the Github thread you linked 

Even if it is maybe not the standard anymore, it's at least dozens of thousands of online radios. I just tested random streams from my bookmarked radios and they're all SHOUTCast.

Also I'm pretty sure it worked before, is it possible?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...