【发布时间】:2014-08-14 02:05:57
【问题描述】:
我需要从网络摄像头捕获视频流的每个字节 - 在使用 commandline-ffmpeg 使用编解码器对其进行压缩之后。
那么,您能否介绍一下 ffmpeg 命令行的外观以及将输出流导入我由 VB6 或 VB.net 编写的程序的策略? (我需要处理每一个字节!)非常感谢任何建议。
更新:我想知道是否可以将输出保存为硬盘上的“avi”文件,同时使用我的程序读取保存文件的内容。我可以在保存(附加)文件时播放我检索的“avi 文件的一部分”吗?除了“avi”之外,还有什么更好的文件格式可以同时读写(录音和播放)?
或者任何更好/更快的解决方案?
【问题讨论】:
-
不完全确定,但您需要使用 DirectShow 过滤器。这是捕获音频的方法:
ffmpeg -nostats -f dshow -i audio="S/PDIF (M-Audio Delta AP 192)" -acodec mp3 -f mp3 -ab -
谢谢!我看到有些人将输出用作 url(例如“192.168.1.123:8090”),但我想将流输入到我的程序中,你知道怎么做吗?
-
使用 STDIO。最后一个参数应该是
-。 -
@Brad :你能解释一下STDIO和最后一个参数“-”吗?我刚刚将最后一个参数尝试为“-”,但出现错误“[NULL @ 03714500] 无法为 'pipe:' pipe:: Invalid argument”找到合适的输出格式”
-
使用我最初发布的命令。您没有指定任何格式,为什么将
stdio放在那里?ffmpeg -f dshow -i video="Lenovo EasyCamera" -f mp4 -什么的。您至少需要指定输出格式,最好也将输出编解码器设置为您的规范。此外,您不想在命令提示符下运行它,否则原始数据将被转储到您的控制台。如果这样做,至少使用> someFile输出到文件。
标签: vb.net vb6 ffmpeg streaming