[英]FFMPEG + V4L2 OPTIONS
我正在寻找一种将 v4l2-ctl 的参数集成到 ffmpeg 上的方法 ffmpeg 覆盖 v4l2-ctl 的问题,我需要特定参数有 v4l2-ctl :( 我的 v4l2-ctl 命令是:
v4l2-ctl -v width=640,height=480,pixelformat=4 -p 30 -c h264_profile=0,repeat_sequence_header=1
我想使用这些参数直接使用 FFMPEG 进行流式传输,我该怎么办?
谢谢 !
您可以告诉 FFmpeg 使用 video4linux2 (v4l2) 作为输入“设备”(它像解复用器一样对待它)。 根据您的设备,v4l2 可以提供多种不同格式的视频(例如,像 yuv420p 这样的原始视频,或者像 h264 这样的压缩视频,可能通过硬件加速器)。 看起来您正在尝试使用 h264,因此您可能正在寻找以下方面的内容:
ffmpeg -f video4linux2 -input_format h264 -video_size 640x480 -framerate 30 -i /dev/video0 out.h264
FFmpeg 将告诉 v4l2 提供具有给定帧速率和大小的 h264 编码流作为 ffmpeg 的输入,ffmpeg 会将流复制到文件out.h264
中。 您需要根据用例指定输出格式和选项。
注意:这假设您的输入设备是
/dev/video0
。 您可以使用v4l2-ctl --list-devices
查看哪些设备可用。
从 v4l2 的ffmpeg 文档中不清楚如何为 v4l2提供附加标志(例如h264_profile
和repeat_sequence_header
)。 FFmpeg 确实提供了多种编码选项,但这些选项可能需要您从 v4l2 指定原始视频-input_format
并改用 FFmpeg 的 x264 编码器,这可能比硬件编码器慢得多。
免责声明:这个问题可能属于超级用户或视频制作而不是 Stack Overflow,因为它只处理命令行工具。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.