qnap-dlna-adapter-for-foobar2k-mobile
v2.0.0
Published
Adapter for QNAP NAS DLNA service to work with foobar2000 Mobile via Internet
Downloads
1
Readme
QNAP DLNA adapter for foobar2000 Mobile
Requirements
Node.js v8 (install from QNAP App Center)
Export npm bin folder to
$PATH
:export PATH=/share/CACHEDEV1_DATA/.qpkg/nodejsv8/node/bin:$PATH
Install
Connect to NAS via SSH as admin and run:
npm install -g qnap-dlna-adapter-for-foobar2k-mobile
Usage
Connect to NAS via SSH.
Create config file. Example:
{
"deviceDescriptionPath": "/DeviceDescription.xml",
"dlnaHostname": "http://127.0.0.1",
"dlnaPort": 8200,
"externalHostname": "http://example.com",
"listenHostname": "0.0.0.0",
"port": 8888
}
Start:
dlna-adapter-for-foobar2k-mobile-start [PATH_TO_CONFIG_FILE]
If PATH_TO_CONFIG_FILE
is not specified then default path ~/dlna-adapter.config.json
will be used.
Stop:
dlna-adapter-for-foobar2k-mobile-stop
How it works
foobar2000 Mobile allows to add a custom media server. However most likely foobar will not find it. Thats's because it tries to fetch device description on hard-coded URLs which cannot be amended in foobar application.
The adapter redirects /
and /DeviceDescription.xml
requests to {deviceDescriptionPath}
which is understandable by QNAP DLNA server.
All other requests are being redirected to QNAP DLNA server without modification.
Additionaly it replaces all occurrences of {dlnaHostname}:{dlnaPort}
with {externalHostname}:{port}
in XML output of all http requests.
So the player will try to fetch audio file from your external URL.
Configuration
For QNAP DLNA server (native):
"deviceDescriptionPath": "/rootDesc.xml"
"dlnaHostname": "http://192.168.0.10"
"dlnaPort": 8200
For Asset UPnP:
"deviceDescriptionPath": "/DeviceDescription.xml"
"dlnaHostname": "http://127.0.0.1"
"dlnaPort": 26125