aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* update: print error when opendir() failsMax Kellermann2009-02-271-2/+7
| | | | | | | MPD used to be silent when it could stat() a directory, but could not opendir() it to read its contents. This caused a lot of support headache with users who have wrong file permissions. Add another warning message.
* tag: don't accept invalid UTF-8 sequencesMax Kellermann2009-02-271-5/+27
| | | | Overwrite invalid UTF-8 sequences with question marks.
* tag: make tag.num_items unsignedMax Kellermann2009-02-273-16/+6
| | | | | | There's no point in declaring num_items as a uint8_t, it doesn't save any space, due to padding. This allows us to lift the articial "255 items" limitation.
* tag: no CamelCaseMax Kellermann2009-02-2713-65/+60
| | | | Renamed numOfItems to num_items.
* tag: make tag_equal() return boolMax Kellermann2009-02-272-13/+13
|
* player_thread: removed meaningless warning on output failureMax Kellermann2009-02-261-5/+0
| | | | | | The warning message "problems opening audio device while playing ..." does not help at all, and should be removed. At this point, the real error message has already been logged by the output thread.
* output_all: print a warning when all outputs are disabledMax Kellermann2009-02-261-1/+7
| | | | | | When all outputs are disabled, MPD printed only a meaningless message "problems opening audio device", although it didn't attempt to open a device.
* output_all: removed "audio_outputs!=NULL" checkMax Kellermann2009-02-261-3/+0
| | | | | After initialization, audio_outputs is always non-NULL. Don't check that.
* mvp: fixed default device detectionMax Kellermann2009-02-262-1/+2
| | | | | The check "open()!=0" is wrong, you have to write "open()>=0", because -1 means error, and 0 is a valid file handle.
* output_plugin: report errors with GErrorMax Kellermann2009-02-2613-255/+443
| | | | | | | Use GLib's GError library for reporting output device failures. Note that some init() methods don't clean up properly after a failure, but that's ok for now, because the MPD core will abort anyway.
* osx: use OSStatus and GetMacOSStatusCommentString()Max Kellermann2009-02-261-15/+24
| | | | | The return type of most OS X functions is OSStatus, not int. We can get a nice error message from GetMacOSStatusCommentString(), log it.
* osx: start the audio device in the open() methodMax Kellermann2009-02-261-17/+8
| | | | | | Don't call AudioOutputUnitStart() in the play() method, do it after the device has been opened. We can eliminate the "started" property now, because the device is always started when it's open.
* osx: removed commented codeMax Kellermann2009-02-261-23/+2
| | | | | | We don't need to keep commented code forever. If we want that test_default_device() implementation back one day, we'll pick it from the git history.
* osx: no CamelCaseMax Kellermann2009-02-261-89/+85
| | | | Renamed types, functions, variables.
* output_thread: use the right audio_format in assert()Max Kellermann2009-02-261-1/+1
| | | | | | | | | | ao_play() gets PCM data in the in_audio_format, and converts it to out_audio_format. Comparing the input data with out_audio_format is wrong. prefixed with "STG:" will be automatically removed. STG: Trailing empty lines will be automatically removed. STG: vi: set textwidth=75 filetype=diff nobackup:
* shout: use config_get_block_unsigned()Max Kellermann2009-02-261-6/+3
| | | | Eliminated manual integer parsing.
* pulse: removed pa_simple!=NULL checksMax Kellermann2009-02-261-10/+2
| | | | | | | The MPD core guarantees that the audio_output object is always consistent, and our pa_simple!=NULL checks are superfluous. Also don't manually close the device on error in pulse_play(), since the MPD core does this automatically when the play() method returns 0.
* oss: moved code from oss_open() to oss_setup()Max Kellermann2009-02-261-13/+26
| | | | Eliminate one label and a bunch of gotos.
* oss: convert OSS_STAT_* to an enumMax Kellermann2009-02-261-10/+15
| | | | Use C instead of CPP.
* oss: return bool instead of intMax Kellermann2009-02-261-10/+10
| | | | | Return type of oss_find_supported_param(), oss_can_convert() and oss_find_unsupported_param() should be bool instead of int.
* oss: use unsigned integersMax Kellermann2009-02-261-14/+9
| | | | | Convert the num_supported and num_unsupported variables from signed to unsigned.
* oss: no CamelCaseMax Kellermann2009-02-262-109/+127
| | | | Renamed types, functions and variables.
* mixer: Add "disabled" mixer_type.Avuton Olrich2009-02-264-1/+9
|
* cmdline: Alphabetical help order like other GNU projects.Avuton Olrich2009-02-251-6/+6
|
* cmdline: Add --no-config to explicitly set daemon default options.Avuton Olrich2009-02-251-2/+7
|
* alsa: fall back to 16 bit audioMax Kellermann2009-02-251-3/+8
| | | | When the sample format is unknown, fall back to 16 bit samples.
* alsa: moved code from alsa_open() to alsa_setup()Max Kellermann2009-02-251-32/+49
| | | | | | Simplify error handling a bit by moving some code into a separate function. This eliminates a good bunch of gotos, but that's not finished yet.
* mvp: check for reopen errorsMax Kellermann2009-02-252-2/+8
| | | | | When the MVP device has been closed in the cancel() method, and the play() method attempts to reopen it, check for errors.
* mvp: moved code to mvp_find_sample_rate()Max Kellermann2009-02-251-9/+17
| | | | Moved the table lookup code to a separate function.
* mvp: make the mvp_sample_rates array constMax Kellermann2009-02-251-1/+1
| | | | The array must never be modified, it's a constant lookup table.
* mvp: fall back to 16 bit audio samplesMax Kellermann2009-02-252-1/+6
| | | | | | Looks like the MVP audio output only supports 16 and 24 bit audio samples. If MPD generates any other sample formats, force it to use 16 bit.
* mvp: fall back to stereoMax Kellermann2009-02-252-1/+6
| | | | When the channel count is greater than 2, fall back to stereo sound.
* mvp: mvp_set_pcm_params() returns boolMax Kellermann2009-02-251-9/+14
| | | | | Return true/false instead of 0/-1. Also check its return value in mvp_output_open().
* mvp: pass audio_format struct to mvp_set_pcm_params()Max Kellermann2009-02-251-13/+23
| | | | | Pass a pointer to the audio_format struct instead of 3 separate integers.
* mvp: removed big_endian parameter from mvp_set_pcm_params()Max Kellermann2009-02-251-16/+3
| | | | | Don't pass the big_endian flag to mvp_set_pcm_params(), do a simple "G_BYTE_ORDER==G_LITTLE_ENDIAN" instead.
* mvp: use G_N_ELEMENTS(mvp_sample_rates)Max Kellermann2009-02-251-5/+2
| | | | | Instead of manually calculating the number of elements in the mvp_sample_rates array, use GLib's convenience macro G_N_ELEMENTS().
* mvp: no CamelCaseMax Kellermann2009-02-252-36/+40
| | | | Renamed types, functions and variables.
* output: audio_output_init() returns boolMax Kellermann2009-02-252-5/+5
| | | | Return true/false instead of 1/0.
* output: set a GLib log domainMax Kellermann2009-02-253-0/+10
|
* fifo: return bool valuesMax Kellermann2009-02-251-12/+12
| | | | Return true/false for success/failure instead of returning 0/-1.
* fifo: no CamelCaseMax Kellermann2009-02-252-45/+52
| | | | Renamed types, functions and variables.
* fifo: removed timer!=NULL checksMax Kellermann2009-02-251-12/+1
| | | | | The MPD core guarantees that the audio_output object is always consistent, and our timer!=NULL checks are superfluous.
* ao: no CamelCaseMax Kellermann2009-02-252-50/+43
| | | | Renamed functions and variables.
* ao: removed AoData.device!=NULL checksMax Kellermann2009-02-251-12/+1
| | | | | | | The MPD core guarantees that the audio_output object is always in a consistent state: either open or closed. When open, it will not call the open() method again, and when closed, it will not call play(). Removed several checks and the NULL initialization.
* ao: removed implementation of method cancel()Max Kellermann2009-02-251-6/+0
| | | | | The method is empty, and we can simply set the method pointer to NULL instead.
* output_plugin: don't pass audio_output object to method init()Max Kellermann2009-02-2512-34/+19
| | | | | | audio_output_get_name() has been removed, which was the only function left in output_api.h. The output plugin doesn't need the audio_output object at all, remove the parameter from the init() method.
* output_api: removed audio_output_get_name()Max Kellermann2009-02-256-53/+14
| | | | Use config_get_block_string("name") instead of audio_output_get_name().
* test: added encoder test programMax Kellermann2009-02-253-0/+124
| | | | Added a command line program which runs an encoder plugin.
* test: added decoder test programMax Kellermann2009-02-253-1/+181
| | | | Added a command line program which runs a decoder plugin.
* configure.ac: declare AM_CFLAGSMax Kellermann2009-02-253-4/+6
| | | | | Moved generic compiler options to AM_CFLAGS. MPD_CFLAGS/MPD_LIBS will hopefully fade away one day, in favor of more fine-grained variables.