Cuộc thảo luận chỉ đúng khi cảm biến bên trong máy ảnh USB tuân thủ UVC (hầu hết các máy ảnh trong ngày đều tuân thủ).
Theo mặc định, không có sẵn API Android cho máy ảnh bên ngoài. Vì vậy, nếu bạn nghiêm túc về dự án, công việc bạn làm sẽ liên quan đến việc viết một chương trình cơ sở nói chuyện với trình điều khiển hạt nhân và sau đó hiển thị dữ liệu trên lớp ứng dụng Android.
Khi bạn lắp máy ảnh USB, Có một vài điều bạn cần kiểm tra trước.
1) Máy ảnh của bạn có lấy nguồn từ cổng USB không? (Đối với điều này xảy ra cổng USB của bạn nên có hỗ trợ USB-OTG-cổng USB có thể hoạt động như mục tiêu và máy chủ, Kiểm tra xem đèn trên máy ảnh (nếu có) có phát sáng hay không?)
2) node được tạo trong thư mục/dev? (Chỉ trong trường hợp hạt nhân đã bật hỗ trợ v4l2 và UVC, nút sẽ được tạo). Nếu nút được tạo ra, bây giờ bạn có quyền truy cập vào phần cứng thực sự là máy ảnh USB và công việc của bạn sẽ dễ dàng từ đây trở đi. để kiểm tra làm ls -l/dev/v * bên trong hệ thống tệp android và kiểm tra xem video0 hoặc video1 đang được tạo.
4) Nếu nút được tạo, bạn cần viết chương trình cơ sở (UVC) và lấy khung từ phần cứng thực. Nó (UVC) hỗ trợ các cuộc gọi ioctl khác nhau mà nói chuyện với lớp v4l2 trong hạt nhân và sẽ lấy bạn khung.
Các khung này chủ yếu là định dạng YUYV422 hoặc YUYV420.
Khi bạn nhận được khung, chuyển đổi thành RGB hoặc Jpeg (Android có hỗ trợ chuyển đổi) và hiển thị trên canvas hoặc hình ảnh bất kỳ bạn thích.
Để ghi, bạn có thể phải sử dụng ffmpeg để mã hóa. Điều này sẽ chuyển đổi hình ảnh thành video.
Hãy cho tôi biết trong trường hợp bạn quan tâm và cần thêm hỗ trợ ... !!!!
Nguồn
2012-01-24 12:20:08
không thể sử dụng máy ảnh của máy tính bảng vì máy ảnh "cố định trên bo mạch"? – JoxTraex
Đó là một tiện ích công nghiệp và tôi không thể di chuyển máy tính bảng vì vậy tôi phải sử dụng máy ảnh USB. – neoffreeman