Tôi đang viết một ứng dụng WPF nơi tôi cần hiển thị nguồn cấp dữ liệu Webcam. Tôi đã có thể làm điều này một cách dễ dàng với khuôn khổ AForge.Nhưng khi tôi đã thay đổi từ một máy tính sang một máy tính khác, cùng một mã không hoạt động theo cùng một cách.Triển khai WebCam trên ứng dụng WPF bằng AForge.Net
Trong lần đầu tiên, nguồn cấp dữ liệu webcam hoạt động hoàn hảo, nhưng trong trường hợp khác, điều này không xảy ra, nguồn cấp dữ liệu có nhiều sự chậm trễ và ứng dụng không hoạt động đúng cách.
Đây là mã:
private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
Bitmap img = (Bitmap)eventArgs.Frame.Clone();
this.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Render, (SendOrPostCallback)delegate
{
IntPtr hBitmap = img.GetHbitmap();
System.Windows.Media.Imaging.BitmapSource bitmapSource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
hBitmap,
IntPtr.Zero,
Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
DeleteObject(hBitmap);
img.Dispose();
GC.Collect();
image1.Source = bitmapSource;
}, null);
}
gì mã này là thực sự đơn giản, nó được một new_frame từ webcam trong một hình thức của một Bitmap
, và những gì tôi cần làm là để chuyển đổi nó vào một BitmapSource
, vì vậy tôi có thể hiển thị trong khung hình của WPF. Tôi nghĩ sự chuyển đổi này là trách nhiệm của sự lộn xộn đang xảy ra, nhưng tôi không hiểu tại sao nó lại hoạt động trong máy tính và cái kia thì không.
Thông số kỹ thuật máy tính gần như giống nhau, bộ xử lý giống nhau, cũng như bộ nhớ hệ thống.
Vấn đề của tôi ở đây là khoảng hiệu suất, mã này trong một máy tính chạy trơn tru và nguồn cấp dữ liệu webcam được trình bày như khi cần, khi tôi chuyển sang máy tính khác, điều này không xảy ra.
Dude, không cho chúng tôi biết lỗi là gì (bao gồm bất kỳ InnerExceptions và ngăn xếp cuộc gọi nào) hầu như không có ai có thể giúp bạn. – Will
Không có lỗi, vấn đề của tôi ở đây là về hiệu suất, mã này trong một máy tính chạy trơn tru, và nguồn cấp dữ liệu webcam được trình bày như nó cần, khi tôi chuyển nó sang máy tính khác, điều này không xảy ra. sự chậm trễ, và ví dụ nút đóng cửa sổ không hoạt động. –
Bạn đã có một người trả lời mới. Vui lòng xem. –