Max Kellermann
e259474362
db/upnp/WorkQueue: remove unused method qsize()
2014-01-14 11:06:55 +01:00
Max Kellermann
7740855a78
db/upnp/WorkQueue: remove unused "szp" parameter from take()
2014-01-14 11:06:43 +01:00
Max Kellermann
d605170f9f
db/upnp/WorkQueue: remove unused statistics
2014-01-14 10:51:33 +01:00
Max Kellermann
4734af747b
OutputThread: use real-time priority
2014-01-14 09:59:04 +01:00
Max Kellermann
5d17731b73
UpdateGlue: let the update thread run at "idle" priority
...
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-14 09:09:52 +01:00
Max Kellermann
07a7fde825
Merge branch 'shine' of git://github.com/ekroth/mpd
2014-01-13 22:54:15 +01:00
Max Kellermann
049abef2d4
input/despotify: change name to "despotify"
...
The name "spt" didn't make much sense for this plugin.
2014-01-13 22:35:30 +01:00
Max Kellermann
7c60b50a39
CommandLine: print list of database plugins
2014-01-13 22:31:55 +01:00
Max Kellermann
4f83c60296
copyright year 2014
2014-01-13 22:31:55 +01:00
Andrée Ekroth
cd5817b67e
encoder/shine: fix segfault workaround
...
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-13 22:28:29 +01:00
Max Kellermann
a4d580a6f8
db/upnp: add fallback for emplace()
...
The method emplace() was added in gcc 4.8. This commit restores
compatibility with gcc 4.7.
2014-01-13 22:24:48 +01:00
Max Kellermann
ca43e634b5
db/upnp: use std::function for the libupnp callback
...
Replaces the bloated std::map.
2014-01-13 22:24:02 +01:00
Max Kellermann
85324f80fe
db/upnp: fix "upnp:class" parser
...
"upnp:class" is an element, not an attribute of element "item". This
fixes a regression from commit 65ebfb16
2014-01-13 22:23:00 +01:00
Andrée Ekroth
56a7fcf189
encoder/shine: remove unnecessary buffer
...
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-13 17:55:12 +01:00
Max Kellermann
8cd15a02cd
release v0.18.7
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJS08NxAAoJECNuiljG20USYMYP/06XGbNmMoNy00DMMPVMGgfi
yvsBAM1kXTgh4/vE5LOZRJoXW8HY/p284TnTbjZWW/56c2RFbJblp4Bya28WtZTU
kAVpYD/8ClAHjZjVpZyvKq3G/U3IsM/EP3to8UnVRfoPRSr9LrOiT03TXnpWW5eO
CgrYqRwEf/XuqftmX/KarVEN/IRB1SxhZkcKLfagyW0nuulSwq5aR8tgR0wSu4qf
Yt+e1NQ2N3hJqINdV0Yb+wb2WAWK7jA6T5zw3ukalIp77/EnwvxD7VhnDKA4E4/8
6Y6MtkDb1KjweFXqRlMScEEZ7Xtvfa8fDkbXGV09jpcKBtN+M59L4+VP5ZC1d8bZ
VDoHOqIwpLsszdhP8/LidYgjkPf3tTjY9jCYmF15cu/E6PIHlrhcc1zD1yOps8bm
DFGFqjcct2hkCqovYFSnZGwHwfcOp/KjSVkoALxcmcw3KZDAuo8zhtH65O14UYdb
LGwotGQOnjDrWyd+Mt6eNyVY65GWuzNYazuCVsDcJqGM66sXIsfXgGKpOtTByAGU
0fYCq6apreGKhNXHoYeNwD5OhbffXWobA8nSWJhyeUu0FGMyNDbX/OET/5d2SCr1
Tm2+DVcBiNxgd4Bc6ddHgzsIem4LzS8VZx07VAwONP5oD4+eCj9wcx5S+0VrKNr9
kld5H4FLAb5fJfcRvKLm
=XVhH
-----END PGP SIGNATURE-----
Merge tag 'release-0.18.7'
2014-01-13 11:52:35 +01:00
Max Kellermann
05ad335ae9
release v0.18.7
2014-01-13 11:39:27 +01:00
Andrée Ekroth
ea771c17c5
Shine encoding plugin
...
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-13 11:14:19 +01:00
Max Kellermann
7faeb2ff2b
configure.ac: reject libmpcdec SV7 in configure script
...
Look for symbol "mpc_demux_init" which does not exist in SV7. This
avoids build failures when SV7 was found by configure.ac.
2014-01-11 21:02:12 +01:00
Max Kellermann
65ebfb16c9
db/upnp/Directory: parse item_class in StartElement
...
Don't add to the std::map.
2014-01-11 01:40:21 +01:00
Max Kellermann
44a65fc5de
db/upnp/Object: add attribute "url"
...
Don't store in the std::map.
2014-01-11 01:36:08 +01:00
Max Kellermann
f031eb1ef2
db/upnp/Directory: parse duration
...
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-11 01:31:13 +01:00
Max Kellermann
b50d79542c
db/upnp: move stringToTokens() to Util.cxx
2014-01-11 01:30:05 +01:00
Max Kellermann
8351543c0f
db/upnp: move lazy Open() call to new class LazyDatabase
...
Generic approach for the workaround.
2014-01-11 01:25:22 +01:00
Max Kellermann
8add78ed5e
db/upnp/discovery: convert std::strings to const char *
...
Reduce bloat.
2014-01-11 01:21:54 +01:00
Max Kellermann
4b3a3d6faa
db/upnp: remove unnecessary Mutex
2014-01-11 01:16:35 +01:00
Max Kellermann
71d012fa61
db/proxy: forward "idle" events
...
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-11 01:11:19 +01:00
Max Kellermann
114df1f137
DatabasePlugin: add interface DatabaseListener
...
Allow database plugins to announce that they have been modified.
2014-01-11 01:01:54 +01:00
Max Kellermann
00adf7ff17
db/proxy: move code to Disconnect()
2014-01-11 00:46:33 +01:00
Max Kellermann
3f0415fa24
UpdateGlue: move stats_invalidate() call to Instance::DatabaseModified()
2014-01-11 00:46:33 +01:00
Max Kellermann
348d0c944e
Stats: lazy initialization
...
Ask the DatabasePlugin for stats when the first client requests them,
not at startup.
2014-01-10 23:42:46 +01:00
Max Kellermann
e9ba5fcaf3
db/upnp: remove unused method setMaxContentLength()
2014-01-10 23:04:50 +01:00
Max Kellermann
48097745f6
db/upnp: remove "upnplog" option
...
We have removed all libupnp logging calls, and we don't need to debug
libupnp.
2014-01-10 23:00:27 +01:00
Max Kellermann
1091ca969f
db/upnp: remove unused macro PLOGINF()
2014-01-10 23:00:18 +01:00
Max Kellermann
09d62cc630
db/upnp: remove unused method errAsString()
2014-01-10 23:00:10 +01:00
Max Kellermann
a2ead993e6
db/upnp/Device: remove unused attribute "m_tabs"
2014-01-10 23:00:03 +01:00
Max Kellermann
b330aa8dd5
db/upnp: remove unnecessary empty string checks from CharacterData()
2014-01-10 22:59:46 +01:00
Max Kellermann
1b8053a618
db/upnp/Directory: simplify checkobjok()
2014-01-10 22:59:28 +01:00
Max Kellermann
70e5ab3fde
db/upnp/Directory: don't log unknown items
2014-01-10 22:59:16 +01:00
Max Kellermann
f4490f6918
db/upnp/Directory: eliminate the "attributes" std::map
...
Look up attributes in the "atts" array. Reduce bloat.
2014-01-10 22:59:01 +01:00
Max Kellermann
dadd987bf4
db/upnp/Directory: move "res" attributes to array
...
Reduce bloat.
2014-01-10 22:58:37 +01:00
Max Kellermann
a1ced29279
db/upnp: use nullptr-terminated array
...
Reduce bloat.
2014-01-10 22:58:23 +01:00
Max Kellermann
791d6c1336
db/upnp/Directory: eliminate struct StackEl, use std::string
...
Reduces bloat.
2014-01-10 22:57:57 +01:00
Max Kellermann
10abb07960
db/upnp/Directory: make "attributes" a local variable
...
We only need it inside StartElement(). Reduces bloat.
2014-01-10 22:57:46 +01:00
Max Kellermann
040a5ddad5
db/upnp/Directory: move "res" tag handler to StartElement()
...
No need to handle this in EndElement() - in StartElement(), we already
have all we need.
2014-01-10 22:57:22 +01:00
Max Kellermann
e7eb04954d
db/upnp/Directory: don't use std::map to parse upnp:class
...
Reduce excessive bloat.
2014-01-10 22:57:16 +01:00
Max Kellermann
09b00fa4e3
db/upnp/Object: use strictly-typed enums
...
At the same time, rename the enum types and the class attributes, and
add an "UNKNOWN" type/class. The latter avoids the "-1" hack.
2014-01-10 22:56:52 +01:00
Max Kellermann
74842fd6d4
db/upnp: getprop() returns const char *
...
Return the return value, instead returning it in a reference
parameter. Reduces bloat by reducing unnecessary std::string usage.
2014-01-10 22:56:45 +01:00
Max Kellermann
f23b47ba17
Expat: attributes come in name/value pairs (bug fix)
...
I wrongfully assumed that each array element is a name and a value
concatenated.
2014-01-10 22:56:28 +01:00
Max Kellermann
15eedfbb12
db/upnp: don't set mtime, start_ms, end_ms
...
Not necessary or useful.
2014-01-10 09:01:28 +01:00
Max Kellermann
cfc25e08dc
db/upnp: use TagTable in upnpItemToSong()
...
Reduces bloat by eliminating one std::map.
2014-01-10 08:57:31 +01:00