☑ Selection of voice codec : Codec2
☑ Implementing voice codec on embedded platform : esp32-codec2
☐ Making unit test for voice codec
☐ Turning Codec2 into a standalone Arduino library, which will allow for easier integration by third parties.
☑ Audio playback : Sine output by I²S on ESP32's internal DAC : esp32-dds (direct digital synthesis)
☑ Decoded Codec2 audio output on ESP32's internal DAC : esp32-codec2-DAC
☑ Audio capture (through I²S)
☐ Audio feed-through : not possible without external I2S peripherals. Internal DAC and ADC only work on I2S0. I2S0 can be set as output or input, not both at the same time.
Issues listed here are of minor priority. They are not blocking further development of the project. A working prototype is considered more important. If we would spend too much time on the issues listed here, we could get bogged down into trouble, potentially leading to never building something that works.
- Find out why codec2 on the ESP32 doesn't yield the same codec2 packets as the codec2 on the PC, although they're based on the same code base. ESP32-codec2 packets can successfully be decoded by c2dec on the PC, so the two implementations are still compatible.