首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于VP9 + RTSP的FFMPEG

基于VP9 + RTSP的FFMPEG
EN

Stack Overflow用户
提问于 2020-09-16 09:42:13
回答 1查看 1.3K关注 0票数 4

当我们使用HEVC + RTSP时,ffmpeg工作得很好。流被摄像头捕获。

代码语言:javascript
运行
复制
ffmpeg -f dshow -rtbufsize 100M  -f vfwcap -i "0" -strict experimental -c:v hevc_qsv -f rtsp -rtsp_transport tcp rtsp://127.0.0.1/live/test

输出如下:

代码语言:javascript
运行
复制
frame=  355 fps= 37 q=-0.0 size=N/A time=00:00:11.27 bitrate=N/A dup=159 drop=0 speed=1.18x

然后切换到VP9 + RTSP。

代码语言:javascript
运行
复制
ffmpeg -f dshow -rtbufsize 100M  -f vfwcap -i "0" -strict experimental -c:v libvpx-vp9 -f rtsp -rtsp_transport tcp rtsp://127.0.0.1/live/test

fps和速度看上去太慢了:

代码语言:javascript
运行
复制
frame=  263 fps=9.5 q=0.0 size=N/A time=00:00:07.94 bitrate=N/A dup=119 drop=0 speed=0.288x

然后我们用“跳”来播放这条小溪。有很多错误信息,视频似乎冻结了。

代码语言:javascript
运行
复制
[vp9 @ 000001c3da86c200] Not all references are available
[vp9 @ 000001c3dffd5700] Not all references are available
[vp9 @ 000001c3da8477c0] Not all references are available
[vp9 @ 000001c3da848240] Not all references are available
[vp9 @ 000001c3da848e40] Not all references are available
[vp9 @ 000001c3e01d2fc0] Not all references are available
[vp9 @ 000001c3e01dd280] Not all references are available
[vp9 @ 000001c3e01e8980] Not all references are available
[vp9 @ 000001c3e01f1880] Not all references are available
[vp9 @ 000001c3da86c200] Not all references are available
[vp9 @ 000001c3dffd5700] Not all references are available
[vp9 @ 000001c3da8477c0] Not all references are available
[vp9 @ 000001c3da848240] Not all references are available
[vp9 @ 000001c3da848e40] Not all references are available
[vp9 @ 000001c3e01d2fc0] Not all references are available
[vp9 @ 000001c3e01dd280] Not all references are available0B f=0/0
[vp9 @ 000001c3e01e8980] Not all references are available
[vp9 @ 000001c3e01f1880] Not all references are available
[vp9 @ 000001c3da86c200] Not all references are available
[vp9 @ 000001c3dffd5700] Not all references are available
[vp9 @ 000001c3da8477c0] Not all references are available
[vp9 @ 000001c3da848240] Not all references are available
[vp9 @ 000001c3da848e40] Not all references are available
[vp9 @ 000001c3e01d2fc0] Not all references are available
[vp9 @ 000001c3e01dd280] Not all references are available
[vp9 @ 000001c3e01e8980] Not all references are available
[vp9 @ 000001c3e01f1880] Not all references are available

最后,我们尝试了硬件VP9编码器。

代码语言:javascript
运行
复制
ffmpeg -f dshow -rtbufsize 100M  -f vfwcap -i "0" -strict experimental -c:v vp9_qsv -f rtsp -rtsp_transport tcp rtsp://127.0.0.1/live/test

它不能工作。

代码语言:javascript
运行
复制
[swscaler @ 0000021e88df9fc0] deprecated pixel format used, make sure you did set range correctly
[vp9_qsv @ 0000021e8687df80] Selected ratecontrol mode is unsupported
[vp9_qsv @ 0000021e8687df80] Low power mode is unsupported
[vp9_qsv @ 0000021e8687df80] Current frame rate is unsupported
[vp9_qsv @ 0000021e8687df80] Current picture structure is unsupported
[vp9_qsv @ 0000021e8687df80] Current resolution is unsupported
[vp9_qsv @ 0000021e8687df80] Current pixel format is unsupported
[vp9_qsv @ 0000021e8687df80] some encoding parameters are not supported by the QSV runtime. Please double check the input parameters.
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!

那么,如何成功地处理VP9 + RTSP呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-04 12:03:17

我绝不是这方面的权威,但我的处境和你的相似。如果我理解此GitHub问题正确,"gen 9“Intel GPU -- "Kaby”、“Coffee”、“Whiskey Lake”、“Comet”每维基百科,我认为它对应于7xxx到10 7xxx-具有对VP9编码的硬件支持,但是Windows驱动程序并没有为Media公开这个特性以利用它的优势。我认为我们看到的错误消息反映了这样一个事实:在我们的特定CPU模型上,在我们的操作系统上,QSV编码是不可用的。

由于某种原因,这个特性在Linux上是可用的。我已经看到几个消息来源说,VA (vp9_vaapi)应该可以在任何这些"gen 9“处理器上工作;QSV驱动程序(vp9_qsv)也有可能在Linux上工作。我还没机会试一试。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63917323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档