Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 12 12311 ... LastLast
Results 1 to 10 of 115
  1. #1

    Control your SqueezeBox or Transporter with Foobar2000

    Hello all, first post here. I don't really like the interface of SqueezeBox Server, my favourite music frontend is Foobar2000 which I've been running for some years. About a year ago a guy posted an AutoIt script which would allow you to control SqueezeBox Server (and whatever hardware players like Transporter are connected to it) via Foobar2000. This script also had the advantage of completely bypassing the SqueezeBox Server SQL database (no need for "check for new and changed music" slowness).

    The script didn't really work that well so I've played around with it and updated it - it's working fine now. I let SqueezeBox server run in the background but now control everything from Foobar2000, no need to open the SqueezeBox web interface.

    If there's any interest, I'll post links to all the files you need and installation instructions on my web site. I've pre-compiled the script into a small .exe file which will run on Windows XP/Vista/7.

    Let me know if there's any interest here. Cheers.

  2. #2
    Senior Member audiomuze's Avatar
    Join Date
    Oct 2009
    Posts
    1,057
    Quote Originally Posted by stuffedspacedog View Post
    If there's any interest, I'll post links to all the files you need and installation instructions on my web site. I've pre-compiled the script into a small .exe file which will run on Windows XP/Vista/7.
    Post it, please.
    puddletag - now packaged in most Linux distributions.

  3. #3
    Junior Member
    Join Date
    Feb 2006
    Posts
    3
    Please!

  4. #4
    Junior Member Nando1970's Avatar
    Join Date
    Jun 2010
    Posts
    25
    Yes please.

    This might also aswer my request for ABX test http://forums.slimdevices.com/showthread.php?t=79558, as one could probably just use foobar2000 ABX pluging to perform the test.

  5. #5
    Senior Member ModelCitizen's Avatar
    Join Date
    May 2005
    Location
    Sussex UK
    Posts
    3,148
    I'd like to have a fiddle too.

    MC
    Somewhere, something incredible is waiting to be known
    Last.fm/user/ModelCitizen

  6. #6
    Senior Member
    Join Date
    Mar 2008
    Location
    Paris
    Posts
    204
    Quote Originally Posted by stuffedspacedog View Post
    Hello all, first post here. I don't really like the interface of SqueezeBox Server, my favourite music frontend is Foobar2000 which I've been running for some years. ....
    Let me know if there's any interest here. Cheers.
    Hi stuffedspacedog,
    I'm very interested !
    I was looking for such a script since more than one year ..
    => http://forums.slimdevices.com/showthread.php?t=68293

    Thank's and regards

    Volpone
    Last edited by volpone; 2010-06-11 at 15:16.
    SqueezeBoxServer 7.9 / ReadyNas Pro (x86) | SBTouch - SB3 - Duet - Boom - Ipeng
    SBTouch => Rega DAC => Rega Brio R amp => Harbeth SLH5 speakers
    see details & photos here, 4 slides

  7. #7
    OK peeps, here you go, I've tried to cover everything. Here are the instructions, download links and screenshots. I don't really have time to offer support for this, but the whole process presents little risk - if it doesn't work let me know and I'll see what I can think of. If it does work, well done me, well done you!

    http://www.at-sea.com/FooSQ.html

    I'm a composer by trade, perhaps if you like the solution you can repay me by listening to some of my free music:

    http://www.at-sea.com
    Last edited by stuffedspacedog; 2010-06-11 at 20:34. Reason: More info.

  8. #8
    Here is the AutoIt script for anyone adventurous enough to edit and compile for themselves:

    $m_amip = "C:\nextsong.txt"
    $m_ip = "127.0.0.1"
    $m_port = 9090
    $m_class = "[CLASS:{97E27FAA-C0B3-4b8e-A693-ED7881E99FC1}]"
    TCPStartUp()
    $m_tcp = TCPConnect($m_ip,$m_port)
    If @error Then
    MsgBox(48, "FooSQ", "SqueezeCenter not responding.")
    Exit
    EndIf
    $m_foo = "foobar2000"
    $m_lts = 17
    $m_f = ""
    $m_r = "0"
    $m_s = "0"
    $m_p = "?"
    $m_t = ""
    $m_l = "0"
    $m_n = ""
    $m_ne = ""
    $m_fn = ""
    $m_ln = "0"
    $m_lt=229
    $m_title = WinGetTitle($m_class, "")
    HotKeySet("{NUMPADADD}" ,"Volume")
    HotKeySet("{NUMPADSUB}" ,"Volume")
    HotKeySet("{NUMPADMULT}" ,"Volume")
    TCPSend($m_tcp,"playlist clear" & @CRLF)
    While 1
    $m_title = WinGetTitle($m_class, "")
    If NOT StringInStr( $m_title, $m_foo ) Then
    Exit
    EndIf
    $m_ln = StringLen($m_title)
    if $m_ln <> $m_lts Then
    $m_title = WinGetTitle($m_class, "")
    $a_tn = StringSplit($m_title, "/")
    $m_fn = $a_tn[1]
    $m_r = $a_tn[2]
    $m_p = $a_tn[3]
    EndIf
    Select
    Case $m_ln = $m_lts AND $m_s <> "0"
    $m_s = "0"
    TCPSend($m_tcp,"stop" & @CRLF & "playlist clear" & @CRLF)
    Case $m_ln <> $m_lts AND $m_s = "0"
    $m_s = "1"
    $m_f = $m_fn
    $m_sq = StringReplace(StringReplace($m_fn, "\", "/"), " ", "%20")
    TCPSend($m_tcp, "playlist play " & $m_sq & @CRLF)
    Case $m_ln <> $m_lts AND $m_s = "1"
    if $m_p = "1" Then
    $m_s = "2"
    TCPSend($m_tcp,"pause 1" & @CRLF)
    Else
    if $m_f <> $m_fn Then
    $m_sq = StringReplace(StringReplace($m_fn, "\", "/"), " ", "%20")
    if $m_t = "0" Then
    if $m_fn <> $m_n Then
    TCPSend($m_tcp,"playlist play " & $m_sq & @CRLF)
    Endif
    Else
    TCPSend($m_tcp,"playlist play " & $m_sq & @CRLF)
    Endif
    $m_t = ""
    $m_ne = ""
    Else
    if $m_r = "11" OR $m_r = "10" Then
    if $m_ne = "" Then
    $m_amips = FileOpen($m_amip, 0)
    $m_n = FileReadLine($m_amip)
    FileClose($m_amip)
    $m_sq = StringReplace(StringReplace($m_n, "\", "/"), " ", "%20")
    TCPSend($m_tcp,"playlist insert " & $m_sq & @CRLF)
    $m_ne = "1"
    Endif
    Endif
    if $m_r = "0" OR $m_r = "1" Then
    $m_t = "0"
    Endif
    Endif
    $m_f = $m_fn
    EndIf
    Case $m_ln <> $m_lts AND $m_s = "2"
    if $m_p = "?" Then
    $m_s = "1"
    TCPSend($m_tcp, "pause 0" & @CRLF)
    EndIf
    EndSelect
    sleep($m_lt)
    WEnd
    Func Volume()
    If StringInStr(@HotKeyPressed,"{NUMPADADD}") Then
    TCPSend($m_tcp,"mixer volume +5" & @CRLF)
    ElseIf StringInStr(@HotKeyPressed,"{NUMPADSUB}") Then
    TCPSend($m_tcp,"mixer volume -5" & @CRLF)
    ElseIf StringInStr(@HotKeyPressed,"{NUMPADMULT}") Then
    TCPSend($m_tcp,"mixer volume 0" & @CRLF)
    EndIf
    EndFunc
    Exit

  9. #9
    Quote Originally Posted by volpone View Post
    Hi stuffedspacedog,
    I'm very interested !
    I was looking for such a script since more than one year ..
    => http://forums.slimdevices.com/showthread.php?t=68293

    Thank's and regards

    Volpone
    I checked your original post - hurrah! There's one thing I'm not sure how to do:

    "- Choose Squeezebox Player"

    I only have one (a Transporter) and FooSQ uses the SqeezeBox CLI to communicate over TCP 9090. If you want to dig around in the CLI wiki and let me know the commandline for switching to different players I could incorporate that for you when I have time.

    http://danielbond.net/rcli/index.html

    It looks possible, if I can get SqueezeBox to return a list of players, I could assign each player to a numeric pad key number, so in theory you just hit 1 for player 1, 2 for 2 etc.

    Why don't you see if this whole this works for you with one player and we can go from there.
    Last edited by stuffedspacedog; 2010-06-11 at 21:21. Reason: More info

  10. #10
    Senior Member
    Join Date
    Mar 2008
    Location
    Paris
    Posts
    204
    Quote Originally Posted by stuffedspacedog View Post
    ...
    http://danielbond.net/rcli/index.html
    It looks possible, if I can get SqueezeBox to return a list of players, I could assign each player to a numeric pad key number, so in theory you just hit 1 for player 1, 2 for 2 etc.

    Why don't you see if this whole this works for you with one player and we can go from there.
    Hi stuffedspacedog,
    I'm very excited to try your script and control SB players from Foobar !
    I will try your script "as is" during next week.
    I will also look at the CLI wiki to find commands to list connected player and switch to the one selected.

    Thank's again for you work.

    Regards

    Volpone
    SqueezeBoxServer 7.9 / ReadyNas Pro (x86) | SBTouch - SB3 - Duet - Boom - Ipeng
    SBTouch => Rega DAC => Rega Brio R amp => Harbeth SLH5 speakers
    see details & photos here, 4 slides

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •