gpt4 book ai didi

python - Django web 使用 jetson tx2 作为服务器显示来自网络摄像头的流

转载 作者:太空宇宙 更新时间:2023-11-03 22:41:03 28 4
gpt4 key购买 nike

我正在编写网络应用程序,我想:

  1. 显示来自网络摄像头的本地流 - 这意味着,我想从服务器流式传输视频(我不想打开客户端的网络摄像头)
  2. 阅读二维码并将其列在文本框中

这两个已经实现了但是!我遇到了一些意想不到的行为。我所描述的功能运行良好,但仅限于本地主机。我想部署它,以便可以通过不同的计算机访问它(它旨在用于机器人)。

所以要描述我的架构:我使用 Jetson TX2 作为服务器(这里连接了网络摄像头)。我正在使用 Django 网络框架、django-channels、daphne 作为网络服务器和 ngingx 作为代理。我在主管中运行达芙妮和后台进程。

我正在使用 worker(后台进程)从网络摄像头捕获帧并通过 redis 将其发送到网络后端。

所以当我在本地主机上运行它时,一切都按预期工作。当我将 Debug 设置为 FALSE 并将 Jetson 的 IP 添加到 ALLOWED_HOSTS 并尝试从不同的计算机访问网络时,会发生这种情况:我可以看到,网络摄像头已被访问,因为网络摄像头灯亮了。我在网络摄像头前放了一些 QR 码,代码出现在网络上的文本框中!但是视频不存在(当 ALLOWED_HOSTS 包含本地主机视频时)。收集相机帧的后台进程输出出现以下错误:

libv4l2: error setting pixformat: Device or resource busy
OpenCV Error: Unspecified error (GStreamer: unable to start pipeline)
in cvCaptureFromCAM_GStreamer, file /home/nvidia/prototype/opencv/opencv-3.4.0/modules/videoio/$
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)):raised OpenCV exception:
/home/nvidia/toyota_prototype/opencv/opencv-3.4.0/modules/videoio /src/cap_gstreamer.cpp:890: error: (-2)$
in function cvCaptureFromCAM_GStreamer

我不会在这里贴出完整的代码,因为我不知道问题到底出在哪里。有谁知道问题出在哪里?

感谢您的帮助!

最佳答案

所以,我想通了。在我的 html 模板中,我有一行链接到流地址:

 <img src="http://127.0.0.1:8000/webcam-stream">

我想,现在你们都知道问题出在哪里了。我需要将 IP 更改为主机地址。

关于python - Django web 使用 jetson tx2 作为服务器显示来自网络摄像头的流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53762958/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com