Beatbump icon indicating copy to clipboard operation
Beatbump copied to clipboard

Music do not play

Open EsmailELBoBDev2 opened this issue 1 year ago • 27 comments

So I noticed most of music do not work and I found another alt for yt music called hyperpipe (hyperpipe.surge.sh) and it plays songs fine, I tried to load same song and it worked in hyperpipe but not beatbump so why? if msuic is not geo restricted why it does not play

Tested on https://hyperpipe.surge.sh/playlist?list=OLAK5uy_l1Ce8ahs-3UY8Hrm2Qk59vJgDZiXOr8c0 (hot pink album from doja cat), https://beatbump.esmailelbob.xyz/release?type=MUSIC_PAGE_TYPE_ALBUM&id=MPREb_mPpSgqjnLFy

EsmailELBoBDev2 avatar Jul 24 '22 20:07 EsmailELBoBDev2

The reason for this (I believe) is their method of proxying the iOS HLS streams (they use the Piped API). I'm not entirely sure outside of that how exactly it works. Although I've been experimenting with it on and off for months every now and then. I've gotten close to having it functional in the past (and as recently as tonight!), but there's a few kinks I need to work out yet before it'll actually work.

Another potential factor could be that it may be using a hosted server (as in 24/7 VPS type of deal), and that would be the most straight forward answer.

In your case, when your hosted instance (which I believe is in Canada, correct?) gets the stream URLs YouTube will essentially pin the stream URL to be within the same geographic region (eg. same or very very close to country). Your instance doesn't work for me either, but there's a high chance that if you attempted to play a song from here it would (potentially) work.

The rewrite is nearly done, and hopefully will be available soon. To get around this issue for instances that are hosted from a VPS (such as yours), I'm almost finished with a proxy server that can be used in the meantime. Although not a perfect/desirable solution, it's about the most that can be done until I figure out a better way to use YouTube's HLS streams.

For the most part all that's left for me to do is to fix Docker so I can create an updated docker-compose.yml as well as architect a release workflow for it.

snuffyDev avatar Jul 26 '22 08:07 snuffyDev

Unsure as to if the demo site is the issue, but gonna see how best this can be implemented https://user-images.githubusercontent.com/72365477/180977090-37598839-cf02-4e39-933b-b1511bb7d128.MOV

snuffyDev avatar Jul 26 '22 09:07 snuffyDev

The confusing thing is that all of Ed Sheeran songs work fine but almost everything else is not (lucky me I like to listen to him)

My server indeed is in Canada and I think hyperpipe works because it uses piped, because when I selected other instances (mainly mine, haha!) it did not work and did not play any song. But do I get it right? you mean because my server is in Canada, so yt sends me the Canadian URL and this is why it does not work for me?

So how exactly proxy would work?

Oh, yeah good luck with that because I hate docker, Trust me, I use it because it makes it little easier for me to manage websites

EsmailELBoBDev2 avatar Jul 26 '22 14:07 EsmailELBoBDev2

https://user-images.githubusercontent.com/72365477/181079296-0190a1f7-21c6-4a58-809d-d94b15b1743d.mp4

Managed to get the HLS streams to work! Try this link.

I will reply momentarily to answer your other questions, but here's an update for the time being! Try out that link I sent and let me know if that video plays or not

snuffyDev avatar Jul 26 '22 18:07 snuffyDev

Yeah, it's okay, and I can confirm it works :tada:

EsmailELBoBDev2 avatar Jul 26 '22 18:07 EsmailELBoBDev2

Give this a shot: https://beatbump-hls.beatbump.workers.dev/release?type=MUSIC_PAGE_TYPE_ALBUM&id=MPREb_mPpSgqjnLFy

snuffyDev avatar Jul 26 '22 19:07 snuffyDev

https://user-images.githubusercontent.com/89056889/181098236-fe749d14-32a7-4322-bf24-27e5fd6d6556.MOV songs don't play for me, but the only song that shows the correct thing is cyber sex (It also keeps saying the operation was aborted everytime I try to play cyber sex) image

davidcollini avatar Jul 26 '22 19:07 davidcollini

It does not play with me either, tried librewolf and chromium

Also I noticed something within

https://hls-js.netlify.app/demo/?src=https%3A%2F%2Fyt-hls-rewriter.onrender.com%2Fapi%2Fmanifest%2Fhls_variant%2Fexpire%2F1658880098%2Fei%2FAizgYrSrA6uP2LYPtcat2Ao%2Fip%2F172.70.38.212%2Fid%2F4b0e5f348e34d04e%2Fsource%2Fyoutube%2Frequiressl%2Fyes%2Fplayback_host%2Frr2---sn-p5qlsndd.googlevideo.com%2Fmh%2FBq%2Fmm%2F31%252C26%2Fmn%2Fsn-p5qlsndd%252Csn-ab5l6n6e%2Fms%2Fau%252Conr%2Fmv%2Fu%2Fmvi%2F2%2Fpl%2F24%2Ftx%2F24027710%2Ftxs%2F24027707%252C24027708%252C24027709%252C24027710%252C24067856%2Fdemuxed%2F1%2Ftts_caps%2F1%2Fmaudio%2F1%2Fvprv%2F1%2Fgo%2F1%2Fmt%2F1658858202%2Ffvip%2F3%2Fnvgoi%2F1%2Fshort_key%2F1%2Fncsapi%2F1%2Fkeepalive%2Fyes%2Ffexp%2F24001373%252C24007246%2Fdover%2F13%2Fitag%2F0%2Fplaylist_type%2FDVR%2Fsparams%2Fexpire%252Cei%252Cip%252Cid%252Csource%252Crequiressl%252Ctx%252Ctxs%252Cdemuxed%252Ctts_caps%252Cmaudio%252Cvprv%252Cgo%252Citag%252Cplaylist_type%2Fsig%2FAOq0QJ8wRAIgcRpXZihDiry62g6g0bxSxCBaNWUY46PjHWg6SIsPXFwCIBd-Ux4TvyamHZZGIKaI1x6ywcdsonpzQTgVBkYYi0L9%2Flsparams%2Fplayback_host%252Cmh%252Cmm%252Cmn%252Cms%252Cmv%252Cmvi%252Cpl%2Flsig%2FAG3C_xAwRAIgWaHi0Nu6MI8vUTl4jSEthC4dBQFTQu9hH8LnREyt5I4CIDl6kHB6RsvvCLLoKDpGFYVQ3TcS7IfXmFfTBk93IEN1%2Ffile%2Findex.m3u8%3Fhost%3Drr2---sn-p5qlsndd.googlevideo.com&demoConfig=eyJlbmFibGVTdHJlYW1pbmciOnRydWUsImF1dG9SZWNvdmVyRXJyb3IiOmZhbHNlLCJzdG9wT25TdGFsbCI6ZmFsc2UsImR1bXBmTVA0Ijp0cnVlLCJsZXZlbENhcHBpbmciOi0xLCJsaW1pdE1ldHJpY3MiOi0xfQ==

that songs start to buffer then stop and re buffer again unsure if it's bug or not

Here a vid: https://user-images.githubusercontent.com/28893833/181099981-4e9f8e31-5952-4715-a954-ea665180db4e.mp4

EsmailELBoBDev2 avatar Jul 26 '22 19:07 EsmailELBoBDev2

I've spotted the issue with the HLS Stream rewriter I made, hopefully should be fixed soon!

snuffyDev avatar Jul 27 '22 11:07 snuffyDev

Okay, on the preview site (https://beatbump-preview.beatbump.workers.dev/) open settings and then change the Stream setting to HLS. Then press the 'Back' button and refresh (only temporarily janky, working on the code for handling the change now). After you refresh it'll be setup to use the HLS streams for music playback. Try to play a song from https://beatbump-preview.beatbump.workers.dev/release?type=MUSIC_PAGE_TYPE_ALBUM&id=MPREb_mPpSgqjnLFy

If it still doesn't work, then go back to settings and change Stream back to "HTTP" and refresh to revert back to the normal playback method.

Let me know if HLS streaming works, and if it doesn't, then let me know if "HTTP" playback works instead. @IronMaltese @EsmailELBoBDev2

snuffyDev avatar Jul 27 '22 13:07 snuffyDev

Both HlS and HTTP playback work but there is still a slight delay on mobile that isn't on mobile, also the song doesn't auto play and I need to swipe up and press the play button, and the songs are working, but Doha's album still plays the wrong songs https://user-images.githubusercontent.com/89056889/181301726-597b1f47-860d-4867-909d-efe9b1ca2e41.MOV

davidcollini avatar Jul 27 '22 16:07 davidcollini

Both HlS and HTTP playback work but there is still a slight delay

How? xD

Nah both do not work with me still :'(

https://user-images.githubusercontent.com/28893833/181307052-7731867a-c670-4872-99f8-12370290e247.mp4

EsmailELBoBDev2 avatar Jul 27 '22 17:07 EsmailELBoBDev2

Both HlS and HTTP playback work but there is still a slight delay

How? xD

Nah both do not work with me still :'(

https://user-images.githubusercontent.com/28893833/181307052-7731867a-c670-4872-99f8-12370290e247.mp4

The video isn't showing up but I'm on the latest version of iOS (I'll try it on a private tab and see if it works)

davidcollini avatar Jul 27 '22 17:07 davidcollini

https://user-images.githubusercontent.com/89056889/181311582-df2cb642-5387-465e-a442-be889138df64.MOV is this a geo restriction problem, since it's working fine for me normally and on a private tab (I'm in North America)

davidcollini avatar Jul 27 '22 17:07 davidcollini

If you mean video of music videos then it normally do not show up in desktop (web) version If you mean my video I uploaded on github, I can see it play normally so hmm....

and it might be geo restrictions but this is the problem, I opened this issue for so I think so far I'm out of luck and I'm in Egypt so songs play fine on yt music and hyperpipe but not beatbump so the origin of song is not restricted in Egypt

EsmailELBoBDev2 avatar Jul 27 '22 17:07 EsmailELBoBDev2

HLS background play and skip-next-song works well. HTTP gives "operation not supported" image

(Also when tapping a playlist from the search results it does nothing image and if i copy the share link it seems broken)

idk about geo-restrictions i am from EU

Smig0l avatar Jul 27 '22 22:07 Smig0l

Sorry for the delay in responding, I’m attempting to open a new OCI account to make a better, more “permanent” proxy

snuffyDev avatar Jul 28 '22 21:07 snuffyDev

Okay, so while I'm still using Render as a temporary host for the proxy, @EsmailELBoBDev2 and @Smig0l give both HLS and HTTP playback a shot on a normal song (not music video). Hopefully it should work now.

PS: Use the main domain (https://beatbump.ml) as I'm going to be pushing all updates to the normal URL from this point forward

snuffyDev avatar Jul 31 '22 04:07 snuffyDev

I think I'm cursed (both HTTP and HLS do not work)

Edit: after seeing both comments after me, I think I'm not cursed :D

EsmailELBoBDev2 avatar Jul 31 '22 04:07 EsmailELBoBDev2

Using HLS "operation not supported" Using HTTP "operation aborted". Also cleared cookies and site data.

EDIT: working switching to 4G (idk why..ip? Cache?) HLS works very well. HTTP works but songs have the double-lenght and after half is silence but it plays and auto-skip next well.

Smig0l avatar Jul 31 '22 08:07 Smig0l

I'm using HLS on a new browser and PC and I get operation not supported, same with HTTP. I'm using a Greek company's cellular internet btw.

IceDBorn avatar Jul 31 '22 10:07 IceDBorn

I'm getting (Abort Error: Operation not supported)

davidcollini avatar Aug 01 '22 00:08 davidcollini

It's working now (All of my testing has been on the latest version of iOS in safari)

davidcollini avatar Aug 01 '22 06:08 davidcollini

I'm taking notes of the issues you guys are having and been following closely. From what I gather, the current proxy (temporarily hosted with https://render.com) seems to fail at random. I believe it's due to them using Cloudflare for DNS and it might be something to do with their DDoS protections?

Regardless I am searching for a better solution, Oracle Cloud is being a PITA with registration. I'll update you guys with any news as soon as I find anything out.

snuffyDev avatar Aug 01 '22 20:08 snuffyDev

Screenshot 2022-08-10 001149 Update about the stream proxy: still hosted on Render (for the time being), but it works now from my extensive testing. It was due to a simple mistake I made in the code. Although I'm not fully happy with the Deno version's performance, I'm writing a proxy in Rust so people can choose which they'd rather use.

Furthermore, I managed to get MPEG-Dash streams working (not ready for release yet). So soon there will be the option to use HLS, DASH, or the regular HTTP request for playback.

I'm also finally implementing the ability to change the proxy URL, and looking at adding in some of the requested preferences while I'm at it.

Along with this I am (once again) working on overhauling the API at more of a surface level, since I'm working on creating documentation.

Documentation will be for:

  • Integration with other projects
    • As an example: TeamNewPipe/NewPipeExtractor/issues/873
  • Ease of use
  • Developers who want to use the API
  • Contributors

Hopefully some more info on the progress of everything should be coming soon, piece by piece at least. I will create a discussion thread for updates about documentation and infrastructure for anyone who's interested in getting further updates while the changes are in the works.

snuffyDev avatar Aug 10 '22 04:08 snuffyDev

Similar issues as everyone else.

Started using beatbump on a brand new phone this week, the first time I ran it it ran perfectly fine.

I was hanging with friends and put on some Henry Mancini and it would work, through song search then playing from the "play radio" queue. Was super impressed with the app.

The following night my friend wanted me to play "that funky old movie music" again, but it would not work and had to resort to adblock browser. I would open a song, but it wouldn't begin playing. I thought maybe it was a bluetooth issue, but then tested my devices using adblock browser. It was indeed beatbump, but that second day (when the first issues arose) time errors were not displaying.

But from the second day onward using it, most will simply not play and I will usually get the following errors:

If I am searching for playlists (example, in community playlists or anywhere really) and want to select from the avialable results, I will 9 times out of 10 get an "Error starting playback" error in the red notification. I have to try playlist by playlist by playlist going down the list of options until one actually plays.

Sometiimes the app will actually work as if nothing was ever the matter. I've run the app maybe 12 times in total since installing it. Right now I'm able to listen to music without issue if I listen to it from the radio section.

I have tried with/without VPN, and my Geo is Quebec Canada.

tuggerfub avatar Sep 03 '22 23:09 tuggerfub

@tuggerfub Do you know if you are using "HTTP" or "HLS" streaming? If you check in the settings, there should be a dropdown menu that says which one is being used. If it says HTTP, switch it to HLS and reload Beatbump, then try to play a song.

HTTP streaming is very fussy depending on region, but is default since it puts less load on the proxy server (I don't have a job/any income right now so unfortunately that's why it's default [for now, about to have an interview :) ])

HLS streaming should work better, but YMMV. I'm still working out the kinks with it and making things work smoother. A friend of mine couldn't get any songs to play when using HTTP, but HLS streaming worked for him (he's in the same Geo as you).

Hopefully this might've helped! Let me know if the streaming setting was the problem, or if this problem is still happening, I'm working on fixing this as best as I can!

snuffyDev avatar Sep 06 '22 03:09 snuffyDev