andrewmcgivery / obsidian-soundscapes

A plugin for Obsidian.MD that adds a music/ambiance player to the status bar to play Lofi beats, nature sounds, ambiance, relaxing music, and more.
MIT License
59 stars 5 forks source link

[FR] Add support for local music files #5

Closed wwjCMP closed 9 months ago

wwjCMP commented 9 months ago

Thank you for developing the plugin and for sharing the music that's perfect for writing. It would be great if you could add support for local music files.

Ravenclawer commented 9 months ago

+1 for this. Local video files are also good for the plugin since lots of sound sources are videos

HoriNotCode commented 9 months ago

+2 it would be epic to be able to use the songs in my library and get closer and closer to obsidian being a "hub" for all the things one does on the pc.

andrewmcgivery commented 9 months ago

Thank you for opening this issue!

It's on my list to explore this! Stay tuned!

andrewmcgivery commented 9 months ago

@wwjCMP @Ravenclawer @Horehu

I'm starting the prototyping for this feature this week.

Because of the complexity of this feature, I'll want to do some beta testing before this is officially released.

I suspect sometime in the next week or so I'll start having some test builds. Would any of you be able and willing to test it out before it goes prime time? :)

Ravenclawer commented 9 months ago

I'm glad to be one of the beta testers. I'm using Obsidain 0.15.3, and windows 11.

HoriNotCode commented 9 months ago

Yes, I would love to. I currently use the latest version of obsidian 1.5.3 on windows 11.

andrewmcgivery commented 9 months ago

UI is coming along... almost everything is functional... just need to do search and explore shuffle!

Once that is done, I'll have some cleanup and refactoring... and then a bunch of local testing on my own for any regressions... and then should be good for beta! Next week is feeling obtainable at this point. :)

image

image

andrewmcgivery commented 9 months ago

Getting pretty close!

Search works, updated the settings screen, and did a major refactoring.

Last on the TODO is experiment with shuffle mode... then I'll do a bunch of my own testing... and then I'll work on getting a beta channel setup. :)

image

image

HoriNotCode commented 9 months ago

Great to see how you are progressing, much success 💪, I'm going on vacation for 4 days, when I get back let me know if you still need testers.

andrewmcgivery commented 9 months ago

Plugin is now available for beta testing! (Please first read https://github.com/andrewmcgivery/obsidian-soundscapes/releases/tag/1.2.0-beta.1 for notes, warnings, and limitations on this beta release).

To install, you can use the BRAT plugin and point to this repo. (at your own risk of course... this IS a beta!)

Please share here your size of library, OS, etc here... and obviously and feedback!

phthallo commented 9 months ago

Love this new addition! Just a couple bits of feedback :)

Library Size: 277 files (all MP3s) OS: Windows 10 Obsidian Version: v.1.5.3

  1. I usually have both sidebars open, which makes some of the text cramped. See the comparison: full screen image both sidebars open image The only fix I can think of is truncating the text when it becomes too long, and just showing the longer version on hover or something. This would also help if you happened to have a music file with an excessively long name, for whatever reason, so the Soundscapes page does not need to scroll horizontally. Making the volume bar responsive too (since it seems to retain its size no matter what) would also help when resizing the screen.

  2. Potentially adding pagination/scrolling for search results, as five is pretty restrictive.

  3. Inconsistencies with displaying file extensions Not sure why this happens, but it probably has something to do with how it was downloaded (since my files either come from spotDL (doesn't show .mp3), dodgy MP3 converters online (shows .mp3) or official sources (doesn't show .mp3)) Regardless, being able to hide all of the extensions would be great. image

  4. Song persistence between restarts of Obsidian Right now, the currently playing song defaults back to the first song in the library whenever you restart Obsidian. It'd be great if it could save what song is playing when you quit and keep it on startup.

  5. Beta exclusive issue Because of how the plugin detects when the local version is out of date, using the beta version prompts a "There is an update available" message on startup, which blocks the search bar unless you have the right side bar open/unless you swipe it away manually. This is just something minor though :'D

Ravenclawer commented 9 months ago

I'm on Windows 11, obsidian 0.15.3, and the plugin works perfectly. I have 218 music files in the folder. image 1 Maybe you can add a favorite button on the status bar before the music title that adds the current music to a favorite list and allow the music title on the status clickable to hover a small panel to show the favorite music list.

2 Adding an option to add multiple folders and a button that allows switching between different folders in the status bar.

Just some arbitrary suggestions, the current plugin is nearly perfect, thank you for putting time into creating this wonderful plugin.

some of my suggestions overlap with https://github.com/andrewmcgivery/obsidian-soundscapes/issues/5#issuecomment-1937372749

andrewmcgivery commented 9 months ago

@phthallo Awesome feedback! Most (all?) of this has been incorporated into1.2.0-beta.2 (available now!). Give it a try and let me know what you think. :)

@Ravenclawer Thank you for the feedback and Interesting ideas! Very close to my thoughts on Playlists that are on the backlog to consider post version 1.2.0.

phthallo commented 9 months ago

Loving it! Thanks for taking my feedback into account :D Will let you know if I run into any further bugs/issues!

andrewmcgivery commented 9 months ago

I did some testing on a mac and have been using it myself passively. If nobody reports any major issues by the weekend, I'll likely be releasing this feature to main. :)

andrewmcgivery commented 9 months ago

This is now launched on main! Thanks to everyone who tested! :)