Sửa Dựa trên Comment phản hồi:
Một nhà phát triển bằng tên baSSiLL đã ân cần chia sẻ một kho lưu trữ mà có một ghi hình màn hình thư viện C# cũng như một dự án mẫu trong C# cho thấy nó có thể được sử dụng như thế nào để chụp màn hình và micrô.
Bắt đầu từ ảnh chụp màn hình bằng cách sử dụng mẫu mã là như thẳng về phía trước như:
recorder = new Recorder(_filePath,
KnownFourCCs.Codecs.X264, quality,
0, SupportedWaveFormat.WAVE_FORMAT_44S16, true, 160);
_filePath là đường dẫn của tập tin tôi muốn lưu video vào.
Bạn có thể chuyển nhiều loại codec bao gồm AVI, MotionJPEG, X264, v.v. Trong trường hợp x264 tôi phải cài đặt codec trên máy trước nhưng AVI hoạt động ngoài hộp.
Chất lượng chỉ được phát khi sử dụng AVI hoặc MotionJPEG. Bộ giải mã x264 quản lý cài đặt chất lượng của riêng nó.
0 ở trên là thiết bị âm thanh tôi muốn sử dụng. Mặc định là số không.
Hiện tại, nó hỗ trợ 2 định dạng sóng. 44100 ở 16 bit hoặc stereo hoặc mono.
Thông số thực cho biết rằng tôi muốn âm thanh được mã hóa thành định dạng mp3. Tôi tin rằng điều này là cần thiết khi chọn x264 vì âm thanh không nén được kết hợp trong tệp .mp4 sẽ không phát lại cho tôi.
160 là tốc độ bit để mã hóa âm thanh.
~~~~~
Để ngừng ghi bạn chỉ
recorder.Dispose(); recorder = null;
Tất cả mọi thứ là mã nguồn mở, do đó bạn có thể sửa lại lớp ghi và thay đổi kích thước, khung hình mỗi giây, vv
~~~~
Để thiết lập và chạy với thư viện này, bạn sẽ cần phải tải xuống hoặc kéo từ thư viện github/codeplex bên dưới.Bạn cũng có thể sử dụng NuGet:
Install-Package SharpAvi
Original Post:
Sharp AVI: https://sharpavi.codeplex.com/ hoặc https://github.com/baSSiLL/SharpAvi
Có một dự án mẫu trong thư viện mà có một màn hình ghi tuyệt vời trong đó cùng với một menu cho các thiết lập/etc.
Tôi đã tìm thấy Screna trước từ câu trả lời khác về câu hỏi StackoverFlow này nhưng tôi đã gặp phải một số vấn đề liên quan đến việc mã hóa bộ mã hóa Mp3 Lame hoạt động chính xác. Screna là một trình bao bọc cho SharpAVI. Tôi tìm thấy bằng cách loại bỏ Screna và đi ra khỏi mẫu SharpAvi tôi đã may mắn hơn.
bạn có thể thực hiện việc này với Silverlight 4, không chắc chắn nếu đó là một tùy chọn cho bạn. –
nếu có thể .net 3.5 và winforms chỉ –
bạn đang sử dụng hệ điều hành nào? –