自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 【FFmpeg】入门常用功能

ffmpeg -f dshow -i audio="麦克风 (Realtek(R) Audio)" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f dshow -i video="screen-capture-recorder" av-out.flv。但这个软件虽然用ruby写的但我没搞懂怎么用,还是删了。

2024-09-30 09:46:15 188

原创 FLV转MP4——ffmpeg实现

进入ffmpeg官网https://www.ffmpeg.org/download.html,根据自己的系统下载相应封装,这里以Windows为例。下载合适的release,解压,将bin目录下的exe文件全部复制到目录C:\Windows\System32下。第一个filename改为需要转换的文件名,第二个filename改为相应的输出文件名。有时通过某些下载工具得到的flv/mp4文件被分为多个片段,但我们希望将它们合并。将这里的input改为你的文件名,output改为你想得到的文件名即可。

2024-09-30 09:37:29 283

原创 前端在浏览器显示摄像头传回的RTSP视频流,前端采用的技术有VUE+video.js+flv.js

在Vue组件中,定义需要的数据属性,比如存放视频流URL的变量,以及一个用于发起请求的方法。data() {return {videoStreamUrl: '', // 初始视频流URLpollInterval: null, // 用于存储轮询的定时器引用},methods: {// 发起请求到后台获取视频流URL// 如果是首次获取成功,或者需要在每次获取后重新加载播放器,这里可以添加逻辑// 例如,如果使用video.js,可能需要重新初始化播放器或更新源})});},

2024-09-29 11:29:39 379

原创 WebRTC技术:实现网页实时音视频通信的关键

总之,WebRTC是一项革命性的实时通讯技术,它让网页应用具备了与原生应用相媲美的实时通信能力。通过深入了解WebRTC的核心原理、应用场景及未来发展,我们可以更好地掌握这一技术,并将其应用到实际开发中,为用户带来更加丰富和便捷的体验。同时,随着WebRTC技术的不断成熟和完善,其应用场景也将进一步拓展,为我们的生活带来更多便利和惊喜。作为一项支持网页浏览器进行实时语音通话或视频聊天的技术,WebRTC不仅让网页应用具备了与原生应用相媲美的实时通信能力,而且其开源和跨平台的特性也使得。

2024-09-29 11:25:23 189

原创 WebRTC技术详解:实现网页实时通信的关键技术

传统的实时通信方式通常需要使用特定的软件或硬件,而WebRTC技术的出现,使得在网页浏览器中进行实时语音对话或视频对话成为可能。本文将深入探讨WebRTC的基本原理、关键技术和实际应用,帮助读者更好地理解和使用WebRTC。WebRTC技术以其独特的优势和广泛的应用前景,正逐渐成为实时通信领域的重要力量。本文介绍了WebRTC的基本原理、关键技术和实际应用,希望能够帮助读者更好地理解和使用WebRTC。随着技术的不断发展和完善,相信WebRTC将在未来发挥更大的作用,推动实时通信技术的发展和普及。

2024-09-29 11:23:37 257

原创 RTSP服务器实例live555源代码分析

首先调用子会话的startStream(),内部调用MediaSink::startPlaying(...),然后是MultiFramedRTPSink::continuePlaying(),接着调用MultiFramedRTPSink::buildAndSendPacket(...)。RTSPClientSession类用于处理单独的客户会话。(3)客户端发起RTSP DESCRIBE请求,服务器收到的信息主要有媒体的名字,解码类型,视频分辨率等描述,目的是为了从服务器那里得到会话描述信息(SDP)。

2024-09-29 11:00:27 715

原创 实时音视频开发中会用到开源项目

实时音视频的开发学习有很多可以参考的开源项目。一个实时音视频应用共包括几个环节:采集、编码、前后处理、传输、解码、缓冲、渲染等很多环节。每一个细分环节,还有更细分的技术模块。比如,前后处理环节有美颜、滤镜、回声消除、噪声抑制等,采集有等,编解码有VP8、VP9、H.264、等。我们今天汇总了一些能帮助到正在学习或进行音视频开发的实时音视频开发者们的开源项目与几个也在为贡献力量的商业服务。这些项目分为几类:音视频编解码类、视频前后处理、服务端类等。

2024-09-29 10:54:50 836

原创 live555源码之rtsp协议交互流程

live555是专门用于实现的专业开源库,其能兼容各种rtsp参数,条件等;使用过程中不免好奇,live555中用于信令(OPTION DESCRIBE SETUP PLAY等)交互的TCP协议;用于进行流媒体传输的UDP/TCP协议什么时候被创建的?什么时候被使用的?

2024-09-29 10:27:15 161

原创 Ubuntu用live555快速搭建一个RTSP视频流服务器

根据百度百科的相关定义,Live555是一个流媒体解决方案,它是用C++语言编写的开源项目,具有跨平台的特性,可以运行在多种主流操作系统上,它实现了对标准流媒体传输协议的支持,比如RTP/RTCP、RTSP、SIP等。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.264、H.265、DV、JPEG视频和多种音频编码。同时由于良好的设计,它非常容易扩展对其他格式的支持。

2024-09-29 10:23:36 626

原创 ive555 h265,live555推流rtsp

用于创建具体的FramedSource,对于WISServerMediaSubsession类来说,处理FramedSource的接口是相同的, 但是对于FramedSource来说,VideoSource与AudioSource的具体的帧获取是不同的, 这样,就需要利用APPROInput来分别创建VideoSource和AudioSource。live555是一个开源的RTSP C++类库,默认实现音视频文件的点播,但是可以通过继承相关类,重写相关方法实现视频直播。

2024-09-29 10:13:13 330

原创 采用Qt+Live555搭建RTSP服务器

而Live555是一个跨平台的流媒体开发库,支持多种流媒体协议,包括RTSP、SIP、RTP等,可以帮助我们快速实现视频流的传输和处理。为了实现视频监控系统的网络化和智能化,需要开发一个基于RTSP协议的视频流服务器,能够接收前端设备的视频流,并提供RTSP协议的服务,方便客户端进行实时的视频浏览、回放等操作。在Qt中搭建RTSP服务器,可以使用开源的Live555库。Live555是一个跨平台、C++语言编写的多媒体开发库,支持RTSP和SIP等常见协议,并且有完整的服务器和客户端实现。

2024-09-29 10:01:20 611

原创 live555请求超时时间设置

在使用 Live555 库进行网络请求时,可以通过设置超时时间来控制请求的超时行为。方法来设置超时时间。在此示例中,将超时时间设置为 5 秒(5000 毫秒)。可以根据需要进行调整。请注意,这只是一个示例,并且可能需要根据你的具体需求和应用场景进行适当修改。

2024-09-29 09:54:17 55

原创 WebRTC 如何在浏览器采集视频(WebRTC传输视频流示例)

此外,由于涉及到媒体设备的访问权限,你需要在使用。5.传输视频流:如果你希望将视频流传输到服务器或其他客户端,你可以使用WebRTC的RTCPeerConnection和RTCDataChannel来建立点对点连接,并通过数据通道传输视频流。另外,为了使上述示例正常工作,你需要在本地和远程端之间建立连接并进行信令交换,以便传输SDP和ICE候选者。要在浏览器中传输视频流,你可以使用WebRTC的RTCPeerConnection和RTCDataChannel来建立点对点连接,并通过数据通道传输视频流。

2024-09-28 15:19:44 403

原创 WebRTC STUN TURN ICE

这时TURN server会建立peer,即远端端点(remote endpoints),开始进行中继(relay)的动作,TURN client利用relay port将数据传送至peer,再由peer转传到另一方的TURN client。STUN,首先在RFC3489中定义,作为一个完整的NAT穿透解决方案,英文全称是Simple Traversal of UDP Through NATs,即简单的用UDP穿透NAT。目前的服务器对于UDP的限制比较多,导致这种模式穿墙的成功率不高。

2024-09-28 15:08:34 274

原创 C++ 使用 zlmediakit 推送 websocket flv 流

在本例中,我们使用 libwebsockets 来创建一个 websocket 服务器,并使用 zlmediakit 来推送 rtsp 流到 websocket 客户端。您可以根据您的实际需求调整代码。配置 zlmediakit 在推送websocket flv流之前,您需要正确地配置 zlmediakit。开始推流 当websocket客户端连接到服务器并准备好接收数据时,您可以使用 zlmediakit 的 API 将视频流推送到websocket客户端。

2024-09-28 15:06:07 162

原创 FFmpeg混流及录制rtmp直播流

虽然拉多流比起拉单流会消耗更多的带宽成本,但是拉多流节省计算资源成本,整体而言,成本是降低了。混流这个环节包括做抖动缓冲,目的是把多路流进行画面对齐和音画同步,同时通过缓冲对抗网络抖动,以便混合成一路流以后能够达到良好的效果。不灵活:由于观众端拉单流观看,多路音视频流已经被混合成单流,所以观众端无法再灵活地对多流进行操控,比如切换画中画的主次画面。高延迟:由于在做混流的过程中,需要做抖动缓冲和实时转码等计算处理,将会耗费时间,从而造成额外的延迟。延迟低:不用混流,节省了混流消耗的时间,显著地降低了延迟。

2024-09-28 15:00:57 293

原创 webrtc摄像头对讲方案metaRTC ZLMediaKit

网络摄像头可以通过网络远程查看实时视频图像,也可以和浏览器与手机APP等对讲,对讲方案有P2P/SFU/MCU等。metaRTC+ZLMediaKit是一个比较适合的SFU对讲方案。语音编码考虑摄像头算力低以及拾音器采样率等因素,G711比OPUS更适合。metaRTC支持G711A(PCMA)/G711U(PCMU)metaRTC采用缓存等技术实现G711A/G711U占用CPU算力极低ZLMediaKit支持G711 webRTC推拉流视频编码。

2024-09-28 10:51:54 344

原创 音视频处理工具FFmpeg与Java结合的简单使用

- 引用自百度百科。此处:-ss position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格式也支持,-vframes 设置转换多少桢(frame)的视频,此命令是获取第一秒第一帧的截图。音视频合并会使用到两个输入资源,一个音频资源和一个视频资源,此处的例子为一个10s的视频与一个20s的音频,我要达到的效果是视频播放完毕,便退出播放,剩余音频不再进行播放。注:在编写命令是,音频文件一定要在视频文件的前面,否则合成出来的视频是有问题的,你会发现音频并没有合成进来。

2024-09-28 10:46:09 649

原创 WebRTC-STUN协议详解

USENAME 组成格式为对端ice-ufrag:自己ice-ufrag,其中对端ice-ufrag为webrtc中的answer sdp,其中属性a=ice-ufrag:2g25ql32,自己ice-ufrag为offer sdp,其中属性a=ice-ufrag:cVN4。(3)客户端将响应中发来的IP地址和端口与其发送的IP地址和端口进行比较,以此来判断客户端和服务器之间有没有NAT,若不同,则说明至少有一个NAT,客户端能够识别由最外层的NAT分配的IP地址和端口。它的值包括制造商和版本号。

2024-09-28 10:44:32 730

原创 Linux中gcc,g++常用编译选项

gcc -x c hello.pig -x none filename 关掉上一个选项,也就是让gcc根据文件名后缀,自动识别文件类型 例子用法: gcc -x c hello.pig -x none hello2.c -c 只激活预处理,编译,和汇编,也就是他只把程式做成obj文件 例子用法: gcc -c hello.c 他将生成.o的obj文件 -S 只激活预处理和编译,就是指把文件编译成为汇编代码。比如你自己的库,能用他制定目录,不然 编译器将只在标准库的目录找。这个dir就是目录的名称。

2024-09-28 10:36:40 203

原创 unity3d调用安卓java

AndroidPlugin类里面添加需要调用的接口,比如:getAndroidUUID,将此类编译成一个jar库文件,复制到Plugins\Android\libs目录下。unity里面想要获取安卓设备的唯一ID,必须通过原生的java接口来获取。一、unity3d调用java。

2024-09-28 10:28:29 92

原创 live555+ffmpeg实时视频推流

intvideo_server函数创建了一个RTSPServer,里面包括了一个实时视频流和一个实时音频流。程序进入主循环后,可以用ffplay或vcl播放实时视频流。在开发服务器端和手机app时,为了方便调试码流和解决相关bug,我们在windows平台下利用。实时视频流通常是由安防设备负责推流,服务器端进行解析和转发,手机app播放视频流。接着创建CCameraVideo类对象,这个类实现了实时视频流和实时音频流接口。在windows下配置编译ffmpeg的也不简单,下面是调试运行截图。

2024-09-28 10:21:42 286

原创 live555多线程实现

早期想实现一个流媒体服务器,看了live555的代码,它是个单线程的,不适合在服务器上的高并发要求,要想完全改成多线实现live555,整个网络上搜索个遍,都没有到。偶尔有几个实现了的,其实现方式也并非真正意义上的多线程,没有充分发挥多线程的效率。当使用rtsp over tcp时,每个客户端的请求只对应一个tcp连接,此时只需要在当前tcp收到数据时锁住当前会话,并进行逻辑处理。本人实现的流媒体服务器支持rtsp,rtmp及flv,mp4存储,时间有点久了,一时只能记起来这些,更多的细节点后面再补充上。

2024-09-28 10:14:27 258

原创 视频流媒体解决方案:Liveweb国标GB28181视频监控汇聚平台

LiveWeb是一套综合视频汇聚管理平台,可提供多协议(RTSP/RTMP/GB28181/海康Ehome/大华,海康SDK等)的视频设备接入,支持GB/T28181上下级联,RTSP\RTMP转GB/T28181,云台控制,视频对讲;该平台具有GB/T 28181级联能力,实现向上级联和向下级联其它流媒体平台,并支持Web实时调阅、单屏/多分屏播放(4/9/16/25/36/64)、解码器视频输出等视频能力,可以用于大屏、跨地域管理播放,支持H.264/H.265免插件播放等功能。

2024-09-25 16:33:54 307

原创 视频监控统一管理平台Liveweb安防视频监控系统视频汇聚方案

它能够实现视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集群、语音对讲、云台控制、电子地图、低延时H.265播放以及平台级联等功能。Liveweb平台已广泛应用于工地、工厂、园区、楼宇、校园、仓储等多种场景中。将分散的视频资源进行统一整合和管理,提供时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力,并具备权限管理、设备管理、鉴权管理、系统运维等管理能力。

2024-09-25 16:01:20 333

原创 Liveweb视频流媒体平台与汇聚管理系统集成方案

平台支持设备通过4G、5G、WIFI、有线等方式进行视频流的快捷传输,支持对外分发多种格式的视频流,具体包括:RTMP、RTSP、HTTP-FLV、WebSocket-FLV、HLS、WebRTC、HTTP-FMP4、WS-FMP4等。视频监控与视频汇聚平台Liveweb可支持的接入协议包括:国标GB28181、RTSP/Onvif、RTMP,以及各厂家的私有协议与SDK,如:海康ehome、海康sdk、大华sdk、天地伟业、宇视sdk、华为sdk等,可覆盖市面上各种品牌的监控设备。

2024-09-25 15:27:56 358

原创 视频监控平台Liveweb通过国标GB28181实现视频监控平台级联方案

通过模块化的设计,接入集群的服务实现了接入能力的丰富、独立可靠、不同设备的接入占用资源不均衡的多种均衡算法区分调度等优点。对于已有搭建好的视频监控管理平台,可采用平台联网对接模式,实现与Liveweb视频汇聚平台的级联对接,同时实现原有平台存储设备的充分利用。通过Liveweb平台实现三级基础监控单元间平台级联,完成了省级、中心级、基础单位间跨地域、跨层级、跨部门的数据资源共享,形成横向联动、纵向贯通的数据交换体系,为高推进数据共享应用提供了坚实的平台支撑。3. 流媒体格式分发。

2024-09-25 14:53:38 197

原创 视频流媒体解决方案:Liveweb国标GB28181视频监控汇聚平台

Liveweb视频融合平台除了满足国标联网平台的能力之外,还集成了更丰富的视频功能,特别是视频相关项目的汇聚整合能力,支持一套平台接入视频监控资源的管理、国标联网、流媒体处理、视频共享、视频转码、视频分发、API开发、AI智能分析接入等,避免套娃式采购,在项目实施上造成困扰。Liveweb视频融合平台提供了完善的API开发接口,支持调用视频资源的接入和输出、视频监控的PTZ控制、录像策略和调看、视频流的播放、设备管理等,一套Liveweb平台可以涵盖各种业务系统开发以及平台项目集成需求。

2024-09-25 10:58:06 684

原创 视频流媒体服务解决方案

二次开发接口、防盗链、播放地址加密、播放器集成等。Liveweb视频汇聚平台的目标是实现不同厂家、不同协议、不同型号的摄像机及设备接入,以统一、标准的视频格式和传输协议,将视频流推送至云平台,完成海量安防视频资源的轻量化接入、分发,实现设备和平台的互联互通,形成一个感、存、知、用一体化的综合性大平台,让用户随时随地“可视、可测、可控”。通过这些技术特点和丰富的应用场景,Liveweb视频汇聚平台为各种业务场景提供了丰富、实时、高清的视频资源,满足了多样化的视频资源调度与业务使用需求‌。

2024-09-24 15:28:33 302

原创 视频监控汇聚平台的应用有哪些?

实现了对视频资源的统一汇聚、整合、集中管理,提供了实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等视频能力。这些功能满足了多场景、多行业的视频监控需求,如工地安全监控、工厂生产监控、石化行业的安全生产监控、煤矿的安全生产与救援指挥、住宅小区的安全管理、楼宇商场的客流监控、景区游客流量控制与安全保障、校园的安全监控、消防安全的实时监控、农业生产的监控以及物流仓储的货物跟踪与安全管理等‌。等,能够轻松实现对各类视频源的统一管理和调度。

2024-09-24 15:19:47 462

原创 如何搭建一套视频监控汇聚平台

‌:根据具体的现场环境选择合适的前端监控设备。平台应利用先进的流媒体转码及处理技术,能够对外分发多种视频流,覆盖全终端、全平台,包括PC、手机、平板、微信、电子大屏/电视墙等‌2。一个好的平台应该能够支持国标GB28181、RTSP/Onvif、RTMP等多种协议,以及厂家的私有协议与SDK,如海康ehome、海康sdk等,以确保能够覆盖市面上的大多数前端监控设备‌1。‌:平台应支持7*24h录像,提供录像、检索、回放、云存储等功能,实现对接入单位的视频进行录像备份,实现数据的分布式存储和备份‌2。

2024-09-24 15:17:58 241

原创 视频监控汇聚平台的构架是怎么样的?

‌:平台兼容多种主流标准协议(如GB/T28181、RTSP/Onvif、RTMP等)以及厂家的私有协议和SDK接入,支持不同品牌、型号和类型的安防设备及系统的统一管理。‌:平台采用模块化设计,支持分布式部署,包括多中心信令服务器部署和分布式流媒体负载均衡,旨在降低视频监控设备互联的复杂性,实现跨平台、跨终端的无插件直播和智能化监控。‌:监控中心服务采用微服务架构,由独立部署的微服务构成,注重安全隐私、服务赋能、持续运营和标准规范。你想了解视频监控汇聚平台的哪些方面呢?

2024-09-24 15:15:48 203

原创 视频流媒体解决方案

CDN加速:CDN(Content Delivery Network)是一种分布式网络架构,通过将内容分发到离用户最近的节点上,提供快速、可靠的内容传输服务。视频编码和解码:视频编码是将视频信号转换为数字信号的过程,视频解码则是将数字信号转换为视频信号的过程。安全性:视频流媒体解决方案需要考虑数据的安全性,包括内容加密、用户认证、访问控制等。媒体服务器:媒体服务器是用于存储和传输视频流的服务器。以上是视频流媒体解决方案的主要内容,根据具体的需求和应用场景,还可以结合其他的技术和工具来进行设计和实施。

2024-09-24 15:10:08 124

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除