lsmod
命令用于列出当前加载的内核模块。它会显示已加载模块的信息,包括模块的名称、大小、使用次数等。
orangepi@orangepi:~$ lsmod
Module Size Used by
uvcvideo 106496 0
如果你在终端上执行 lsmod
命令,它会输出当前加载的内核模块列表。
lsmod
示例输出可能如下:
Module Size Used by
nls_utf8 12557 1
isofs 39835 1
binfmt_misc 17213 1
snd_bcm2835 24427 0
snd_pcm 98501 1 snd_bcm2835
snd_timer 23968 1 snd_pcm
snd 70032 3 snd_bcm2835,snd_timer,snd_pcm
uio_pdrv_genirq 12958 0
uio 17843 1 uio_pdrv_genirq
fixed 12556 0
i2c_dev 12848 0
每一行表示一个加载的模块,其中包括模块的名称、大小、以及使用该模块的其他模块等信息。
请注意,lsmod
命令通常需要 root 权限才能执行,你可能需要使用 sudo lsmod
。
orangepi@orangepi:~$ sudo apt update
orangepi@orangepi:~$ sudo apt install -y v4l-utils
orangepi@orangepi:~$ v4l2-ctl --list-devices
USB 2.0 Camera (usb-sunxi-ehci-1):
/dev/video0
orangepi@orangepi:~$ sudo apt update
orangepi@orangepi:~$ sudo apt-get install -y fswebcam
a) -d 选项用于指定 USB 摄像头的设备节点
b) --no-banner 用于去除照片的水印
c) -r 选项用于指定照片的分辨率
d) -S 选项用设置于跳过前面的帧数
e) ./image.jpg 用于设置生成的照片的名字和路径
orangepi@orangepi:~$ sudo fswebcam -d /dev/video0 --no-banner -r 1280x720 -S 5 ./image.jpg
orangepi@orangepi:~$ scp image.jpg test@192.168.1.55:/home/test(根据实际情况修改 IP 地址和路径)
orangepi@orangepi:~$ sudo apt update
orangepi@orangepi:~$ sudo apt install -y motion
/etc/default/motion
的 配 置 , 将 start_motion_daemon=no
修 改 为start_motion_daemon=yes
注意,Ubuntu22.04 不用设置这一步。
orangepi@orangepi:~$ sudo sed -i "s/start_motion_daemon=no/start_motion_daemon=yes/" /etc/default/motion
orangepi@orangepi:~$ sudo sed -i "s/stream_localhost on/stream_localhost off/" /etc/motion/motion.conf
注意,video 的序号不一定都是 video0,请以实际看到的为准。
orangepi@orangepi:~$ sudo vim /etc/motion/motion.conf
# Video device (e.g. /dev/video0) to be used for capturing.
videodevice /dev/video0
orangepi@orangepi:~$ sudo motion -b
a) Github 的下载地址:
orangepi@orangepi:~$ git clone https://github.com/jacksonliam/mjpg-streamer
b) Gitee 的镜像下载地址为:
orangepi@orangepi:~$ git clone https://gitee.com/leeboby/mjpg-streamer
a) Ubuntu 系统
orangepi@orangepi:~$ sudo apt-get install -y cmake libjpeg8-dev
b) Debian 系统
orangepi@orangepi:~$ sudo apt-get install -y cmake libjpeg62-turbo-dev
orangepi@orangepi:~$ cd mjpg-streamer/mjpg-streamer-experimental
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ make -j4
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ sudo make install
注意,video 的序号不一定都是 video0,请以实际看到的为准。
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ export LD_LIBRARY_PATH=.
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ sudo ./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -u -f 30" -o "./output_http.so -w ./www"
这里可以根据里面自带shell脚本来配置
修改 start.sh脚本,将start.sh里的:
./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"
字段修改为:
./mjpg_streamer -i "./input_uvc.so -d /dev/video1 -u -f 30" -o "./output_http.so -w ./www"
#注意这里的video1需要根据实际情况修改
这样就可以通过执行./start.sh
运行摄像头了。
sudo fswebcam -d /dev/video0 --no-banner -r 1280x720 -S 5 ./image.jpg
wget http://192.168.1.254:8080/?action=snapshot -O /tmp/garbage.jpg
# !/bin/bash
cd /home/orangepi/Image_recognition/mjpg-streamer/mjpg-streamer-experimental/
./start.sh
在 Linux 中,/etc/xdg/autostart
路径通常包含 .desktop
文件,这些文件用于配置在用户登录时自动启动的应用程序。这些文件使用桌面文件格式,以下是该目录下的 .desktop
文件的简单解析:
桌面文件格式: .desktop
文件是桌面应用程序的启动器文件,使用 FreeDesktop 标准的格式。它包含了应用程序的名称、图标、执行命令等信息。
样例 .desktop
文件: 以下是一个简单的 .desktop
文件的例子:
[Desktop Entry]
Name=MyApp
Exec=/path/to/myapp
Icon=myapp-icon
Type=Application
Name
: 应用程序的显示名称。Exec
: 启动应用程序的命令。Icon
: 应用程序的图标文件名。Type
: 应用程序类型,可以是 Application
、Link
等。Autostart 目录: /etc/xdg/autostart
目录中的 .desktop
文件用于配置在用户登录时自动启动的应用程序。这些文件指定了在用户登录后要运行的命令。
用户自定义 Autostart 目录: 用户的 autostart 目录通常位于 ~/.config/autostart
。用户可以在这个目录中放置他们自己的 .desktop
文件,配置在他们登录时自动启动的应用程序。
启动时执行命令: .desktop
文件中的 Exec
字段指定了在启动时执行的命令。这可以是应用程序的可执行文件或者是一个脚本。
注意:在 /etc/xdg/autostart
目录中的 .desktop
文件通常是系统范围的,而用户的 autostart 目录中的文件是用户特定的。系统级别的 autostart 文件影响所有用户,而用户级别的 autostart 文件只影响特定用户。