Skip to content

Integrate UPnP players with LogitechMediaServer

Notifications You must be signed in to change notification settings

anonymous133/LMS-to-uPnP

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This application is a bridge between Logitech Media Server (LMS) / SqueezeBox Server(SBS) and UPnP devices. It allows any UPnP device to be used as a normal SqueezeBox device.

Packaged versions can found here and support thread is there

MINIMUM TO READ FOR ADVANCED USE

If you do not want to RTFM, at least do the following:

  • put the application on a LOCAL disk where you have read/write access

  • launch it with "-i config.xml" on the command line, and wait 30s till it exits

  • launch the application without parameters (type exit to stop it)

  • if it does not work try again with firewall disabled

  • ALWAYS start with a very low volume in LMS (some players might play very loud)

  • pay at least attention to the following parameters in the config.xml file

    • <stream_length> : if nothing is played
    • <accept_nexturi> : if playback is stuck in playlist
    • <seek_after_pause> : if resume after pause does not restart

Really, have a look at the user guide in /doc

WHAT VERSION TO CHOOSE

Download UPnPBridge.zip and in /Bin, there are binaries for Windows, Linux (x86, x86_64, arm, ppc and sparc) and OSX.

NB: Main tests are on Windows 7 and Linux x86 versions. OSX and Linux ARM are "as is"

ADVANCED

REBUILDING IS NOT NEEDED, but if you want to rebuild, here is what should be done. This can be built for Linux, OSX or Windows. My main Windows environment is C++ builder, so I've not made a proper makefile. The Linux/OSX makefile is very hardcoded.

DEPENDENCIES

LIBUPNP

  • Under Win32, libupnp is build with the following defines WIN32 UPNP_STATIC_LIB UPNP_USE_BCBPP (for C++ builder)
  • TCP blocking must be disabled otherwise when a upnp player disappears "non gracefully", it will block other communication for a long delay, creating a "too many job" log in libupnp and all sort of nasty side effects. When launching ./configure, use --disable-blocking_tcp_connections to make sure that autoconfig.h in the root directory (and in build/inc) have the #define UPNP_ENABLE_BLOCKING_TCP_CONNECTIONS not defined or commented
  • It is recommended to make the following changes to config.h (find the existing corresponding lines) #define MAX_JOBS_TOTAL 200 #define GENA_NOTIFICATION_SENDING_TIMEOUT 5 #define GENA_NOTIFICATION_ANSWERING_TIMEOUT 5

Main application for Windows XP and above

  • For compilation, use following defines WIN32 UPNP_STATIC_LIB UPNP_USE_BCBPP (for C++ builder) NO_CODEC
  • Link with the generated libupnp static lib and ptrhead import lib
  • For runtime On C++ builder, requires cc32160mt.dll pthread.dll for all compilers

Main application for Linux and OSX

  • For compilation, use following defines NO_CODEC _FILE_OFFSET_BITS=64
  • Put the 3 libraries of libupnp (found in ./libs) in the Makefile directory

About

Integrate UPnP players with LogitechMediaServer

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 72.7%
  • HTML 24.7%
  • Perl 2.1%
  • Other 0.5%