ffmpeg的转码延时测试与设置优化

详解ffmpeg -preset参数 阅读详情
我测试了下ffmpeg直播流的转码延时,这些参数对文件的转码也是通用的;

测试环境:
 . ffmpeg 版本为v3.0.2
 . 从同一台服务器拉流,转码再推送到同一台服务器上,这样减少了服务器与网络影响;
 . 播放器使用实时模式,不缓冲

1. 设置slow参数
$ ./ffmpeg -i rtmp://192.168.1.12/live/src -vcodec libx264 -preset slow -b:v 400k -s 720x576 -r 25 
-acodec libfaac -b:a 64k -f flv rtmp://192.168.1.12/live/dst

设置了这个参数(-preset slow)后,延时大概在10.6 -- 12.1 秒,
但它的图像质量会好

Fig-1 slow-3

2. 不设置优化参数
ffmpeg命令行:
$ ./ffmpeg -i rtmp://192.168.1.12/live/src -vcodec libx264 -b:v 400k -s 720x576 -r 25 
-acodec libfaac -b:a 64k -f flv rtmp://192.168.1.12/live/dst
延时大概在1.6 -- 2.6秒

Fig-2 no-setting-3

3.设置fast参数
ffmpeg命令行:
$ ./ffmpeg -i rtmp://192.168.1.12/live/src -vcodec libx264 -preset fast -b:v 400k -s 720x576 -r 25 
-acodec libfaac -b:a 64k -f flv rtmp://192.168.1.12/live/dst
延时大概在2.1 -- 2.2秒

Fig-3 fast-2

4. 设置ultrafast参数
ffmpeg命令行:
$ ./ffmpeg -i rtmp://192.168.1.12/live/src -vcodec libx264 -preset ultrafast -b:v 400k -s 720x576 -r 25 
-acodec libfaac -b:a 64k -f flv rtmp://192.168.1.12/live/dst

这样设置后延时会大大减小,但图像质量会变差得很明显;
延时大概在0.6 -- 0.8 秒

Fig-4 ultrafast-3

5. 设置zerolatency和ultrafast参数
ffmpeg命令行:
$ ./ffmpeg -i rtmp://192.168.1.12/live/src -tune zerolatency -vcodec libx264 -preset ultrafast -b:v 400k -s 720x576 -r 25 
-acodec libfaac -b:a 64k -f flv rtmp://192.168.1.12/live/dst

这样设置后延时还会减小,但图像质量会变差得很明显;
延时大概在0.2 -- 0.6 秒

Fig-5 zerolatency-ultrafast-2

总结:
ffmpeg设置转码延时的参数和步骤如下:
 . 关闭sync-lookahead
 . 降低rc-lookahead,但别小于10,默认是-1
 . 降低threads(比如从12降到6)
 . 禁用rc-lookahead
 . 禁用b-frames
 . 缩小GOP, 
 . 开启x264的 -preset fast/faster/verfast/superfast/ultrafast参数
 . 使用-tune zerolatency 参数

FFmpeg超低延迟视频推流笔记 FFmpeg超低延迟视频推流笔记 云游戏平台推流和普通直播平台最大不同有两点,一个是码率,我们希望用户能尽可能用低的网络体验好的效果,毕竟玩的人是自己,还有一点就是延迟了,普通直播延迟5秒左右都属于正常,通常降低到1秒左右就属于超低延迟了,而我们的要求是降低到50毫秒以下,中间遇到了不少坑,记录一下。 音频延迟可以参考我的另一篇: FFmpeg RTP 100ms以下超低音频流推送设置 https... 阅读详情

相关推荐

ffmpeg直播解决延时的关键方法

当我们使用ffmpeg的时候,假如不使用编码,直接上传到rtmp服务器,那么视频是没什么延时的,但是这样流量却非常的大,因为假如不编码,就意味着不压缩,直接原始数据上传,是非常消耗流量的。 但假如我们需要编码呢,比如使用了h264或libx264,那么视频起码有10秒左右的延时 如下面的代码,同时采集本地麦克风、本地桌面视频,做视频直播的代码: ffmpeg -f dshow -i audio=\"麦克风阵列 (Realtek(R) Audio)\" -acodec aac -f gdigra..

yuxinaibiancheng的博客 8877

ffmpeg推流性能优化

设置最大延迟时间。如果延迟超过这个时间,将跳过缓冲并立即发送数据。默认值为10000毫秒。在使用ffmpeg推流时,可以通过设置缓存大小来调整推流的性能。:设置实时缓冲区大小,以比特为单位。默认值为2000000比特。:设置缓冲区大小,以比特为单位。默认值为2000000比特。如果丢包严重,可以扩大缓冲区。

qq_36827625的博客 8146

解决ffmpeg播放摄像头延时的问题(项目案例使用有效)

视频流转流处理

weixin_58775072的博客 3134

h264编码参数

FFmpeg X264编码参数 目录 码率控制 1 X264的preset和tune 2 编码延时建议 2 ffmpeg编码参数和x264参数对照 3 x264参数说明 5 2.码率控制 X264提供三种码率控制的方式:bitrate, qp, crf。这三种方式是互斥的,使用时设置其中之一即可。 (1)bitrate x264会尝试把给定的位元率作为整体平均值来编码。这意味着最终编码文件的大小是已知的,但最终的品质未知。此选项通常与-pass(两阶段编码)一起使用。 注意,ffmpeg中设置

smartDMer的专栏 2178

告别纯CPU转码:给FFmpeg插上NPU的翅膀,实测昇腾310P加速效果

本文详细介绍了如何通过昇腾310P NPU为FFmpeg提供硬件加速,显著提升视频转码效率。从环境配置到定制化编译,再到实测性能对比,展示了NPU加速在4K/8K视频处理中的优势,转码耗时降低73%,CPU占用率减少77%,为直播和视频分析等场景提供高效解决方案。

weixin_30296405的博客 596

海康、大华监控摄像头H5低延时播放技术解析与实战优化

本文深入解析海康、大华监控摄像头的H5低延时播放技术,提供实战优化方案。通过WebRTC技术实现500毫秒以内的低延迟播放,兼容各类移动设备,无需安装插件。文章详细介绍了技术原理、网络调优、播放器参数配置及常见问题排查,帮助开发者快速集成高效监控解决方案。

weixin_29214691的博客 134

ffmpeg命令行参数优化

我测试了下ffmpeg直播流的转码延时,这些参数对文件的转码也是通用的;测试环境: . ffmpeg 版本为v3.0.2 . 从同一台服务器...

qq_38813056的博客 3627

信号转换为图像 时域频域分析

一维信号如何转化为图像?深度学习如何学习 1.当然,直接1d卷积也是可以的。 2. 以信号强度的数值作为纵坐标,以时间为横坐标绘制信号点就可以了。 周霖那个即是 要看看代码是如何做的, 即使是单导联 5000个点,怎么变成50005000的分辨率的 3. 直接把多通道的一维信号合并成二维图像,然后直接按图像卷积的方法去做~~ 2225000这样一个图 ~可以看看语音处理的相关Net,其中比较...

王不留行嘿呦嘿 2万+

MiBeeNvr v0.6.0: 延时摄影 + 转码界面 + ONVIF 增强 + 文档重构

MiBeeNvr v0.6.0 更新摘要: 本次更新主要针对存储空间优化和功能扩展。通过引入延时摄影管道(支持30秒间隔抽帧+静止帧跳过)和转码系统(H.264/H.265互转),存储需求降至原先的5%。系统自动检测硬件编码能力(V4L2/VAAPI/NVENC),兼容树莓派3B到高性能RK3588设备。 技术亮点包括: 延时摄影三级处理流程(帧抽取→JPEG序列→视频合并),采用随机间隔避免请求风暴 转码系统三阶段交付:自动任务队列→失败重试→历史回填 架构优化:预置ONNX推理框架、Prometheus

mickey_zzc的博客 566

[OrCad电路板设计系统].Orcad.Pspice.9.2下载安装

Orcad.Pspice.9.2详细下载安装图文步骤1 安装前准备工作1.1 下载安装包1.2 解压2 安装时步骤2.1 安装文件2.2 破解文件3 安装完成 1 安装前准备工作 1.1 下载安装包 打开百度网盘APP 链接:https://pan.baidu.com/s/1cMFxHUvuh5iEhFVT-lvciQ 提取码:7m65 1.2 解压 解压下载好的安装包 2 安装时步骤 2.1 安装文件 1.点击Setup安装文件,出现警告对话框,告诉你应该关闭所有病毒防火墙,点击确定 2.进入安装界面,

weixin_48924581的博客 1万+

Halcon阈值算子 -- 局部阈值之dyn_threshold

Halcon阈值算子 – dyn_threshold HALCON有很多阈值算子,接下来将一一介绍。本文先介绍dyn_threshold。 以下介绍主要参考HALCON帮助文档,并加上自己的体会。如有纰漏,欢迎留言指出 理论介绍 dyn_threshold算子的函数签名如下: dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : ) 输入参数有: OrigImage:待处理图像 ThresholdIm

m0_47015717的博客 5385

Java 视频直播JavaCV(ffmpeg h264)+RTSP实现低延时1秒推流

上一篇文章介绍了通用协议onvif获取到rtsp地址Java onvif协议通用协议获取rtsp地址 当然也有很多其他的方式获取rtsp地址 首先还是引入包: <!--javacv--> <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> .

Geminates 1万+

机械臂TCP标定实战:从四点法到六点法的精度跃迁

本文详细解析机械臂TCP标定技术,从基础的四点法到高精度的六点法实现精度跃迁。通过工具坐标系与基坐标系的转换原理,结合实战案例展示六点法如何将装配合格率提升至99.5%,并分享环境控制、操作技巧等提升标定精度的关键要素。

weixin_29038345的博客 895

Android 视频播放延时抖动那些事

Android 视频播放延时抖动那些事

六月初曲的博客 3325

Ubuntu配置Qt Creator树莓派交叉编译环境一步到位

本文详细指导在Ubuntu系统上配置Qt Creator树莓派交叉编译环境。从工具链安装、sysroot创建到Qt库编译,逐步讲解如何搭建完整的ARMv7交叉编译工具链,实现高效开发树莓派应用。

1275

Android Camera Sensor HDR详解

本文详细介绍了Android相机传感器(Sensor)中实现高动态范围(HDR)采集的各种技术方式。主要内容包括: Sensor HDR技术分类 帧内HDR(Single-Frame HDR):在同一帧同一像素内完成多增益采集,无运动伪影和帧率损失,包括DAG(双模拟增益)、DCG(双转换增益)等技术 帧间HDR(Multi-Frame HDR):通过多帧曝光实现,如DOL(数字重叠)、Staggered HDR等 混合HDR:结合多种技术的复合方案 详细技术原理 重点解析了DAG和DCG两种主流帧内HDR

DU_YULIN的博客 359

如何在UE中实现500ms低延时播放RTSP监控视频?保姆级配置教程

本文详细解析了在Unreal Engine中实现500ms超低延时RTSP视频流集成的全链路技术方案。从硬件选型到代码优化,提供保姆级配置教程,帮助开发者突破传统方案的高延迟瓶颈,适用于数字孪生、安防监控等实时交互场景。

weixin_28725553的博客 375

ESP32网络开发实例-开发环境搭建

NodeMCU-ESP-32S开发环境搭建 NodeMCU-32S 最强的ESP32 开发板非盗版或副厂的CH340。WiFi 蓝牙ESP-32 可用Arduino IDE ESP32-S 是一款通用型WiFi-BT-BLE MCU模组,功能强大,用途广泛,可以用于低功耗传感器网络和要求极高的任务,例如语音编码、音频流和MP3解码等。 此款模组的核心是ESP32芯片,具有可扩展、自适应的特点。两个CPU核可以被单独控制或上电。时钟频率的调节范围为80 MHz到240 MHz。用户可以切断CPU的电源,利用低

视觉与物联智能 3781

FFmpeg推拉流优化全攻略:如何在不同网络环境下保持流畅直播(含弱网解决方案)

本文深入探讨了在不同网络环境下,如何利用FFmpeg进行推拉流优化以保障直播流畅性。文章系统分析了卡顿根因,并提供了从自适应码率策略、协议选型、FFmpeg参数调优到弱网对抗的完整解决方案,旨在帮助开发者构建高韧性的直播系统。

rgv2345678的博客 738

9.13华为OD机试真题 新系统 - 手机桌面整理 (Java/Py/C/C++/Js/Go)

华为OD机试真题 新系统【手机桌面整理】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【 手机桌面整理】多语言题解。

qq_45776114的博客 636

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

上一篇: 关于直播,所有的技术细节都在这里了
下一篇: 在Windows下搭建基于nginx的视频直播和点播系统
北雨南萍
北雨南萍 领域专家: 操作系统技术领域 领域专家: 操作系统技术领域
博客等级 码龄20年 2665粉丝 453原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北雨南萍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值