GStreamer视频插件

将视频插件(qtiqmmfrsc)用于数据流管道

您可以使用“qtiqmmfsrc”插件在TurboX C610板上录制视频和更改摄像头功能。(以下大部分信息均包含在“QCS610/QCS410 Linux平台开发工具包快速入门指南”(需要登录)的第6节和第7节中)。

一、视频数据流管道

1. 4K视频记录

“qtiqmmfsrc”元素可以生成一个硬件编码的H.264数据流。将数据流参数(例如:宽度、高度、帧率和格式)指定为大写过滤器。这个数据流使用“mp4mux”插件进行多路复用,并使用“filesink”元素进行转储,如下所示:

2. 通过传输控制协议进行1K视频记录

“qtiqmmfsrc”元素捕获并对视频数据流进行编码。“h264parse”和“mpegtsmux”元素处理来自数据流的缓存,并准备将其用于数据流。然后,“tcpserversink”元素通过传输控制协议网络发送缓存。

3. 在单独文件中存储两个视频数据流

“qtiqmmfsrc”元素捕获并对视频数据流进行编码。“h264parse”和“mp4mux”元素处理缓存,并准备将其进行存储。队列元素确保每个路径彼此独立运行。“filesink”元素将缓存存储在相应的文件中。

4. 将一个视频数据流存储在文件中,另一个通过传输控制协议传输

“qtiqmmfsrc”元素捕获并对视频数据流进行编码。“h264parse”和“mp4mux”元素处理来自第一个数据流的缓存,并准备将其进行存储。“filesink”元素将第一个数据流的缓存存储在文件中。“h264parse”和“mpegtsmux”元素处理来自第二个数据流的缓存,并准备将其用于传输。然后,“tcpserversink”元素通过网络发送缓存。队列元素确保每个路径/轨道彼此独立运行。

5. 与用户文本叠加的视频记录

“qtiqmmfsrc”元素生成亮度和色差信号数据流。亮度和色差信号数据流由“qtioverlay”插件接收,并将用户文本作为叠加文本属性值应用到数据流上。然后,叠加的亮度和色差信号数据流由“h264parse”处理,并由“omxh264encc”插件进行编码。“mp4mux”插件将编码后的数据流封装在一个MP4容器中。“filesink”元素将输出内容存储在一个文件中。

6. 在同时录制两个视频时利用“gst- pipel-app”捕获快照

“qtiqmmfsrc”元素用于捕获并对视频数据流进行编码。“h264parse”和“mp4mux”元素处理来自第一个和第二个数据流的缓存,并准备将其进行存储。“filesink”元素将第一个和第二个数据流的缓存保存到文件中。“qtiqmmfsrc”元素将原数据流从第三个数据流发送至“视频转换器”。“jpegenc”元素将原始数据流编码为JPEG格式。“Multifilesink”将捕获的图像存储到一个文件中。

二、TurboX C610上的额外摄像头功能 – 如何使用“qtiqmmfsrc”插件对其进行修改

继续通过TurboX C610的摄像头功能进行,TurboX C610支持额外的摄像头功能,如下所示:

1. 镜头畸变校正(LDC)

镜头畸变校正是对鱼眼镜头产生的畸变进行校正的过程,可以使直线显现为曲线。

以下为利用管道消除镜头畸变的示例:

2. 电子稳像(EIS)

电子稳像是一种在播放过程中尽量减少视频抖动(例如:车辆运动或握手)的方法。电子稳像从传感器获取运动数据,并生成一个转换矩阵以补偿设备在所有三个方向上的运动(俯仰、偏航和滚转)。通过裁剪视频帧数据流中的图像,可以运动信息集成到当前视频帧中。

以下为利用管道设置电子稳像的示例:

3. 超高动态范围(sHDR)

超高动态范围扩展了摄像头系统的动态范围,使非常亮的物体和非常暗的物体更加清晰可见。超高动态范围模式是一种传感器特性,可以输出长曝光帧(LEF)和短曝光帧(SEF),并具有不同的曝光时间。TurboX C610支持超高动态范围2.0版和超高动态范围3.8版两种超高动态范围算法。

以下为利用管道设置超高动态范围的示例:

如要获得更多信息:

1. QCS610/QCS410 Linux平台开发工具包软件参考手册(需要登录)

2. QCS610/QCS410 Linux平台开发工具包快速入门指南(需要登录)

3. Qualcomm® 机器人RB5开发工具包学习资源中的“qtiqmmfsrc”页面

 

 

Qualcomm QCS610 and Qualcomm机器人RB5均为Qualcomm Technologies, Inc.和/或其子公司的产品。

Qualcomm 解决方案

 

高通软件中心

通过集中式门户站无缝管理您的高通®软件和工具

下载软件中心