What's the best way to record a video with high quality audio? Specifically, this is for a presentation where a microphone could be placed by the speaker. I know that an app that records with the right codec is necessary, but what about the microphone?

I'd prefer to use a USB mic but, even though Android 3.1+ supports USB host mode, it doesn't appear that this is easy to accomplish. What about a 3.5mm microphone - would that yield acceptable results, or would it be better to stick with the built-in microphone? Are any of the video-recording apps capable of handling the microphone?

Yes and no... I have a few test devices, let's say the Droid 1, which should work with a wired handsfree device. I'll need to track down a splitter to use it with a standard 3.5mm microphone. If I'm going the USB Host route, I'll use a Xoom or put a beta of Cyanogenmod9 (with ICS) onto the Droid 1. There seem to be problems with using line-in audio for video recording, from what I've seen. I'm still testing.
–
ProjectJourneymanFeb 11 '12 at 4:37

i have two wireless microphones (for song etc.) on my galaxy Nexus now :)
–
dev0Feb 16 '12 at 14:43

TRRS cable works for a simple microphone (too bad I don't have any good 3.5mm microphones right now). I used TapeMachine lite to test, since it shows the waveform. Red connector for mic. Unfortunately, I haven't had any luck with using it for video yet, even with LG Camera.
–
ProjectJourneymanFeb 21 '12 at 15:32

You need to find the right poles... It works for me after the right poles.. I can take a picture later if you want...
–
dev0Feb 21 '12 at 15:41

I bought a splitter ($7.65 on Amazon)to access the headphone/mic input on my HTC Thunderbolt.
An Audio Technica ATR6550 shotgun mike works fine with the built-in camcorder software. Note that the impedence on this is 2200 ohms.
I have half a dozen other microphones, and NONE of them work (some have an impedence of around 1000 ohms, so maybe this is the problem).
So, here is what I know:
1. This is possible (at least with the atr6550).
2. The necessary splitter (i.e. splits input jack into mic + earphone connectors) is not expensive, and there seems no reason to use any different connector.
3. I have half a dozen other mics and NONE of them works.
4. I don't know if the incompatibility of the others is an impedence problem or a voltage / current problem, and don't know how to find out.

I don't have an XLR mic, but that looks like the right way to go. The Irig Pre dongle is more compact than the TRRS splitter cable I now have (but more expensive), and allows using better microphones. I will have to look into that, especially if I upgrade my mic.
–
ProjectJourneymanOct 9 '13 at 21:36

A USB Microphone as well as any kind of USB Audio device needs a USB host which has drivers for USB Audio devices. Under Win/Mac/Linux these drivers come preinstalled and you can use your USB Audio device in a plug-and-play way. I have experimented with different ways of using USB Audio on Android and this topic seems to be quite diverse.

Depending on the version of Android and especially the Kernel in use you may, or may not, be able to connect USB devices over OTG USB (On-The-Go). With most devices these details don't show in the manufacturer's specifications and has to be tested manually. As far as I got in my research Samsung devices on Stock Android are the most reliable to support USB Audio, but if you start messing with different ROMs and Kernels it is possible deactivate this functionality.

I have been able to record very high quality audio with Urecord and USB Audio Recorder PRO using a stock Galaxy Note 2 and several interfaces (Alesis io4, Shure x2u) and I have been told that Audio Evolution is also able to record from a USB source.

An app that can record video as well as USB audio does not exist as far as I know. And of course, if your device does not support OTG and USB audio there is no way you can use a USB microphone.

When you put your android on flight mode u need to go to the setting and put it on mp3 headphone mode, itdeends how sencitive ur android is. And if ur android is not sencitive then you have to go and speaxk to the android network.