aboutsummaryrefslogtreecommitdiffstats
path: root/src/output (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/ao: add missing g_free in error pathJonathan Neuschäfer2011-07-181-0/+3
|
* output/httpd: include sys/socket.h only when building with libwrapMax Kellermann2011-03-181-1/+1
| | | | Fixes build failure on WIN32.
* Merge release 0.15.16 into v0.16.xMax Kellermann2011-03-162-8/+11
|\ | | | | | | | | | | | | | | Conflicts: NEWS configure.ac src/output/jack_plugin.c src/update.c
| * output/jack: fix crash with mono playbackMax Kellermann2011-02-271-1/+1
| | | | | | | | | | | | With mono sound, jack_sample_size is smaller than frame_size (4 vs 2 bytes), and "space/jack_sample_size==0". That means mpd_jack_play() will return 0, although no error has occurred.
| * output/jack: rename variable sample_size to jack_sample_sizeMax Kellermann2011-02-251-5/+6
| |
| * Insure proper initialization of stack-allocated struct.Christopher Brannon2011-02-151-1/+4
| | | | | | | | | | | | | | | | | | | | Version 1.0.0 of the libao library added a new field to the ao_sample_format struct. It is a char * named matrix. When an ao_sample_format is allocated on the stack, this field contains garbage. The proper course is to insure that is initialized to NULL. NULL indicates that we do not want any mapping. The struct is now initialized using a static initializer, and this technique is compatible with all known versions of libao.
* | output/httpd: include sys/socket.h for AF_UNIXUlrich Spörlein2011-03-091-0/+1
| |
* | output/oss: disable 24 bit playback on FreeBSDMax Kellermann2011-02-281-0/+9
| | | | | | | | See code comment.
* | output/oss: AFMT_S24_PACKED is little-endianMax Kellermann2011-02-281-0/+12
| | | | | | | | | | | | | | | | | | According to the Solaris dsp manpage, AFMT_S24_PACKED is little-endian: http://download.oracle.com/docs/cd/E19963-01/821-1475/6nmf5baot/index.html The Minix soundcard.h header says the same.
* | general: whitespace cleanupThomas Jansen2011-02-093-3/+3
| | | | | | | | | | Remove trailing whitespace found by this command: find -name '*.[ch]' | xargs grep "[[:space:]]$"
* | output/httpd: initialize unflushed_inputThomas Jansen2011-02-091-0/+1
| | | | | | | | | | | | | | | | | | | | This fixes the following valgrind warning occuring on the first call of httpd_output_read_page: ==20124== Conditional jump or move depends on uninitialised value(s) ==20124== at 0x425E65: httpd_output_read_page (httpd_output_plugin.c:240) ==20124== by 0x426087: httpd_output_open (httpd_output_plugin.c:279) ==20124== by 0x41D862: ao_open (output_plugin.h:206) ==20124== by 0x41E133: audio_output_task (output_thread.c:590)
* | Merge branch 'v0.15.x' into v0.16.xMax Kellermann2011-01-071-0/+3
|\| | | | | | | | | | | | | Conflicts: NEWS configure.ac src/directory.h
| * output/httpd: define G_LOG_DOMAIN in httpd_client.cMax Kellermann2011-01-071-0/+3
| |
* | output/osx: fix up audio format first, then apply it to deviceMax Kellermann2011-01-071-9/+10
| | | | | | | | | | | | | | | | | | This is a MPD 0.16 regression: when playing a 24 bit file, the switch to 16 bit was made only partially, after mBytesPerPacket and mBytesPerFrame had already been applied. That means mBytesPerFrame referred to 24 bit, and mBitsPerChannel referred to 16 bits. Of course, that cannot work.
* | output/solaris: add missing parameter to open_cloexec() callAlex Viskovatoff2010-12-211-1/+1
| |
* | Merge release 0.15.15 from branch 'v0.15.x'Max Kellermann2010-11-081-1/+1
|\| | | | | | | | | | | Conflicts: NEWS configure.ac
| * output/shout: artist comes first in stream titleMax Kellermann2010-11-081-1/+1
| | | | | | | | | | | | After popular demand, I've switched the order of "artist" and "title" in the stream title. There is no standard, and there is no reliable way to parse those from the stream title.
| * output/httpd: MIME type audio/ogg for Ogg VorbisMax Kellermann2010-10-031-1/+1
| | | | | | | | | | | | RFC 5334 10.3 defines the MIME type "audio/ogg". We could use "application/ogg" as well, but we know for sure that we only emit audio data.
| * output/osx: fix the OS X 10.6 buildPatrik Weiskircher2009-09-201-0/+1
| | | | | | | | Include CoreServices/CoreServices.h.
* | output/alsa: dump buffer and period limitsMax Kellermann2010-11-051-0/+20
| |
* | output/httpd: implement delay()Max Kellermann2010-11-051-2/+11
| |
* | output/shout: implement delay()Max Kellermann2010-11-051-8/+13
| | | | | | | | | | This makes the plugin more responsive to control commands, because it will listen to control events while waiting.
* | output/ffado: transfer_playback_buffers() returns a booleanMax Kellermann2010-11-041-1/+4
| | | | | | | | | | libffado documentation says this function returns -1 on error, but that is a lie - it returns a boolean value, and "false" means error.
* | winmm_output: handle empty string case when parsing device idDenis Krjuchkov2010-11-041-1/+1
| |
* | winmm_output: added "device" configuration optionDenis Krjuchkov2010-11-041-2/+35
| | | | | | | | | | Device can be specified either by magic index (starting with 0) or by device name.
* | winmm_output: improved test_default_deviceDenis Krjuchkov2010-11-031-2/+1
| | | | | | | | If no device is available test_default_device returns false.
* | output: new output plugin "ffado"Max Kellermann2010-10-271-0/+344
| | | | | | | | | | | | | | | | | | | | | | | | Using libffado, to play on firewire audio devices. Warning: this plugin was not tested successfully. I just couldn't keep libffado2 from crashing. Use at your own risk. For details, see my Debian bug reports: http://bugs.debian.org/601657 http://bugs.debian.org/601659
* | mixer: winmm_mixer implementedDenis Krjuchkov2010-10-092-0/+38
| |
* | win32_output: renamed win32 output plugin to winmmDenis Krjuchkov2010-10-081-50/+50
| | | | | | | | Win32 has many audio APIs. New name is slightly more correct.
* | output/httpd: use the new server_socket libraryMax Kellermann2010-10-052-118/+32
| |
* | output/httpd: don't close socket in open() failureMax Kellermann2010-10-051-2/+0
| | | | | | | | | | This cleanup call is obsolete, since we moved the binding code to enable()/disable().
* | eliminate g_error() usageThomas Jansen2010-09-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Replaced all occurrences of g_error() with MPD_ERROR() located in a new header file 'mpd_error.h'. This macro uses g_critical() to print the error message and then exits gracefully in contrast to g_error() which would internally call abort() to produce a core dump. The macro name is distinctive and allows to find all places with dubious error handling. The long-term goal is to get rid of MPD_ERROR() altogether. To facilitate the eventual removal of this macro it was added in a new header file rather than to an existing header file. This fixes #2995 and #3007.
* | output/httpd: bind_to_address support (including IPv6)Thomas Jansen2010-09-251-12/+52
| | | | | | | | | | | | | | | | | | Added support for a new optional configuration setting for the httpd output named "bind_to_address". Setting it to a specific IP address (v4 or v6) will cause the httpd output to bind to that address exclusively. Supporting multiple addresses in parallel is future work. This implements the feature requests #2998 and #2646.
* | output/httpd: access sockaddr_storage object directlyMax Kellermann2010-09-231-3/+2
| | | | | | | | Work around aliasing warning.
* | output/httpd: implement "pause"Max Kellermann2010-08-311-0/+19
| | | | | | | | | | Send silence to all connected clients while paused, to avoid connection interruption.
* | output/httpd: forced flush after 32 kB of input dataMax Kellermann2010-08-312-0/+23
| | | | | | | | | | Avoid buffer underruns on the streaming client, if the encoder is "too efficient" (e.g. when encoding silence while paused).
* | database, ...: remove EINTR checks after stdio callsMax Kellermann2010-07-251-1/+1
| | | | | | | | | | | | MPD doesn't have child processes anymore, and thus we're not expecting to receive SIGCHLD very often. Since hard disk access isn't interrupted by signals anyway, we don't need those excessive checks.
* | output/httpd: add libwrap supportTim Phipps2010-06-061-0/+28
| | | | | | | | | | | | libwrap support is in MPD but only for the control port. This patch adds support for the http port. The code is copied from src/client_new.c
* | output/win32: new output plugin for Windows WaveMax Kellermann2010-05-201-0/+296
| |
* | input/file, output/{fifo,recorder}: add O_BINARY to open() flagsMax Kellermann2010-05-202-5/+6
| | | | | | | | Windows compatibility.
* | output/oss: 24 bit support via OSS4Max Kellermann2010-05-141-0/+34
| | | | | | | | Added #ifdefs on the macros AFMT_S24_NE and other OSS4 extensions.
* | output/oss: rewrite of the audio format detectionMax Kellermann2010-05-131-301/+324
| | | | | | | | | | Removed the "supported" / "unsupported" arrays, and auto-detect on every open() call, just like the ALSA output plugin.
* | output/oss: use the *_NE macrosMax Kellermann2010-05-131-8/+2
| | | | | | | | Removed the macro AFMT_S16_MPD.
* | output/httpd: added name/genre/website configurationJames Pike2010-04-053-5/+25
| |
* | Add support for building httpd_output plugin for win32Avuton Olrich2010-03-222-0/+10
| |
* | output/jack: drain the ring buffers during pauseMax Kellermann2010-03-101-0/+7
| | | | | | | | | | If we're not doing this, and a new song is played after pause ends, then you will hear the rest of the previous song.
* | output/jack: synchronize all channelsMax Kellermann2010-03-101-9/+26
| | | | | | | | | | Always use the same number of samples from each channel's ring buffer. This ensures that all channels are kept in sync.
* | output/pulse: clear the "mainloop" attribute on errorMax Kellermann2010-01-171-2/+3
| | | | | | | | | | | | | | | | When enabling the pulse device fails, clear po->mainloop after pa_threaded_mainloop_free() has finished. This is important for the assertions. Two wrong g_free() calls were also removed.
* | output/alsa: support packed 24 bit samplesMax Kellermann2010-01-171-0/+13
| |
* | output/alsa: probe all sample formats in a loopMax Kellermann2010-01-161-36/+34
| | | | | | | | | | More code simplification. Probe all formats, no matter which input format.