SharpSonic - A windows front-end for Subsonic[Beta11 Jan3]

Third-party modifications and add-ons, Apps and Clients

Moderator: moderators

SharpSonic - A windows front-end for Subsonic[Beta11 Jan3]

Postby eldanno » Sun May 29, 2011 7:24 pm

Hi fellow Subsonic-users.
I want to share a little project I´ve been working on recently.
It is a native Windows application for Subsonic that was born out of my desire to learn Windows Presentation Foundation and threading.
I am a programmer not a designer so the GUI is basically a copy of the webinterface with some alterations.

This is a beta release mainly due to the lack of errorhandling and some designglitches.
Here are some feature highlights:

- Shuffle play (will fetch random songs for as long as you like)
- Last.fm scrobbling
- Random albums displayed (like the web)
- Latest additions(like the web)
- Searchfunction(like the web)
- Shuffle current playlist
- Ability to save multiple connections
- Subsonic chat(like the web)
- Ability to play local files
- Play Last.fm loved tracks that exists on the subsonic server
- Love tracks on Last.fm
- Save local playlists

Screenshot:
Image
Download SharpSonicBeta

As I said this is a beta-version so if you experience crashes and/or bugs please check in the directory C:\Users\YourUsername\AppData\Local\elDSoftware and a file named SharpSonic.log and post it here or pm me. It may or may not contain information as to why the crash occurred.

If you get crashes when saving a Server please check the Windows eventlog and post here.

[EDIT]
Database issues should now be solved.

Feel free to try it out and tell me what you think.

And though I ended up writing my own implementation of the API this thread
Subsonic C#
gave me the inspiration to start writing this app so thanks!

Follow me on Twitter

SharpSonic is free to use, but if you want to buy me a beer you can :D
Image
Last edited by eldanno on Mon Aug 19, 2013 6:43 am, edited 28 times in total.
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby eldanno » Sun May 29, 2011 7:25 pm

Beta 2 13 June Changelog:
-Fixed resize of coverart when selecting single album
-New keyboard controller for media keys
-Fixed a bug where searchresults where not cleared on new search
-Added a progress bar when loading main view
-Fixed a bug where +-sign was not shown correctly
-When clicking a textbox the text will be selected
-Clicking on coverart in the mediaplayer now opens the albumview
-Added track notification on track start
-Added the ability to show track notification when pressing Windows Key + N
-Fixed a bug where songs sometimes kept on playing when the song was over
-Added scrolling to long texts in mediaplayer

Beta 3 28 June Changelog:
Beta 3
- Fixed crash in mediaplayer when track loaded slowly
- Removed the TreeView for indices and replaced it with AccordionControl
- Created a new control for CoverArt that should resize better
- Added error handling for missing covers
- Replaced "linkbuttons" with windows-style double-click for open and right-click for
context menu
- When random albums are showing mouse-over will stop random loading until the mouse leaves the coverart area


Beta 4 11 July Changelog:
-Currently playing track in the playlist now scrolls into view
-Added progressspinners to most updates and made it more dynamic in size
-Switched to Sql Server Ce 4 and entity framework to fix db crashes on some versions of Windows
-Added local caching of library and cover art.
-Added progressspinner to serverselector
-Added threading to serverselector to make it more responsive
-Added .Net4 installers to the application
Last edited by eldanno on Mon Jul 11, 2011 8:02 pm, edited 4 times in total.
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby SparkyRih » Mon May 30, 2011 8:28 am

I tried it, but it keeps crashing...
Running Windows 7 Ultimate SP1 64 bit OS with All the frameworks installed...
VMWare ESXi 5.5 > Ubuntu 16.04 > Subsonic 6.0 (Modded with PHP based registration feature)

Image
User avatar
SparkyRih
 
Posts: 216
Joined: Wed May 11, 2011 1:52 pm
Location: The Netherlands

Postby eldanno » Mon May 30, 2011 8:31 am

SparkyRih wrote:I tried it, but it keeps crashing...
Running Windows 7 Ultimate SP1 64 bit OS with All the frameworks installed...


Could you post/pm me the log-file:
It´s in Program Files(x86)/SharpSonic/Logs/ (if you didn´t change installation directory).
I use the exact same setup and have been running it for a while now with only random crashes (buffering errors and some cover art issues I have not fixed)
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby SparkyRih » Mon May 30, 2011 9:12 am

First time it crashed on startup, second tiem it crashed when I tried to save the connection... and third thimei t crashed when I only tried to open the connection...

And there's no Log folder in my SarpSonic dir...
VMWare ESXi 5.5 > Ubuntu 16.04 > Subsonic 6.0 (Modded with PHP based registration feature)

Image
User avatar
SparkyRih
 
Posts: 216
Joined: Wed May 11, 2011 1:52 pm
Location: The Netherlands

Postby eldanno » Mon May 30, 2011 9:17 am

SparkyRih wrote:First time it crashed on startup, second tiem it crashed when I tried to save the connection... and third thimei t crashed when I only tried to open the connection...

And there's no Log folder in my SarpSonic dir...


Hmm, then it is probably the database-file that cannot be copied from the installationdirectory.
Can you check if C:\Users\username\AppData\Local\elDSoftware contains a file named SharpSonic.sdf.

Thanks for your help, I am a Webdeveloper by trade so this is a way for me to learn Windowsprogramming so there´s bound to be some hiccups along the way while I learn...
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby SparkyRih » Mon May 30, 2011 9:24 am

The dir you specified does contain an SharpSonicDb.sdf file... that's the only file in there...
VMWare ESXi 5.5 > Ubuntu 16.04 > Subsonic 6.0 (Modded with PHP based registration feature)

Image
User avatar
SparkyRih
 
Posts: 216
Joined: Wed May 11, 2011 1:52 pm
Location: The Netherlands

Postby eldanno » Mon May 30, 2011 9:28 am

SparkyRih wrote:The dir you specified does contain an SharpSonicDb.sdf file... that's the only file in there...

And so it should be.
I have installed it on three different machines now and all are working.
Sorry for bothering you but if you want to try one last thing I´d really appreciate it.
If you open SharpSonic and enter url/user/pwd and click connect will it open your connection then?
Doing this creates a temporary connection which does not use the database so if it works I know where the bug is.

Thanks for being so patient!
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby SparkyRih » Mon May 30, 2011 9:34 am

I tired that already (reid it again), but it crashes again... I don't know if you can use the errorlog that Windows returns?
VMWare ESXi 5.5 > Ubuntu 16.04 > Subsonic 6.0 (Modded with PHP based registration feature)

Image
User avatar
SparkyRih
 
Posts: 216
Joined: Wed May 11, 2011 1:52 pm
Location: The Netherlands

Postby eldanno » Mon May 30, 2011 9:37 am

SparkyRih wrote:I tired that already (reid it again), but it crashes again... I don't know if you can use the errorlog that Windows returns?


All errors I can get are better than none :)
I think one of the problems might be that the Logs directory is not created so writing to it will generate an error.
Oh well I will try to get a clean computer and install it there and see what happens.
Thanks a lot for your help!
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby SparkyRih » Mon May 30, 2011 9:43 am

I should've thought of this :P
Program files is not writable without UAC permission, so running it with Admin privileges will write the log:

2011-05-30 11:40:20,728 - ERROR - SharpSonic.App - System.InvalidOperationException: Cannot open 'C:\Users\Marc\AppData\Local\elDSoftware\SharpSonicDb.sdf'. Provider 'System.Data.SqlServerCe.3.5' not installed.
at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Initialize(IDataServices dataServices, Object connection)
at System.Data.Linq.DataContext.Init(Object connection, MappingSource mapping)
at SharpSonic.ServerSelector.Window_Loaded(Object sender, RoutedEventArgs e)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at MS.Internal.FrameworkObject.OnLoaded(RoutedEventArgs args)
at System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
at System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
at System.Windows.Interop.HwndTarget.OnResize()
at System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
2011-05-30 11:40:36,762 - ERROR - SharpSonic.App - System.InvalidCastException: Unable to cast object of type 'System.Windows.Controls.ComboBoxItem' to type 'ComboServer'.
at SharpSonic.ServerSelector.button2_Click(Object sender, RoutedEventArgs e)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.Button.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
[/quote]
VMWare ESXi 5.5 > Ubuntu 16.04 > Subsonic 6.0 (Modded with PHP based registration feature)

Image
User avatar
SparkyRih
 
Posts: 216
Joined: Wed May 11, 2011 1:52 pm
Location: The Netherlands

Postby eldanno » Mon May 30, 2011 9:46 am

SparkyRih wrote:I should've thought of this :P
Program files is not writable without UAC permission, so running it with Admin privileges will write the log:


Man you rule!
So you just solved 2 problems at once for me.
I seem to have gotten the wrong dll:s included and also the log should be put in the AppData directory along with the database so you do not have to run in Adminmode.

I guess I have some coding to do when I get home :)
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby JWBokx » Mon May 30, 2011 10:03 am

After posting I see now all other replies.....


I have installed it, but it does not run on my machine.
First a dialog about installing .Net 4.0
Done this, but then it stops working directly after starting.

The error displayed:


Problem signature:
Problem Event Name: CLR20r3
Problem Signature 01: sharpsonic.exe
Problem Signature 02: 1.0.0.0
Problem Signature 03: 4de24b40
Problem Signature 04: System.Data.Linq
Problem Signature 05: 4.0.0.0
Problem Signature 06: 4ba1e3c9
Problem Signature 07: c81
Problem Signature 08: 69
Problem Signature 09: System.InvalidOperationException
OS Version: 6.1.7601.2.1.0.256.49
Locale ID: 1043
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Read our privacy statement online:
http://go.microsoft.com/fwlink/?linkid= ... cid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
C:\Windows\system32\en-US\erofflps.txt

My system is a Win7 system.
JWBokx
 
Posts: 12
Joined: Wed Dec 22, 2010 8:15 am
Location: Netherlands

Postby eldanno » Mon May 30, 2011 10:53 am

JWBokx wrote:After posting I see now all other replies.....
I have installed it, but it does not run on my machine.
First a dialog about installing .Net 4.0
Done this, but then it stops working directly after starting.

I will check on a computer without .Net 4.0 when I get home.
You might have to restart the computer for it to work?
eldanno
 
Posts: 55
Joined: Sat Mar 19, 2011 3:40 pm

Postby JWBokx » Mon May 30, 2011 11:03 am

Rebooting did not help.
I have installed in another directory then program files, then the log file is created without running as admin.
In the logfile was a mention of sqlserverce provider not installed.
So downloaded this fomr MS and installed it.
Now the SharpSonic displays the connection dialog.
After entering all, a short flash of the mainscreen and stoppes again.
Now there is nothing in the logfile added....
JWBokx
 
Posts: 12
Joined: Wed Dec 22, 2010 8:15 am
Location: Netherlands

Next

Return to Mods, Apps and Clients

Who is online

Users browsing this forum: No registered users and 4 guests