Thursday, August 15, 2019

Audio latency of various Android devices

I am interested in SDR in general, and low latency CW / SDR on portable devices while back packing in particular. I used to be active in that field around years 2007-2008, while I developed the PocketDigi application for Pocket PC platform (the Pocket PC platform has been killed by Android some five years ago), and I was hacking digital modes on an Altoids tin size transceiver http://www.kufr.cz/~ok1iak/HAM/ATS3a-digital/index.php3

I built an Omnia basic transceiver, which is a reincarnation of the Peaberry SDR, for which I modified the firmware to support low latency CW transmit generated by the SDR board directly without any host support.
https://github.com/bubnikv/omniasdrbasicfirmware

With the Omnia SDR transceiver, I was hoping to develop a lightweight back packing SDR CW setup. For CW, audio latency is important. With the help of the https://superpowered.com/latency application, I measured the following numbers on various Android devices, sorted by decreasing latency:

Device Android Clock Audio buffer size Round trip latency
Onyx Boox C67ML (e-ink reader) 4.2.2 44100 Hz 1024 bytes 325 ms
Samsung SM-J320FN (smartphone) 5.1.1 44100 Hz 960 bytes 312 ms
Chuwi Hi8 Air (Win10/Android tablet) 5.1 48200 Hz 1152 bytes 269 ms
Nexus 7 (tablet) 4.2.2 44100 Hz 512 bytes 123 ms
Nexus 4 (smartphone) 5.1.1 4800 Hz 240 bytes 51 ms

Interestingly, the Samsung phone shows a terrible round trip latency, while otherwise I am quite in love with the device. The old Nexus 4 phone shows the lowest latency, while still not close to the 20 ms round trip latency to be considered real time from a music performance point of view.

1 comment:

yaaaarp said...

I really miss pocketdigi. pocket PC hard to find in decent condition these days.
still after all these years nobody has bothered to write a decent multimode radio software for Android. the only thing is andfldigi which in my opinion is unusable compared with pocketdigi. wolphi did a couple of apps for single modes that I kind of usable but not in the same class as your your ppc classic.
how much would it cost to get pocket digi on Android? are there really severe hurdles? latency shouldn't matter as it is only working simplex.