Comparison of HiFiBerry cards for audio recording


Comparison of HiFiBerry cards for audio recording

HiFiBerry offers not only a wide range of cards designed for optimal audio playback but also multiple cards that can be used to record audio on your Raspberry Pi.

Analogue input

In most case, you want to record audio from a device with analogue sound output. This can be an older stereo set, a turntable, an MP3 player, a mobile phone, a microphone or any other device that outputs line-level audio.

For these sources, an analogue sound input with an integrated analogue-to-digital converter is required.

The DAC+ ADC and DAC+ ADC Pro are the HiFiBerry boards to be used for this kind of application.

While the DAC+ ADC is basically a DAC+ with an additional analogue input stage, the DAC+ ADC Pro is not only based on the DAC+ Pro, but also offers additional features on the input. These include:

  • Input gain can be controlled in software over a wide range
  • Microphone bias voltage to support electret microphones
  • No anti-aliasing filter in the input path to support higher input bandwidth

Digital input

If your source has a digital output like a CD player or even a laptop with a TOSLink output a digital input is required. We offer 2 types of cards:

  • Digi+ I/O
  • DAC+ DSP

While the Digi+ I/O seems to be the best choice if you don’t need any digital signal processing capabilities, it often is not. While the Digi+ I/O can be used as a digital input, there are some limitations.

  • Sample rate and bits/sample on the recording application have to be set to match exactly the source format.
  • There is no detection of the sample rate of the source.
  • If no source is connected, recording will block. You won’t just record silence, but the whole system might block.

These limitations are based in the hardware. Therefore, we recommend the Digi+ I/O only for use cases where you know exactly what your source is delivering. A good example is a CD player. A classic CD player will always use 44.1Khz/16bit samples. A DVD player is a bit trickier. While Audio CDs are recorded at 44.1Khz sample rate, DVDs usually use 48kHz, some Audio DVDs even 96kHz or 192kHz.

The DAC+ DSP offer more flexibility for use cases with multiple sample rates. The Digital sound input is converted (re-sampled) to the sample rate of the DSP. This means the DSP automatically converts the sample rate of the Raspberry Pi and the source to its internal sample rate. If your source material has 44.1kHz sample rate, but your application records at 48kHz, it will just work, as the resampling hardware handles this conversion.

But this isn’t “bit-perfect” anymore? No, it isn’t. However, the distortion from hardware resampling is much, much lower than the distortion your DAC will introduce.

Recording sound from a DSP based card will require a DSP profile that supports recording and an updated driver for your DSP board. Have a look at this document.

Last updated: August 5, 2020