aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-14db/upnp/WorkQueue: initialize "ok" to false, eliminate redundant checksMax Kellermann1-21/+10
2014-01-14db/upnp/WorkQueue: remove IsOK() check from put()Max Kellermann1-6/+0
Not necessary, not worth the check.
2014-01-14db/upnp/WorkQueue: remove redundant n_workers_exited check from IsOK()Max Kellermann1-1/+1
2014-01-14db/upnp/WorkQueue: include cleanupMax Kellermann1-3/+0
2014-01-14db/upnp/WorkQueue: remove unnecessary "waiting" attributesMax Kellermann1-24/+9
2014-01-14db/upnp/WorkQueue: remove unused method waitIdle()Max Kellermann1-42/+0
Contrary to setTerminateAndWait()'s documentation, the method does wait for worker threads to exit via pthread_join().
2014-01-14db/upnp/WorkQueue: use array instead of std::listMax Kellermann1-15/+19
Reduce bloat further.
2014-01-14db/upnp/WorkQueue: use std::list instead of std::unordered_mapMax Kellermann1-18/+6
Reduce bloat.
2014-01-14db/upnp/WorkQueue: rename attributesMax Kellermann1-78/+78
2014-01-14db/upnp/WorkQueue: pass reference to take()Max Kellermann2-3/+3
2014-01-14db/upnp/WorkQueue: remove unused method qsize()Max Kellermann1-8/+0
2014-01-14db/upnp/WorkQueue: remove unused "szp" parameter from take()Max Kellermann2-5/+2
2014-01-14db/upnp/WorkQueue: remove unused statisticsMax Kellermann1-17/+2
2014-01-14OutputThread: use real-time priorityMax Kellermann2-0/+16
2014-01-14UpdateGlue: let the update thread run at "idle" priorityMax Kellermann2-0/+75
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.
2014-01-13input/despotify: change name to "despotify"Max Kellermann1-1/+1
The name "spt" didn't make much sense for this plugin.
2014-01-13CommandLine: print list of database pluginsMax Kellermann1-0/+8
2014-01-13copyright year 2014Max Kellermann756-757/+757
2014-01-13encoder/shine: fix segfault workaroundAndrée Ekroth1-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.
2014-01-13db/upnp: add fallback for emplace()Max Kellermann2-1/+10
The method emplace() was added in gcc 4.8. This commit restores compatibility with gcc 4.7.
2014-01-13db/upnp: use std::function for the libupnp callbackMax Kellermann3-31/+16
Replaces the bloated std::map.
2014-01-13db/upnp: fix "upnp:class" parserMax Kellermann1-7/+7
"upnp:class" is an element, not an attribute of element "item". This fixes a regression from commit 65ebfb16
2014-01-13encoder/shine: remove unnecessary bufferAndrée Ekroth1-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.
2014-01-13Shine encoding pluginAndrée Ekroth3-0/+286
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 }
2014-01-11db/upnp/Directory: parse item_class in StartElementMax Kellermann1-12/+8
Don't add to the std::map.
2014-01-11db/upnp/Object: add attribute "url"Max Kellermann3-2/+4
Don't store in the std::map.
2014-01-11db/upnp/Directory: parse durationMax Kellermann3-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.
2014-01-11db/upnp: move stringToTokens() to Util.cxxMax Kellermann3-36/+44
2014-01-11db/upnp: move lazy Open() call to new class LazyDatabaseMax Kellermann3-29/+181
Generic approach for the workaround.
2014-01-11db/upnp/discovery: convert std::strings to const char *Max Kellermann1-11/+13
Reduce bloat.
2014-01-11db/upnp: remove unnecessary MutexMax Kellermann2-4/+0
2014-01-11db/proxy: forward "idle" eventsMax Kellermann1-4/+115
Send "idle" to the other MPD whenever there's nothing else to do and forward incoming "idle database" events to all our MPD clients.
2014-01-11DatabasePlugin: add interface DatabaseListenerMax Kellermann11-12/+77
Allow database plugins to announce that they have been modified.
2014-01-11db/proxy: move code to Disconnect()Max Kellermann1-6/+15
2014-01-11UpdateGlue: move stats_invalidate() call to Instance::DatabaseModified()Max Kellermann2-3/+2
2014-01-10Stats: lazy initializationMax Kellermann4-11/+37
Ask the DatabasePlugin for stats when the first client requests them, not at startup.
2014-01-10db/upnp: remove unused method setMaxContentLength()Max Kellermann2-10/+1
2014-01-10db/upnp: remove "upnplog" optionMax Kellermann3-44/+2
We have removed all libupnp logging calls, and we don't need to debug libupnp.
2014-01-10db/upnp: remove unused macro PLOGINF()Max Kellermann1-9/+0
2014-01-10db/upnp: remove unused method errAsString()Max Kellermann2-12/+0
2014-01-10db/upnp/Device: remove unused attribute "m_tabs"Max Kellermann1-4/+1
2014-01-10db/upnp: remove unnecessary empty string checks from CharacterData()Max Kellermann2-5/+0
2014-01-10db/upnp/Directory: simplify checkobjok()Max Kellermann1-9/+9
2014-01-10db/upnp/Directory: don't log unknown itemsMax Kellermann1-8/+0
2014-01-10db/upnp/Directory: eliminate the "attributes" std::mapMax Kellermann3-11/+40
Look up attributes in the "atts" array. Reduce bloat.
2014-01-10db/upnp/Directory: move "res" attributes to arrayMax Kellermann1-7/+15
Reduce bloat.
2014-01-10db/upnp: use nullptr-terminated arrayMax Kellermann1-6/+4
Reduce bloat.
2014-01-10db/upnp/Directory: eliminate struct StackEl, use std::stringMax Kellermann1-11/+6
Reduces bloat.
2014-01-10db/upnp/Directory: make "attributes" a local variableMax Kellermann1-14/+14
We only need it inside StartElement(). Reduces bloat.
2014-01-10db/upnp/Directory: move "res" tag handler to StartElement()Max Kellermann1-12/+16
No need to handle this in EndElement() - in StartElement(), we already have all we need.