首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏RTMP推送

    SmartMediakit的RTMP全景解析:延迟、跨平台与系统协同

    它要求端到端具备更强的时间控制能力:延迟、高稳定、跨平台、一致时序。 ,SDK 加入了 断网自动重连、自适应缓冲、拷贝通路、软硬编码协同机制 等特性,延迟进一步被压缩至毫秒级别; 进入当前阶段,RTMP 模块已与 轻量级 RTSP 服务、HTTP-FLV 推送、GB28181 尤其在跨设备、多线程、弱网环境下,仍能稳定维持 100–200 ms 的延迟体验。4. 队列与缓冲策略在复杂网络环境中,的稳定性取决于队列的组织方式。 与轻量级 RTSP 服务 / 多路转端可作为系统“源点”,由内置 RTSP 服务转发至内网或边缘节点,并可实现 RTSP、RTMP、HTTP-FLV 多协议互转,构建覆盖广、延迟的实时分发网络 它以 自研框架、跨平台适配、模块化结构、延迟管线、弱网自适应与可观测机制,在教育、防、车载、应急、工业互联网、XR 等场景中长期稳定运行。在“可用”早已不稀缺的时代,真正稀缺的,是长期可用。

    58710编辑于 2025-11-03
  • 来自专栏RTSP/RTMP直播相关

    Unity环境下RTMP+RTMP播放低延迟解决方案

    在本文之前,我们发布了Unity环境下的RTMP(Windows平台+Android平台)和RTMP|RTSP拉(Windows平台+Android平台+iOS平台)延迟的解决方案,今天做个整体汇总 Unity环境下RTMP Unity环境下,不管是camera还是窗体数据也好,主要是高效率的拿到原始数据,采集端可用的数据格式是RGB的,拿到之后,通过高效率的数据传递,发给封装后的原生SDK,完成数据编码和 Unity环境下RTMP|RTSP播放器 Unity环境下RTMP或RTSP直播播放我们前几年就有发布,并已应用在好多传统行业领域,比如教育或工业仿真或一些延迟的控制场景。 相关博客: Windows平台Unity3d下如何同时播放多路RTSP或RTMP https://cloud.tencent.com/developer/article/1800633 如何在Unity3d 平台下延迟播放RTMP或RTSP https://cloud.tencent.com/developer/article/1592731

    4.2K10发布于 2021-06-15
  • 来自专栏C/C++与音视频

    视频RTMP实践

    对应RTMP,业界有很多开源方案。如使用FFMPEG,librtmp(rtmp-dump),gstream。由于ffmpeg和gstreamer比较庞大,仅仅用来,有大炮打蚊子之嫌。 接口。 \n");     return 0; } 基本思路如下: 读文件----解析NAL单元---利用 SendData发送一个完成的NAL单元完成 编译main.cpp Wrapper_RtmpLib.cpp 运行可执行程序 . 3.如果是云主机,在云主机内不能公网IP,而要内网IP 192.168.1.226,客户端访问需要外网IP。 客户端播放效果如下:。

    9.3K30编辑于 2022-06-14
  • 来自专栏RTSP/RTMP直播相关

    Unity下如何实现延迟的全景RTMP|RTSP渲染

    在Unity3D平台上实现全景实时RTMP或RTSP渲染,可以通过以下方式:获取全景视频数据源:首先,需要拉取RTMP或RTSP数据,解码后,把RGB或YUV数据,回调到unity,从而获取到全景视频数据 技术实现图片本文以大牛直播SDK的RTMP推送端作为数据采集,获取全景窗体数据后,编码打包推送到RTMP服务,或启动个轻量级RTSP服务,对外提供个RTSP的拉URL。 1 : 0); //设置是否启用延迟模式 //设置旋转角度(设置0, 90, 180, 270度有效,其他值无效) int rotate_degrees = 0; 或RTSP实时,可以广泛用于各种需要提供真实场景或沉浸式体验的场景,为用户带来更加逼真的体验。 与此同时,Unity全景实时播放,需要有非常高的延迟要求和性能要求,特别是全景数据源,分辨率和码率都非常高,对解码效率和解码后的数据拷贝投递,提了更高的要求。

    70400编辑于 2023-07-27
  • 来自专栏RTSP/RTMP直播相关

    IE浏览器如何延迟播放RTSP或RTMP

    如果需要浏览器场景下有更好的兼容性,对于RTSP流来说,好多公司通常的做法是把RTSP转RTMP,然后分发到RTMP服务器,然后服务器转http-flv出来,浏览器直接播放http-flv,或者直接播放 hls(如果可以忍受几秒甚至十几秒延迟的话)。 本文基于大牛直播SDK https://github.com/daniulive/SmarterStreaming 现有RTSP、RTMP播放接口的基础上,二次封装,扩展了ocx控件,用于IE浏览器下的延迟 ULONG NT_SetLowLatencyMode(LONG mode); 设置是否延迟模式播放; 13. OpenPlayer(); } var obj = document.getElementById("SmartPlayerActiveX"); //设置是否启用延迟模式

    1.6K50发布于 2021-03-08
  • 来自专栏米尔电子

    12 路延迟!米尔 RK3576 赋能智能防 360° 环视

    传统监控方案常受限于摄像头接入数量不足、编解码效率延迟高三大痛点,难以覆盖社区、园区等复杂场景的全点位监控,更无法满足应急事件 “毫秒级响应” 的需求。 针对这一行业痛点,米尔电子基于瑞芯微 RK3576 芯片打造的智能防专用开发板,以 “多路并发接入 + 硬件级编解码 + 延迟传输” 为核心优势,成功实现 12 路 1080P@30fps 高清视频的稳定处理 ,端到端延迟控制在 120~150ms,为各类大场景智能防 360° 环视需求提供高性价比硬件底座。 应急级低延迟:异常事件(如闯入、越界、设备故障)的响应速度直接决定安防效果,端到端延迟需严格控制在 200ms 以内,120~150ms 为最佳区间;3. RTSP 延迟,端到端延迟至 120ms通过 “采集 - 编码 - 传输 - 解码” 全链路优化,开发板实现极低的延迟:视频采集后经 RGA 预处理 + VPU 硬件编码,此阶段延迟仅 80

    43810编辑于 2025-09-18
  • 来自专栏TSINGSEE青犀视频

    深入了解RTMP技术:视频汇聚EasyCVR延迟与高稳定性分析

    RTMP以其独特的优势,为实时音视频传输提供了高效、稳定的解决方案。视频汇聚防监控综合平台EasyCVR支持多协议接入,其中就包括RTMP协议。 1、RTMP视频技术具有延迟的特点RTMP基于TCP协议,在应用层和传输层之间提供了一个可靠的传输通道,从而保证了音视频数据的可靠传输。 同时,RTMP协议通过优化数据传输机制,减少了数据丢失的风险,从而实现了延迟的音视频传输。这使得RTMP视频技术特别适用于对实时性要求较高的场景,如直播互动、远程会议等。 这使得RTMP视频技术在实际应用中具有较高的可用性和可靠性。除了上述特点外,RTMP视频技术还具有良好的交互能力。RTMP协议支持丰富的音视频交互功能,如实时互动、视频聊天、弹幕评论等。 综上所述,RTMP视频技术以其延迟、跨平台支持、稳定性强和良好的交互能力等特点,在实时音视频传输领域具有广泛的应用前景。

    64510编辑于 2024-06-21
  • 来自专栏媒矿工厂

    延迟DASH

    这次将介绍的是使用开放源代码工具的延迟DASH。 首先Bo介绍了延迟DASH是什么,其中,一个延迟,从编码器屏幕到播放器屏幕之间的延迟必须要低于5秒;视频片段会被分割成许多的块来进行编码传输;且延迟的特性也决定了它在传输路径上不应有额外的缓冲 Bo还介绍了在延迟中的前人工作,DVB延迟DASH:使用GPAC软件实现的GPAC延迟DASH;苹果的延迟HLS,使用的是苹果服务器和IOS的音视频播放器,以及社区驱动的LHLS。 在波士顿区使用OBS studio作为实时编码器,获取视频并通过RTMP流到服务端。 最后Bo讨论了一些延迟DASH的潜在问题,首先延迟DASH的灵活性比传统的延迟要差;块的大小和延迟之间也存在着交换;延迟DASH只支持HTTP/1.1。 最后附上演讲视频:

    1.6K20发布于 2021-01-25
  • 来自专栏媒矿工厂

    延迟直播技术

    本文来自Bitmovin NAB 2020 Tech Talk,演讲者是来自Bitmovin的软件工程师Jameson Steiner,演讲的主题是延迟直播技术。 ,但也因此会带来较大的延迟,因此延迟也要在回放稳定性问题上进行权衡。 视频传输过程中往往对视频进行分段传输,因此,直播延迟也与视频分段的长度有关。 下面演讲者介绍了实现延迟传输的方法。 而更好的延迟方法则是分块分发(Chunked delivery),对视频片段进行分块编码,分块传输,减弱片段长度对直播延迟的影响。 最后,演讲者还介绍了延迟在MPEG-DASH以及Apple HLS协议中的整合,并介绍了延迟传输的一些实际应用。

    1.9K20发布于 2020-05-20
  • 来自专栏流媒体

    Android RTMP之MediaCodec硬编码二(RTMPDump

    简介 在前面的两篇文章中:Android RTMP之MediaCodec硬编码一(H.264进行flv封装)介绍了如何MediaCodec进行H264硬编码,然后将编码后的数据封装到flv文件中。 Android平台下RTMPDump的使用介绍了如何将RTMPDump移植到Android平台下,并读取解析flv文件进行。 主要增加三个方法:建立连接,数据,释放连接。 我们还是使用Android RTMP之MediaCodec硬编码一(H.264进行flv封装)里的代码。 第三步 c++层方法实现 c++层逻辑的编写。我们将方法写到rtmp_handle.cpp。

    5.3K50发布于 2018-08-23
  • 来自专栏小锋学长生活大爆炸

    如何使用OpenCV RTMP直播

    服务器地址 rtmp = r'rtmp://txy.live-send.acg.tv/live-txy/' # 读取视频并获取属性 cap = cv2.VideoCapture(0) size = (int RTMP是什么? RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。 该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。 RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。 RTMP与HTTP一样,都属于TCP/IP四层模型的应用层。 树莓派是什么?

    11.6K20发布于 2020-08-13
  • 来自专栏流媒体

    基于FFmpeg进行RTMP(二)

    在前面一节基于FFmpeg进行RTMP(一)我们写了最简单的一版代码。但细心调试过的兄弟会发现当我们把文件换成mp4后,发现上面的代码在写入文件头时报错。也就是说上一版的代码是有bug的。 说明我们的速度有问题。快了或慢了都会有问题。我们大概可以定位到,我们在计算延时的时候出现了错误。 test.mp4放到bin目录下即可 const char *inUrl = "hs.mp4"; //输出的地址 const char *outUrl = "rtmp://192.166.11.13 ////////////////////////////////////////////////////////////////// // 准备 << endl; //每一帧数据 //int64_t pts [ pts*(num/den) 第几秒显示] //int64_t dts 解码时间 [P帧(相对于上一帧的变化

    9.2K50发布于 2018-08-23
  • 来自专栏RTMP推送

    SmartMediaKit 模块化音视频框架实战指南:场景链路 + 能力矩阵全解析

    区别于传统“播放器或器”的单点工具,SmartMediaKit 更像是一套“积木式音视频内核”,用户可按需加载所需模块,构建灵活可控的视频通信链路,广泛应用于防监控、工业采集、远程协作、智能终端等多种高实时性场景 下列为基于实际项目场景整理的典型链路组合,便于开发者按需参考部署: 场景一:RTSP 监控画面延迟播放( / Windows)适用场景:工业视频监控、智能机器人远程操控、防可视化管理等 链路组合 :RTSP 视频源 → [RTSP 播放器 SDK] → / Windows 播放界面推荐模块配置: 播放端使用 RTSP Player SDK(开启延迟模式 + 硬解支持) 开启 YUV/RGB 案例4:无人机图传 & 中控平台联动 场景描述:无人机终端需要将视频延迟推送回地面控制中心,控制中心进行实时分发、预览和录像。 推荐组合: 推送端:RTMP 推送模块 + SEI 扩展数据注入 地面接收端:RTMP 播放模块 + 播放端录像模块 分发中继端:RTMP 录制 + 前端播放 部署环境:无人机终端 + 控制中心

    52910编辑于 2025-08-06
  • 来自专栏LiteMedia

    LiteCVR防监控平台RTMP平台级联到上级的方法

    有用户反馈,现场的设备是运动相机,不支持国标和其他协议接入LiteCVR平台,只能通过rtmp_push推送到LiteCVR平台。 LiteCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,能对外分发 RTSP、RTMP、FLV、HLS、WebRTC等格式的视频。 LiteCVR平台机制上并不支持rtmp_push协议的级联,但是依然有办法可以实现用户的需求。 因为现场只有这种协议,所以,我们将rtmp_push协议分发出来的RTSP再接入到LiteCVR平台,转换了一道变成了RTSP接入,再次级联就能成功获取到视频通道了。

    40660编辑于 2023-11-10
  • 来自专栏RTSP/RTMP直播相关

    Windows平台Unity3D下如何延迟资源占用播放RTMP或RTSP

    ​技术探讨自2017年我们发布跨平台的延迟Unity下的RTSP|RTMP直播播放器后,Unity下的直播体验有了质的提升,特别是RTMP,从大家认知里面的几秒钟,直接缩减到100-300ms,满足了绝大多数场景下延迟的技术诉求 今天就Unity下的RTSP|RTMP延迟播放,从以下几个维度,抛砖引玉,做个探讨: 选择合适的播放插件 Unity下的RTSP|RTMP延迟播放,业内想到最多的是大牛直播SDK的SmartPlayer 延迟模式:如果插件或 SDK 提供了延迟模式的选项,一定要开启该模式。不过,有些情况下开启延迟模式可能会牺牲一定的视频质量或稳定性,需要进行权衡。 优化网络环境网络带宽:确保网络带宽足够大,以支持 RTMP 或 RTSP 的实时传输。如果是在本地网络环境下,可以使用有线网络连接,避免使用无线网络,以减少网络波动和延迟。 资源占用如下:总结Windows平台如果对延迟和资源占有等,要求非常高,可以选择合适的延迟RTSP或RTMP播放插件、优化播放参数设置、优化网络环境、优化代码和渲染流程。

    60420编辑于 2024-12-10
  • 来自专栏码客

    Nginx添加rtmp模块搭建rtmp服务器

    前言 搭建基于rtmp协议的服务器。 nginx-1.12.2 nginx 3、备份文件 cp -r /etc/nginx /etc/nginx_bak mv /usr/sbin/nginx /usr/sbin/nginx_bak 下载rtmp 模块 仓库地址:nginx-rtmp-module cd /usr/lib64/nginx/modules/ git clone https://github.com/arut/nginx-rtmp-module.git NGINX_HOME=/usr/local/nginx export PATH=$PATH:$NGINX_HOME/sbin 重新编译环境变量 source /etc/profile 配置Nginx的rtmp 请求路径,文件存放路径 hls_fragment 5s; #每个TS文件包含5秒的视频内容 } } } 启动nginx cd /usr/local/nginx

    8.9K20发布于 2019-10-22
  • 来自专栏RTSP/RTMP直播相关

    如何在Unity3d平台下延迟播放RTMP或RTSP

    随着VR类、游戏类场景的快速发展,开发者对Unity3d延迟的直播需求量越来越大,前两年,大牛直播SDK发布了Windows平台、Android平台和iOS平台的Unity3d RTMP和RTSP的播放 本文以Android平台为例,我们的实现:基于大牛直播SDK现有非常成熟的native RTMP和RTSP播放模块,回调解码后的原始数据,传递给Unity3d,实现相应的绘制即可,对应demo,可以参考 player_obj_.Call<int>("SetFastStartup", handle, is_fast_startup); } ///

    /// 设置超低延迟模式 url.StartsWith("rtmp://") && ! 1 : 0); //设置是否启用延迟模式 NT_U3D_SetMute(player_handle_, is_mute_ ?

    3.9K50发布于 2020-03-02
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】RTMPDump 流过程 ( 独立线程 | 创建器 | 初始化操作 | 设置地址 | 启用写出 | 连接 RTMP 服务器 | 发送 RTMP 数据包 )

    文章目录 一、 Java 层传入的 RTMP 地址处理 二、 RTMPDump 流线程 三、 创建 RTMP 对象 四、 初始化 RTMP 对象 五、 设置 RTMP 地址 六、 启用 RTMP 独立线程 : RTMP 操作需要在一个独立的线程中完成 , 涉及到网络的操作都是耗时操作 , 在 Android 中都要在线程中执行 ; 2 . 初始化 RTMP RTMP_Init(rtmp); // 设置超时时间 5 秒 rtmp->Link.timeout = 5; 五、 设置 RTMP 地址 ---- 设置 RTMP 地址 , 如果设置失败 结束, 关闭与 RTMP 服务器连接, 释放资源 if(rtmp){ RTMP_Close(rtmp); RTMP_Free(rtmp); } 十一、 RTMPDump 代码 - 获取 Rtmp 地址 char* pushPath = static_cast<char *>(args); // rtmp RTMP* rtmp = 0;

    3.8K20编辑于 2023-03-27
  • 来自专栏用户1692782的专栏

    协议转换之rtsp转rtmp

    本篇记录实现一个rtsp转rtmp直播的程序!闲言少叙,接下来置入主题。 需求 有一个摄像头,比如海康的监控摄像头,可以通过rtsp的方式访问其视频画面! 需要将其画面转换为rtmp协议,并实现直播! 实现思路 我们的程序,称之为rtsp2rtmp,使用该程序实现拉取摄像头rtsp视频,并将rtmp视频流转换为rtmp视频,然后推送到直播服务器,直播服务器采用nginx+rtmp_module的方式实现 << std::endl; // 2.获得信息 m_nRet = avformat_find_stream_info(m_pRtspAVFormatContext, 0); if (m_nRet m_nRet = av_read_frame(m_pRtspAVFormatContext, &pkt); if (m_nRet < 0) { break; } 写入输出

    4.8K30发布于 2020-07-14
  • 来自专栏码客

    OSSRS搭建rtmp服务器

    Windows Flash RTMP Adobe 主流的延时分发方式, Adobe对RTMP是Flash原生支持方式, FMS(Adobe Media Server前身), 就是Flash Media libx264.so.157: cannot open sh 解决方法 vi /etc/ld.so.conf 添加libx264.so所在路径 /usr/local/lib 退出后执行 ldconfig 延迟配置运行 /objs/srs -c conf/realtime.conf>log.txt & 结束进程 lsof -i:1935 kill -9 PID 常用配置 延迟配置 listen /objs/srs -c conf/ffmpeg.transcode.conf>log.txt & ffmpeg -re -stream_loop -1 -i /usr/local/srs2/doc /log.txt & ffmpeg -re -stream_loop -1 -i /data/rtmptest.mp4 -vcodec copy -acodec copy -f flv -y rtmp

    8.6K30发布于 2019-10-22
领券