特に調査もせずにBeagle BoardのAUDIO INジャックへ、Plug-in Power専用のコンデンサマイクを接続したところ、
どうも使えないようなので、いろいろと確認した。
結論から言うと、Plug-in Power専用のコンデンサマイクは使用できないはずなので、Power module付きの
コンデンサマイクか、ダイレクトマイク、物にもよるが間に合わせとしてヘッドフォンやスピーカー等を使用すればよい。
ちなみにダイレクトマイクとヘッドフォンについては、動作を確認した。

まずは、ちゃんと確認したわけではないが、Plug-in Powerモジュールが実装されていないと思われる。
この時点でPlug-in Power専用のコンデンサマイクは使用できないが、一応Beagle Boardのマニュアルでも
AUDIO INジャックからはAUXにしか接続されておらず、Main/Sub MIC等とは接続されていないことと、
powered microphone、PCやMP3プレイヤからのオーディオ出力が接続可能という記述があるので、
これは間違いないかと。
そうそう、MP3プレイヤを接続して録音出来ることは確認したので、AUXとしては問題なく動作する。

念のために、Ubuntu上でいろいろと試している最中に、一度だけ録音に成功したのだが、再現出来ず、
その後もサウンドのプロパティ設定やら、ANAMICL/ANAMICR、ANAMIC_GAIN、MICBIASあたりの
レジスタをいろいろと試したが、息などのノイズは録音出来ても、声は録音出来ないという状況なので、
一度だけ録音出来たのは、たまたま電源が供給されてしまったとか、間違えてスピーカーでも接続して
しまったかとか、、、今となってはわかる術がないので、どなたか詳しい方の御情報をお待ちしています。

デバイスファイルのパーミッションについて、/dev/sndと同じく
Androidphan氏曰く、init/devices.cへ以下の行を追加すればよいとのこと。
こちらでも動作を確認しました。
録画は未解決、webcamにマイクがついてるのをどうするか、、、

{ "/dev/video0", 0660, AID_ROOT, AID_CAMERA, 1 },


Androidには、Camcorder(Video camera)とCameraアプリがあるが、
肝心なところが、以下のファイル名からもわかるように、スタブでフェイクになっている為、
実際のカメラの映像を入出力する場合には、この代わりのものを用意しなければならない。

frameworks/base/camera/libcameraservice/CameraHardwareStub.cpp
frameworks/base/camera/libcameraservice/FakeCamera.cpp

カーネルはLinuxなので、ビデオインタフェースは、Video for Linuxを使えばよいのだが、
ちょうどいいところに、以下にてAndroidphan氏がV4L2に対応したパッチを示してくれたので、
ありがたく試させて頂いた。
http://groups.google.co.jp/group/android-porting/browse_thread/thread/f6b9c22ee45a68c4/

そのままではビルドが通らなかったが、libjpegが参照できるように修正するだけで、簡単に動いてしまいました。
ビデオの入出力と、カメラで写真を撮ることも出来てしまい、おかげで手間を省くことが出来ました。
Thank you Androidphan!

注意点は、

1. videoデバイスのpermissionを変更する。(init.rcで行えばよい)
chmod 666 /dev/video0

2. SD cardのdos partition空き容量がless than 4Gbyteであること。
容量の大きなSD cardだと、AuthorDriverとMediaRecorderのmax-filesizeでエラーになるので、
こちらを修正するか、手っ取り早くSD cardの空き容量を減らすかしなければならない。

3. Androidphan氏のパッチでは、640x480の解像度になっているが、352x288にする必要があった。
hard cordingされているところがあるようなので、他にも手を入れなければならないかもしれない。

TODO

ビデオの録画で問題が発生、オーディオの録音で問題が出ているようだが、そういえば、マイクは試したことがなかった、、