Closed Warter21 closed 9 years ago
Hello,
Debian Wheezy's ALSA package is probably too old. It does not support the DSD sample formats. You can either patch it or upgrade ALSA. Patching is probably easier. I think other have done this before.
I use Debian Jessie. Alsa 1.0.28. Is it too old?
It seems you are right.
root@jessie-rpi:/usr/include/alsa# grep DSD *
pcm.h: /* Direct Stream Digital (DSD) in 1-byte samples (x8) */
pcm.h: SND_PCM_FORMAT_DSD_U8,
pcm.h: /* Direct Stream Digital (DSD) in 2-byte samples (x16) */
pcm.h: SND_PCM_FORMAT_DSD_U16_LE,
pcm.h: SND_PCM_FORMAT_LAST = SND_PCM_FORMAT_DSD_U16_LE,
root@jessie-rpi:/usr/include/sound# grep DSD *
asound.h:#define SNDRV_PCM_FORMAT_DSD_U8 ((snd_pcm_format_t) 48) /* DSD, 1-byte samples DSD (x8) */
asound.h:#define SNDRV_PCM_FORMAT_DSD_U16_LE ((snd_pcm_format_t) 49) /* DSD, 2-byte samples DSD (x16), little endian */
asound.h:#define SNDRV_PCM_FORMAT_DSD_U32_LE ((snd_pcm_format_t) 50) /* DSD, 4-byte samples DSD (x32), little endian */
asound.h:#define SNDRV_PCM_FORMAT_DSD_U16_BE ((snd_pcm_format_t) 51) /* DSD, 2-byte samples DSD (x16), big endian */
asound.h:#define SNDRV_PCM_FORMAT_DSD_U32_BE ((snd_pcm_format_t) 52) /* DSD, 4-byte samples DSD (x32), big endian */
asound.h:#define SNDRV_PCM_FORMAT_LAST SNDRV_PCM_FORMAT_DSD_U32_BE
Any idea? :)
I had to check my notes, it has been a while. It is a bit of a mess alsa-lib include vs includes from the kernel. ALSA 1.0.28 is still too old, 1.0.28 still needs these patches:
Patch5: 0001-pcm-Fix-DSD-formats-userland-usability.patch
Patch6: 0001-pcm-Add-missing-signed-and-endianess-definitions-for.patch
Patch7: 0001-pcm-2nd-round-of-pcm_misc-DSD-fixes.patch
Patch8: alsa-lib-add-dsd-u32-le-v3.patch
Patch9: alsa-lib-add-dsd-be-formats.patch
These can be found in my xmos-native-dsd repo.
I checked alsa site, it seems they added dsd 32 support in the 1.0.29 version. So I have to upgrade the alsa package. Thanks for your help.
No problem. Be carefull upgrading ALSA to a new major version. Patching the current version is safer.
Hello,
RPi2 / Debian / kernel 4.1.6 / mpd 0.19.10 + nativ dsd patch
I try to compile but I got this error:
Do you have any idea what could be wrong?
Thanks, Warter