Announcement

Collapse
No announcement yet.

SqueezeBox plugin V2.0.0 beta 1

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #31

    Comment


      #32
      Hi pcp,
      fantastic job! Thank you!

      Also thanks for fixing the duplicate device problem, I had so many and was unable to find the culprit, the plugin works fine from my SB boom and softplayer.

      Phil
      Last edited by psampson; January 3, 2010, 06:27 PM.

      Comment


        #33
        Originally posted by pcp View Post
        Thanks for the info. Interesting as the url for the icon is pointing to URL for the current song on the SB server and not cached/generated at all by HS2. Does it still not appear when refreshing the web page or clearing the browser's cache?
        Yes i does, and eventually all four zones have the same coverart as well in HST.

        So in sum I got three problems:

        1) Cover art the same in all four zones
        2) Artist with non-english chars in the name dont filter albums
        3) My music screens are changing when i start a song. (might be something with the coverart?)

        Comment


          #34
          Regarding 1), I am running into the same problem with recent versions of SB server; used to work with older SB versions. I made code changes to retrieve the artwork differently and also include non connected players in the list of Music API instances, though running into some problems with a CLI command. It will still take me a week or so before publishing it.

          Comment


            #35
            Originally posted by pcp View Post
            Regarding 1), I am running into the same problem with recent versions of SB server; used to work with older SB versions. I made code changes to retrieve the artwork differently and also include non connected players in the list of Music API instances, though running into some problems with a CLI command. It will still take me a week or so before publishing it.
            Thanks

            Regarding 3) I might have found something on my part. Might be something about the diference of "opening screen by it self" or "opening on top of.."

            Will check tomorow...

            Comment


              #36
              Originally posted by markus.bergvoll View Post
              Thanks

              Regarding 3) I might have found something on my part. Might be something about the diference of "opening screen by it self" or "opening on top of.."

              Will check tomorow...
              Yes! That solved the problem for me. Use "open screen by it self" and this issue is gone. Sorry about that one..

              Comment


                #37
                Busy week, delayed reply, apologize!

                Originally posted by pcp View Post
                Track number: do you refer to the song index within the Now playing playlist or something else?
                The tracknumber is a MP3 tag property and indicates the position of the track on the original CD. It is not related to the Now playing list. If you open the Squeezebox server web page it is shown as "Track number"


                Originally posted by pcp View Post
                Do you see the Album artist separate from Track artist in the SB UI under which tag this would be stored?

                Comment


                  #38
                  Great to see the plugin got hst compatible, and i almost could convert my mediaplayer screen to squeeze box. Except for the scrubber i use to jump inside of a track. It skiped to the next track when positioned anywhere in the track. It did work with the mediplayer plugin...

                  Here i also expierience the same trouble with the order of player id's
                  gonna try to manual adjust id's the ini and go back to the older version of sqserver.

                  thanks and keep up the great work !!

                  Comment


                    #39
                    I posted an updated beta version (see first dialog) that includes the disconnected players in the list of Music API instances and uses a different approache to get song information and the artwork.

                    Comment


                      #40
                      Issue with announce script

                      I have the following issue with the announce script after update to new beta:

                      Scripting runtime error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.MissingMemberException: Public member 'PlayerGetPlaylistCurrentSongIndex' on type 'HSPI' not found. at Microsoft.VisualBasic.CompilerServices.Symbols.Container.Get Members(String& MemberName, Boolean ReportErrors) at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGe t(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack) at scriptcode2.scriptcode2.Main(Object parm) --- End of inner exception stack trace --- at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) at Scheduler.VsaScriptHost.Invoke(String ModuleName, String MethodName, Object[] Arguments)

                      looks like the name of PlayerGetPlaylistCurrentSongIndex changed?

                      thanks!

                      Comment


                        #41
                        Great update PCP, as all my players are back after loosing all.

                        Comment


                          #42
                          Originally posted by Chill_Out View Post
                          I have the following issue with the announce script after update to new beta:

                          Scripting runtime error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.MissingMemberException: Public member 'PlayerGetPlaylistCurrentSongIndex' on type 'HSPI' not found. at Microsoft.VisualBasic.CompilerServices.Symbols.Container.Get Members(String& MemberName, Boolean ReportErrors) at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGe t(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack) at scriptcode2.scriptcode2.Main(Object parm) --- End of inner exception stack trace --- at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) at Scheduler.VsaScriptHost.Invoke(String ModuleName, String MethodName, Object[] Arguments)

                          looks like the name of PlayerGetPlaylistCurrentSongIndex changed?

                          thanks!
                          My mistake as they got renamed. I will restore them in the next version but in the interim, you can use the following:

                          Replace PlayerGetPlaylistCurrentSongIndex with: Public Function PlayerGetCurrentPlaylistCurrentTrackIndex(ByVal playerName As String) As Integer

                          Replace PlayerGetPlaylistTrackCount with: Public Function PlayerGetPlaylistSongCount(ByVal playerName As String) As Integer

                          Besides this, it reminded me to look at this script as they might be better ways to implement it with the new beta version.

                          Comment


                            #43
                            Thanks

                            Thanks a lot, I am looking forward to the new version as I am planning to use the announce script trough my squeezeboxes as main speaker outputs. The current script does its thing but if you are playing a playlist or multiple songs it fails quite often to play the announcement. If only one file is playing like a stream or the box is idle it works perfect.

                            Thanks for this great plugin

                            Comment


                              #44
                              15-1-2010 11:23:24 SqueezeBox Error An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: Object reference not set to an instance of an object. at HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID) at HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]
                              15-1-2010 11:23:24 Plug-In Finished initializing plug-in SqueezeBox
                              15-1-2010 11:23:24 SqueezeBox Debug Entered tcpClient_onLineArrival: player id 1 00%3A04%3A20%3A12%3A1b%3Ac1
                              15-1-2010 11:23:24 SqueezeBox Debug Entered getOrCreatePlayer(). index: 1 ID: 00:04:20:12:1b:c1
                              15-1-2010 11:23:24 SqueezeBox Error An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: Object reference not set to an instance of an object. at HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID) at HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]



                              ---------UPDATE------------

                              I have uninstalled the 2.x beta plugin and manually deleted all references to the squeezebox plugin. Reinstalled the 1.6 version, restarted HS en found both players we listed in the status overview and the HS devices were created.

                              Than updated to the latetst beta version:
                              - Both playters still there
                              - The aboce error message disappeared
                              - Introduced a new problems:

                              Status shows "DISCONNECTED" --> if I press the CONNECT button, status does not change.
                              Total albums shows "UNKNOWN"
                              Total Songs shows "UNKNOWN"
                              Music selector in HSTouch does not see any songs, artists albums, etc. --> to make sure I recreated a new music selector from scratch, same result

                              -- UPDATE -----

                              Looking at the automatically created devices I found that:

                              Status = \1
                              Total Albums = \2
                              Total Songs = \3
                              Player Count = \4

                              The code for the devices associated with the players all start with "]" instead of "\".

                              When I searched the debug log I found:

                              15-1-2010 15:17:58...SqueezeBox Debug~~!~~Entered SetDeviceValueAndString(). Setting Device ]2, Value: 2260, String: <img align='absmiddle' src='\Images\SqueezeBox\MusicalNote.gif'>&nbsp;2260 Albums

                              so it looks like the plug is refencing the wrong device code.


                              Can I in some way update the Device code from \1 to ]1 ?

                              -------------Update ---------------

                              Deleted all devices, and the ini file. Restarted HS

                              Devices for Status, Total Albums ,Total Songs, Player Count are created succesfully with a "\" prefix. They show the right values (Connected, 2260 ALbums, 29742 songs, 2 players)

                              The INI file shows that 2 players are found:

                              [00:04:20:12:15:3a]
                              enabled=True

                              [00:04:20:12:1b:c1]
                              enabled=True

                              But the line "DeviceCodeBase=" seems to be missing, log file shows:

                              15-1-2010 16:17:48 - SqueezeBox Error - An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: Object reference not set to an instance of an object. at HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID) at HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]


                              Looks like the "getOrCreatePlayer" is causing the problems.


                              15-1-2010 16:29:05...SqueezeBox Debug~~!~~Entered tcpClient_onLineArrival: player id 0 00%3A04%3A20%3A12%3A15%3A3a
                              15-1-2010 16:29:05...SqueezeBox Debug~~!~~Entered getOrCreatePlayer(). index: 0 ID: 00:04:20:12:15:3a
                              15-1-2010 16:29:05...SqueezeBox Error~~!~~An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: Object reference not set to an instance of an object.
                              at HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID)
                              at HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]
                              15-1-2010 16:29:05...SqueezeBox Debug~~!~~Entered tcpClient_onLineArrival: player id 1 00%3A04%3A20%3A12%3A1b%3Ac1
                              15-1-2010 16:29:05...SqueezeBox Debug~~!~~Entered getOrCreatePlayer(). index: 1 ID: 00:04:20:12:1b:c1
                              15-1-2010 16:29:05...SqueezeBox Error~~!~~An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: Object reference not set to an instance of an object.
                              at HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID)
                              at HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]


                              Installed a 3 player (soft) on a pc that has never been used. The Player count is increased to 3 but for this player the virtual devices in HS are also not created.

                              Conclusion: Plugin does recognize players (Playercount is correct) but the routine to create the devices in Homeseer is not working correctly.
                              Last edited by fvhemert; January 16, 2010, 02:05 PM. Reason: Update

                              Comment


                                #45
                                fvhemert, did it work fine with version 1.6 or did you run into a similar problem? Also when you re-installed the plugin, did you delete all HS2 devices related to the plug-in and restart HS2? Since somehow the code generates an exception, players are not registered. Have you checked in the log if the plug-in correctly initialized or if an error occurred?

                                Looking at the code, it is not clear what the problem could be. Could you enable debug + verbose debug, restart the plugin and email me the log file?

                                Comment

                                Working...
                                X