aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | db/upnp/WorkQueue: use array instead of std::listMax Kellermann2014-01-141-15/+19
| | | | | | | | Reduce bloat further.
* | db/upnp/WorkQueue: use std::list instead of std::unordered_mapMax Kellermann2014-01-141-18/+6
| | | | | | | | Reduce bloat.
* | db/upnp/WorkQueue: rename attributesMax Kellermann2014-01-141-78/+78
| |
* | db/upnp/WorkQueue: pass reference to take()Max Kellermann2014-01-142-3/+3
| |
* | db/upnp/WorkQueue: remove unused method qsize()Max Kellermann2014-01-141-8/+0
| |
* | db/upnp/WorkQueue: remove unused "szp" parameter from take()Max Kellermann2014-01-142-5/+2
| |
* | db/upnp/WorkQueue: remove unused statisticsMax Kellermann2014-01-141-17/+2
| |
* | OutputThread: use real-time priorityMax Kellermann2014-01-143-0/+17
| |
* | UpdateGlue: let the update thread run at "idle" priorityMax Kellermann2014-01-144-0/+77
| | | | | | | | | | | | The update thread should not affect the rest of the system, therefore set "idle" priority, and let it only run when nobody else is using the resources.
* | Merge branch 'shine' of git://github.com/ekroth/mpdMax Kellermann2014-01-131-5/+17
|\ \
| * | encoder/shine: fix segfault workaroundAndrée Ekroth2014-01-131-5/+17
| | | | | | | | | | | | | | | | | | | | | Initializing and closing the Shine library without writing any data results in a segmentation fault. The current workaround writes zeroes if there was no actual data.
* | | input/despotify: change name to "despotify"Max Kellermann2014-01-131-1/+1
| | | | | | | | | | | | The name "spt" didn't make much sense for this plugin.
* | | CommandLine: print list of database pluginsMax Kellermann2014-01-131-0/+8
| | |
* | | copyright year 2014Max Kellermann2014-01-13793-794/+794
| | |
* | | db/upnp: add fallback for emplace()Max Kellermann2014-01-132-1/+10
| | | | | | | | | | | | | | | The method emplace() was added in gcc 4.8. This commit restores compatibility with gcc 4.7.
* | | db/upnp: use std::function for the libupnp callbackMax Kellermann2014-01-133-31/+16
| | | | | | | | | | | | Replaces the bloated std::map.
* | | db/upnp: fix "upnp:class" parserMax Kellermann2014-01-131-7/+7
|/ / | | | | | | | | "upnp:class" is an element, not an attribute of element "item". This fixes a regression from commit 65ebfb16
* | encoder/shine: remove unnecessary bufferAndrée Ekroth2014-01-131-42/+44
| | | | | | | | | | | | | | Now writes to the de-interleaved buffers directly, instead of writing to an intermediate fifo buffer. Fix indentation and 80 char width lines.
* | Merge tag 'release-0.18.7'Max Kellermann2014-01-132-2/+3
|\|
| * release v0.18.7Max Kellermann2014-01-131-1/+1
| |
| * configure.ac: reject libmpcdec SV7 in configure scriptMax Kellermann2014-01-112-1/+2
| | | | | | | | | | Look for symbol "mpc_demux_init" which does not exist in SV7. This avoids build failures when SV7 was found by configure.ac.
* | Shine encoding pluginAndrée Ekroth2014-01-137-0/+343
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This encoding plugin features a fixed-point mp3 encoder, with faster encoding on architectures without a FPU. Right now the encoder is limited to stereo and 16 bit depth. The bitrate and sample rate can be modified in audio_output. audio_output { type "httpd" name "My shine stream" encoder "shine" port "8000" format "44100:16:2" bitrate "320" # default: 128 }
* | db/upnp/Directory: parse item_class in StartElementMax Kellermann2014-01-111-12/+8
| | | | | | | | Don't add to the std::map.
* | db/upnp/Object: add attribute "url"Max Kellermann2014-01-113-2/+4
| | | | | | | | Don't store in the std::map.
* | db/upnp/Directory: parse durationMax Kellermann2014-01-113-28/+22
| | | | | | | | | | | | Don't put all <res/> attributes to the attributes map; parse the "duration" attribute as soon as we receive it, and store it in an integer attribute. This reduces bloat.
* | db/upnp: move stringToTokens() to Util.cxxMax Kellermann2014-01-113-36/+44
| |
* | db/upnp: move lazy Open() call to new class LazyDatabaseMax Kellermann2014-01-114-29/+182
| | | | | | | | Generic approach for the workaround.
* | db/upnp/discovery: convert std::strings to const char *Max Kellermann2014-01-111-11/+13
| | | | | | | | Reduce bloat.
* | db/upnp: remove unnecessary MutexMax Kellermann2014-01-112-4/+0
| |
* | db/proxy: forward "idle" eventsMax Kellermann2014-01-112-4/+116
| | | | | | | | | | Send "idle" to the other MPD whenever there's nothing else to do and forward incoming "idle database" events to all our MPD clients.
* | DatabasePlugin: add interface DatabaseListenerMax Kellermann2014-01-1113-13/+93
| | | | | | | | Allow database plugins to announce that they have been modified.
* | db/proxy: move code to Disconnect()Max Kellermann2014-01-111-6/+15
| |
* | UpdateGlue: move stats_invalidate() call to Instance::DatabaseModified()Max Kellermann2014-01-112-3/+2
| |
* | Stats: lazy initializationMax Kellermann2014-01-104-11/+37
| | | | | | | | | | Ask the DatabasePlugin for stats when the first client requests them, not at startup.
* | db/upnp: remove unused method setMaxContentLength()Max Kellermann2014-01-102-10/+1
| |
* | db/upnp: remove "upnplog" optionMax Kellermann2014-01-103-44/+2
| | | | | | | | | | We have removed all libupnp logging calls, and we don't need to debug libupnp.
* | db/upnp: remove unused macro PLOGINF()Max Kellermann2014-01-101-9/+0
| |
* | db/upnp: remove unused method errAsString()Max Kellermann2014-01-102-12/+0
| |
* | db/upnp/Device: remove unused attribute "m_tabs"Max Kellermann2014-01-101-4/+1
| |
* | db/upnp: remove unnecessary empty string checks from CharacterData()Max Kellermann2014-01-102-5/+0
| |
* | db/upnp/Directory: simplify checkobjok()Max Kellermann2014-01-101-9/+9
| |
* | db/upnp/Directory: don't log unknown itemsMax Kellermann2014-01-101-8/+0
| |
* | db/upnp/Directory: eliminate the "attributes" std::mapMax Kellermann2014-01-103-11/+40
| | | | | | | | Look up attributes in the "atts" array. Reduce bloat.
* | db/upnp/Directory: move "res" attributes to arrayMax Kellermann2014-01-101-7/+15
| | | | | | | | Reduce bloat.
* | db/upnp: use nullptr-terminated arrayMax Kellermann2014-01-101-6/+4
| | | | | | | | Reduce bloat.
* | db/upnp/Directory: eliminate struct StackEl, use std::stringMax Kellermann2014-01-101-11/+6
| | | | | | | | Reduces bloat.
* | db/upnp/Directory: make "attributes" a local variableMax Kellermann2014-01-101-14/+14
| | | | | | | | We only need it inside StartElement(). Reduces bloat.
* | db/upnp/Directory: move "res" tag handler to StartElement()Max Kellermann2014-01-101-12/+16
| | | | | | | | | | No need to handle this in EndElement() - in StartElement(), we already have all we need.
* | db/upnp/Directory: don't use std::map to parse upnp:classMax Kellermann2014-01-101-9/+18
| | | | | | | | Reduce excessive bloat.
* | db/upnp/Object: use strictly-typed enumsMax Kellermann2014-01-103-44/+74
| | | | | | | | | | At the same time, rename the enum types and the class attributes, and add an "UNKNOWN" type/class. The latter avoids the "-1" hack.