当前位置: 首页 > 面试题库 >

如何使用AngularJS使用网络摄像头?

巫朝明
2023-03-14
问题内容

以前,我已经将可运行的网络摄像头代码放入我的应用程序中,但是现在当我更新到AngularJS
v1.5.0时,它无法正常工作。我正在使用与v1.3.0完美配合的网络摄像头指令

这是我的代码:

<webcam placeholder="selfiePlaceHolder"
  on-stream="onStream(stream)"
  on-access-denied="onError(err)" on-streaming="onSuccess(video)">
</webcam>

但是现在,AngularJS v1.5.0给出了以下错误:

Uncaught Error: [$parse:isecdom] Referencing DOM nodes in Angular expressions is disallowed! Expression: onSuccess(video)
http://errors.angularjs.org/1.5.0/$parse/isecdom?p0=onSuccess(video)

我还尝试对AngularJS ng-Camera使用其他解决方案,但即使是演示页也不适用于我。

注意: 我知道问题在于我们无法从AngularJS的较新版本访问DOM,但是相同的代码适用于较旧的版本。我需要知道如何将“视频”
DOM对象传递给控制器​​。


问题答案:

我找到了解决问题的方法。需要完成两件事:

HTML中的First:

<webcam channel="channel" 
        on-streaming="onSuccess()" 
        on-error="onError(err)" 
        on-stream="onStream(stream)"></webcam>

其次,在控制器中,您可以使用以下代码访问DOM视频:

 $scope.onSuccess = function () {
        // The video element contains the captured camera data
        _video = $scope.channel.video;
        $scope.$apply(function() {
            $scope.patOpts.w = _video.width;
            $scope.patOpts.h = _video.height;
            //$scope.showDemos = true;
        });
    };

这是一个工作示例。



 类似资料:
  • 问题内容: 我想从Python访问我的网络摄像头。 我尝试使用VideoCapture扩展(教程),但对我而言效果不佳,我不得不解决一些问题,例如分辨率> 320x230时它有点慢,有时它返回时没有明显原因。 是否有更好的方法从Python访问我的网络摄像头? 问题答案: OpenCV支持从网络摄像头获取数据,并且默认情况下随附Python包装器,您还需要安装OpenCV Python扩展名(称为

  • 我正在通过将前置摄像头设置为 AVD 管理器中的“webcam0”来将网络摄像头连接到模拟器。当我启动模拟器的相机应用程序时,我收到错误 以下是 Android 源代码的相关部分: 网络摄像头已被正确分配了0的ID,因为只有1个摄像头。但是,可能仍然为0。这意味着模拟器正在注册摄像头,但它没有费心更新连接的摄像头数量。 如何连接网络摄像头,使其能够被模拟器正确识别? 编辑:命令

  • 问题内容: 我一直在尝试使用Python创建一个简单的程序,该程序使用OpenCV从我的网络摄像头获取视频供稿并将其显示在屏幕上。 我知道我之所以在这里,是因为创建了窗口,并且网络摄像头上的灯闪烁了,但是它似乎在窗口中什么都没有显示。希望有人可以解释我在做什么错。 在不相关的注释上,我注意到我的网络摄像头有时会在中更改其索引号,有时我需要输入0、1或2,即使我只连接了一个摄像头,也没有拔下插头(我

  • 我想使用ffmpeg直播网络摄像头。我的罗技c920网络摄像头具有原始和压缩数据的输出流。命令产生以下控制台输出: 我想复制压缩的h264图像并将其发送到ffserver。 当我使用这个命令程序获取原始数据并使用h264编解码器转码。 当我将更改为时,我收到一个错误,因为ffmpeg尝试复制原始相机图像。 如何访问h264压缩图像并将其发送到服务器?

  • 我在主机上运行Ubuntu18.04,在LXC容器中运行Ubuntu20.04。我的目标是在一个LXC容器中运行ROS2(需要Ubuntu 20.04),然后用它连接两个dynamixel伺服电机和一个USB Logitech网络摄像头。我还在容器中安装了miniconda,以便安装OpenCV和dlib。我还在容器内使用conda虚拟环境。 所有提到的软件工作正常。现在我需要用OpenCV访问网

  • 我正在开发一个web应用程序,它可以浏览和拍摄本地照片,我还想通过相机拍摄图像。我使用下面的代码,我可以捕捉设备摄像头。 现在,我想获得图像和onchangeevent,转换为base64,并希望在该页面中显示。 好心帮我伙计们!