npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

qnap-dlna-adapter-for-foobar2k-mobile

v2.0.0

Published

Adapter for QNAP NAS DLNA service to work with foobar2000 Mobile via Internet

Downloads

3

Readme

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