Tôi không làm việc trong thời gian khá dài với Android Camera. Tuy nhiên, như tôi nhớ
1) onPreviewCallback không được gọi trong khi bạn đang ghi
Nó đề cập đến trong vài câu hỏi:
Camera onPreviewFrame not called How to show real time filtered camera preview while recording videos?
2) tôi thấy rằng nó đã được xử lý trong SipDroid và một số ứng dụng khách Android SIP khác theo cách này (đây là 1-2 năm trước, vì vậy phương pháp này có thể lỗi thời):
- Một đường ống đã được tạo ra
- Ổ cắm của ống được bọc trong FileDescriptor và được chuyển đến MediaRecorder setOutputFile
- Ổ cắm của ống được đọc liên tục trong một sợi.
- Bằng cách này, bạn có thể nhận nội dung được ghi vào một tệp
- Bây giờ, vấn đề cách xử lý nội dung (vì mã hóa H.263 hoặc H.264 và có thể được trộn lẫn với âm thanh, nếu bạn ghi lại video bằng âm thanh).
- Đã có một số thuật toán heuristical đó phân tích nội dung (tuy nhiên, đó là đau ở ass)
3) Bạn có thể sử dụng onPreviewFrame + bắt đầu AudioRecorder và mã hóa nó cho mình (sử dụng ffmpeg hoặc một cái gì đó như thế) để mp4 tập tin. Bằng cách này bạn không cần phải bắt đầu ghi MediaRecorder.
Nguồn
2013-04-28 01:28:01