Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 40 12311 ... LastLast
Results 1 to 10 of 2027

Hybrid View

  1. #1
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    7,625

    Announce: CastBridge = integrate Chromecast players with LMS (squeeze2cast)

    This plugin/app integrates Chromecast players found on your network and let LMS use them as if they were regular Squeezeboxes (they appear as a modified squeezelite instance). It derives form my UPnP/DLNA bridge.

    The stable version is now part of the 3rd party plugin built-in list, so you should find it in the plugins page. If you want to test the development version (there is not always one on-going), just add the following repository

    Code:
    development version: http://downloads.sourceforge.net/project/lms-to-cast/dev/repo-sf.xml
    Go to the 'Chromecast Bridge' settings to check but it should work, no parameter tweaking is normally needed (it's more simple than UPnP). It will install the bridge application on the LMS machine and run it.

    It should provide pretty much all the features of squeezelite, except synchronization (all you can have is a 2-sec accurate sync start). ChromeCast group of players appear as another LMS player, so it gives synchronization within a CC group

    There are two processing modes

    1- Passthrough
    • In this mode, the audio tracks are simply passed to the ChromeCast player with almost no modification (except a few tweaks for PCM -uncompressed- and flac).
    • Except for PCM tracks, replay gain, fade in/out/in-out will not work
    • Gapless does not work
    • Supported codecs are ogg, mp3, flac, pcm and aac with limitations - result will vary from track to track


    2- Full processing
    • In this mode, the tracks are decoded and resampled (if needed) by the bridge and either sent as uncompressed PCM or re-encoded using flac or mp3
    • This mode provides much better compatibility as the same format is sent to the ChromeCast player all the time
    • Replay gain, fade in/out/in-out are supported
    • Supported codecs are ogg,mp3,aac,flac,pcm
    • There is a special option named "flow" to send all the tracks as a long single stream to enable true gapless and crossfade (you'll lose metadata display on the ChromeCast player)


    NB: A port is used to open a webserver (49152 by default, but it might vary up to 49162). Under Windows, you might have a popup (only the very first time the application is started) asking to allow squeeze2cast-win to access your network. In any case:

    !! CHECK YOUR FIREWALL STATUS !!

    The Bridge installs a web server on a random port from 49152 (can be configured), up to 32 ports, so your firewall must allow that. If everything seems to work but you have no sound, you propably have these ports blocked to the Chromcast player cannot get the audio. In Windows, add a rule authorizing squeeze2cast-win.exe or go into C:\ProgramData\Squeezebox\Cache\InstalledPlugins\P lugins\CastBridge and launch *once* squeezecast-win.exe where you'll be prompted for authorization

    This plugin *requires* SSL to stream HTTPS directly so make sure it's installed on your LMS server. Not a problem for Windows, OSX, most Linux x86, Raspberry pi, Cubie, Odroid and others that use a Debian-based, but can be problematic with some NAS. I don't have a perfect guide, so please refer to your NAS forum, but most of the recent NAS firmware update include SSL as well, so that might be all that is required.

    Other than that, Perl must have SSL support enabled, which again is available in all recent distribution and LMS versions (I think). But in case of problem and for Debian-ish Linux, you can try "sudo apt-get install libio-socket-ssl-perl libnet-ssleay-perl" at any command prompt. Here is as well the link to the original thread http://forums.slimdevices.com/showth...l=1#post631449

    Other tips

    • With docker you must use 'host' mode network

    Debug HELP

    Folks, if you want help, you must post here the LMS version you're using, the OS and CPU. Then you must take a log of the bridge (go to the plugin's settings in LMS settings, tab advanced, it's self-explanatory).
    I won't be able to help and I will not answer dry questions like "it does not work"


    Advanced information

    The "binary helper" is an independent application that is the *real* bridge. The LMS plugin part does not do much other than offering a UI to edit config files. So you can run that binary helper on *any* computer/Pi on your network, it does not have to run together with LMS. The compromise is that you will have to edit manually the XML config file. A version with detected players can be generated automatically using the -i option, but after that you're on your own. Refer to user guide for more details.
    Last edited by philippe_44; 2021-04-25 at 23:04.
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

  2. #2
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    Thanks for attempting this. I'm still having some issues here...my LMs Log keeps reporting this: [15-11-13 09:07:53.7618] Plugins::CastBridge::Squeeze2cast::beat (171) crashed ... restarting over and over on Linux (Debian ARM) using the ARMv6_hf binary. I'm off to work now, will test more later today.

  3. #3
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    7,625
    Quote Originally Posted by CommanderROR View Post
    Thanks for attempting this. I'm still having some issues here...my LMs Log keeps reporting this: [15-11-13 09:07:53.7618] Plugins::CastBridge::Squeeze2cast::beat (171) crashed ... restarting over and over on Linux (Debian ARM) using the ARMv6_hf binary. I'm off to work now, will test more later today.
    Are you using a raspi ? I'm doing my tests on a B, but LMS is not running on it, just the squeeze2cast-am6hf binary. I've tried standalone on an Odroid C1, a raspiB+ and on a Cubie2 that runs LMS. All worked
    Last edited by philippe_44; 2015-11-13 at 01:30.
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

  4. #4
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    It's an Odroid U3. Strangely it worked once (but only showed my FireTV, not the Chromecast Audio devices) but then suddenly stopped. I'll try it again once I get home.

  5. #5
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    OK, back home now.

    So...the Plugin seems to load fine, it also finds three devices ,my Amazon FireTV and two devices it just calls "Hash...xxxx"which should then be the CCA units.
    Sadly, it only shows my FireTV as Player in LMS an still spams the LMS log with "crashed - restarting" messages.

    [15-11-13 13:10:25.7510] Plugins::CastBridge::Squeeze2cast::beat (171) crashed ... restarting
    [15-11-13 13:10:37.3794] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:37.4194] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:37.4300] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:37.4368] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:37.4486] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:40.4814] Plugins::CastBridge::Squeeze2cast::beat (171) crashed ... restarting
    [15-11-13 13:10:44.3810] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!
    [15-11-13 13:10:44.4324] Slim::Web::JSONRPC::requestMethod (443) request not dispatchable!

    Something must be missing on my Setup I guess. Or maybe the Players are interfering with each other? Squeeze2Cast Log looks like this:

    [13:15:32.103885] main:1252 Starting squeeze2cast version: v0.1.0.0-dev-2

    [13:15:32.104080] slimproto_loglevel:942 slimproto change log
    [13:15:32.104109] stream_loglevel:293 stream change log
    [13:15:32.104135] output_mr_loglevel:316 output_mr init 3
    [13:15:32.104160] decode_init:125 init decode, include codecs: exclude codecs:
    [13:15:32.104181] WebServerLogLevel:144 webserver change loglevel 3
    [13:15:32.104205] main:1290 Buffer path /tmp
    [13:15:32.159495] uPNPInitialize:841 uPNP init success - 192.168.178.54:49152
    [13:15:32.159589] uPNPInitialize:852 ControlPoint registered
    [13:15:32.159615] uPNPInitialize:863 WebServer enabled
    [13:15:32.159638] uPNPInitialize:874 VirtualDir set for Squeezelite
    [13:15:32.159658] uPNPInitialize:891 Callbacks registered for VirtualDir
    [13:15:36.883624] CallbackEventHandler:583 Answer to uPNP search -1306523000
    [13:15:36.883650] CallbackEventHandler:583 Answer to uPNP search -1307571576
    [13:15:41.826354] CallbackEventHandler:583 Answer to uPNP search -1306521264
    [13:15:41.826379] CallbackEventHandler:583 Answer to uPNP search -1318057264
    [13:15:47.000188] UpdateMRThread:657 Begin Cast devices update
    [13:15:47.037451] UpdateMRThread:744 Updating configuration /var/lib/squeezeboxserver/prefs/castbridge.xml

    Retarting Squeeze2cast after crash: /var/lib/squeezeboxserver/cache/InstalledPlugins/Plugins/CastBridge/Bin/squeeze2cast-armv6hf -Z -I -f /var/log/squeezeboxserver/castbridge.log -d all=debug -x /var/lib/squeezeboxserver/prefs/castbridge.xml
    [13:15:49.029745] main:1252 Starting squeeze2cast version: v0.1.0.0-dev-2

  6. #6
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    OK, some progress here:

    I pulled the plug from my FireTV, and then the ChromeCast devices showed up as players. Apparently the bridge tries to use FireTV as a CC, fails and then crashes.
    Despite that success (workaround for now, will need to find a way to make the Plugin ignore my FireTV) I could not get the CCA to play. It starts and then immediately stops again.

    I then used TuneIn on my Phone to Cast to the CCA in the dining room, which worked perfectly. When I tried to connect with LMS again it failed to show the CCA devices completely. It scans for them, but comes up empty. Will keep trying!

  7. #7
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    7,625
    Did you use Dev-4 ? It has corrected most of these issues
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

  8. #8
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    7,625

    Announce: CastBridge = integrate Chromecast players with LMS (squeeze2cast)

    Any chance to have tried just the binary on a different machine ? Meanwhile, I'll build a special version for you with logs of what it sees but disqualifies as chromecast devices. Any chance to use this device spy tool or the Linux equivalent (can't remember the name now, but it is in squeeze2upno manual)
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

  9. #9
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    @Philippe_44

    I'm installing the dev tools for Upnp on my windows 10 machine now and will see what I can find out.

    Amazingly both my CCA Devices now suddenly show up in LMS...they have not done that all day...
    Even more surprisingly, even the one that is currently streaming from Google Music is showing in LMS...something is wrong with this world!!! Only thing I did was turn on my Windows PC...
    Last edited by CommanderROR; 2015-11-14 at 09:09.

  10. #10
    Senior Member
    Join Date
    Mar 2013
    Posts
    653
    This is interesting...

    I think I might actually have a clue about what's going on...

    Device Spy finds plenty of devices, including the CCA units. However, it also finds a couple of "dead" devices, and some of those carry the same name. Could that be an issue for your Bridge Plugin?

    I've currently got two "Esszimmer" devices and three "Wohnzimmer". I guess they are stored somewhere in network limbo (most likely my Router) and show up even if they have not been connected for a while. I'll try and see if I can remove those listings somehow...


    UPDATE: It's too early to uncork the vintage wine, but it seems like that was indeed the problem. My Fritz Box stores info on former clients, and apparently does not delete it automatically. After I removed the devices that shared the same name as the CCA Players it now seems to work OK. I'll keep you posted if this sticks or falls apart!

    UPDATE2: It looks like AutoPlay ist also working. This is great, since it adds a much-needed feature to CCA!

    Thanks philippe_44 you are a true hero!
    Last edited by CommanderROR; 2015-11-14 at 09:36.

Posting Permissions

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