On my Librem13v2, I’ve used the cheapest available analog-to-digital converter (“Plugable USB Audio Adapter”, $24), which I had lying around at home for years, the Røde Videomicro microphone ($80, from the camera shop a couple of blocks from my house), and a nineteensixties or seventies-era Soviet mount, which I also had lying around at home for years. Basically, I scrounged together whatever happened to be available locally under quarantine conditions.
The microphone was plug-and-play in PureOS. The only user intervention required was to go to Settings (accessed by the hidden menu under the triangle at the top right corner of the screen, look for the crossed wrench and screwdriver), then navigate to:
Sound –> Input –> Choose Device
and click on the option for an external USB device, and adjust the volume accordingly.
Sound quality is better than what you get from a laptop internal microphone, but not ideal. For good sound quality you’re looking at several hundred dollars to a few thousand dollars, or finding second-hand equipment.
The Røde is more than good enough for videoconferencing.
It’s a directional microphone (caridoid pattern), but as far as I know, the main way sound from the speakers is excluded is through software. Of course, if you’re the only person at your computer, a better solution is to use headphones instead of speakers.
There’s another recent thread on this topic, here.