- 博客(86)
- 资源 (8)
- 收藏
- 关注
原创 GB28181简述
GB/T28181《安全防范视图计算联网系统信息传输、交换、控制技术要求》是由公安部科技信息化局提出,由全国安全防范报警系统标准化技术委员会(SAC/TC100)归口,公安部一所等多家单位共同起草的一部国家标准。
2024-01-02 09:52:19 1563
原创 GB28181 编码规则说明
国标编码由中心编码(8位)、行业编码(2位)、类型编码(3位)、网络标识(1位)和序号(6位)五个段共20位十进制数字组成。即: 系统编码=中心编码+行业编码+类型编码+网络标识+序号(000000-999999)
2023-11-17 15:17:10 445
原创 GB28181-流传输方式
服务端开启TCP端口监听,设备端主动向服务端发起TCP连接,连接成功,设备推送流数据。设备端开启TCP端口监听,服务端主动向设备端发起TCP连接,连接成功,设备推送流数据。服务端开启UDP端口监听,设备端主动向服务端发起流推送。2 TCP被动(passive)3 TCP主动(active)
2023-09-22 16:11:19 302
原创 GB28181协议-SDP详解
SDP是会话描述协议的缩写,是描述流媒体初始化参数的格式,由IETF作为RFC 4566颁布。会话信息会话名和目的。会话活动时间。由于参与会话的资源是受限制的,因此包括以下附加信息是非常有用的。会话使用的带宽信息。会话负责人的联系信息。媒体信息媒体类型,例如视频和音频。传输协议,例如RTP/UDP/IP和H.320。媒体格式,例如H.261视频和MPEG视频。多播地址和媒体传输端口(IP多播会话)。用于联系地址的媒体和传输端口的远端地址(IP单播会话)。
2023-09-22 16:05:32 590
原创 GB28181协议-SIP协议详解
(不包括关于ACK的处理)由于在一次通话建立到结束的过程中,会有多个Transaction,所以需要对Transaction进行唯一性标记,在SIP中对Transaction进行唯一标记的是branch参数。dialog的概念和session的概念类似,不同的是dialog是针对信令交互的一种概念,而session是对实际媒体发送和接收流程的描述。CT指的是请求发起者所具有的Transaction的部分,ST是请求的接受者所具有的部分。SIP请求的类型,也称作SIP方法。消息体能够显示在请求与响应中。
2023-09-22 16:01:49 1030
转载 全网最详细msys2编译libx264库
一、下载安装msys2首先我们在http://msys2.github.io/ 下载msys2。进入该网址后,可以看到如下页面:这里由于博主的电脑是win10、64位操作系统,所以选择msys2-x86_64-20190524.exe。下载下来后双击安装。这里博主安装到D盘,因为我们安装完msys2后是要在里面安装其它的软件的,随着里面安装的软件越来越多,msys2在电脑中占用的空间会越来越大,所以不推荐安装在C盘(系统盘)。安装过程中,我们可能会发现,进度会一直卡在中间,无法继续执行,然后
2021-08-05 11:29:55 745
原创 跨平台读写锁
class CMyRWLock{public: CMyRWLock(); ~CMyRWLock(); void readLock(); bool tryReadLock(); void writeLock(); bool tryWriteLock(); void unlock();private:#ifdef _WIN32 void addWriter(); void removeWriter(); unsigned long tryReadLockOnce(); HA.
2021-01-18 16:36:04 306
原创 跨平台Event
#pragma once#ifdef _WIN32#include <Windows.h>#else#include <pthread.h>#endifclass CMyEvent{public: CMyEvent(bool autoReset = true); ~CMyEvent(); void set(); void wait(); bool wait(long milliseconds); void reset();private:.
2021-01-18 16:31:57 186
原创 linux 查找内存异常问题
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fno-omit-frame-pointer")set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=address")
2020-11-26 15:03:41 563
原创 openssl pem转p12
openssl pkcs12 -export -in root.cer -inkey root.pem -out root.p12
2020-11-09 18:50:41 1222 1
转载 RTP打包G711音频数据发送
链接:https://blog.csdn.net/hiwubihe/article/details/84569152
2020-10-15 14:23:09 476
转载 RTP H264封装格式
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/marcosun_sw/article/details/85164651收起RTP协议头格式:0 1 2 30 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±+|V=2|P|X| CC |M| ..
2020-10-15 11:17:17 210
原创 CMakeList
cmake_minimum_required(VERSION 3.12)project(test)set(CMAKE_BUILD_TYPE "Debug")set(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wsign-compare -Wunused-variable -Wliteral-suffix -Wall -g -ggdb")set(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wsign-compar
2020-08-19 13:41:50 277
原创 子类指针指向父类和父类指针指向子类
父类指针指向子类:符合正常设计模式,符合多态,程序正常运行子类指针指向父类:违背设计模式,程序异常子类指针指向父类指针,父类又是指向子类的指针:可以使用dynmic_cast进行运行时类转换,将指向子类的父类指针指向子类指针,程序正常运行...
2020-07-20 16:00:49 1059 1
转载 Makefile详解
makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。因为,makefile关系到了...
2020-07-14 10:31:54 192
原创 TCP 结构体粘包算法
struct HEADER{ char szMark[11]; DWORD uSSRC; ULONGLONG useqId; DWORD utotalPacketSize; DWORD unowPacketSize; HEADER() { strcpy(szMark...
2020-05-06 10:08:18 244
转载 推荐几本学习MySQL的好书
原文链接:http://mingxinglai.com/cn/2015/12/material-of-mysql/#top推荐几本学习MySQL的好书虽然我自己目前还不是大牛,不过正走在成为大牛的路上。我个人比较幸运,实习的时候在登博(何登成)手下实习,从登博那里学到不少东西,毕业以后,有幸投奔另一位MySQL大牛姜sir(姜承尧),目前还在姜sir手下工作,对目前的工作状态比较满意...
2019-07-25 18:31:58 282
转载 mysql处理高并发,防止库存超卖
今天王总又给我们上了一课,其实mysql处理高并发,防止库存超卖的问题,在去年的时候,王总已经提过;但是很可惜,即使当时大家都听懂了,但是在现实开发中,还是没这方面的意识。今天就我的一些理解,整理一下这个问题,并希望以后这样的课程能多点。先来就库存超卖的问题作描述:一般电子商务网站都会遇到如团购、秒杀、特价之类的活动,而这样的活动有一个共同的特点就是访问量激增、上千甚至上万人抢购一个商品。然而...
2019-07-25 17:23:53 379
原创 MemoryPool内存池实现
#ifndef __MEMORY_POOL_H__#define __MEMORY_POOL_H__#include <list>#include <malloc.h>template<class T>class MemoryPool{ typedef enum{USED, IDLE}STATE_TYPE; typedef struct _ST...
2019-05-21 17:45:33 338
转载 基于boost生产者消费者模型队列
#pragma oncetemplate<typename Data>class concurrent_queue{private: std::queue<Data> the_queue; mutable boost::mutex the_mutex; boost::condition_variable the_condition_var...
2019-05-20 15:22:23 1135
转载 使用TCP协议的穿透技术
其实很早我就已经实现了使用TCP协议穿透NAT了,但是苦于一直没有时间,所以没有写出来,现在终于放假有一点空闲,于是写出来共享之。 一直以来,说起NAT穿透,很多人都会被告知使用UDP打孔这个技术,基本上没有人会告诉你如何使用TCP协议去穿透(甚至有的人会直接告诉你TCP协议是无法实现穿透的)。但是,众所周知的是,UDP是一个无连接的数据报协议,使用它就必须自己维护收发数据包的完整性,...
2019-05-13 14:13:36 3570
转载 通用的Makefile
写了一个通用的GNU/Linux环境下的Makefile。该Makefile适用于最后生成若干个可执行文件的小型C/C++工程,只要将该Makefile放在源码根目录下make,它会自动查找该目录下(包括子目录)的所有源码文件(支持.cpp .c .h格式)并自动生成正确的依赖关系,并且为了不污染源码文件夹,源码和编译过程中的中间文件会分开(Debug模式编译生成的中间文件在Debug目录下,...
2019-03-12 14:36:09 259
原创 屏幕坐标转换
bool SrcRectToDstRect(const RECT& srcRect, int nSrcW, int nSrcH, RECT& desRect, int nDesW, int nDesH){ if (nSrcW > 0 && srcRect.left >= 0 && srcRect.right >= 0) ...
2018-11-29 14:03:15 392
原创 string unicode utf8 ansi之间的转换
std::string UnicodeToUTF8( const std::wstring& str ){ char* pElementText; int iTextLen; // wide char to multi char iTextLen = WideCharToMultiByte( CP_UTF8, 0, ...
2018-11-29 14:01:40 719
原创 WebSocket++ 和 VS2013 编译指南
1.编译准备:【一】下载CMake并安装 https://cmake.org/download/【二】下载boost源码并编译 我用的boost_1_67。【三】下载openssl库 https://www.npcglib.org/~stathis/blog/precompiled-openssl/【四】下载websocket++源码 https://github.com/zap...
2018-08-04 12:18:20 2163
转载 捕获本地网络包Rawcap+Wireshark
通常wireshark不能直接抓取本地的回环数据包,当然经过一些设置后可以抓取。本文通过工具软件RawCap直接抓取本地网络包,省去设置的麻烦,然后使用Wireshark分析数据报具体信息。 1.参考文献及RawCap下载地址:http://www.netresec.com/?page=RawCap2.使用步骤:2.1)打开RawCap:输入 RawCap.exe+IP地址+抓...
2018-08-04 11:05:32 766
转载 空类所占内存的大小
成员函数还是以一般的函数一样的存在。a.fun()是通过fun(a.this)来调用的。所谓成员函数只是在名义上是类里的。其实成员函数的大小不在类的对象里面,类所占内存的大小不包括成员函数的大小,虚拟成员函数除外。同一个类的多个对象共享函数代码。而我们访问类的成员函数是通过类里面的一个指针实现,而这个指针指向的是一个table,table里面记录的各个成员函数的地址(当然不同的编译可能略有不同的实
2017-12-21 14:05:43 2037
转载 解决 py2exe打包后,总是多显示一个DOS黑色窗口
setup.py:#!/usr/bin/env python# coding=utf-8from distutils.core import setupimport py2exesetup(description ='software',version ='0.0.1',console=[{"script":"main.p
2017-11-03 15:00:11 2126
转载 C++操作Windows WIFI
本文转自:http://blog.csdn.net/freeape/article/details/45954309实现功能 无线网卡列表 无线热点扫面 无线连接(有密码,配置文件连接方式) 无线断开 重命名本地无线名(两种方式) 删除无线配置文件 开启和关闭无线网卡Native
2017-09-19 15:56:04 8422
原创 GDI+接口使用说明
详见:http://blog.csdn.net/Keep_Silence_/article/category/1227586
2017-08-30 14:08:13 993
转载 C语言字节对齐
文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。 一、概念 对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。 二、为什么要字节对齐 需要字节对齐的根本原因在于CPU访问数
2017-06-26 11:14:42 409
转载 老生常谈,正确使用memset
原文转自:http://blog.csdn.net/my_business/article/details/40537653前段项目中发现一个问题,程序总是在某个dynamic_cast进行动态转换时出异常,查了半天才发现问题原来是出在memset的使用上,虽然问题本身显而易见,但当处于几十万行代码量级中时,就变得不太那么容易定位了。本文归纳了下使用memset几个需要注意的地方,虽然
2017-06-17 11:50:47 2503
转载 判断点是否在多边形内(第二篇)
判断点是否在多边形内的算法和C语言程序判断点是否在凸多边形内,有多种方法,方法简单,计算速度也快。但实际问题中遇到的多边形不一定是凸多边形,它可能是凹多变形,或几何形状复杂如同迷宫般的多边形。判断一个点在多边形内或多边形外,比较可靠,也容易理解的方法是射线法。射线法,把多边形理解为一个有围墙的大院,一个人从院外越过一道墙,他就进了大院,如果他再越过一道墙,就出了大院
2017-05-09 11:47:45 628
转载 安装包制作工具 SetupFactory 详解
Setup Factory 是一个强大的安装程序制作工具。提供了安装制作向导界面,即使你对安装制作不了解,也可以生成专业性质的安装程序。可建立快捷方式,也可直接在 Windows 系统的注册表加入内容,还能在 Win.ini 和 System.ini 内加入设定值,更可以建立反安装选项等等。它内附的向导可以一步步的带领您做出漂亮又专业的安装程序。 本篇通过一个WinFrom项目制作安装包程序过程
2017-05-03 11:56:49 3049 1
转载 判断点是否在多边形内
//解题思想用射线法//该题思想是向由点P向x正方向发射一个射线,穿过多边形线段上的个数为奇数则在多边形内,偶数则在多边形外//具体方法是:点的Y值大于等于多边形上某个线段的最小值且小于该线段上的最大值,在该线段上取一个y值为点P.y的点P1。如果P.x private bool PointInFences(point pnt1, point[] fencePnts)
2017-04-24 22:50:09 1346
转载 windows下查询端口是否被占用
windows下的一个查询端口是否被占用的函数,若端口被占用,则输出占用该端口的进程。若有问题和宝贵意见,还请不吝赐教。bool CheckPortState( IN unsigned num){PMIB_TCPTABLE_OWNER_PID pTcpTable;pTcpTable = new MIB_TCPTABLE_OWNER_PID;//获取所需要的内存大小DWORD
2017-04-13 22:09:34 960
GB28181模拟测试
2023-09-22
GB28181-mss-1.4.0.FINAL-apache-tomcat-6.0.29-神盾
2020-08-19
occi 开发包 instantclient-12.2.0.1.0 全部压缩包 X86
2019-03-20
msinttypes-r26.zip;无法打开包括文件:“stdint.h”
2017-08-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人