有大佬开发过 ffmpeg 吗?用 c++调用 ffmpeg API 解码视频流 CPU 占用率高,求解决办法

1 天前
 jeddida

刚接触 ffmpeg 想着写一个播放器玩玩,但是 CPU 占用率一直高,有没有大佬知道怎么回事。没有显卡。

我测试一个视频的时候还行,视频数量上到了 16 个就开始花屏+卡顿了。

1298 次点击
所在节点    FFmpeg
13 条回复
wnpllrzodiac
1 天前
这啥玩法,16 路。明显要硬解 加 dxva2
frayesshi1
23 小时 11 分钟前
没有显卡---是指没有独立显卡,应该有核显或者集显,反正 cpu 不擅长解码。我如果没有记错的话,ffmpeg 加参数是支持硬解的
mrzzoxo
22 小时 36 分钟前
可以用显卡跑
ysc3839
22 小时 21 分钟前
建议别写,直接改 mpv 代码吧
jifengg
13 小时 8 分钟前
我的建议是,先用 ffplay 试试 16 路播放,如果没问题,那你再参考 ffplay 改代码,如果也有问题,那就不用折腾了。
shuax
13 小时 3 分钟前
没有显卡当然玩不转啊,难道集成显卡都没有吗。

https://trac.ffmpeg.org/wiki/HWAccelIntro
skkakaka2
12 小时 6 分钟前
没有显卡?如果用 cpu 软解的话,占用率高不是很正常的吗
jeddida
11 小时 26 分钟前
@shuax
@skkakaka2
@wnpllrzodiac
@frayesshi1 有国产显卡景嘉微的 JM7200 支持 OpenGL
CodeAllen
10 小时 25 分钟前
那你这个显卡约等于没有,显卡硬解需要支持才行,哪怕是 Intel A380 ,主流方案就支持几家大厂 Intel 、AMD 、nVidia 。
如果要搞纯国产,不如试试 RK3588 的开发板,应该是支持硬解的,升腾没了解过不是很清楚,如果不介意老黄家的板子,TX 系列、Orin 系列解码能力应该是更强的,8 路 16 路 1080P 应该手拿把掐。
capric
2 小时 41 分钟前
用 libmpv 启用 hwdec=auto ,或者使用 ffmpeg 硬件加速+libplacebo ,播放器非常复杂,要颜色映射,hdr/sdr ,还要向上向下缩放,还有同步策略和丢帧策略,做不好不是卡就是画面偏色或者资源占用高
iamzuoxinyu
1 小时 10 分钟前
解码是一部分,另一部分也要看看渲染是否用上了硬件加速。
yankebupt
13 分钟前
单路播放 CPU 占用能小于 6.25%么? 16 路 100%还不算额外损耗
分辨率不说,编码不说,帧率不说,怎么知道你单路能不能做到 cpu 6%以下啊
yankebupt
8 分钟前
而且有没有帧同步要求啊,cpu 占用接近满的时候,多路总会有一半的视频错开一帧,如果还要求同步可能又要多加处理比如 buffer 一帧……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1100292

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX