使用FFmpeg通过管道输出视频片段

Output video segments via a pipe using FFmpeg(使用FFmpeg通过管道输出视频片段)

本文介绍了使用FFmpeg通过管道输出视频片段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

My Node.js应用程序使用FFmpeg捕获DirectShow设备的视频,然后输出片段进行直播(HLS)。目前,我正在将数据段输出到文件,但是,如果我可以通过管道输出它们,就可以通过WebSocket高效地发送数据段,而不是托管HTTP服务器。

我已尝试使用此命令:

ffmpeg-y-f dshow-i video=FF来源:音频=立体声混合(Realtek High 清晰度音频)-vcodec libvpx-aco dec libvorbis-线程0-b:v 3300k-cpu-use 5-keyint_min 150-g 150-map 0-flag:v +GLOBAL_HEADER-f段-

但是,它会给出错误"无法写入输出文件#0的标题(编解码器参数不正确?):找不到复用器"。此命令适用于输出到文件(通过将‘-’替换为‘seg_%03d.webm’)。

FFmpeg是否不支持分段视频管道,还是命令有问题?谢谢。

推荐答案

使用-f nut而不是-f segmentnut格式可以包含所有类型的标头以及音频和视频编解码器。

ffmpeg -y -f dshow -i video=FFsource:audio=Stereo Mix (Realtek High Definition Audio) -vcodec libvpx -acodec libvorbis -threads 0 -b:v 3300k -cpu-used 5 -keyint_min 150 -g 150 -map 0 -flags:v +global_header -f nut pipe:

这篇关于使用FFmpeg通过管道输出视频片段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用FFmpeg通过管道输出视频片段

基础教程推荐