一、安装所需软件

sudo apt-get install gphoto2 v4l2loopback-utils v4l2loopback-dkms ffmpeg

二、Video4Liunx 配置

  • 1.安装完所需的软件后,通过usb将相机链接到pc,相机应设置电脑控制开状态

    终端输入以下命令
sudo modprobe v4l2loopback exclusive_caps=1 max_buffers=2
  • 2.手动加载内核模块(通过modprobe)意味着modprobe 每次重新启动时都必须记住。为确保在系统启动时启用此模块,你需要编辑配置文件/etc/modules;并创建一个新的模块配置文件/etc/modprobe.d/dslr-webcam.conf:

    /etc/modules:

    • 在/etc/modules文件末尾添加dslr-webcam一个新行,如果这个文件全都是注释,只需要在最后一行添加 dslr-webcam。
    sudo vi /etc/modules
    # /etc/modules: kernel modules to load at boot time.
    #
    # This file contains the names of kernel modules that should be loaded
    # at boot time, one per line. Lines beginning with "#" are ignored. dslr-webcam

    使用sudo 创建一个新文件 /etc/modprobe.d/dslr-webcam.conf

    sudo vi /etc/modprobe.d/dslr-webcam.conf
    • 将以下内容添加到该文件中,并保存
    # Module options for Video4Linux, needed for our DSLR Webcam
    alias dslr-webcam v4l2loopback
    options v4l2loopback exclusive_caps=1 max_buffers=2
  • 3.重启后出现perform MOK management

    系统版本:Ubuntu 20.04

    (1)当进入蓝色背景的界面perform mok management后,选择enroll mok,

    (2)进入enroll mok界面,选择continue,

    (3)进入enroll the key 界面 ,选择yes,

    (4)接下来输入你在安装驱动时输入的密码,

    (5)之后跳到蓝色背景的界面perform mok management选择第一个reboot

三、gPhoto2 DSLR测试

  • 1.列出自动检测到的摄像机及其连接的端口。
gphoto2 --auto-detect

  • 2.相机状态摘要
gphoto2  --summary

  • 3.显示在 libgphoto2 数据库中指定的相机和驱动程序能力。用于 --summary 查询摄像机概览。
gphoto2 --abilities

  • 4.gphoto2相关命令
gphoto2

四、DSLR网络摄像头视频测试

  • 捕获一张照片并保存到当前路径下
gphoto2 --capture-image-and-download

  • 相机流式传输视频
gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0

# 从相机的图像传感器捕获日期gphoto2
# 将该数据导入ffmpeg,这将 mjpeg 流从中获取ghoto2并将其公开给 Video4Linux 环回设备
  • 推流到srs服务器
# 高清流(libx264或者h264)
gphoto2 --stdout --capture-movie | ffmpeg -re -i - -vcodec libx264 -f flv rtmp://127.0.0.1:1935/myapp/test

ubuntu 中将DSLR相机用作网络摄像头的更多相关文章

  1. 基于opencv网络摄像头在ubuntu下的视频获取

     基于opencv网络摄像头在ubuntu下的视频获取 1  工具 原料 平台 :UBUNTU12.04 安装库  Opencv-2.3 2  安装编译运行步骤 安装编译opencv-2.3  参 ...

  2. Ubuntu安装DroidCamX网络摄像头

    1.安装依赖项 sudo apt-get install gcc make linux-headers-`uname -r` 2.安装 cd /tmp/ bits=`getconf LONG_BIT` ...

  3. 抓住“新代码”的影子 —— 基于GoAhead系列网络摄像头多个漏洞分析

    PDF 版本下载:抓住“新代码”的影子 —— 基于GoAhead系列网络摄像头多个漏洞分析 Author:知道创宇404实验室 Date:2017/03/19 一.漏洞背景 GoAhead作为世界上最 ...

  4. 项目实战:Qt+Ffmpeg+OpenCV相机程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  5. Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  6. Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  7. Ubuntu中启用关闭Network-manager网络设置问题!

    Ubuntu中启用关闭Network-manager网络设置问题! [Server版本] 在UbuntuServer版本中,因为只存有命令行模式,所以要想进行网络参数设置,只能通过修改/etc/net ...

  8. ubuntu 12.04 "系统的网络服务与此版本的网络管理器不兼容

    ubuntu 12.04 "系统的网络服务与此版本的网络管理器不兼容“ 2013-05-10 21:18 2271人阅读 评论(0) 收藏 举报 今天上午在实验室一顿乱整,不知道整坏了什么, ...

  9. TVideoGrabber如何将网络摄像头影像实时发布到网络

    在TVideoGrabber中如何将网络摄像头影像实时发布到网络?如何设置正在运行TVideoGrabber的一台电脑,同时通过另一台电脑在网络中实时的观看在线视频呢? 在这里称发送视频流的电脑为“m ...

  10. ubuntu下使用nethogs监控网络流量

    NetHogs是一款小巧免费的开源命令行工具,用来按进程或程序实时统计网络带宽使用率. 对于使用类似于“repo tool”.“depot_tools”等工具checkout源码时非常有用,可以查看当 ...

随机推荐

  1. global与nonlocal、函数名用法、闭包函数、装饰器

    今日内容回顾 目录 今日内容回顾 global与nonlocal 函数名的多种用法 闭包函数 装饰器简介 装饰器推导流程 装饰器模板 装饰器语法糖 练习 global与nonlocal 函数名的多种用 ...

  2. java中的递归机制

    本文主要讲述java中的递归机制. 示例1,递归代码如下: public class Recursion01 { public static void main(String[] args) { T ...

  3. 对Asp.net WebApi中异步(async+await)接口实际使用及相关思考(示例给出了get,post,提交文件,异步接口等实践).

    [很多初学者的疑问] 为何作为web api这样的天然的并发应用,还需要在controller的action上声明使用async这些呢? <参考解答> 在 web 服务器上,.NET Fr ...

  4. day12-功能实现11

    家居网购项目实现011 以下皆为部分代码,详见 https://github.com/liyuelian/furniture_mall.git 27.功能25-事务管理 27.1下订单问题思考 在生成 ...

  5. [常用工具] mermaid学习笔记

    mermaid是一个基于Javascript的图表绘制工具,类似markdown用文本语法,用于描述文档图形(流程图. 时序图.甘特图),开发者可以通过一段mermaid文本来生成SVG或者PNG形式 ...

  6. [IOI2016] shortcut

    有显然的 \(O(n^3)\) 做法,可以获得 \(38pts\).(退火在洛谷上能跑 \(75pts\)) 答案具有单调性,考虑二分一个 \(M\) 并判断.列出 \(i\) 到 \(j\) 的距离 ...

  7. 数据分析中的SQL如何解决业务问题

    本文来自知乎问答. 提问:数据分析人员需要掌握sql到什么程度? 请问做一名数据分析人员,在sql方面需要掌握到什么程度呢?会增删改查就可以了吗?还是说关于开发的内容也要会?不同阶段会有不同的要求吗? ...

  8. python进阶之路16 模块入门

    索引取值与迭代取值的差异 l1 = [11,22,33,44,55] 1.索引取值 可以任意位置任意次数取值 不支持无序类型的数据取值 2.迭代取值 只能从前往后依次取值无法后退 支持所有类型的数据取 ...

  9. 带你熟悉3种AQS的线程并发工具的用法

    摘要:AQS 的全称为(AbstractQueuedSynchronizer),AQS 是一个用来构建锁和同步器的框架,使用 AQS 能简单且高效地构造出应用广泛的大量的同步器. 本文分享自华为云社区 ...

  10. P6327 区间加区间sin和 题解

    P6327 区间加区间sin和 题解 题目描述 给出一个长度为 \(n\) 的整数序列 \(a_1,a_2,\ldots,a_n\),进行 \(m\) 次操作,操作分为两类. 操作 \(1\):给出 ...