cuốn sách gpt4 ai đã làm

Xem trước camera kết hợp của luồng cơ bản được mã hóa h264 bằng MediaMuxer

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 21:11:30 25 4
mua khóa gpt4 Nike

我正在研究 Các trường hợp thử nghiệm Android Một cách triển khai là ghi lại kết cấu xem trước bằng API MediaCodec và MediaMuxer mới của Android 4.3.

Tôi đã cố gắng ghi lại luồng xem trước ở tốc độ khoảng 30 khung hình/giây bằng cách đặt bản ghiHint làm thông số máy ảnh.

Tuy nhiên, tôi đang gặp phải vấn đề về độ trễ/độ trễ và thực sự không biết cách khắc phục. Khi ghi lại các bản xem trước của máy ảnh bằng cài đặt chất lượng khá chuẩn (1280x720, tốc độ bit khoảng 8.000.000), đôi khi xảy ra độ trễ trong quá trình xem trước và mã hóa Tài liệu. Cụ thể hơn: độ trễ này xảy ra khoảng 2-3 giây một lần và mất khoảng 300-600 mili giây.

Bằng cách truy tìm độ trễ, tôi có thể phát hiện ra rằng độ trễ xuất phát từ dòng mã sau trong phương thức "drainEncode":

mMuxer.writeSampleData(mTrackIndex, mã hóaData, mBufferInfo);

Dòng này được gọi trong vòng lặp nếu bộ mã hóa có sẵn dữ liệu để ghép kênh. Hiện tại tôi không ghi âm nên chỉ có luồng h264 được MediaMuxer chuyển đổi sang định dạng mp4.

Tôi không biết điều này có liên quan đến độ trễ hay không, nhưng nó luôn xảy ra khi vòng lặp thực hiện hai lần lặp để loại bỏ tất cả dữ liệu có sẵn từ bộ mã hóa (cụ thể hơn là nó luôn xảy ra ở lần lặp đầu tiên của nó) hai lần lặp). Trong hầu hết các trường hợp, một lần lặp là đủ để loại bỏ bộ mã hóa.

Vì không có nhiều thông tin trực tuyến về các API mới này nên mọi trợ giúp đều được đánh giá cao!

câu trả lời hay nhất

Tôi nghi ngờ bạn đã MediaMuxer Sự cố ghi đĩa. Cách tốt nhất để xác định là chạy systrace trong quá trình ghi và xem điều gì thực sự xảy ra trong quá trình tạm dừng. (systrace tài liệu,lời giải thích,ví dụ về bông lớn—Tính đến thời điểm hiện tại, chỉ có phiên bản sau được cập nhật cho Android 4.3)

Nếu đúng như vậy, bạn có thể thực hiện việc này bằng cách chạy trên một luồng riêng biệt MediaMuxer instance và cung cấp dữ liệu H.264 thông qua hàng đợi đồng bộ hóa để giảm bớt vấn đề.

Những lần tạm dừng này có xảy ra thường xuyên không, cứ 5 giây một lần? Ví dụ về CameraToMpegTest định cấu hình bộ mã hóa để xuất ra khung hình chữ I cứ sau 5 giây (tốc độ khung hình dự kiến ​​là 30 khung hình/giây), khiến các khung hình có kích thước đầy đủ được xuất ra thay vì tăng dần nhỏ.

Về android - Bản xem trước máy ảnh lai với luồng cơ bản được mã hóa h264 bằng MediaMuxer, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/19361770/

25 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress