thecodrr / BreadPlayer

Bread Player, a free and open source music player powered by UWP and C#/.NET with a sleek and polished design built for, and by, the people seeking a better alternative to Groove and Windows Media Player by Microsoft.
https://theweavrs.github.io/BreadPlayer/
GNU General Public License v3.0
300 stars 85 forks source link

All suggestions/requests here. #17

Open thecodrr opened 8 years ago

thecodrr commented 8 years ago

As this project is open source and for the people, let's make it by the people too! Any suggestions and requests are welcome. By any I mean any; you can request a berry on top of the bread! Anything.

Unique ideas that don't sound good in your head are especially welcome here. Let us fill this issue with suggestions and requests!

List of suggestions already given by the people:

Come on people! There are a thousand more to go!

Long live Bread!

DannyAcosta710 commented 8 years ago

What about lyrics (embedded/.lrc/ online database) support? :DDD I remember my symbian had it and Windows never delivered any support ever :(

thecodrr commented 8 years ago

@DannyTalent the only problem is that there aren't any .lrc databases available and the only ones that are available have websites in Chinese and no API :D Its a very beautiful idea, I myself wanted something like this.

DannyAcosta710 commented 8 years ago

@theweavrs Hmmm what about viewlyrics.com ? There's a github project https://github.com/PedroHLC/ViewLyricsOpenSearcher that could perhaps be of use...

But also maybe it could read independent .lrc files or mrv embedded in the mp3? MusiXmatch also offers API support afaik...

thecodrr commented 8 years ago

MusiXmatch has an API, I will have to try it though. The site says they have synced lyrics, so this is a nice discovery.

thecodrr commented 8 years ago

@DannyTalent Viewlyrics.com doesn't show lyrics at all. Gives a constant error "Failed to read lyrics content, please contact us to report this issue.". You try and tell.

DannyAcosta710 commented 8 years ago

@theweavrs Yeah I just noticed, no luck... And I think musiXmatch charges money for that... LyricFind also offers API, and I found this article http://www.programmableweb.com/category/lyrics/api I'd love to help you but I'm just now getting familiarized with C#

Bond-009 commented 8 years ago

What about being able to choose the background of the app?

thecodrr commented 8 years ago

@Bond-009 What do you mean?

Bond-009 commented 8 years ago

Now you see the cover under the list of songs but if you would be able to toggle it so it shows a costum image as background (also under the buttons) like this music player: example

thecodrr commented 8 years ago

@Bond-009 I have added this into the suggestion list, it's certainly a cool feature. More customizability never hurts. If you have any other suggestions, please feel free to share!

thecodrr commented 8 years ago

opinion

@DannyTalent @Bond-009 Opinions? Is this better or was the previous one better?

DannyAcosta710 commented 8 years ago

I think the previous one was better, I imagine that closing the hamburger would make it smaller though? If it does, then yeah this one might work better

Bond-009 commented 8 years ago

I think that a play all button for your whole library would be nice.

thecodrr commented 8 years ago

@Bond-009 Can you explain a bit?

Side question: Do you have a windows phone?

Bond-009 commented 8 years ago

@theweavrs There is a play all button in the playlists but not for the whole music library

Yes I have a windows phone (8.1)

DannyAcosta710 commented 8 years ago

Maybe an option to resume a song when you plug in your headphones (if the song is paused, of course) like foobar's

thecodrr commented 8 years ago

@DannyTalent Can you explain a bit? I don't quite get what you mean.

DannyAcosta710 commented 8 years ago

@theweavrs Let's say your phone is playing on loudspeaker, but then you pause for a second maybe because you're playing a game and want to hear the sounds of the game app.

And then, you plug in your headphones, and the app will continue the song by itself

thecodrr commented 8 years ago

@DannyTalent I will research and see if this is possible. If there is an event to know that something connected...then it is certainly possible.

DannyAcosta710 commented 8 years ago

Yeah man I mean it has to be lol, foobar does it as an advanced option

I find this especially helpful for me because my headphone jack has been starting to fail (this phone is a bit old) and sometimes doesn't recognize my headphones or stops detecting them in certain positions... Which makes music stop on most players

thecodrr commented 8 years ago

@DannyTalent Would it be cool if it happened on PCs too?

DannyAcosta710 commented 8 years ago

Probably, as an option.. I don't really listen to music on pc all that much so I don't really know :/

thecodrr commented 8 years ago

@DannyTalent It is certainly possible to implement this behaviour. Basically, when the headphones are plugged in the music will automatically start and when they are plugged out, it will stop.

DannyAcosta710 commented 8 years ago

The music stopping is regular behavior I believe, but yeah it's an added plus

thecodrr commented 8 years ago

Excellent!

Bond-009 commented 8 years ago

Will you make it a setting, so you can disable it?

thecodrr commented 8 years ago

@Bond-009 You mean a setting for "auto play when headphone is connected"?

Bond-009 commented 8 years ago

@theweavrs Yes

thecodrr commented 7 years ago

@DannyTalent @Bond-009 How about a compact mode on PCs? Something like VLC when you reduced the height to minimum, perhaps.

Bond-009 commented 7 years ago

@theweavrs That would be a nice feature.

matjojo commented 7 years ago

suggestion: Adding multiple songs to a playlist at once (and maybe an add the whole library to playlist button)

matjojo commented 7 years ago

suggestion: play queue, a short playlist that you can add songs to that will play before the regular next song (can be the same feature as play next)

EDIT: queue

cdytoby commented 7 years ago

I want an option for different column items.

For example, I want to remove title and album from the columns, instead I want to show the file name and codec. Something like that. It would be awesome to have such an option to change the column information.

cdytoby commented 7 years ago

And possible for generate Spectral Frequency diagram for music in UWP? like this: http://i.stack.imgur.com/pXIap.png

thecodrr commented 7 years ago

@cdytoby I added your suggestions to the suggestions list, thank you so much. As for custom columns, they are planned in future releases so you can be sure that they are definitely coming. The spectral frequency diagram, on the other hand, is a bit complicated as UWP is devoid of any good in-built WPF-like drawing library. Of course, we have Win2D and I was able to draw a WaveForm with it. See the result here. Its pretty lousy but awesome for a start :)

valpackett commented 7 years ago

Please add support for the Opus codec (and the .opus file extension, which is actually the Ogg container). BASS already has a plugin for Opus.

thecodrr commented 7 years ago

@myfreeweb Yes, you are quite right about that but it hasn't been ported to Windows Store yet but I will try the other one and see if it works. I am adding this to the suggestions list, thanks a lot. Keep tuned.

charliefoxtwo commented 7 years ago

I've always hated iTunes, but they had a couple of nice features: For every song, you could set a separate start and endpoint for when it is played in shuffle (e.g to get rid of the album intro/outro to next song), or disable shuffling entirely. I plan to fork the branch and get to work on this, but how should we store this data? Any ideas?

thecodrr commented 7 years ago

@CharlieFoxTwo Storing this data is really really easy. In BreadPlayer.Core project, there is a Mediafile.cs model. Create the properties to hold data there. They will automatically get saved into the database. Next comes actually setting the values for StartPoint & EndPoint. Any ideas?

charliefoxtwo commented 7 years ago

@theweavrs I'm not familiar with any of the APIs, but I assume we have the ability to start a song from whatever time stamp we want, right? We can just present a slider on the properties dialog of the song that allows the user to select start and end point. In order to stop at the end, we would probably need a function like Song.Play(int start, int duration);

The ability to fade in and out at the start/end of songs via a checkbox would also be beneficial.

thecodrr commented 7 years ago

@CharlieFoxTwo Fade in/out is already there and the Song.Play(int start, int duration) like function is also there.

charliefoxtwo commented 7 years ago

@theweavrs Running into issues implementing the skip on shuffle. Since you can't create playlists currently, the only way for me to test is to reset my library and import an album as my library. However, for a 12 track library, I noticed severe problems with the track selection and playback - it will play a few songs, before getting stuck on one. Trying to skip forward or backward only pauses the current song. In other cases when on shuffle, it will skip between the same few songs. I also observed this behavior when sorting by artist or genre. I wanted to see if anyone else could confirm before I filed it as a bug though, just in case I somehow really messed something up on my fork.

thecodrr commented 7 years ago

@CharlieFoxTwo I am fixing the playlist feature, will push a commit today. The current library backend is really, really buggy and duct-taped. I plan on fixing all these issues, including #155. A much-needed clean-up of the code will also take place very soon. So, hopefully, these issues will be fixed.

thecodrr commented 7 years ago

@CharlieFoxTwo Can you please send me your log file? I would like to see all the error details.

charliefoxtwo commented 7 years ago

@theweavrs I'll see if it has anything when I get home. Great to see so many issues closed today. Do you have an estimate as to when the new build might be out? I'd like to rebase onto it before continuing with the skip on shuffle implementation.

thecodrr commented 7 years ago

@CharlieFoxTwo 1-2 days probably but could be more or less. Basically, this release will be focused on bug-fixes so I am not adding anything big, so yeah 1-2 days probably and the new release will be out and about.

charliefoxtwo commented 7 years ago

@theweavrs here is my log file

Log.txt

thecodrr commented 7 years ago

@CharlieFoxTwo I fixed all the exceptions in the Log file already. Thanks anyway 😄

thecodrr commented 7 years ago

@charliefoxtwo I have released the new version. You can continue with the skip on shuffle.

charliefoxtwo commented 7 years ago

@theweavrs sweet! Will do.