Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 81 1231151 ... LastLast
Results 1 to 10 of 807
  1. #1
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    3,342

    ANNOUNCE: AirPlay Bridge = integrate AirPlay devices with LMS (squeeze2raop)

    After lots of tests and help (especially from epoch, thanks!) I can release a first version of a new bridge that allows AirPlay devices (speakers and a lot of AV amplifier from Marantz, Denon ...) to be used as if they were regular LMS players. Compared to my other bridges, it brings replaygain, gapless, fading (in/out/cross) and ... what was the most important for me: synchronization with other LMS players.

    • It does decode mp3, flac, aac, pcm and aif, do the resample and then send the audio in the AirPlay expected format.
    • It consumes 5~7% of CPU for a raspi 2B per active AirPlay device
    • There are versions for Windows, Linux x86 (32 and 64 bits) and ARM, OSX
    • It can run on LMS or on another computer on your network (for example you can dedicate a raspi as the bridge and forget about it)
    • You need to add firewall rules to let squeeze2raop (-win or -x86 or -x86_64 or -armv6hf) open the ports he needs (and they are dynamic). In Windows, just set a rule to authorize squeeze2raop-win.exe (in the plugin cache directory)


    Once you have started the plugin, allow 15-60s for players to appear. I've added a quick manual ... have a look at it

    Other notes :
    - If the player seems to be un-responsive, before de-activating/re-activating the whole plugin, you can try to switch off the troublesome player then back on in LMS
    - One of my player takes a lot of time to start playing (>5s and volume changes interrupt playback - itunes gives the same result, so I assume this is a player problem. So be patient if the volume does not comes right after playback. Other players will start and when this one joins the group, it will be in sync
    - With docker, network must be set to 'host' mode
    Last edited by philippe_44; 2017-11-30 at 17:03.
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  2. #2
    Senior Member
    Join Date
    Apr 2008
    Location
    Paris, France
    Posts
    2,126

    sf.net raining on the parade

    Booohoohoohoooo... I've removed my dev install and now I get redirection limit exceeded when I try any of the 2 repo urls
    (so LMS always wants to restart to finish install and fails and asks again for a restart...)

    I messed about with things like "curl http://iweb.dl.sourceforge.net/projects/lms-to-raop/dev/repo-sf.xml" until I landed on the final redirection, in my case "http://freefr.dl.sourceforge.net/project/lms-to-raop/dev/repo-sf.xml" --as of right now. Don't try this URL.
    But the problem is that your repo file contains a link to iweb for the zip file...

    Sourceforge is in a serious state of flux, shall we say...
    Perhaps it's time to revert to manual install instructions?

    I'll try again later, perhaps the weather will clear up a little bit. But I thought I'd post in case others encounter an issue with installing.

    (BTW, since I can't really live without the plugin, I started my test machine which still has dev-11... I noticed your sox magic does not seem to work with remote library URLs.)
    Last edited by epoch1970; 2016-02-16 at 04:06.
    3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9 (linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa • IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

  3. #3
    Senior Member
    Join Date
    Feb 2008
    Posts
    4,193
    Using version 0.1.0.1 (no idea anymore if it's the stable or dev !!!) - but still getting the sound loss after random time, with restart stream recovering the sound.
    Touch, Logitech Radio, Logitech UE Radio, O2 Joggler + SqpOS
    UPnPBridge - 2 paired Sonos Play1 speakers; Rocki - Sony SRS-BTM8 speaker; Pioneer WX-SMA1 speaker; - PURE One Flow internet radio: PURE Jongo S3x ; Jongo T2; Libratone Zipp
    Castbridge - Chromecast 1 + Chromecast Audio
    AirplayBridge - Loewe Airspeaker
    SB Player - Fire TV
    ------------------------------------------------------------------------------------

  4. #4
    Senior Member
    Join Date
    Apr 2008
    Location
    Paris, France
    Posts
    2,126
    Something I did to find the "right" value of player audio delay: I created an AIFF file with alternating 2secs L/R tones, for a total length of 60 secs.
    I set an SB3 to play only the right channel, [I wanted to do the opposite with the software player but I always got both channels output] I half-unplugged the audio cord on my Airport Express to output the left channel only.
    Then I synced the group, played the file in loop and fiddled with the audio delay slider on the software player.
    Until you reach the right value to your setup and ears, you'll hear a silence gap and/or both sources at the same time.
    To my surprise, the right value for this device was around 400ms (nearly 50ms higher than I thought)
    I don't know what you think of the idea but if felt I needed some help in assessing the right audio delay.

    EDIT. Since we are knee-deep into psychoacoustics, another remark, but within the same post
    I have 1 source to the left of a small room where I am sitting and 1 source on the right, nearby. Speaker systems are *not* the same. Sync is perfect but I can feel the "stage" shifting from left to right (and back) from time to time. Yeah, I know that's scary... I think (not verified) this is related to 10ms player sync adjustment events within LMS. 10ms is the minimum value in the web interface. Is it possible to go lower?
    Please disregard if this doesn't make sense.
    Last edited by epoch1970; 2016-02-16 at 08:12.
    3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9 (linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa • IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

  5. #5
    Senior Member
    Join Date
    Apr 2008
    Location
    Paris, France
    Posts
    2,126
    Quote Originally Posted by castalla View Post
    Using version 0.1.0.1 (no idea anymore if it's the stable or dev !!!) - but still getting the sound loss after random time, with restart stream recovering the sound.
    I think this is the stable version. Are you using a 1000ms network buffer in the plugin? This is the recommended setting, but if you had installed an earlier dev version this was set by default at 500ms.
    At 500ms the player is more reactive to commands, but I've seen drops.

    EDIT: The path is: Settings>Advanced>Airplay Bridge,
    then [Default parameters] or your_player_name,
    look for AirPlay options: Networking buffer (ms)
    Last edited by epoch1970; 2016-02-16 at 07:59.
    3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9 (linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa • IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

  6. #6
    Senior Member
    Join Date
    Feb 2008
    Posts
    4,193
    Quote Originally Posted by epoch1970 View Post
    I think this is the stable version. Are you using a 1000ms network buffer in the plugin? This is the recommended setting, but I you had installed an earlier dev version this was set by default at 500ms.
    At 500ms the player is more reactive to commands, but I've seen drops.

    EDIT: The path is: Settings>Advanced>Airplay Bridge,
    then [Default parameters] or your_player_name,
    look for AirPlay options: Networking buffer (ms)
    Buffer already at 1000. Just experienced another sound loss ...
    Touch, Logitech Radio, Logitech UE Radio, O2 Joggler + SqpOS
    UPnPBridge - 2 paired Sonos Play1 speakers; Rocki - Sony SRS-BTM8 speaker; Pioneer WX-SMA1 speaker; - PURE One Flow internet radio: PURE Jongo S3x ; Jongo T2; Libratone Zipp
    Castbridge - Chromecast 1 + Chromecast Audio
    AirplayBridge - Loewe Airspeaker
    SB Player - Fire TV
    ------------------------------------------------------------------------------------

  7. #7
    Senior Member
    Join Date
    Apr 2008
    Location
    Paris, France
    Posts
    2,126
    Quote Originally Posted by castalla View Post
    Buffer already at 1000. Just experienced another sound loss ...
    I suppose you're on wifi? How does it fare wrt to ping regularity (latency) and bandwidth?
    In the guide, philippe_44 says "Network bandwidth and CPU: this requires 1.4Mbits/s per player (plus some overhead), so this puts a fair amount of constraints on your network and CPU"

    I've been using the plugin with an Airport Express (wired), a Loop (sitting 2m away from the AE) and an AppleTV 1 (2 walls away from the AE.) The Loop is unable to work properly, Airplay bridge or not, when signal strength dips noticeably under 60%. The Apple TV 1 seems much more resilient.
    As for ping, the LMS server on my network pings the Loop on wifi around 2ms on average, but the max is near 10ms (and on my usual VM server max is 30ms.)
    In this environment, little to no drops for me.
    3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9 (linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa • IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

  8. #8
    Senior Member
    Join Date
    Feb 2008
    Posts
    4,193
    Quote Originally Posted by epoch1970 View Post
    I suppose you're on wifi? How does it fare wrt to ping regularity (latency) and bandwidth?
    In the guide, philippe_44 says "Network bandwidth and CPU: this requires 1.4Mbits/s per player (plus some overhead), so this puts a fair amount of constraints on your network and CPU"

    I've been using the plugin with an Airport Express (wired), a Loop (sitting 2m away from the AE) and an AppleTV 1 (2 walls away from the AE.) The Loop is unable to work properly, Airplay bridge or not, when signal strength dips noticeably under 60%. The Apple TV 1 seems much more resilient.
    As for ping, the LMS server on my network pings the Loop on wifi around 2ms on average, but the max is near 10ms (and on my usual VM server max is 30ms.)
    In this environment, little to no drops for me.
    Same player on upnpbridge has no dropouts. On wifi.
    Touch, Logitech Radio, Logitech UE Radio, O2 Joggler + SqpOS
    UPnPBridge - 2 paired Sonos Play1 speakers; Rocki - Sony SRS-BTM8 speaker; Pioneer WX-SMA1 speaker; - PURE One Flow internet radio: PURE Jongo S3x ; Jongo T2; Libratone Zipp
    Castbridge - Chromecast 1 + Chromecast Audio
    AirplayBridge - Loewe Airspeaker
    SB Player - Fire TV
    ------------------------------------------------------------------------------------

  9. #9
    Senior Member
    Join Date
    Feb 2008
    Posts
    4,193
    Quote Originally Posted by philippe_44 View Post
    The difficulty is that players tend to buffer much more when being driven through UPnP. Do you have a log of the AirPlay Bridge ?
    No log - I can try one later.

    edit: here's a log - probably not much use as the stream didn't stop after 1 hour. The random nature of the dropouts will make this issue a drag to pin down
    Last edited by castalla; 2016-02-16 at 16:24.
    Touch, Logitech Radio, Logitech UE Radio, O2 Joggler + SqpOS
    UPnPBridge - 2 paired Sonos Play1 speakers; Rocki - Sony SRS-BTM8 speaker; Pioneer WX-SMA1 speaker; - PURE One Flow internet radio: PURE Jongo S3x ; Jongo T2; Libratone Zipp
    Castbridge - Chromecast 1 + Chromecast Audio
    AirplayBridge - Loewe Airspeaker
    SB Player - Fire TV
    ------------------------------------------------------------------------------------

  10. #10
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    3,342
    Quote Originally Posted by epoch1970 View Post
    Booohoohoohoooo... I've removed my dev install and now I get redirection limit exceeded when I try any of the 2 repo urls
    (so LMS always wants to restart to finish install and fails and asks again for a restart...)

    Sourceforge is in a serious state of flux, shall we say...
    Perhaps it's time to revert to manual install instructions?
    (BTW, since I can't really live without the plugin, I started my test machine which still has dev-11...
    Damm it ... there is no 's' on /project/ and I had to do that mistake on that 1st post of that thread

    I noticed your sox magic does not seem to work with remote library URLs.)
    I don't quite understand

    I have 1 source to the left of a small room where I am sitting and 1 source on the right, nearby. Speaker systems are *not* the same. Sync is perfect but I can feel the "stage" shifting from left to right (and back) from time to time. Yeah, I know that's scary... I think (not verified) this is related to 10ms player sync adjustment events within LMS. 10ms is the minimum value in the web interface. Is it possible to go lower?
    Please disregard if this doesn't make sense.
    There is another option which is to indicate to LMS that each "sampling point" are not 'fully' accurate and must be averaged out. This is an option you can set when the player is being registered. The result is probably that LMS will do adjustement more slowly but that would prevent that effect from happening. Today, I can't do below 10ms as I'm using "sample point" every 8 ms to LMS, so ther accuracy is +/-8ms. Again, mean is centered but if you take every point for an accurate value, then LMS might do shift a bit too often (you can see in the log that there are often adjustement of "skip 441 frames = 441/44100 = 10ms)
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

Posting Permissions

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