mirror of
https://github.com/librespot-org/librespot.git
synced 2026-04-27 00:05:55 +03:00
[GH-ISSUE #818] Podcasts on external URL's don't load #412
Labels
No labels
A-Alsa
SpotifyAPI
Tokio 1.0
audio
bug
can't reproduce
compilation
dependencies
duplicate
enhancement
good first issue
help wanted
high priority
imported
imported
invalid
new api
pull-request
question
reverse engineering
wiki
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/librespot#412
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @benpye on GitHub (Jul 2, 2021).
Original GitHub issue: https://github.com/librespot-org/librespot/issues/818
It looks like Spotify have once again broken podcasts with librespot. I have tested with the latest commit from the dev branch (
b519a4a47d) and it still reproduces. Playing a standard track works fine, but attempting to play the latest episode of The Skewer fails, if I begin playing on my laptop then the librespot device shows as 'Unavailable to control'. If I am currently playing a track and then try to play the podcast, I see the following in the verbose log:@roderickvd commented on GitHub (Jul 2, 2021):
This may sound silly but as I don't listen to podcasts myself:
did it work before and if so, on which version?
@michaelherger commented on GitHub (Jul 2, 2021):
My application is based on librespot 0.2.0, and it's playing podcasts just fine. But The Skewer indeed would not play. This likely is more of a problem with how the BBC (which are well known to change things often, and apply strong geo fencing) is streaming their podcasts. Or they're using codec which is not supported by librespot.
FWIW: if I listen to that podcast on Spotify directly I'm getting an announcement about me being outside the UK.
@roderickvd commented on GitHub (Jul 2, 2021):
That's a good catch, as I'm working on the new Spotify API I haven't seen any proper handling of geofencing errors yet. Is that the root of this issue? If so then we can update the issue description to match and track it for future implementation.
@michaelherger commented on GitHub (Jul 2, 2021):
I don't know whether it's the root, or whether they simply are using a codec we can't handle yet. AFAIK not all podcasts are sent using the same Ogg based codec as regular streams. But there are people who know better than I do.
@ashthespy commented on GitHub (Jul 2, 2021):
I pulled some info out using Mercury - they are serving a mp3 file as quite a few other podcasts :-(
While there are some hints towards some geo policing, it doesn't seem much different from the country restriction for normal tracks.
I would put this down to not being available as OGG and thus not populating the frame with any GIDs?
If it's indeed just a matter of mp3 #651 might be a good tracking issue for non OGG formats.
@benpye commented on GitHub (Jul 2, 2021):
Just to add, I am in Canada, and the regular Spotify client plays the content fine. BBC podcasts and radios should be available outside of the UK.
I have listened to this podcast before - back in February, and I think I was using librespot then too - but I am not 100% certain.
@roderickvd commented on GitHub (Jul 3, 2021):
If you think this is a regression and not linked to geofencing or MP3/AAC's not playing, then it would be very helpful to know which version did play this specific track successfully.
@6i6i commented on GitHub (Jul 8, 2021):
I had the same problem that I couldn't select my librespot player from spotify client on android smartphone when playing a podcast episode. I had to play a song, select to play on librespot player and after that select the podcast episode.
Today I updated to the latest version of librespot and now the problem seems to be gone. I can directly select the librespot player from android smartphone and also spotify web.
@roderickvd commented on GitHub (Aug 7, 2021):
I'm closing this for now, but if anyone encounters this then please respond to my request in https://github.com/librespot-org/librespot/issues/818#issuecomment-873370485.
@roderickvd commented on GitHub (Jan 2, 2022):
I'm reopening this ticket, because the issue is that we need to stream for an external URL instead of the Spotify servers.
@sashahilton00 commented on GitHub (Feb 17, 2022):
The external urls are actually used by a few different podcast providers, it's a quirk from the times before Spotify acquired whatever the podcast company was a few years back.
With regards to geofencing, the BBC at least on their videos used to pull a trick where the URL would always return content, so
abc123.mp3was never a 404, but it one had a non-UK IP address, it would substitute in a 30 second video saying the content was region locked. Might be something similar going on here, though I thought BBC audio content was available worldwide...@roderickvd commented on GitHub (Feb 18, 2022):
Spirc V2 frames just don’t contain the URLs. But, when having librespot connected but inactive, playing from an official client, we do see them over the wire.
I tried a bunch of things with regards to the version string and ident frame but just don’t get the URL.
In the end I think we require the dealer first because that protocol seems to be something like spirc v3.