FFMPEG 可减少内存消耗
ffmpeg reduce memory consumption
我正在开发一个应用程序,使用RTSP协议捕获一些IP摄像机并将它们发送到一台服务器。当IP摄像机的分辨率较低时,一切都很顺利,但是当它们增加时,我的程序的内存消耗突然增加。
我已经意识到 ffmpeg 存储了我们可以寻找的帧序列。1.is 有什么方法可以减少它的镜头吗?
当 FFMPEG 从 input(=>ip 摄像机读取帧时,是否可以减小帧大小 2.is? 400x400 的大小对于我的应用程序来说已经足够了,但目前是 2048
3.或任何其他帮助我减少内存使用的方法
1(要减少内存:
i( 降低帧率:使用 -帧率
ii( 通过选择更长的 GOP 来增加压缩:使用 -g
2( 要缩放输入:使用 -s 开关
ffmpeg -framerate 25 -g 14 -i input.mp4 -vcodec libx264 -s 400x400 http://localhost:1234/out.ffm
编辑:
要将 ffmpeg 集成到您的 c++ 项目中,以下是一些解决方案:
- 使用
system(ffmpeg command line);
//简单 - 使用
CreatePrcess
和管道隐藏控制台窗口并在 GUI 中显示进度。 - 使用 ffmpeg 分布式包含文件和库集成到您的项目中。
相关文章:
- 可视化 使用 VS Code 查找C++应用程序中的内存泄漏
- 应用程序内存使用量减少
- 减少 g++ 内存使用量
- 在可拆卸线程完成操作时取消分配内存
- 是否应该使用继承来减少内存消耗的实例的内存分配?
- 测量任何 Windows 可执行文件的内存使用情况和执行时间
- 减少利用大矢量的 c++ 程序的内存占用
- 减少创建类似对象时的内存浪费
- FFMPEG 可减少内存消耗
- 在Linux中减少每个线程内存
- 我们应该全局声明一个向量还是在递归函数中传递它以减少内存使用
- 调整结构/字符数组的大小(以减少内存使用)
- mbed 内存池 - 它可用于非平凡类吗?
- VS 2008 和 VS 2017 之间的可视化C++内存管理更改
- 运算符 new 在大量物理内存可用时引发异常
- 了解我有多少内存可用于一个动态向量c++
- 内存可用时,Realloc()返回NULL
- Vector push_back仅当有足够的内存可用时
- 检查在其他进程中有多少内存可读
- 内存可视化的c++ linux应用程序