media
文章平均质量分 71
小雉系统
这个作者很懒,什么都没留下…
展开
-
小雉系统造轮子之端口共享技术(webrtc,rtsp,hls,rtmp,gb28181,sip,rtp,http共用端口)
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/43/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org 或加QQ群:869598376背景端口共享主要是为在一些受限环境(如防火墙限制只有http的80可被外网访问)中让自己的业务正常运行(rtsp,hls,gb28181等业务正常运行);端口共享技术并不是新技术,如sslh可让ssh和https共用一个端口,haproxy可让ssh...转载 2021-08-05 22:18:10 · 12104 阅读 · 0 评论 -
H265的国标PS流打包
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/42/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org 或加QQ群:869598376先来看看海康、大华、宇视三个安防厂家摄像机的H265 国标PS封装格式案例:首先是海康:接下来看大华:再接下来看看宇视的:可以看到,三个厂家稍稍有一点区别,海康是将VSP/SPS/PPS/SEI/IDR分开单独打包成一个PES包,宇视和大...转载 2021-08-05 22:16:42 · 5646 阅读 · 0 评论 -
小雉视频系统GB28181-2016配置
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/41/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org 或加QQ群:869598376小雉视频系统从3.165.3509版本开始支持GB28181-2016版本,SIP指令及视频流均同时支持tcp和udp;GB28181端口配置(也可以使用《小雉系统造轮子之端口共享技术(webrtc,rtsp,hls,rtmp,gb28181,sip,rtp,ht...转载 2021-08-05 22:15:15 · 13671 阅读 · 0 评论 -
小雉视频系统 相机权限控制 优先级控制 级联控制
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/38/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org或加QQ群:869598376介绍"相机控制"指云台转动,图像变倍,聚焦,光圈控制,预置位控制,3D定位,ptz设置与获取,快门,增益,白平衡控制,亮度,色度,对比度,清晰度控制;"相机控制"因一个客户端的控制会影响其他客户端的图像观看和其他业务(比如大领导正在看,突然被其他用户...转载 2021-07-01 20:31:06 · 5678 阅读 · 0 评论 -
GB28181 级联 CDN 回放
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/37/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org或加QQ群:869598376GB28181级联"GB28181一般级联"实质是多个sip服务器的级联,转发sip指令到视频源中的sip服务器执行,各级中的流媒体负责转发视频流;"GB28181 CDN 级联"在各级增加了CDN服务器,对回放视频流进行缓存,在视频回放时,优先判...转载 2021-06-19 18:44:43 · 20576 阅读 · 0 评论 -
小雉系统的应用场景
本文原地址:http://www.feitianzhi.com/boke/index.php/36.html转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org 或加QQ群:869598376介绍"小雉系统"包含"小雉操作系统","小雉视频系统"和"小雉视频NVR系统";小雉系统采用c语言开发,采用面向过程对象的思想(拥有过程语言的性能和面向对象的便捷)的2D思维编程,程序高效占用硬件资源少,小雉系统可支持20万路视频接入;适用客户与场景 以视频业务为...转载 2021-06-18 23:13:06 · 12373 阅读 · 0 评论 -
小雉视频系统之去中心管理的视频服务器
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/35/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org或加QQ群:869598376介绍一般视频系统由流媒体服务器和信令服务器组成,信令服务器一般负责客户端请求(如客户端要看a视频需要先通知信令服务器分配合适的流媒体去准备a的流,之后客户端才能通过流媒体看a的流)和控制流媒体服务器;本文所述的“去中心管理”就是去掉信令服务器;中心管理的缺陷...转载 2021-06-09 11:44:24 · 4109 阅读 · 0 评论 -
小雉视频系统之按需拉流--掩码通信算法介绍
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/33/转载请注明出处,有疑问或错误请发邮件到xiaozhi@fslib.org或加QQ群:869598376介绍“按需拉流”也叫“按需直播”,是为实现在仅在有用户查看时才拉取视频流,从而达到节约带宽和服务器资源的目的;按需拉流的通用实现方式一般地视频服务器分为管理服务器(信令服务器或中心服务器)和流媒体服务器。在客户端需要使用某协议(如RTSP)播放...转载 2021-02-08 17:23:01 · 2640 阅读 · 0 评论 -
RTMP协议封装H264格式详解
首先我们获得h264的流,在监听里,我们通过参数可以获得RTMP包IStreamPacket,调用getData()方法直接获得包数据 放入IOBuffer。以下是提取并修改数据存成h264文件的步骤1. 添加监听IStreamListener2. 通过IOBuffer的put函数将每次获得的包数据放入新的IObuffer3. 在流结束时将IOBuffer存成文件4. 用工具,...转载 2020-04-22 09:41:32 · 875 阅读 · 0 评论 -
基于centos8.1制作的系统
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/29/转载请注明出处,有疑问或错误请发邮件到zhangrui@fslib.org或加QQ群:869598376概述"小雉系统"基于centos定制,采用双系统设计,升级过程中掉电不会损坏系统,保证系统的可靠运行,总共占用空间500M,系统的维护采用使用升级包对...转载 2020-04-16 10:01:03 · 411 阅读 · 0 评论 -
FFmpeg基础知识之————H264编码profile & level控制
H.264有四种画质级别,分别是baseline, extended, main, high:1、Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC; 2、Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支持无交错(Progressive)和CAVLC;(用的少) 3、Main profile:主流画...转载 2020-03-11 10:32:23 · 725 阅读 · 0 评论 -
ffmpeg编码x264
协助查看编码的工具有:Elecard、Bitrate Viewer、ffprobex264参数.pngx264参数1.pngprest的参数有:ultrafast 、superfast、veryfast、faster、fast、medium、slow 代表不同的速度,越慢质量越好转码参数为ultrafast,转码速度为4.26倍速./ffmpeg -i test2....转载 2020-03-11 10:16:05 · 2192 阅读 · 0 评论 -
视频系统负载均衡之GB28181多线负载均衡
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/28/转载请注明出处,有疑问或错误请发邮件到zhangrui@fslib.org或加QQ群:463690330概述本文的"小雉视频系统"负载均衡是指单机负载均衡,多机请参看本站的其他文章介绍;使用场景--服务器无公网IP,通过端口映射提供服务...转载 2020-10-25 10:42:29 · 829 阅读 · 0 评论 -
H5直播系列二 MSE(Media Source Extensions)
参考w3c media-sourceMedia Source 系列 - 使用 Media Source Extensions 播放视频全面进阶 H5 直播无 Flash 时代,让直播拥抱 H5(MSE篇)使用 MediaSource 搭建流式播放器一、MSE 意义1.粗识 HTML5 video 标签和MSE媒体源扩展当前网页上能够搜到的HTML5和MSE相关的内容一抓一大把,本文的目的...转载 2019-12-09 11:29:57 · 2146 阅读 · 0 评论 -
视频系统--本地拉取相机,实现拼图,分辩率调整,帧率调整
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/26/转载请注明出处,有疑问或错误请发邮件到zhangrui@fslib.org或加QQ群:463690330概述本地拉取相机是"小雉视频系统"自定义的一种相机类型,此相机类型可以使用通过rtsp,gb28181接入的一个到多个视频流作为输入,然后对这些输入的...转载 2020-04-16 09:58:17 · 4852 阅读 · 0 评论 -
【GBT28181开发:SIP协议实践】之实况直播
实况直播(标准中的叫法是 实时点播,但是以前在HW,SE的设计文档里面是实况,叫习惯了,其实只是个叫法而已 )是整个视频监控系统中比较核心的一个业务,GBT28181标准中对其也做了详细的设计。相对于设备信息、状态查询等业务,其稍微复杂点。首先消息类型采用的是INVITE,然后消息体的描述采用SDP协议。SDP协议的之前已经学习过了,还算简单:http://blog.csdn.net/longlo...转载 2018-07-12 09:08:22 · 1161 阅读 · 0 评论 -
视频系统--直接均值架构
本文原地址:http://www.feitianzhi.com/boke/index.php/archives/18/转载请注明出处,有疑问或错误请发邮件到zhangrui@fslib.org或加QQ群:463690330概述对一个软件的运行占用的资源进行统计,可得到资源占用的"均值"和"峰值",从性能的角度评估软件的框架,自认为可分三个层次:峰值架构:按这种架构设计的软件需要...转载 2020-10-25 10:42:07 · 338 阅读 · 0 评论 -
RTMP协议分析 二、AMF数据
Rtmp包默认的最大长度为128字节,(或通过chunksize改变rtmp包最大长度), 当AMF数据超过128Byte的时候就可能有多个rtmp包组成,如果需要解码的rtmp包太长则被TCP协议分割成多个TCP包.那么解码的时候需要先将包含rtmp包的tcp封包合并, 再把合并的数据解码,解码后可得到amf格式的数据,将这些AMF数据取出来就可以对AMF数据解码了.RTMP封包包括转载 2017-03-23 16:24:44 · 414 阅读 · 0 评论 -
关于对H264码流的PS的封装的相关代码实现
1、写在开始之前: 最近因为新工作要维护别人留下的GB模块代码,先熟悉了流程,然后也试着封装了下ps流,结果也能通过测试正常预览了,当然,其中开发读文档的头疼,预览花屏,卡帧的事情都有遇到,当时慢慢的看文档,整理逻辑,也就都顺利解决了,下面把大致的一些流程代码贴出来分享下。既然是对接国标,自然少不了通读它的标准文档和相关的RFC文档了!具体的我就不说了,可以用百度g转载 2016-08-29 15:06:41 · 1402 阅读 · 2 评论 -
SDP协议介绍
SDP:Session Description ProtocolSDP格式: Session description v= (protocol version) o= (owner/creator and session identifier) s= (session name) i=* (session inform...转载 2018-07-12 09:06:34 · 735 阅读 · 0 评论 -
一个H.265/HEVC码流分析工具
经过大约一个月左右的业余时间,终于初步完成一个H.265/HEVC码流分析工具。时间包括平时的周末、晚上,以及调休的集中时间。当然,中秋回家过节不写代码。截至今天,经过多种H.265序列测试,也有各种工具对比,基本上无大问题,v2.0版本终于释放出来。v1.x版本是去年年初做的,弹指间一年多的今天又继续做。但后面也不知道有没有时间和心情完善,随缘吧。一、背景按惯例,每年年中的时候,公司都要讲新平台...转载 2018-05-05 11:24:42 · 3968 阅读 · 0 评论 -
从H264/H265码流中获取宽、高及帧率
在做码流分析时,图像分辨率、帧率这类的基本信息,当然不可少。本文介绍如何从NAL中计算到图像宽、高,还有分辨率。于是H264和H265有相似性,就在一起写了。一、从码流获得宽、高1、H264宽高可从SPS字段计算得到,公式如下:Width = (pic_width_in_mbs_minus1+1)*16;Height = (pic_height_in_map_unit转载 2018-05-05 11:21:18 · 2494 阅读 · 0 评论 -
TS中的pcr、dts、pts问题
对于PTS_DTS_flags的重设此字段在PES头语法中,标识PTS与DTS在PES分组首部的出现情况,当出于某种需求要对此标志位进行修改,例如由‘3’ 修改为‘2’,即删除DTS,但仅仅修改了这个标志位并没有达到“删除DTS”的目的。虽然VLC等播放器可以正常解码且不报任何错误,在一些严格的解码器上,会无法识别新生成的数据。例如elecard分析软件会报告“无法检测流”,ipa原创 2016-11-30 16:52:47 · 893 阅读 · 0 评论 -
PS流的格式和解析总结
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]RTP Header解析RTP荷载H264码流1单个NAL单元包2分片单元FU-ARTP荷载PS流1PS包头2系统标题3节目映射流4PES分组头部写在前面:RTP的解析,网上找了很多资料,但是都不全,所以我力图整理出一个比较全面的解析,其中借鉴转载 2016-08-26 13:16:43 · 7538 阅读 · 0 评论 -
GBT28181开发:SIP协议实践 之PTZ指令详解
点击后会生成相应的XML,比如:[plain] view plain copy print? DeviceControl 11 34020000001310000053 A50F01021F0000D6 DeviceControl1134020000001310000053A50F01021F0000D转载 2016-09-14 14:35:05 · 10617 阅读 · 7 评论 -
深入解析 ext2 文件系统
很久以来,就想写一篇关于ext 家族文件系统的文章,源于我刚工作的时候,曾经一不小心rm -rf,误删除了很多文件,当时真想有个数据恢复软件能帮我把数据回复了。当然学习数据恢复,首先要学习文件系统。最近工作原因,好长时间没看学习Linux kernel 相关的东西,感觉面目可憎。扯远了,开始我们的ext2 文件系统的探索之旅。 那些介绍ext2特征的套话我就不说了,任何一转载 2016-08-29 18:06:34 · 938 阅读 · 1 评论 -
RTSP消息详解
2.请求消息格式,CR LF表示回车换行 方法 URI RTSP版本 CR LF 消息头 CR LF CR LF 消息体 CR LF3.OPTIONS命令, 得到服务器上可用的方法 CSeq头要从1开始,服务器针对请求命令的应答也应该有相同的CSeq头,这样可以知道是针对哪条请求发的应答。转载 2016-03-14 13:36:35 · 1792 阅读 · 0 评论 -
计算音频帧的播放时间(音频码流 音频帧)
音频码流(冗余数据占的比例):先简单讲一下对于ADTS header的结构的理解: 1)ADTS header位于每一个aac帧的开头,长度一般是7字节(也可以是9字节的,没见过)。 2)每个aac帧的长度固定为1024个sample(可以是1024*n,没见过n>1的情况)。 3)ADTS header中大部分信息无用,有用的只有采样率(4bit)、声道数(3bi转载 2016-02-28 13:32:32 · 4838 阅读 · 0 评论 -
h264解码时的AVCDecoderConfigurationRecord 与 CodecPrivateData
计算 AVCDecoderConfigurationRecord 得到 CodecPrivateData 数据(只有第一帧需要);计算 NALUs 得到帧数据。 计算 AVCDecoderConfigurationRecord 得到 CodecPrivateData 数据H.264 视频流的 CodecPrivateData 实际上就是 AVCDecoderConfig转载 2016-02-28 10:35:20 · 596 阅读 · 0 评论 -
Matroska文件解析之SimpleBlock
分析二进制文件是一件痛苦的事情,最近在做一个关于流媒体的项目研究,涉及到webm这种开源视频文件,它其实就是用Matroska(也就是大家熟悉的MKV容器格式)包裹VP8和VBRIS,没什么特别的。因为要研究视频流的传输过程,所以我需要把IMediaSample保存下来,下面是一个SimpleBlock十六进制显示。 0xA3, 0xB6, 0x81, 0x00, 0x28转载 2016-02-28 09:27:49 · 1124 阅读 · 0 评论 -
ffmpeg 用法总结
加水印:ffmpeg -y -i 1-0.mkv -b 5000k -r 25 -vcodec h264 -vf "movie=1.png [watermark]; [in][watermark] overlay=0:0 [out]" 2.avi原创 2016-12-05 17:38:33 · 524 阅读 · 0 评论 -
海康相机接入流媒体实现实时转发,全天录像,历史回放,视频下载
海康相机接入流媒体实现实时转发,全天录像,历史回放,视频下载原创 2017-01-05 12:29:15 · 28889 阅读 · 0 评论 -
RTMP协议分析及H.264打包原理
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。RTMP协议是一个互联网五层体系结转载 2017-03-24 16:45:44 · 847 阅读 · 0 评论 -
RTMP协议从入门到放弃
RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing)和分包(packetizing)的问题。随着VR技术的发展,视频直播等领域逐渐活跃起来,RTMP作为业内广泛使用的协议也重新被相关开发者重视起来。正好最近在从事这方面的工作,在此记录下自己对R转载 2017-03-24 16:43:30 · 491 阅读 · 0 评论 -
RTMP协议以及提取RTMP视频流组成H264视频文件
首先我们获得h264的流,在监听里,我们通过参数可以获得RTMP包 IStreamPacket,调用getData()方法直接获得包数据 放入IOBuffer。以下是提取并修改数据存成h264文件的步骤1. 添加监听 IStreamListener2. 通过IOBuffer的put函数将每次获得的包数据放入新的IObuffer3. 在流结束时将IOBuffer存转载 2017-03-24 15:13:43 · 646 阅读 · 0 评论 -
海康相机接入 sos 流媒体 使用阿里云oss储存 实现实时转发,全天录像,历史回放,视频下载
阿里云oss 参数请到阿里云的控制面板获取,在填写完参数后保存到服务器即可立即生效海康相机接入 sos 流媒体 使用阿里云oss储存 实现实时转发,全天录像,历史回放,视频下载原创 2017-04-10 14:44:51 · 5590 阅读 · 3 评论 -
关于rtmp中数据类型为0x16的封包
关于rtmp封包中数据类型为0x16的封包使用rtmp协议从FMS3中拉音视频数据的时候,会收到AMFType=0x16的封包,这种包在FMS2中从没有出现过.rtmp包头的第8个字节就是AMFType,也就是数据类型。例如AMFType=0x08表示音频包,AMFType=0x04表示Ping包等等。FMS3中为了实现H.264数据的直播而增加了一个数据类型,这个类型的值为0x1转载 2017-03-23 16:29:20 · 597 阅读 · 0 评论 -
RTMP协议分析 一、RTMP包头
RTMP协议 封包 参考Red5RTMP协议封包 由一个包头和一个包体组成,包头可以是4种长度的任意一种:12, 8, 4, 1 byte(s).完整的RTMP包头应该是12bytes,包含了时间戳,Head_Type,AMFSize,AMFType,StreamID信息, 8字节的包头只纪录了时间戳,Head_Type,AMFSize,AMFType, 4个字节的包头记录了时间戳,转载 2017-03-23 16:22:51 · 352 阅读 · 0 评论 -
常用 音频视频格式
目录(?)[+]TSPSAVIASFREALMP4FLVOGGMKVWAVEES AudioES VideoPicture转mpeg PMT 的 stream type汇总杂谈TS支持Transport Stream传输流,该类文件扩展名包括.ts、.tp、.m2ts、.tod、.m2t、mts。TS中支持下述格式的视频、音频、字幕。视频MPEG转载 2017-03-06 13:54:14 · 2986 阅读 · 0 评论 -
免费的 1080P rtsp地址 和hls地址 测试用流地址 【M3U8】测试地址
本文转自:http://www.feitianzhi.com/boke/index.php/archives/6/1080P rtsp地址 和hls地址 测试用流地址 【M3U8】测试地址rtsp直播: rtsp://www.mym9.com/101065hls直播:http://www.mym9.com:16880/101065rtsp回放: rtsp://www.mym9....转载 2019-07-18 14:08:38 · 15153 阅读 · 2 评论