aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/httpd_client.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-10-13configure.ac: require GLib 2.16Max Kellermann1-5/+0
Accidently, MPD has been using several GLib 2.16 functions for a while, and nobody noticed yet. To simplify the code base, let's bump the minimum GLib version for MPD to 2.16. That version is old enough, and it's reasonable to expect users to have it.
2009-05-05httpd_output: disable Icy-Metadata when encoder supports tagsMax Kellermann1-2/+10
There's no reason to send both encoder tags and Icy-Metadata to the client. Let's disable Icy-Metadata when the encoder supports embedded tags.
2009-04-13httpd: use C99 "bool" instead of GLib's gbooleanMax Kellermann1-7/+7
Plain "bool" consumes only one byte instead of four.
2009-04-13httpd: use g_ascii_strncasecmp() to compare headersMax Kellermann1-1/+1
In HTTP, header names are case insensitive.
2009-04-13Implemented basic icy support for the httpd outputHagen Schink1-11/+176
[mk: folded with patch "Put icy related functions in extra source files"; moved icy_server.c from HAVE_CURL to ENABLE_HTTPD_OUTPUT; removed an unused variable]
2009-03-15httpd_output: check client->write_source_id in handlerMax Kellermann1-0/+7
Due to a race condition, httpd_client_out_event() could be called even when its GLib event source was already removed. Check that case.
2009-03-15httpd_output: clear the client's page queue on cancelMax Kellermann1-1/+12
When the httpd output is cancelled, it freed all pages, but didn't remove them from the queue. Call g_queue_clear() and remove the write source id.
2009-03-15httpd: new output plugin to replace "shout"Max Kellermann1-0/+523
Let's get rid of the "shout" plugin, and the awfully complicated icecast daemon setup! MPD can do better if it's doing the HTTP server stuff on its own. This new plugin has several advantages: - easier to set up - only one daemon, no password settings, no mount settings - MPD controls the encoder and thus already knows the packet boundaries - icecast has to parse them - MPD doesn't bother to encode data while nobody is listening This implementation is very experimental (no header parsing, ignores request URI, no icy-metadata, ...). It should be able to suport several encoders in parallel in the future (with different bit rates, different codec, ...), to make MPD the perfect streaming server. Once MPD gets multi-player support, we can even mount several different radio stations on one server.