c# - Xamarin MonoMac 在主窗口上预览网络摄像头 ( AVCaptureVideoPreviewLayer )

标签 c# macos xamarin monomac

我创建了一个简单的 Xamarin MonoMac Mac 应用程序(基本框架 1 窗口)。我正在尝试在应用程序的主窗口上预览网络摄像头。我使用 AVFoundation 类来访问网络摄像头。

我可以成功连接到 Mac 的网络摄像头,并且网络摄像头指示灯亮起,但主窗口上没有视频。

我的c#代码

        session = new AVCaptureSession () { SessionPreset = AVCaptureSession.PresetMedium };

        var captureDevice = AVCaptureDevice.DefaultDeviceWithMediaType (AVMediaType.Video);

        var input = AVCaptureDeviceInput.FromDevice (captureDevice);
        if (input == null){
            Console.WriteLine ("No input - this won't work on the simulator, try a physical device");

        }

        session.AddInput (input);

        AVCaptureVideoPreviewLayer captureVideoPreviewLayer = new AVCaptureVideoPreviewLayer (session);

        **//----> preview layer onto Window here ?!**

        session.StartRunning ();

最佳答案

这解决了它 - 希望它能帮助某人..

            AVCaptureVideoPreviewLayer captureVideoPreviewLayer = AVCaptureVideoPreviewLayer.FromSession (session);

            this.Window.ContentView.Layer=captureVideoPreviewLayer;
            this.Window.ContentView.WantsLayer=true;

            session.StartRunning ();

关于c# - Xamarin MonoMac 在主窗口上预览网络摄像头 ( AVCaptureVideoPreviewLayer ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22571475/

相关文章:

c# - 使用生成的数据阅读器对 Gridview 进行排序和分页

macos - 通过网络复制文件的 ZFS 增强方式?

macos - 如何从我的 mac 中删除 Google App Engine SDK?

ios - 更新Firebase程序包后,“InstanceID”不包含“SetApnsToken”的定义

mvvm - Xamarin.Forms MVVM - 有没有办法取消绑定(bind)?

c# - stringbuilder 保存到 CSV 文件时内存不足

c# - C# 中的 KNXnetIP 实现

c# - 如何从 c# 中的 ViewModelHelper 关闭窗口(XAML)?

macos - 运行 arm-elf-gcc 编译代码时出现段错误

c# - Xaml在半页上显示 map ,另一半以xamarin形式显示信息