Author Topic: 3DBee (Cover Flow) Plugin  (Read 25785 times)

boroda

  • Sr. Member
  • ****
  • Posts: 4595
2. not only plugin floating panel is shown on taskbar, but also plugin settings window.

I can't replicate the issue with the settings window on the taskbar. What steps are you performing for that to happen?

mb prefs> plugins> configure. it's version 1.4:


boroda

  • Sr. Member
  • ****
  • Posts: 4595
also, want to confirm that the problem with localized decimal point is solved in 1.4

cquinn

  • Newbie
  • *
  • Posts: 15
getting the same error when launching musicbee with the coverflow plugin about coverflow folder location.  then this error occurs:

MusicBee v3.5.8447.35892P  (Win10.0), 25 May 2023 9:50:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at SharpGL.OpenGL.DrawText(Int32 x, Int32 y, Single r, Single g, Single b, String faceName, Single fontSize, String text)
   at MusicBeePlugin._3DBee.drawInfo()
   at MusicBeePlugin._3DBee.OpenGLControl_OpenGLDraw(Object sender, OpenGLRoutedEventArgs args)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Delegate.DynamicInvokeImpl(Object[] args)
   at System.Windows.RoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at SharpGL.WPF.OpenGLControl.DoRender()
   at MusicBeePlugin._3DBee.RenderEventProcessor(Object myObject, EventArgs myEventArgs)
   at System.Windows.Forms.Timer.OnTick(EventArgs e)
   at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Modo

  • Jr. Member
  • **
  • Posts: 41
Congrats on getting this into Musicbee. It looks great already.

My initial thought is that there should be a standard plug-in install. The manual method feels like unnecessary faffing about.

I hope there is a way to add 3DBee as a valid MB file selector for the main panel. The core part of the MB layout ("main panel > files" in the MB layout manager) can not be removed to clean up the UI, but you can select a different way to show stuff (currently Artwork, Album Art, Jukebox, Track Details). Can 3DBee become a fifth option here for ease of use?

Found a bug immediately. 3DBee breaks non-violently when hidden and shown again in MB. I have added it to the main panel, and to replace my regular album art selection, I dragged the splitter all the way to completely hide the "files" element, effectively only seeing "3dbee". However, if I hide 3DBee by dragging the splitter all the way the other way (show only), then drag back to show 3DBee again, there is no image in 3DBee any more -- all black. Only restarting MB fixes this.

One usability suggestion: It should be possible to choose what clicking in the cover flow outside of the centre cover does. Click+drag is OK as a default scrolling method, but I see another use case: Click to select a specific partially visible cover. This would work well in conjunction with mouse scrolling as the cover scroll method.

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9304
Note  that the developer of this plugin has not been on the forum since February of this year. It may very well be that no more work will be done on it.
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here


u3panic

  • Newbie
  • *
  • Posts: 1
Hello. I just wanted to say thank you for the plug-in. I have everything installed correctly and the plug-in working. I am interested in reszing it, as you have mentioned. I have downloaded the patch or patched version of MusicBee, but I am not sure how to install it. Would you mind providing me with directions for that as well? It's just not something I have had to do yet. Thank you, u3pan

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9304
The patch(es) for MB will work on the Installer and Portable versions. The Windows Store version can not be patched.

If you're not using the Store version, see my signature below for info about installing the latest patch.
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here

SFroLtoad

  • Newbie
  • *
  • Posts: 1
Plugin not working,  and settings not saving
Error:
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
   at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at MusicBeePlugin.Plugin.SaveSettings()
   at MusicBeePlugin._3DBeeConfig.saveButton_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

threap

  • Newbie
  • *
  • Posts: 14
Regardless of whether "BoringName" is still reading these forums or not - I just want to say that 3DBee is brilliant and works great for me. It scratches a deep itch that I've had ever since Apple killed Coverflow in iTunes. There's just something fulfilling about virtually "flicking" through a rack of album sleeves. Good job, author!

The only thing I wish I could change is the sort order for the album covers. It appears to be hard-coded to "sort by Artist" - which, when I have my Music library sorted by, say, "Date Added", means that there's a disconnect between what 3DBee is showing, and what the music library track list I have just below it is showing. And playing consecutive tracks in the library results in a lot of thrashing as 3DBee makes a massive jump in its list. But that's just nit-picking :)

Five star rating on this one!⭐⭐⭐⭐⭐

BoringName

  • Full Member
  • ***
  • Posts: 201
Well, to get the obvious out of the way, I'm not dead......yet.

I would like to apologise for pretty much ghosting this place for nearly a year. Without going into too much detail, 2023 wasn't great but I've got no real excuse for not at least posting something here. When I got back to a position where I could post something I figured I should wait until I knew I could commit to providing regular updates and that hasn't happened until now.

So far 2024 is looking a lot better than 2023 so I should be around a bit more. At this point I need to refresh my memory on a lot of things so don't expect too much for a few weeks but I did have some plans for the plugins I have on here and I would like to pick up where I left off. I've had to replace my computer but I'm pretty sure everything got restored from backups, I just haven't looked at it for nearly a year....

Also apologies to Steven, you helped me get this thing up and running and responded promptly to any of my queries. It was a dick move for me to just ghost the place regardless what was going on privately. Sorry.

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 1014
  • Heal The World
Welcome back BoringName.

Don't be hard on yourself. I think most people here understand that we all have lives outside the forum.
We pitch in and contribute whenever we can - there's no pressure at all.

All the best for 2024!
Favourite song at the moment:   Decode by Paramore

BoringName

  • Full Member
  • ***
  • Posts: 201
New version 1.5 - 3DBee 1.5
- Should not attempt to draw if the panel isn't loaded. Theoretically shouldn't happen anyway but now it's enforced.
- Better handling of when the panel is disposed.
- Fixed some index out of range bugs (probably not all....)
- Fixed a bug when mouse scrolling is enabled that made it terrible to use. It's almost pleasant now.
- Fixed a bug that can occur when a playlist is deleted.
- Fixed a bug that prevented the flow from refreshing when songs were added/deleted. (This probably caused a few people errors.)
- Better handling of playlist settings on startup.
- Added Queue Next and Queue Last to the right click context menu.

The last change might be a bit iffy. It's set to find all songs that match the selected cover by matching the Album name and Album Artist. For most albums it should work fine but I can imagine it might be a bit iffy in certain circumstances for albums with various artists or maybe blank fields. I wanted to use the AlbumUniqueId but I couldn't get that to work in the query. I will check with Steven to see if it's possible.

edit: If you do play around with mouse scrolling. I have noticed the album covers don't load if you keep the mouse button pressed down, they appear as soon as you release the mouse button. I'll look into it. Probably not an issue if they are buffered already.
Last Edit: January 16, 2024, 10:13:02 AM by BoringName

boroda

  • Sr. Member
  • ****
  • Posts: 4595
- Added Queue Next and Queue Last to the right click context menu.

wow! that's really great!

one more related wish: could you 'play now' (how it's defined in MB prefs or just 'play album' if the former is impossible) on LEFT-clicking (or maybe double-clicking) on cover?

BoringName

  • Full Member
  • ***
  • Posts: 201
one more related wish: could you 'play now' (how it's defined in MB prefs or just 'play album' if the former is impossible) on LEFT-clicking (or maybe double-clicking) on cover?

That will be in the next version. I couldn't find a command to "play album now" in the api so I will just set the first song on the album to "Play now" and then "queue next" for the rest of the songs. It should do the job.

I will probably push out another version next week that contains a few more fixes and that will be it for a while.

I'm doing a major re-write to modernize all the OpenGL elements. I really want to remove the need for all the buffer settings. I don't like how I've implemented them and they shouldn't be necessary if everything else is done properly.