- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们有一台远程 Linux 机器,可以通过 VPN 访问,它有一个 USB 网络摄像头。我们希望将其用于视频 session ,但我们也希望存储流以进行存档。
由于流媒体带宽有限,因此在与网络摄像头相同的计算机上捕获流并在事后进行 rsync 是有意义的,而不是 try catch 流媒体内容,这必然会很差质量。
我们正在尝试使用 ffmpeg 和 ffserver 来实现这一目标,但收效甚微。互联网上的大多数文章要么只涉及网络摄像头的流传输,要么涉及重新广播远程流。我们发现我们必须重新编译 ffserver,因为缺少“my_addr->sin_family = AF_INET;”在我们一直使用的 ffserver.c 版本中,自从在 git 中修复以来。
这是我们尝试使用的 ffserver.conf:
Port 43688
BindAddress 127.0.0.1
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
NoDaemon
<Feed feed.ffm>
ReadOnlyFile /tmp/feed.ffm
FileMaxSize 20M
ACL allow 127.0.0.1
</Feed>
<Stream stream.mp4>
Feed feed.ffm
Format mp4
VideoSize qvga
VideoGopSize 12
VideoHighQuality
Video4MotionVector
VideoCodec libx264
VideoBitRate 100
VideoBufferSize 40
VideoFrameRate 5
VideoQMin 3
VideoQMax 31
AudioCodec libfaac
AudioBitRate 32
AudioChannels 2
AudioSampleRate 22050
ACL allow localhost
</Stream>
当我们启动它时,我们收到错误:
Unable to create feed file '/tmp/feed.ffm' as it is marked readonly
很公平,但这不是文档中暗示的内容。将指令更改为:
File /tmp/feed.ffm
允许 ffserver 启动并等待 ffmpeg 连接到它。但是,当我们使用以下命令启动 ffmpeg 时:
ffmpeg -f alsa -i pulse -r 16000 -f video4linux2 -s qvga -i /dev/video0 -r 5 -f mp4 -vcodec libx264 -sameq -acodec libfaac -ab 32k http://127.0.0.1:43688/feed.ffm
然后网络摄像头亮起,并且 ffserver 通过消息确认连接:
New connection: POST /feed.ffm
[POST] "/feed.ffm HTTP/1.1" 200 0
但几秒钟后我们收到错误:
[mp4 @ 0x264b160] muxer does not support non seekable output
Could not write header for output file #0 (incorrect codec parameters ?)
我们尝试了各种其他格式(mpeg、mpegts、avi)和编解码器(mpeg1video、mpeg2video、mpeg4),但均未成功。
此外,我们的印象是 ffserver 可以将输入格式重新编码为较低的流分辨率,但如果流分辨率与提要分辨率不匹配,我们会收到有关分辨率不匹配的错误。
有人曾经设法让它正常工作吗?我读过有关 vlc 能够执行类似操作的内容,但 vlc 命令行几乎难以理解。
谢谢!
多米尼克
最佳答案
问题是 mp4。mp4 中没有流媒体,基本上是 Moov-Atoms。mp4 可以包裹 rtsp url,但不能包裹。因此,请切换到 mpegts,或使用 rtsp 和 sdp 文件来获取连接详细信息。
关于streaming - 如何说服 ffserver 将本地来源的网络摄像头流保存到高分辨率的文件中并以较低的分辨率进行流传输?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8152178/
我正在用 robocopy 编写一个 powershell 脚本来从列表中复制“完整的”unc/文件名路径。我遇到的问题是 robocopy 似乎在我的源路径末尾添加了一个 \。 我有一个 C:\te
我发现守护程序通过这些代码创建了一个容器 // NewBaseContainer creates a new container with its // basic configuration. fu
是否有所有潜在 map 源的列表?在示例页面上,可以浏览四种类型的 map 。外面还有什么? http://tombatossals.github.io/angular-leaflet-directi
是否有所有潜在 map 源的列表?在示例页面上,可以浏览四种类型的 map 。外面还有什么? http://tombatossals.github.io/angular-leaflet-directi
我们的网站比较多,第一次使用ElasticSearch不知道应该怎么配置ES: 我们想使用 ES 作为这些网站的唯一搜索引擎,我们是否应该为每个网站设置单独的 ES 实例? (我想这可能比一个 ES
我需要一些关于我对 UNI 项目的想法的建议。 我想知道是否可以将一个音频文件从不同的音频源分成不同的“流”。例如,将音频文件拆分为:引擎噪音、火车噪音、人声、并非始终存在的不同声音等。 我不一定需要
我想设置“公共(public)彩票”,每个人都可以看到选择是随机和公平的。如果我只需要一点,我会使用例如当天收盘道琼斯指数的 LSB。问题是,我需要 32 位。我需要一个来源: 每日可用 全世界都可以
来自 pickle 的 python 文档: Warning The pickle module is not secure. Only unpickle data you trust. 什么是 pi
我试图安排一个 liquidsoap 流媒体源在未来的特定日期和时间播放。我相信这可以使用 Liquidsoap switch 命令来完成,但我无法理解此处描述的文档:http://liquidsoa
对于Shiny应用程序,我希望能够播放在 session 本身期间生成的音频文件。 如果它是我要上传的音频文件,我将使用 tags$audio(src = "www/name.wav", ty
我想更改我的 OpenGL 来源。图片会说明: 现在是这样的: 这就是我想要的: 当前代码 gl.glViewport(0, 0, width, height); gl.glMatrixMode(GL
我正在尝试让 Stripe 运行起来,我几乎已经完成了,但有一件令人困惑的事情。 source: 'tok_visa' 部分。看起来它可以是“tok_mastercard”、“bank_account
我已经下载了 primefaces 源代码,看看是否可以从中学习。该 jar 包含一堆使用编写器来处理渲染等的 java 类。我期待找到一些 .xhtml 文件 ... and etc etc
如果我查看页面源代码,我会看到 styling += 'ul#topnav a.tabHeader5'; styling += '{'
我正在尝试根据显示器的大小更改背景图像。它不在服务器上运行。您可以在 https://github.com/Umpalompa/Umpalompa.github.io 找到我的所有代码. 我尝试同时使
从here的最底部开始.有一个 URL 生成器,我可以使用引荐来源网址在 Google Play 上生成指向我的应用程序的链接。我如何从谷歌分析中提取该 Activity 来源?我一直在谷歌上搜索,但
我用 Google Weather API 制作了一个插件,目前我正在从 Google 的 API 中提取图像。对于晴天,我正在拉 http://www.google.com//ig/images/w
是否可以通过环境变量为 @CrossOrigin 注释指定来源?我想这样做,以便我可以将相同的代码库用于 uat/staging/production。我希望我的 uat/staging 环境可以通过
我需要等待我的 JavaScript 中的文档准备就绪,才能在正文底部插入一个 div。 我想: 使此 JavaScript 文件尽可能小(如果可能,将其编译到 < 1kb) 在闭包中内联提供文档就绪
我正在开发电子邮件服务并想连接到谷歌帐户,是否可以将我的本地主机用作授权的 JavaScript 来源? 最佳答案 第 1 步:启用 Google+ API http://localhost:4567
我是一名优秀的程序员,十分优秀!