Skip to content
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

Cannot play .ogg files on macOS #815

Open
RagglenLove opened this issue Jan 4, 2025 · 29 comments · May be fixed by #816
Open

Cannot play .ogg files on macOS #815

RagglenLove opened this issue Jan 4, 2025 · 29 comments · May be fixed by #816

Comments

@RagglenLove
Copy link

RagglenLove commented Jan 4, 2025

I'm running Museeks Version 0.20.1 (20250102.162553) on MacOS 15.2, installed via Homebrew with the following command:

brew install --no-quarantine --cask museeks

I'm unable to play my music library on Museeks, I'm getting this error message:

The operation is not supported. The track file could not be found. It may be due to a file move or an unmounted partition.

This issue only happened yesterday when I updated my Homebrew applications, which included Museeks, with the following command:

brew update && brew upgrade --no-quarantine

On the previous version of Museeks, this wasn't an issue, so this is a bug on the new version of Museeks, and this isn't an issue with MacOS either, because I tested other music players, like VLC, and my music collection runs okay there, but not on Museeks.

Included in this bug report is a screenshot of the bug:

Screenshot 2025-01-04 at 4 50 49 PM

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Thank you for the report! I am primarily using macOS, and I did not see this bug, so that's weird.

Can you click on view -> open developer tools -> console, then try playing a track again and take a screenshot of the console?

@RagglenLove
Copy link
Author

Thank you for the report! I am primarily using macOS, and I did not see this bug, so that's weird.

Can you click on view -> open developer tools -> console, then try playing a track again and take a screenshot of the console?

Thanks for the reply, and here's the output:

Screenshot 2025-01-04 at 6 13 26 PM

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Thank you, can you also try uninstalling the cask, then installing the dmg from the website and tell me if that happens too?

I do not maintain the cask myself, so there might have been an issue here.

If that still does not work, can you tell me where your music is? (Same drive, on a network drive, etc?)

@RagglenLove
Copy link
Author

RagglenLove commented Jan 4, 2025

I uninstalled the cask and I installed the .dmg from your website, same issue, same console output.

My music is on my Macintosh HD disk, so same drive as everything else.

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Thank you very much! That's really weird and I'm sorry for this.

I will try to reproduce it on my machine.

I can also provide an audio fallback option in the settings (I use it for Linux playback) which I think should solve the issue, but I may ask you to test it with a beta release first if you have time to help :)

@RagglenLove
Copy link
Author

I can also provide an audio fallback option in the settings (I use it for Linux playback) which I think should solve the issue, but I may ask you to test it with a beta release first if you have time to help :)

Okay, send me this setting option, and also send me a link to the beta version and I'll try to install it on my Macbook Air.

@RagglenLove
Copy link
Author

As a test, I downgraded back to 0.13.1 and my music collection plays.

@RagglenLove
Copy link
Author

Here's a screenshot of the console:

Screenshot 2025-01-04 at 7 22 40 PM

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Yep this is intended, 0.13.1 was fairly stable, but 0.20 has seen a full backend rewrite, which may bring some unintentional side effects, but I fairly tested it on all platforms.

I will work on exposing an alternative playback method, but ideally, I would solve it at the root, but I don't understand what could be going wrong (I have the exact same setup as you).

@RagglenLove
Copy link
Author

I will work on exposing an alternative playback method, but ideally, I would solve it at the root, but I don't understand what could be going wrong (I have the exact same setup as you).

Thanks man!

@martpie martpie linked a pull request Jan 4, 2025 that will close this issue
2 tasks
@martpie martpie added the bug label Jan 4, 2025
@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Ok, could you try with this binary: https://drive.google.com/file/d/1ZE6xJO0oF7hUITGbIOTvWM9_RZLdgkLt/view?usp=drive_link

Try first again with the console open and send screenshot of the error you see here. Then go to settings -> audio -> enable blob playback mode, try again and see if it works :)

Thank you!

@RagglenLove
Copy link
Author

Tested it out, it doesn't work, clicking on tracks doesn't play.

Here's the console output:

[Info] [2025-01-04][21:20:44][INFO][webview:Vf@tauri://localhost/assets/routes-DBmIObKY.js:5:4408] Player playback mode: Default (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:44][INFO][museeks::libs::utils] Retrieved and decoded playlists in 736.17µs (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:44][INFO][museeks::libs::utils] Retrieved and decoded tracks in 106.70ms (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:45][INFO][webview] UI is ready! (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:45][INFO][museeks::libs::utils] Retrieved and decoded tracks in 83.80ms (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:45][INFO][museeks::libs::utils] Retrieved and decoded playlists in 100.96µs (index-mq67B3Af.js, line 20)
[Info] [2025-01-04][21:20:50][INFO][museeks::plugins::config] Config updated (index-mq67B3Af.js, line 20, x2)
[Info] [2025-01-04][21:20:51][INFO][museeks::plugins::config] Config updated (index-mq67B3Af.js, line 20, x4)
[Error] Refused to connect to asset://localhost/%2FUsers%2FRagglenLove%2FMy%20Stuff%2Fmusic%2FStratos%204%20-%20Melocure%20-%201st%20Priority.ogg because it does not appear in the connect-src directive of the Content Security Policy.
[Error] Unhandled Promise Rejection: TypeError: Load failed
	(anonymous function) (routes-DBmIObKY.js:5:56441)

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

ooooh, that's interesting, let me try something else, new binary is building which will hopefully help debug this.

@RagglenLove
Copy link
Author

RagglenLove commented Jan 4, 2025

I couldn't implement those settings because I couldn't find them actually.

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

This was not Museeks 0.20 (the beta binary) ;) This was 0.13

@RagglenLove
Copy link
Author

Screenshot 2025-01-05 at 5 34 12 AM

@RagglenLove
Copy link
Author

This was not Museeks 0.20 (the beta binary) ;) This was 0.13

It's 0.20.1. I checked it.

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

This new screenshot is indeed. Check in the audio settings ;)

@RagglenLove
Copy link
Author

RagglenLove commented Jan 4, 2025

Okay, found it:

Screenshot 2025-01-05 at 5 47 13 AM

Doesn't work, here's the console log when I click on a track:

[Error] Unhandled Promise Rejection: invalid args `message` for command `log`: command log missing required key message
	(anonymous function) (index-mq67B3Af.js:20:327)

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

@RagglenLove
Copy link
Author

Version 0.20.1 (20250104.214953)

Doesn't work:

Screenshot 2025-01-05 at 5 59 58 AM

Here's the console log:

[Error] Refused to connect to ipc://localhost/plugin%3Anotification%7Cis_permission_granted because it does not appear in the connect-src directive of the Content Security Policy.
[Error] Refused to connect to ipc://localhost/plugin%3Anotification%7Cis_permission_granted because it appears in neither the connect-src directive nor the default-src directive of the Content Security Policy.
[Warning] IPC custom protocol failed, Tauri will now use the postMessage interface instead – TypeError: Load failed (user-script:3, line 112)
TypeError: Load failed
[Info] [2025-01-04][21:56:45][INFO][museeks::plugins::default_view] Navigating to '/library' (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][21:56:46][INFO][webview:Vf@tauri://localhost/assets/routes-Cj7nid8P.js:5:4408] Player playback mode: Blob (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][21:56:46][INFO][museeks::libs::utils] Retrieved and decoded playlists in 706.72µs (index-BWQdsz3I.js, line 20)
[Error] Refused to connect to https://api.github.com/repos/martpie/museeks/releases because it does not appear in the connect-src directive of the Content Security Policy.
[Error] Refused to connect to https://api.github.com/repos/martpie/museeks/releases because it appears in neither the connect-src directive nor the default-src directive of the Content Security Policy.
[Warning] [2025-01-04][21:56:46][WARN][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3525] An error occurred while checking updates.: Load failed (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][21:56:46][INFO][webview] UI is ready! (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][21:56:46][INFO][museeks::libs::utils] Retrieved and decoded tracks in 110.32ms (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][21:56:46][INFO][museeks::libs::utils] Retrieved and decoded playlists in 176.61µs (index-BWQdsz3I.js, line 20)
[Error] [2025-01-04][21:57:12][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The operation is not supported.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 6:1:91)
	Global Code (Script Element 6:1:298)
[Error] [2025-01-04][21:57:12][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The track file could not be loaded. It may be due to a file move, an unmounted partition or missing rights.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 10:1:91)
	Global Code (Script Element 10:1:374)
[Error] [2025-01-04][21:57:12][ERROR][webview:t@tauri://localhost/assets/routes-Cj7nid8P.js:61:35088] 
Player Debug Information:
- mode: Blob
- internal src: asset://localhost/%2FUsers%2FRagglenLove%2FMy%20Stuff%2Fmusic%2F0%20AD%20Music%20-%20Celtica.ogg
- external src: /Users/RagglenLove/My Stuff/music/0 AD Music - Celtica.ogg
- current time: 0
- playback rate: 1
- volume: 1
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 11:1:91)
	Global Code (Script Element 11:1:554)

@martpie
Copy link
Owner

martpie commented Jan 4, 2025

Well of course it's not working because I have made a stupid typo, here's a newer build. Thank you so much for helping debug this.

Don't forget to try both playback mode! :)

https://drive.google.com/file/d/1gSN08cRa7NV4S_iir8jPCUmMNqMeFb36/view?usp=drive_link

@RagglenLove
Copy link
Author

Well of course it's not working because I have made a stupid typo, here's a newer build. Thank you so much for helping debug this.

Don't forget to try both playback mode! :)

https://drive.google.com/file/d/1gSN08cRa7NV4S_iir8jPCUmMNqMeFb36/view?usp=drive_link

Version 0.20.1 (20250104.224424)

Still not working. Here's the console log:

[Info] [2025-01-04][22:55:24][INFO][webview:Vf@tauri://localhost/assets/routes-Cj7nid8P.js:5:4408] Player playback mode: Blob (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:55:24][INFO][museeks::libs::utils] Retrieved and decoded playlists in 1.30ms (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:55:24][INFO][museeks::libs::utils] Retrieved and decoded tracks in 106.89ms (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:55:25][INFO][webview] UI is ready! (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:55:25][INFO][museeks::libs::utils] Retrieved and decoded tracks in 90.12ms (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:55:25][INFO][museeks::libs::utils] Retrieved and decoded playlists in 101.33µs (index-BWQdsz3I.js, line 20)
[Error] [2025-01-04][22:55:35][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The operation is not supported.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 1:1:91)
	Global Code (Script Element 1:1:298)
[Error] [2025-01-04][22:55:35][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The track file could not be loaded. It may be due to a file move, an unmounted partition or missing rights.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 2:1:91)
	Global Code (Script Element 2:1:374)
[Error] [2025-01-04][22:55:35][ERROR][webview:t@tauri://localhost/assets/routes-Cj7nid8P.js:61:35088] 
Player Debug Information:
- mode: Blob
- internal src: asset://localhost/%2FUsers%2FRagglenLove%2FMy%20Stuff%2Fmusic%2F0%20AD%20Music%20-%20Celtica.ogg
- external src: /Users/RagglenLove/My Stuff/music/0 AD Music - Celtica.ogg
- current time: 0
- playback rate: 1
- volume: 1
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 3:1:91)
	Global Code (Script Element 3:1:554)

Here's the console log where Audio Blob Playback is disabled:

[Info] [2025-01-04][22:56:52][INFO][museeks::plugins::config] Config updated (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:56:52][INFO][webview:setPlaybackMode@tauri://localhost/assets/routes-Cj7nid8P.js:5:4936] Playback mode set to: Default (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:56:55][INFO][museeks::libs::utils] Retrieved and decoded playlists in 404.84µs (index-BWQdsz3I.js, line 20)
[Info] [2025-01-04][22:56:55][INFO][museeks::libs::utils] Retrieved and decoded tracks in 71.32ms (index-BWQdsz3I.js, line 20)
[Error] [2025-01-04][22:56:57][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The operation is not supported.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 25:1:91)
	Global Code (Script Element 25:1:298)
[Error] [2025-01-04][22:56:57][ERROR][webview:G@tauri://localhost/assets/routes-Cj7nid8P.js:5:3531] The track file could not be loaded. It may be due to a file move, an unmounted partition or missing rights.
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 26:1:91)
	Global Code (Script Element 26:1:374)
[Error] [2025-01-04][22:56:57][ERROR][webview:t@tauri://localhost/assets/routes-Cj7nid8P.js:61:35088] 
Player Debug Information:
- mode: Default
- internal src: blob:tauri://localhost/44ec3080-4ab8-41db-84b8-ae50e0d69327
- external src: /Users/RagglenLove/My Stuff/music/0 AD Music - In the Shadow of Olympus.ogg
- current time: 0
- playback rate: 1
- volume: 1
	(anonymous function) (index-BWQdsz3I.js:20:887)
	(anonymous function) (index-BWQdsz3I.js:20:624)
	value (user-script:5:275)
	value (user-script:5:345)
	(anonymous function) (Script Element 27:1:91)
	Global Code (Script Element 27:1:536)

@RagglenLove
Copy link
Author

I have to eat breakfast and head in for work now, I'll continue testing this when I get back later, thanks.

@martpie
Copy link
Owner

martpie commented Jan 5, 2025

Could you share some of those .ogg with me? It may be something with the file or .ogg files then

@martpie
Copy link
Owner

martpie commented Jan 5, 2025

I may have found the issue, but I will need to confirm it with a file.

Museeks 0.20 uses Safari webview instead of bundling and using Chrome's, like in the previous version.

Problem is, ogg has only partial support in Safari:

Supports the Vorbis audio codec, but not the Ogg container.

https://caniuse.com/?search=ogg

If this is the case, it's bad. I will need to do research on how to decode those files manually.

@RagglenLove
Copy link
Author

Okay.

0 AD Music - Celtica.ogg.zip

It's in a zip file because Github doesn't support .ogg files, which is weird since .ogg has been around for more than a decade at this point lol.

@martpie martpie changed the title Museeks 0.20.1 on MacOS 15.2: The operation is not supported. The track file could not be found. It may be due to a file move or an unmounted partition Cannot play .ogg files on macOS Jan 5, 2025
@martpie martpie added the mac label Jan 5, 2025
@martpie
Copy link
Owner

martpie commented Jan 5, 2025

I can confirm this is because of .ogg, so this is a regresssion. To fix this, I would need to migrate to another audio system. One is rodio, which seems complete and simple https://github.com/RustAudio/rodio, but would probably means a lot of changes required as the Audio decoding is now done on the UI, and not the back-end.

I think this is something worth investigating more, and I will play with rodio when I can.

In the meantime, I don't really have a workaround, except suggesting a rollback to 0.13 or converting .ogg to another format (both are not great of course).

@RagglenLove
Copy link
Author

RagglenLove commented Jan 5, 2025

Thanks for all of this. I'll just rollback to 0.13.

Converting all 3905 oggs to another format isn't a chore I'd like to do again lol.

Back in 2010, I converted all of my mp3 to ogg because I was running out of disk space, I only had 120GB HDD back in the day. My overall mp3 collection size was 16GB, and I had 14GB disk space left, so after researching, I found ogg format and converted all of my mp3, and it reduced my music collection to 8GB instead of 16GB and my disk space became 22GB, still not great, but better than 14GB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants