# MIPI摄像头 ***Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.*** --- 本文档详细介绍了 **Quectel Pi M1/L1** 智能主控板 **MIPI CSI** 摄像头接口的识别与连接方法,并提供了功能使用指导及常见问题解决方案。 ## 支持配件 原始配件 **FPC** 排线并未连接相机,需要手动连接,注意连接时排线金手指朝向板内金属接触面(金手指面朝下),请避免接错排线导致相机损坏。连接排线后相机外观如下: **IMX 219:** ```{image} images/image_KF95bPhKto9CfVx7vi2cvXwxnQg.webp :width: 1053px :height: 549px :align: center ```
相机IMX 219外观
**IMX 477:** ```{image} images/image_YJuvbgzCpoZwQ5xmk5Dchmesngg.webp :width: 1269px :height: 648px :align: center ```
相机IMX 477外观
## 硬件接口 **Quectel Pi M1/L1** 智能主控板共支持两路摄像头 **MIPI CSI** 接口,其接口位置与接口标号如下: **M1 camera** 接口如下: ```{image} images/image_DFI7bFj3zop6vuxOLQZcWcxBnfQ.webp :width: 1359px :height: 888px :align: center ```
M1 camera接口位置
**L1 camera** 接口如下: ```{image} images/image_MesfbBmYgoIogrxxgrxcPzhWnEc.webp :width: 1021px :height: 653px :align: center ```
L1 camera接口位置
## 快速开始 1. 可按照下图连接摄像头,两款支持的相机配件可以根据需求任意连接在camera1/camera2。连接时向上拉开连接器的黑色锁扣部分,将 **FPC** 排线插入 **CSI** 卡槽,注意排线金手指朝向板内金属接触面(白色部分那一面),按下锁扣,确认 **FPC** 排线稳定没有松动。这里以 **M1** 为例,分别展示了相机 **imx 219** 和相机 **imx 477** 的连接方法,L1的连接方式也是一样。 ```{image} images/image_StCQbQjM1o8d17xBRmfctOwXnyg.webp :width: 940px :height: 301px :align: center ```
IMX 219连接M1 camera2的效果
```{image} images/image_L5fjbY4icojmG0xlMXYcQmdknRd.webp :width: 753px :height: 294px :align: center ```
IMX 477连接M1 camera2的效果
2. 参考 [显示配置](<../../../操作系统/Android/显示配置/显示配置.md>) 连接显示屏 ## M1 功能使用(gnome) 前提条件: 摄像头功能运行前需在终端输入以下命令 ```bash bash a=`find /run/user -maxdepth 2 -name 'wayland-?' 2>/dev/null`; export XDG_RUNTIME_DIR=`dirname $a` export WAYLAND_DISPLAY=`basename $a` export LD_PRELOAD=/opt/qcom/lib/libgbm.so:$LD_PRELOAD ``` ### 预览 1. 在设备终端运行以下命令 ```bash gst-launch-1.0 -e qtiqmmfsrc name=camsrc ! 'video/x-raw,format=NV12,width=1280,height=720,framerate=30/1' ! waylandsink ``` 2. 此命令以 720p 30 FPS 配置启动相机,并将图像传到显示屏预览。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. 如果 2 个 CSI 卡槽同时插入 2 个摄像头,则用 camera=0/1 来区分,camera=0 代表第一个CSI 卡槽,camera=1 代表第二个 CSI 卡槽,例如打开第二个 CSI 卡槽摄像头,可输入以下命令: ```bash gst-launch-1.0 qtiqmmfsrc camera=0 ! 'video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1' ! waylandsink ``` 4. 如果要停止摄像头流,请按下CTRL+C ```{image} images/image_KQ7Pb6aP5o4KyUxIY8IcT6OHnGf.webp :width: 1280px :height: 800px :align: center ```
gnome桌面摄像头界面
### 视频录制 1. 在设备终端运行以下命令: ```bash gst-launch-1.0 -e qtiqmmfsrc camera=0 \ ! video/x-raw,format=NV12,width=1280,height=720,framerate=30/1 \ ! qtic2venc ! h264parse ! mp4mux ! filesink location=/tmp/video.mp4 ``` 2. 此命令以 720p 30 FPS 配置启动相机,并在 h264 视频编码后将其另存为视频文件。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. MP4文件保存在/tmp/目录下 4. 如果要停止摄像头录制,请按下CTRL+C 5. 可以输入以下命令播放视频文件 ```bash gst-launch-1.0 filesrc location=/tmp/video.mp4 ! qtdemux name=demux demux.video_0 ! h264parse ! avdec_h264 ! videoconvert ! waylandsink ``` ### 拍照 1. 在设备终端运行以下命令: ```bash timeout 2 gst-launch-1.0 -e qtiqmmfsrc camera=0 \ ! video/x-raw,format=NV12,width=1920,height=1080 \ ! jpegenc ! multifilesink location=/tmp/photo_%d.jpg max-files=1 ``` 2. 此命令以 1080p 30 FPS 配置启动相机,延时2秒后拍摄,并在 **JPEG** 视频编码后将其另存为图像文件。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. 图像文件保存在/tmp/目录下 4. 可以输入以下命令查看图片文件 ```bash gst-launch-1.0 filesrc location=/tmp/photo_20.jpg ! jpegdec ! imagefreeze ! waylandsink ``` ### 双摄使用 如果接入了两个camera并且想同时使用,可参考下面的方式 1. 在设备终端运行以下命令: ```bash gst-launch-1.0 \ compositor name=comp \ sink_0::xpos=0 sink_0::ypos=0 \ sink_1::xpos=0 sink_1::ypos=720 \ ! video/x-raw,width=1280,height=1440 ! waylandsink \ qtiqmmfsrc camera=0 ! video/x-raw,format=NV12,width=1280,height=720 ! comp.sink_0 \ qtiqmmfsrc camera=1 ! video/x-raw,format=NV12,width=1280,height=720 ! comp.sink_1 ``` 2. 此命令以720p 30 FPS 配置启动相机,可以同时预览两个相机画面 3. 如果想使用画中画模式,可以在终端运行以下命令: ```bash gst-launch-1.0 \ compositor name=mix \ sink_0::xpos=0 sink_0::ypos=0 \ sink_1::xpos=640 sink_1::ypos=240 \ ! queue max-size-buffers=3 ! videoconvert ! waylandsink sync=false \ qtiqmmfsrc camera=0 ! 'video/x-raw,format=NV12,width=1280,height=720,framerate=15/1' ! queue ! mix.sink_0 \ qtiqmmfsrc camera=1 ! 'video/x-raw,format=NV12,width=640,height=480,framerate=10/1' ! queue ! mix.sink_1 ``` 4. 如果要停止摄像头录制,请按下CTRL+C ## M1/L1 功能使用(weston) 前提条件: 摄像头功能运行前需在终端输入以下命令 ```bash bash a=`find /run/user -maxdepth 2 -name 'wayland-?' 2>/dev/null`; export XDG_RUNTIME_DIR=`dirname $a` export WAYLAND_DISPLAY=`basename $a` export LD_PRELOAD=/opt/qcom/lib/libgbm.so:$LD_PRELOAD ``` ### 预览 1. 在设备终端运行以下命令 ```bash gst-launch-1.0 -e qtiqmmfsrc name=camsrc ! 'video/x-raw,format=NV12,width=1280,height=720,framerate=30/1' ! waylandsink ``` 2. 此命令以 720p 30 FPS 配置启动相机,分辨率根据自己需求调整,并将图像传到显示屏预览。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. 如果 2 个 CSI 卡槽同时插入 2 个摄像头,则用 camera=0/1 来区分,camera=0 代表第一个CSI 卡槽,camera=1 代表第二个 CSI 卡槽,例如打开第二个 CSI 卡槽摄像头,可输入以下命令: ```bash gst-launch-1.0 qtiqmmfsrc camera=0 ! 'video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1' ! waylandsink ``` 4. 如果要停止摄像头流,请按下CTRL+C ```{image} images/image_Jf6TbQiMoo01mqxQjItcOO8ynsl.webp :width: 1280px :height: 800px :align: center ```
weston桌面摄像头界面
### 视频录制 1. 在设备终端运行以下命令: ```bash gst-launch-1.0 -e qtiqmmfsrc camera=0 \ ! video/x-raw,format=NV12,width=1280,height=720,framerate=30/1 \ ! qtic2venc ! h264parse ! mp4mux ! filesink location=/tmp/video.mp4 ``` 2. 此命令以 720p 30 FPS 配置启动相机,并在 h264 视频编码后将其另存为视频文件。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. MP4文件保存在/tmp/目录下 4. 如果要停止摄像头录制,请按下CTRL+C 5. 可以输入以下命令播放视频文件 ```bash gst-launch-1.0 filesrc location=/tmp/video.mp4 ! qtdemux name=demux demux.video_0 ! h264parse ! avdec_h264 ! videoconvert ! waylandsink ``` ### 拍照 1. 在设备终端运行以下命令: ```bash timeout 2 gst-launch-1.0 -e qtiqmmfsrc camera=0 \ ! video/x-raw,format=NV12,width=1920,height=1080 \ ! jpegenc ! multifilesink location=/tmp/photo_%d.jpg max-files=1 ``` 2. 此命令以 1080p 30 FPS 配置启动相机,延时2秒后拍摄,并在 **JPEG** 视频编码后将其另存为图像文件。如果 gst 管道状态更改为 “PLAYING”,则表示摄像头正在运行 3. 图像文件保存在/tmp/目录下 4. 可以输入以下命令查看刚刚生成的图片文件,例如示例生成的图像名为photo_20.jpg ```bash gst-launch-1.0 filesrc location=/tmp/photo_20.jpg ! jpegdec ! imagefreeze ! waylandsink ``` ### 双摄使用 如果接入了两个camera并且想同时使用,可参考下面的方式 1. 在设备终端运行以下命令: ```bash gst-launch-1.0 \ compositor name=comp \ sink_0::xpos=0 sink_0::ypos=0 \ sink_1::xpos=0 sink_1::ypos=720 \ ! video/x-raw,width=1280,height=1440 ! waylandsink \ qtiqmmfsrc camera=0 ! video/x-raw,format=NV12,width=1280,height=720 ! comp.sink_0 \ qtiqmmfsrc camera=1 ! video/x-raw,format=NV12,width=1280,height=720 ! comp.sink_1 ``` 2. 此命令以720p 30 FPS 配置启动相机,可以同时预览两个相机画面 3. 如果想使用画中画模式,可以在终端运行以下命令: ```bash gst-launch-1.0 \ compositor name=mix \ sink_0::xpos=0 sink_0::ypos=0 \ sink_1::xpos=640 sink_1::ypos=240 \ ! queue max-size-buffers=3 ! videoconvert ! waylandsink sync=false \ qtiqmmfsrc camera=0 ! 'video/x-raw,format=NV12,width=1280,height=720,framerate=15/1' ! queue ! mix.sink_0 \ qtiqmmfsrc camera=1 ! 'video/x-raw,format=NV12,width=640,height=480,framerate=10/1' ! queue ! mix.sink_1 ``` 4. 如果要停止摄像头录制,请按下CTRL+C