gpt4 book ai didi

c# - 如何将网络摄像机视频流转换为视频文件?

转载 作者:太空宇宙 更新时间:2023-11-03 10:37:50 24 4
gpt4 key购买 nike

我有一个 URL ( <ip>/ipcam/mpeg4.cgi) 指向我的 IP 摄像机,它通过以太网连接。访问 URL 会产生无限的视频(可能带有音频)数据流。

我想将这些数据存储到一个视频文件中,稍后用视频播放器播放(HTML5 的 video 标签作为播放器是首选)。

然而,一种直接的方法,就是将流数据简单地保存到.mp4中。文件,没用。

我查看了文件,这是我看到的(点击放大):

事实证明,有一些 HTML header ,我进一步使用二进制编辑工具手动排除了这些 header ,但没有播放器可以播放文件的其余部分。

HTML header 是:

--myboundary
Content-Type: image/mpeg4
Content-Length: 76241
X-Status: 0
X-Tag: 1693923
X-Flags: 0
X-Alarm: 0
X-Frametype: I
X-Framerate: 30
X-Resolution: 1920*1080
X-Audio: 1
X-Time: 2000-02-03 02:46:31
alarm: 0000

我的问题现在很清楚了,我希望得到任何帮助或建议。我怀疑,我必须根据上面的这些值自己手动创建一些 MP4 header ,但是,我无法理解格式描述,例如 these .

我的网络摄像机上有以下视频流设置(点击放大):

我也可以使用 ffmpeg工具,但无论我如何尝试将参数混合到程序中,它一直告诉我这个错误:

最佳答案

看起来您的服务器正在发送附件 B 字节流格式的 H.264 编码“原始视频”。

它可能会被重新格式化为 .mp4,类似下面的命令行:

ffmpeg -i {input file} -f rawvideo -bsf h264_mp4toannexb -vcodec copy out.mp4

将音频/视频流保存到文件中并非易事。如果只是视频,使用 MPEG2 TS 格式是最简单的方法。

对于 .mp4 流,考虑 -movflags faststart -> Recommendation on the best quality/performance H264 encoder for video encoding?

** 更新:-bsf h264_mp4toannexb 选项可以省略,我不确定。

关于c# - 如何将网络摄像机视频流转换为视频文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26883207/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com