Tôi đã thấy nhiều thông tin về cách truyền phát video từ máy chủ sang thiết bị Android, nhưng không nhiều về cách khác, ala Qik. Ai đó có thể chỉ cho tôi đi đúng hướng ở đây, hoặc cho tôi một lời khuyên về cách tiếp cận này?
Tôi đã thấy nhiều thông tin về cách truyền phát video từ máy chủ sang thiết bị Android, nhưng không nhiều về cách khác, ala Qik. Ai đó có thể chỉ cho tôi đi đúng hướng ở đây, hoặc cho tôi một lời khuyên về cách tiếp cận này?
Câu trả lời:
Tôi đã lưu trữ một dự án nguồn mở để cho phép điện thoại Android thành camera IP:
http://code.google.com.vn/p/ipcamera-for-android
Dữ liệu video thô được lấy từ LocalSocket và MDAT MOOV của MP4 đã được kiểm tra trước khi phát trực tuyến. Video trực tiếp được đóng gói ở định dạng FLV và có thể được phát qua trình phát video Flash với bản dựng trong máy chủ web :)
ndk-build
. Để biết thêm thông tin, đọc tài liệu NDK .
Mất một thời gian, nhưng cuối cùng tôi cũng có thể tạo ra một ứng dụng làm được điều đó. Kiểm tra trang mã google nếu bạn quan tâm: http://code.google.com.vn/p/spydroid-ipcamera/ Tôi đã thêm vô số ý kiến trong mã của mình (chủ yếu, nhìn vào CameraStreamer.java), vì vậy nó nên khá tự giải thích. Phần khó thực sự là để hiểu RFC 3984 và thực hiện một thuật toán thích hợp cho quá trình đóng gói. (Thuật toán này thực sự biến luồng mpeg4 / h.264 do MediaRecorder tạo ra thành luồng rtp đẹp, theo rfc)
Tạm biệt
Tôi cũng đang xem xét vấn đề này và trong khi tôi không có giải pháp tốt cho bạn, tôi đã quản lý để đào mã video của SIPDroid:
http://code.google.com.vn/p/sipdroid/source/browse/trunk/src/org/sipdroid/sipua/ui/VideoCamera.java
Tôi đã xây dựng một SDK nguồn mở được gọi là Kickflip để biến video phát trực tiếp từ Android thành một trải nghiệm không đau.
SDK thể hiện việc sử dụng API MediaCodec của Android 4.3 để chuyển trực tiếp các gói của bộ mã hóa phần cứng thiết bị sang FFmpeg cho RTMP (với librtmp) hoặc HLS trực tuyến của H.264 / AAC. Nó cũng cho thấy Hiệu ứng OpenGL thời gian thực (chuẩn độ, phím màu, mờ dần) và ghi nền.
Cảm ơn SO, và đặc biệt, fadden .
Dưới đây là bài viết đầy đủ về truyền phát video camera android đến một trang web.
Truyền phát trực tiếp video từ máy ảnh Android sang trang web
Tôi có thể gửi video camera trực tiếp từ điện thoại di động đến máy chủ của mình. Sử dụng liên kết này xem liên kết
Tham khảo link.there ở trên là một ứng dụng mẫu trong liên kết đó. Chỉ cần bạn đặt url dịch vụ của bạn trong RecordActivity. Class.
Ví dụ như: ffmpeg_link = "rtmp: // mineerveripaddress: 1935 / live / venkat";
chúng tôi có thể gửi video loại H263 và H264 bằng liên kết đó.
Đây không phải là một câu trả lời đầy đủ, nhưng webRTC có thể là những gì bạn đang tìm kiếm. Dưới đây là một số ví dụ nhanh về webRTC đang hoạt động: http://www.webrtc.org/reference-apps
Nếu bạn muốn mã cụ thể của Android, nó tồn tại! http://www.webrtc.org/native-code/android
Kiểm tra thư viện Yasea
Yasea là một ứng dụng phát trực tuyến Android. Nó mã hóa dữ liệu YUV và PCM từ máy ảnh và micrô sang H.264 / AAC, được gói gọn trong FLV và truyền qua RTMP.
Đặc tính:
Mux (công ty của tôi) có một ứng dụng Android mã nguồn mở RTMP đến máy chủ, bao gồm thiết lập máy ảnh và tương tác người dùng. Nó được xây dựng để truyền phát trực tiếp tới API phát trực tiếp của Mux nhưng có thể dễ dàng truyền phát đến bất kỳ điểm truy cập RTMP nào.
Tùy thuộc vào ngân sách của bạn, bạn có thể sử dụng Máy ảnh Raspberry Pi có thể gửi hình ảnh đến máy chủ. Tôi thêm vào đây hai hướng dẫn nơi bạn có thể tìm thấy nhiều chi tiết hơn:
Hướng dẫn này chỉ cho bạn cách sử dụng Camera Raspberry Pi và hiển thị hình ảnh trên thiết bị Android
Đây là hướng dẫn thứ hai nơi bạn có thể tìm thấy một loạt hướng dẫn về truyền phát video thời gian thực giữa máy ảnh và thiết bị Android