aboutsummaryrefslogtreecommitdiffstats
path: root/src/pcm_format.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* audio_format: remove the packed S24 formatMax Kellermann2012-03-221-72/+0
| | | | | | For simplicity, the MPD core should not have to deal with packing. It is rarely used, and those plugins that need it should use the pcm_export library instead.
* audio_format: remove the reverse_endian attributeMax Kellermann2012-03-211-1/+1
| | | | | | Eliminate support for reverse endian samples from the MPD core. This moves a lot of complexity to the plugins that really need it (only ALSA and CDIO currently).
* audio_format: remove the format SAMPLE_FORMAT_DSD_LSBFIRSTMax Kellermann2012-03-211-4/+0
| | | | | This format is unused since the DSDIFF decoder plugin now reverses the bit order.
* audio_format: basic support for DSD-over-USBMax Kellermann2012-03-191-0/+4
|
* audio_format: add DSD sample formatMax Kellermann2012-03-011-0/+8
| | | | | Basic support for Direct Stream Digital. No conversion yet, and no decoder/output plugin support.
* pcm_format: implement conversion to floatMax Kellermann2011-10-201-0/+135
|
* audio_format: basic support for floating point samplesMax Kellermann2011-10-201-0/+75
| | | | | Support for conversion from float to 16, 24 and 32 bit integer samples.
* pcm_format: move "case" code to separate functionsMax Kellermann2011-10-201-95/+166
| | | | Reduce the mess with local variables inside switch{}.
* pcm_*: add "restrict" keywordsMax Kellermann2011-10-201-2/+6
| | | | Allow more compiler optimizations.
* pcm_format: pass an "end" pointer instead of a sample countMax Kellermann2011-10-191-58/+28
|
* pcm_{channels,format}: add alignment assertionsMax Kellermann2011-10-191-0/+6
|
* pcm_utils: add function pcm_end_pointer()Max Kellermann2011-10-191-1/+2
|
* pcm_dither: pass an "end" pointer instead of a sample countMax Kellermann2011-10-101-9/+8
| | | | | This is easier and more efficient to loop on, because only two variables get modified (src and dest).
* pcm_pack: pass an "end" pointer instead of a sample countMax Kellermann2011-10-101-1/+1
|
* Merge branch 'v0.16.x'Max Kellermann2011-09-151-2/+2
|\ | | | | | | | | | | Conflicts: NEWS configure.ac
| * pcm_format: fix 32-to-24 bit conversion (the "silence" bug)Max Kellermann2011-09-081-2/+2
| | | | | | | | | | | | D'oh, we were reading 16 bit integers instead of 32 bit integers! That caused silence when trying to play a 32 bit input file on a 24 bit sound card (e.g. USB sound chips with 24 bit packed samples).
* | copyright year 2011Max Kellermann2011-01-291-1/+1
|/
* audio_format: support packed 24 bit samplesMax Kellermann2010-01-161-0/+41
|
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* audio_format: changed "bits" to "enum sample_format"Max Kellermann2009-12-021-18/+27
| | | | | | This patch prepares support for floating point samples (and probably other formats). It changes the meaning of the "bits" attribute from a bit count to a symbolic value.
* include config.h in all sourcesMax Kellermann2009-11-121-0/+1
| | | | | | After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
* pcm_convert: use GError for error handlingMax Kellermann2009-07-231-5/+0
| | | | | Don't abort the whole MPD process when the conversion fails. This has been a denial-of-service attack vector for years.
* all: Update copyright header.Avuton Olrich2009-03-131-3/+4
| | | | | | | | This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
* pcm_format: added conversion from 32 bitMax Kellermann2009-03-021-0/+37
| | | | | Support converting 32 bit samples to any other supported sample format.
* pcm_format: added pcm_convert_to_32()Max Kellermann2009-03-021-0/+75
| | | | Added code to convert all other sample formats to 32 bit.
* pcm_dither: renamed struct pcm_dither_24 to struct pcm_ditherMax Kellermann2009-03-021-2/+2
| | | | | | There is nothing 24 bit specific in the pcm_dither_24 struct. Since we want to reuse the struct for 32 bit dithering, let's drop the "_24" suffix from the struct name.
* pcm_format: use the pcm_buffer libraryMax Kellermann2009-01-071-36/+23
| | | | Replace a "static" buffer with the PCM buffer library.
* pcm_format: pass struct pcm_dither_24 to pcm_convert_to_16()Max Kellermann2009-01-071-3/+3
| | | | The function does not need the full pcm_convert_state struct.
* pcm_utils: moved code to pcm_format.cMax Kellermann2009-01-071-0/+148
Moved all code which converts the sample format to a separate library.