2.0.0 • Published 7 years ago

qnap-dlna-adapter-for-foobar2k-mobile v2.0.0

Weekly downloads
2
License
ISC
Repository
-
Last release
7 years ago

QNAP DLNA adapter for foobar2000 Mobile

npm

Requirements

1) Node.js v8 (install from QNAP App Center)

2) 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
2.0.0

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago