Difference between revisions of "Template:Linux-RK3399MIPICamera"

From FriendlyELEC WiKi
Jump to: navigation, search
(updated by API)
Line 1: Line 1:
 +
===Linux下使用MIPI摄像头OV13850===
 +
摄像头连接方法:
 +
由于Linux系统的内核目前仅配置了 '''MIPI-CSI1''',所以摄像头只能连接在 MIPI-CSI1 接口,如下图所示:<br />
 +
TODO<br />
 +
<br />
 +
为了方便测试摄像头,我们提供了一个脚本gst-camera.sh可以在命令行测试摄像头的拍照和录像功能,这个脚本可以用以下命令下载安装:
 +
<syntaxhighlight lang="bash">
 +
sudo wget http://112.124.9.243:8888/rk3399/gst-camera.sh -O `which gst-camera.sh`
 +
</syntaxhighlight>
 +
====gst-camera.sh 参数说明====
 +
::{| class="wikitable"
 +
|-
 +
|参数 || 功能
 +
|-
 +
|  --index或-i || 选择要使用的摄像头的序号,可选值为0和1,当同时连接两个摄像头时,指定为1表示要操作第二个摄像头
 +
|-
 +
|  --mode或-m || 指定摄像头的分辨率,比如720P 30FPS 则使用参数为 width=1280,height=720,framerate=30/1
 +
|-
 +
|  --action或-a || 指定命令要执行的动作,可选参数为: preview、photo和video,分别对应预览、拍照和录像
 +
|-
 +
|  --output或-o || 指定输出的文件名,用于拍照和录像时指定输出文件名
 +
|-
 +
|  --verbose或-v || 指定为yes时,会输出调用gst-launch-1.0命令的完整命令行
 +
|}
  
 +
====gst-camera.sh 使用方法====
 +
* '''预览图像'''
 +
<syntaxhighlight lang="bash">
 +
gst-camera.sh --action preview
 +
</syntaxhighlight>
 +
* '''拍照'''
 +
用以下命令拍照一张照片,存储为文件 1.jpg:
 +
<syntaxhighlight lang="bash">
 +
gst-camera.sh --action photo -output 1.jpg
 +
</syntaxhighlight>
 +
* '''录像并预览'''
 +
用以下命令启动边预览边录像,存储为视频文件 1.ts,录像时使用了硬件编码:
 +
<syntaxhighlight lang="bash">
 +
gst-camera.sh --action video -output 1.ts
 +
</syntaxhighlight>
 +
<br />
 +
* '''显示完整的命令'''
 +
加入 --verbose yes 的参数,会显示最终的 gsteamer 命令,例如:
 +
<syntaxhighlight lang="bash">
 +
gst-camera.sh --action video --output 1.ts --verbose yes
 +
</syntaxhighlight>
 +
你会得到以下完整的 gsteamer 命令,这对你开发会有帮助:
 +
<syntaxhighlight lang="bash">
 +
gst-launch-1.0 rkisp num-buffers=512 io-mode=4 path-iqf=/etc/cam_iq/ov13850.xml \
 +
    ! video/x-raw,format=NV12,width=1280,height=720,framerate=30/1 \
 +
    ! tee name=t t. ! queue ! kmssink t. ! queue ! mpph264enc \
 +
    ! queue ! h264parse ! mpegtsmux ! filesink location=1.ts
 +
</syntaxhighlight>

Revision as of 03:12, 15 November 2018

1 Linux下使用MIPI摄像头OV13850

摄像头连接方法: 由于Linux系统的内核目前仅配置了 MIPI-CSI1,所以摄像头只能连接在 MIPI-CSI1 接口,如下图所示:
TODO

为了方便测试摄像头,我们提供了一个脚本gst-camera.sh可以在命令行测试摄像头的拍照和录像功能,这个脚本可以用以下命令下载安装:

sudo wget http://112.124.9.243:8888/rk3399/gst-camera.sh -O `which gst-camera.sh`

1.1 gst-camera.sh 参数说明

参数 功能
--index或-i 选择要使用的摄像头的序号,可选值为0和1,当同时连接两个摄像头时,指定为1表示要操作第二个摄像头
--mode或-m 指定摄像头的分辨率,比如720P 30FPS 则使用参数为 width=1280,height=720,framerate=30/1
--action或-a 指定命令要执行的动作,可选参数为: preview、photo和video,分别对应预览、拍照和录像
--output或-o 指定输出的文件名,用于拍照和录像时指定输出文件名
--verbose或-v 指定为yes时,会输出调用gst-launch-1.0命令的完整命令行

1.2 gst-camera.sh 使用方法

  • 预览图像
gst-camera.sh --action preview
  • 拍照

用以下命令拍照一张照片,存储为文件 1.jpg:

gst-camera.sh --action photo -output 1.jpg
  • 录像并预览

用以下命令启动边预览边录像,存储为视频文件 1.ts,录像时使用了硬件编码:

gst-camera.sh --action video -output 1.ts


  • 显示完整的命令

加入 --verbose yes 的参数,会显示最终的 gsteamer 命令,例如:

gst-camera.sh --action video --output 1.ts --verbose yes

你会得到以下完整的 gsteamer 命令,这对你开发会有帮助:

gst-launch-1.0 rkisp num-buffers=512 io-mode=4 path-iqf=/etc/cam_iq/ov13850.xml \
    ! video/x-raw,format=NV12,width=1280,height=720,framerate=30/1 \
    ! tee name=t t. ! queue ! kmssink t. ! queue ! mpph264enc \
    ! queue ! h264parse ! mpegtsmux ! filesink location=1.ts