불행히도 안드로이드 API 중 카메라 스트림만 구하는 방법은 없습니다.
카메라 정보만 을 구하는 방법은 아래같은 방법이 있는 듯 했습니다.
1. 안드로이드 java api 중 takePicture 를 이용하여 반환되는 이미지를 사용
http://developer.android.com/reference/android/hardware/Camera.html#takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback) 를 사용
장점 : 구글에서 제공하는 API라 모든 단말에서 사용 가능
단점 : java api라 1초에 15fps를 캡쳐하기 힘듬
2. shell 명령어를 이용
https://code.google.com/p/androidscreencast
장점 : DDMS같은데서 사진 찍을 때 사용하는 방법이라. 거의 모든 단말에서 사용 가능
단점 : 1번 보다는 빠르지만 늦음
3. 1번에 대응하는 C쪽 코드 android_hardware_Camera.cpp 같은 것을 코드 미라캐스트관련 C쪽 코드를 분석하여 jni 로 해당 함수들을 호출하는 방식으로 구함
장점 : 속도가 빨라 30fps 도 가능
단점 : C쪽 코드는 헤더같은게 달라질 가능성이 높아서 모든 단말에 대응해주기가 거의 불가능
이 방법들 모두 상용으로 사용하는데는 무리가 있는 듯 하며, 그나마 ffmpeg를 사용하지 않고, MediaRecoder로 녹화까지 수행하여 임시 파일로 떨구고, 그 파일을 전송하는 방식으로 구현하시는게 현재로썬 제일 나은 듯 합니다.