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

Automatic M3U playlists #932

Open
OxygenCobalt opened this issue Dec 21, 2024 · 8 comments
Open

Automatic M3U playlists #932

OxygenCobalt opened this issue Dec 21, 2024 · 8 comments
Assignees
Labels
complex This is a complex addition that will take some time enhancement New feature or request music Related to music loading

Comments

@OxygenCobalt
Copy link
Owner

OxygenCobalt commented Dec 21, 2024

Self-explanatory. Auxio automatically indexes M3U files and treats them like any other playlist, with edits mapping to a playlist file update.

I will need:

  • Another broad refactor for musikr to introduce M3U parsing into the loader.
  • UI upgrades to handle the longer time it takes to write file edits.
  • New heuristics or settings to handle the many path conventions in M3U and ensure writes follow the same conventions.

Considering:

  • A way to convert M3U playlists to database playlists. I don't see this happening right now since it requires some annoying semantic details on how to avoid mixing up the M3U and DB playlists.
@OxygenCobalt OxygenCobalt added enhancement New feature or request music Related to music loading labels Dec 21, 2024
@OxygenCobalt OxygenCobalt self-assigned this Dec 21, 2024
@dazu89
Copy link

dazu89 commented Dec 22, 2024

To my knowledge, there are only few other music player for Android that reliably implement this feature (e.g. Phonograph Plus, Poweramp)!

@OxygenCobalt
Copy link
Owner Author

To my knowledge, there is no other music player for Android that reliably implements this feature!

Poweramp does, but it's strangely delayed. Not sure if this is a bad sign or not.

@chocmake
Copy link

chocmake commented Dec 25, 2024

This was a nice feature of Blackberry 10, where one could just sync M3U created from one's preferred music player to the root music dir of the phone and the playlist would appear/be updated in the phone's music app. The filename would become the playlist name.

(Noted just as another example of a prior implementation)

@OxygenCobalt OxygenCobalt moved this to The Playlist Update in Auxio Roadmap Jan 3, 2025
@KraXen72
Copy link

KraXen72 commented Jan 4, 2025

this would be absolutely huge. hope it gets implemented!

@OxygenCobalt OxygenCobalt added the complex This is a complex addition that will take some time label Jan 6, 2025
@OxygenCobalt OxygenCobalt mentioned this issue Jan 8, 2025
4 tasks
@OxygenCobalt OxygenCobalt changed the title First-class M3U support Automatic M3U playlists Jan 8, 2025
@OxygenCobalt OxygenCobalt changed the title Automatic M3U playlists Automatic M3 playlists Jan 8, 2025
@OxygenCobalt OxygenCobalt changed the title Automatic M3 playlists Automatic M3U playlists Jan 8, 2025
@VoxelPrismatic
Copy link

A way to convert M3U playlists to database playlists. I don't see this happening right now since it requires some annoying semantic details on how to avoid mixing up the M3U and DB playlists.

Wdym?

@OxygenCobalt
Copy link
Owner Author

Wdym?

i.e @VoxelPrismatic Take a M3U playlist and turn it into an in-app playlist, and vice versa. It's difficult since I have to then "hide" the M3U file you converted from the music loader, i.e more configuration details I have to track.

@VoxelPrismatic
Copy link

Oh, that's far too complex.

Just make an M3U column in the DB playlist which points to a file. If the playlist is updated, update the file too. When you export the playlist, update the M3U column to point to the new file.

This way, when you discover a new M3U playlist, you just use the existing import feature and update the M3U column accordingly.

@OxygenCobalt
Copy link
Owner Author

A good rule of software is not to duplicate state @VoxelPrismatic, and given that Auxio has an excessive amount of internal state I'm not very keen on having to synchronize an M3U file and a DB file.

M3U files are going to be set up as to be functionally indisinguishable to a database playlist. This way the rest of the code doesn't actually have to consider what playlists they are editing.

The issue comes up when a user might want to take one of their M3U's, turn it into an in-app playlist that is no longer synchronized to the M3U, or vice versa, turn their in-app playlist into an M3U that is synchronized. This requires me to have to actually consider the different types of playlists and selectively hide/show them depending on what the user did, so it's a little annoying. That's all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
complex This is a complex addition that will take some time enhancement New feature or request music Related to music loading
Projects
Status: The Playlist Update
Development

No branches or pull requests

5 participants