树莓派超全系列教程文档--(66)rpicam-apps可用选项介绍之视频选项

发布于:2025-06-24 ⋅ 阅读:(16) ⋅ 点赞:(0)


文章来源: http://raspberry.dns8844.cn/documentation

原文网址

视频选项

本节中指定的命令行选项仅适用于视频输出。

要将以下选项之一传递给应用程序,请在选项名称前加上 --, 如果选项需要值,请在选项名称后立即传递该值,并用单个空格分隔。如果值包含空格,请将值用引号括起来。

一些选项有速记别名,例如 -h 而不是 --help 。使用这些速记别名而不是完整的选项名称可以节省空间和时间,但会牺牲易读性。

quality

别名: -q

默认值: 50

接受1到100之间的MJPEG质量级别。仅适用于以MJPEG格式编码的视频。

bitrate

别名: -b

以每秒比特数控制H.264编码器使用的目标比特率。仅适用于以H.264格式编码的视频。影响输出视频的大小。

示例: rpicam-vid -b 10000000 --width 1920 --height 1080 -o test.h264

intra

别名: -g

默认值: 60

设置H.264比特流中Iframe(帧内帧)的频率。接受一定数量的帧。仅适用于以H.264格式编码的视频。

profile

设置H.264配置文件。接受以下值:

  • baseline
  • main
  • high

仅适用于以H.264格式编码的视频。

level

设置H.264级别。接受以下值:

  • 4
  • 4.1
  • 4.2

仅适用于以H.264格式编码的视频。

codec

设置用于视频输出的编码器。接受以下值:

  • h264 - 使用H.264编码器(默认)
  • mjpeg - 使用MJPEG编码器
  • yuv420 - 输出未压缩的YUV420帧。
  • libav - 使用libav后端编码音频和视频(有关详细信息,请参阅 libav
save-pts

WARNING: Raspberry Pi 5不支持 save-pts 选项。改用 libav 自动生成容器格式的时间戳。

启用帧时间戳输出,允许您使用 mkvmerge 等工具将比特流转换为容器格式。接受时间戳输出文件的文件名。

示例: rpicam-vid -o test.h264 --save-pts timestamps.txt

然后,您可以使用以下命令从比特流和时间戳文件生成MKV容器文件:

$ mkvmerge -o test.mkv --timecodes 0:timestamps.txt test.h264
keypress

别名: -k

允许 CLI 使用 Enter 键启用或禁用视频输出。除非使用 initial 另行指定,否则始终以记录状态启动。键入 x 键并按 Enter 退出。不接受数值。

signal

别名: -s

允许CLI使用 SIGUSR1 启用和禁用视频输出。使用 SIGUSR2 退出。除非使用 初始 另有说明,否则始终以录制状态开始。不接受值。

initial

默认值: record

指定是启用还是禁用视频输出来启动应用程序。接受以下值:

  • record :从启用视频输出开始。
  • pause :从禁用视频输出开始。

将此选项与 keypresssignal 配合使用,可在两种状态之间切换。

split

使用 keypresssignal 切换录制时,会将不同录制会话的视频输出写入不同的文件。不接受值。除非与 xref:camera_software.adoc#output[output] 结合使用,为每个文件指定唯一的名称,否则每次写入文件时都会覆盖。

segment

将视频输出剪切为多个文件,文件长度与所传递的时间长度相同。接受以毫秒为单位的持续时间。如果传入的持续时间很小(例如 “1”),则会将每一帧记录到单独的输出文件中,以模拟突发捕捉。

您可以使用字符串格式为每个文件指定单独的文件名,例如 --output test%04d.h264

circular

默认值: 4

将视频记录写入内存中的循环缓冲区。应用程序退出时,将循环缓冲区记录到磁盘。接受以兆字节为单位的可选大小。

inline

在每个 Iframe(帧内)写入序列头。这可以帮助客户端从视频中的任意点解码视频序列,而不只是从开头解码。建议与 segmentsplitcircular 和流媒体选项一起使用。

仅适用于以H.264格式编码的视频。不接受值。

listen

在编码视频之前等待传入的客户端连接。用于通过TCP/IP进行网络流传输。不接受值。

frames

准确记录指定的帧数。任何非零值都会覆盖 timeout。接受非零整数。

framerate

准确记录指定的帧率。接受非零整数。

上一篇 – 树莓派超全系列教程文档–(65)rpicam-apps可用选项介绍之图像选项
下一篇 –


网站公告

今日签到

点亮在社区的每一天
去签到