Announcement

Collapse
No announcement yet.

SqueezeBox plugin V2.0.0 beta 2

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

    #16
    Originally posted by pcp View Post
    Wim,

    Do you have playlist called Joy and does the API call return? Have you tried by instead specifying an Artist or Genre? HSTouch will use the same call when playing music.

    To use the wave:in plug-in ensure all is configured fine. If you play music on the PC/soundcard that voice should be streamed to the SqueezeServer. You can try all this independently of the HS2 plugin. It took me some trial as well to get the mixer and streaming work fine. If you the built-in TTS, does changing the rate make any difference? Works fine here, though will I will try to see if I can reproduce it.
    pcp,

    It is a playlist Joy and plays well when I use the Squeezebox server. The script ends with no error. But when I run this, music stops on the squeezeboxes. I will try with artists or genres tonight.

    For the wavein I have installed the wavein plugin in the squeezebox server. Enabled speech in your plugins configuration and named the speakerclient "Squeezer". I addressed speech to (HSServer):Squeezer. Should I configure anything else?

    If I use it this way the phisical squeezebox shows a http address on the display and ends with showing "wavein" on the display. And this stays until I press play on the squeezebox server or remote.

    If I use the TTS on the machine it works fine, rate and pitch are working as expected. When I choose not to use wavein in your plugin and address the Squeezer client, speech words are played on the squeezebox but way to fast. Changing the rate does not help. Where the normal speaker client is working perfect on the same HS server.

    Wim
    Last edited by w.vuyk; March 30, 2010, 12:09 PM.
    -- Wim

    Plugins: JowiHue, RFXCOM, Sonos4, Jon00's Perfmon and Network monitor, EasyTrigger, Pushover 3P, rnbWeather, BLBackup, AK SmartDevice, Pushover, PHLocation, Zwave, GCalseer, SDJ-Health, Device History, BLGData

    1210 devices/features ---- 392 events ----- 40 scripts

    Comment


      #17
      pcp,

      Just finished testing the script with artist and genres. Both worked right. Tested the playlist again, no joy playing the joylist...
      Then I generated a new playlist because all other playlists I use were autmated playlists for WMP.
      This one would just play with the script! So i checked the Joy playlist. The first "song" in this playlist was a 5 second silence wave... I added this silence a long time ago, because WMP - although set to shuffle -would always start with the same song when started.
      As it seems now the Squeezebox or server does not like this and stops because of it.

      I removed this song, and so far both HSTouch, the script and my old wakeup plugin are performing stable. I guess this one is solved then.

      Only issue left is the speaker client now.

      Thanks,

      Wim
      -- Wim

      Plugins: JowiHue, RFXCOM, Sonos4, Jon00's Perfmon and Network monitor, EasyTrigger, Pushover 3P, rnbWeather, BLBackup, AK SmartDevice, Pushover, PHLocation, Zwave, GCalseer, SDJ-Health, Device History, BLGData

      1210 devices/features ---- 392 events ----- 40 scripts

      Comment


        #18
        Good to hear that you solved one of the problem.

        Originally posted by w.vuyk View Post
        For the wavein I have installed the wavein plugin in the squeezebox server. Enabled speech in your plugins configuration and named the speakerclient "Squeezer". I addressed speech to (HSServer):Squeezer. Should I configure anything else?
        For the wavein plugin, when I configured it I initially did not use the HS2 speakers. I used the media player to play songs on the sound card and adjusted the sound card mixer configuration and wavein url on the SB side until I could hear the songs played by the media player streamed through the SB player. Check http://wiki.slimdevices.com/index.php/WaveInput_plugin as it contains details about wavein. Once I had this configured, I only used it to stream HS2 speaker clients to it.

        Regarding the built in TTS, can you listen the generated SpeekIn wav file (in <hs installation="">/html/SqueezeBox) using the MS media player? I want to ensure that playing it is not a issue specific SB Server/Player.</hs>

        Comment


          #19
          Originally posted by pcp View Post
          Check http://wiki.slimdevices.com/index.php/WaveInput_plugin as it contains details about wavein. Once I had this configured, I only used it to stream HS2 speaker clients to it.</HS>
          I have checked this link and I am afraid I have found an answer. This plugin won't work on my soundcard as it is not showing a "Stereo Mixer". I am running on Windows 7 with two sound cards in it. The default soundcard (Creative SB X Fi) does not have such an entry, wich means it will not work. This might also explain why the unpause was not working properly? Looks like the wavein is not an option then.

          Originally posted by pcp View Post
          Regarding the built in TTS, can you listen the generated SpeekIn wav file (in <HS installation="">/html/SqueezeBox) using the MS media player? I want to ensure that playing it is not a issue specific SB Server/Player.</HS>
          I have found the file and played it om my system. It is playing properly in de media player. Still the squeezebox is speeding the speech, same as both Squeezeslaves on my HS server, which is the same machine generating the file.

          I am running version 7.4.2/30215 of the Squeezebox server.

          Wim
          -- Wim

          Plugins: JowiHue, RFXCOM, Sonos4, Jon00's Perfmon and Network monitor, EasyTrigger, Pushover 3P, rnbWeather, BLBackup, AK SmartDevice, Pushover, PHLocation, Zwave, GCalseer, SDJ-Health, Device History, BLGData

          1210 devices/features ---- 392 events ----- 40 scripts

          Comment


            #20
            Originally posted by w.vuyk View Post
            I have found the file and played it om my system. It is playing properly in de media player. Still the squeezebox is speeding the speech, same as both Squeezeslaves on my HS server, which is the same machine generating the file.
            Maybe this one has something to do with the how SB Server/players are configured to play wav files. Check if this file type enabled on your system and which decoder it is using. Have you ever player a wav file? Could you try it with any other music or sound wav file to ensure it is configured correctly?

            Comment


              #21
              I checked with Gspot, it is using codec PCM Audio, normal I guess.
              I tested another wav file, playing normal in Media player, to fast through squeezebox.

              I played lots of wav files on this machine, I also use the wav files for playing a signal on the windows speaker clients. No problems ever. Only the squeezebox has a problem here it seems.
              Why would the squeezebox (or server) overdo a normal wave file?

              Wim

              <Edit>

              I saw comments about an issue on old squeezeboxes (V1 firmware bound) not doing well with wave files not equel to 44Khz... the speak file is 22Khz according to Gspot. I searched on possibilities on how to change that, but could not find any.
              The squeezbox I am using is not the youngest one, so I guess this might be an issue.



              Wim
              Last edited by w.vuyk; April 1, 2010, 02:34 PM.
              -- Wim

              Plugins: JowiHue, RFXCOM, Sonos4, Jon00's Perfmon and Network monitor, EasyTrigger, Pushover 3P, rnbWeather, BLBackup, AK SmartDevice, Pushover, PHLocation, Zwave, GCalseer, SDJ-Health, Device History, BLGData

              1210 devices/features ---- 392 events ----- 40 scripts

              Comment


                #22
                Playing the generated wavein on a SB3 works fine. The SB Server (Settings > Advanced > File Types) configuration I "Native" for "Windows Media" (toward the end of the screen in Windows Media file format.

                Comment


                  #23
                  PCP,

                  When I need to restart the Squeezebox server (for installing a plugin) an error is logged in HS:
                  <TABLE border=0 cellSpacing=2 cellPadding=0 width="100%"><TBODY><TR><TD class=LOGDateTime0 noWrap align=left>5-4-2010 10:40:33 </TD><TD class=LOGType0 colSpan=3 align=left>SqueezeBox Error </TD><TD class=LOGEntry0 colSpan=8 align=left>An unexpected error occured in the tcpClient_onLineArrival function/subroutine: [System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld. bij HSPI_SQUEEZEBOX.hspi_player.GetCurrentPlaylistIndex() bij HSPI_SQUEEZEBOX.hspi_player.UpdatePlayerDevices() bij HSPI_SQUEEZEBOX.hspi_player.CreatePlayerDevices() bij HSPI_SQUEEZEBOX.HSPI.getOrCreatePlayer(Int32 index, String ID) bij HSPI_SQUEEZEBOX.HSPI.tcpClient_onLineArrival(String str)]</TD></TR></TBODY></TABLE>
                  After that the screen on HSTouch (using the musicAPI) will not show artwork, nor respond to button presses anymore until I also restart HS again. I guess because I play a lot with the Squeeze possibilities now I see this often. Is there a chance you could prevent this from happening?

                  Edit: there is also an easier way to do this. If you use de Disconnect/Connect button of the plugin (or change options), the same effect occurs.

                  Wim
                  Last edited by w.vuyk; April 5, 2010, 04:21 AM.
                  -- Wim

                  Plugins: JowiHue, RFXCOM, Sonos4, Jon00's Perfmon and Network monitor, EasyTrigger, Pushover 3P, rnbWeather, BLBackup, AK SmartDevice, Pushover, PHLocation, Zwave, GCalseer, SDJ-Health, Device History, BLGData

                  1210 devices/features ---- 392 events ----- 40 scripts

                  Comment


                    #24
                    In HS Touch there is an option to grab the length of the current playing track. I seem to only get 00:00 no matter what.

                    I need this value to be accurate to calculate what percentage of the song is left.

                    In fact if you can expose some sort of percentage that would be great as I was going to have to script that up.

                    See this post:
                    http://board.homeseer.com/showthread...391#post917391
                    Joe (zimmer62)

                    BLSecurtiy, AC-RF2, RCS Serial Thermostats, RFXCOM SMarthome SwitchLinc, mcsXap, Global Cache GC100, SqueezeBox, TWA_ONKYOINTEGRA, BLLogMonitor, BLPlugins, BLRadar, BLSpeech, BLZLog.aspx, HSTouch (Windows, iPhone, iPod), USB Mimo touchscreens, VMWare Server, Vortexbox, Windows Home Server, MyMovies, Windows Media Center, X10, ZWave, and much much much more.

                    Comment


                      #25
                      Originally posted by zimmer62 View Post
                      In HS Touch there is an option to grab the length of the current playing track. I seem to only get 00:00 no matter what.

                      I need this value to be accurate to calculate what percentage of the song is left.

                      In fact if you can expose some sort of percentage that would be great as I was going to have to script that up.

                      See this post:
                      http://board.homeseer.com/showthread...391#post917391
                      Should this be a percentage? In the HomeSeer Music API (http://homeseer.com/support/homeseer...e/MusicAPI.htm) it says that the position should be expressed in seconds. Perhaps the issue is you are getting 00:00 as the position instead of the actual position.

                      Edit: I just tried using the music API to get player position using the following script code:

                      Dim musicAPI As Object = hs.plugin("SqueezeBox").GetMusicAPI(1)
                      hs.writelog("INFO", musicAPI.PlayerPosition)

                      It seems to be properly reporting the player position in seconds for me. But I still have the same issue with getting a slider to work in HS Touch using player position tracking.
                      Last edited by heatvent; April 6, 2010, 08:44 AM.

                      Comment


                        #26
                        The position is working fine for me... I guess I wasn't very clear.

                        It's the track length that I need in order to determine percentage.

                        I'm going to write a function to convert position and length to percentage, but seems it might be better to be right in the plugin?

                        I don't know if the properties exposed by the musicAPI allow developers to add to that list, either way... the current track length is my problem, it's always 00:00
                        Joe (zimmer62)

                        BLSecurtiy, AC-RF2, RCS Serial Thermostats, RFXCOM SMarthome SwitchLinc, mcsXap, Global Cache GC100, SqueezeBox, TWA_ONKYOINTEGRA, BLLogMonitor, BLPlugins, BLRadar, BLSpeech, BLZLog.aspx, HSTouch (Windows, iPhone, iPod), USB Mimo touchscreens, VMWare Server, Vortexbox, Windows Home Server, MyMovies, Windows Media Center, X10, ZWave, and much much much more.

                        Comment


                          #27
                          Have you tried the Music API CTDuration? I should return the duration of the current song. Well I just checked and there is an issue I need to fix for CTDuration to work. I can do it this weekend.

                          In the interim, you can call the following plugin API to return the duration

                          PHP Code:
                          hs.plugin("SqueezeBox").PlayerGetPlaylistCurrentTrackDuration(ByVal playerName As String) As String 
                          The music API does not include any API that would return it as a %.


                          Originally posted by zimmer62 View Post
                          The position is working fine for me... I guess I wasn't very clear.

                          It's the track length that I need in order to determine percentage.

                          I'm going to write a function to convert position and length to percentage, but seems it might be better to be right in the plugin?

                          I don't know if the properties exposed by the musicAPI allow developers to add to that list, either way... the current track length is my problem, it's always 00:00

                          Comment


                            #28
                            I'm having problems with getting at it

                            PHP Code:
                            &hs.plugin("SqueezeBox").PlayerGetPlaylistCurrentTrackDuration("SqueezeBox"
                            Even when I run it from the Immediate Script Command I get errors...

                            either
                            PHP Code:
                            Error Running scriptinit errorCannot use parentheses when calling a Sub 
                            or
                            PHP Code:
                            Error Running scriptinit errorObject required'hs.Plugin(...)' 
                            depending on how I call it... I've tried even something like
                            PHP Code:
                            &hs.plugin("SqueezeBox").Name 
                            so when I do this with other plug-ins it works fine? Is something wrong with what I'm trying to do? I'm stumped
                            Joe (zimmer62)

                            BLSecurtiy, AC-RF2, RCS Serial Thermostats, RFXCOM SMarthome SwitchLinc, mcsXap, Global Cache GC100, SqueezeBox, TWA_ONKYOINTEGRA, BLLogMonitor, BLPlugins, BLRadar, BLSpeech, BLZLog.aspx, HSTouch (Windows, iPhone, iPod), USB Mimo touchscreens, VMWare Server, Vortexbox, Windows Home Server, MyMovies, Windows Media Center, X10, ZWave, and much much much more.

                            Comment


                              #29
                              You need to call it from a vb.net script. The plug-in is a .Net application, not an "older" COM application. You could us the squeezebox_example.vb example in the scripts directory to use as a starting point or a quick test.

                              Comment


                                #30
                                I'm not aware that the other plug-ins I was trying to call were older com plug-ins..

                                In fact I know that BLRadar is a .net plugin, and it worked fine for that. I just don't understand why I would "have" to call it from a script when I can talk to other plug-in's from the "Immediate Script Command"

                                Is this a limitation with something in homeseer? and the immediate window? Why would it work with other plug-ins that are also .net plug-ins.

                                I was trying to use it from HSTouch using [$SCRIPT=&hs.plugin("....] which seems to work except this one.
                                Joe (zimmer62)

                                BLSecurtiy, AC-RF2, RCS Serial Thermostats, RFXCOM SMarthome SwitchLinc, mcsXap, Global Cache GC100, SqueezeBox, TWA_ONKYOINTEGRA, BLLogMonitor, BLPlugins, BLRadar, BLSpeech, BLZLog.aspx, HSTouch (Windows, iPhone, iPod), USB Mimo touchscreens, VMWare Server, Vortexbox, Windows Home Server, MyMovies, Windows Media Center, X10, ZWave, and much much much more.

                                Comment

                                Working...
                                X