Tôi đã cố gắng để xây dựng một máy ghi màn hình để thực hành kỹ năng Java teo của tôi (mặc dù đã có quá nhiều).Những lý do kỹ thuật, cơ bản đằng sau Robot(). CreateScreenCapture() là quá chậm?
Tuy nhiên, tôi đã đến khi vấn đề của lớp Robot đang ridiculously chậm - khoảng 15fps ngay cả trên i7 của tôi hỗ trợ máy, và thu thập 4-5fps trên macbook của tôi. Tôi đã xây dựng một máy ghi âm làm việc với Python và đã có thể đạt được ít nhất 20-24fps đáng tin cậy bằng cách lấy ảnh chụp nhanh với PIL.
Vì vậy, tôi tò mò, lý do kỹ thuật cho lớp học quá chậm?
Hơn nữa, các trình ghi màn hình khác hoạt động như thế nào? Screencast-o-matic là Java và có vẻ hoạt động tốt. Tôi cho rằng có một số cách để kết nối với hệ điều hành bên dưới, và tách tất cả mọi thứ ra khỏi bộ đệm hay gì đó? Tôi hình dung rằng phải có một số cách cực kỳ nhanh chóng để có được bản sao của những gì đang được vẽ trên màn hình - Sau khi tất cả, hệ điều hành là đủ nhanh để vẽ màn hình nhiều lần sau khi tất cả trong khi thực hiện một tính toán kajillion khác! Có vẻ như việc sao chép một mảng màu từ nơi này sang nơi khác nên là một hoạt động tương đối rẻ.
Tôi quyết tâm không từ bỏ! Tôi chỉ không biết những gì tôi cần biết để thực sự đi sâu vào thịt xây dựng một máy ghi thích hợp.
[link] này (http://www.rune-server.org/programming/application-development/387765-directrobot-fast-java-robot-allows-screen-recording.html) có thể giúp trả lời câu hỏi của bạn và cung cấp một giải pháp có thể ... – MadProgrammer
Robot là gì? – Andremoniy
Bạn có thể thử JNA thay vào đó, nó có khả năng nhanh hơn nhiều. http://stackoverflow.com/questions/4433994/java-window-image –