- 博客(11)
- 收藏
- 关注
原创 FFMPEG解码优化,过滤绿屏,灰屏问题
项目中对接gb28181码流,总会遇到一些流,在播放的时候出现绿屏或者灰屏的情况,造成这种情况的原因很多,网络丢包,乱序等等,也有可能码流本身就有问题,所以也是在网上找了很多资料目前参考两篇文章比较有参考价值.https://blog.youkuaiyun.com/huangyifei_1111/article/details/97263485?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-13.co
2021-02-22 14:13:30
5834
原创 跨平台http地址解析
有时候会遇到需要解析http地址中的IP地址,端口和后面的接口,windows有现成的函数可以解析,linux也有库能解析,不过就是为了这么个小功能带一个库有点杀鸡牛刀了。我们需求很简单就是解析出ip和端口以及后面的接口字符串而已,不多说,直接上干货//定义解析结果的结构体typedef struct urlitem{ string url; string fullpath; string query; std::map <string,string>...
2021-02-07 16:15:21
407
原创 跨平台获取本机IP地址
获取本机IP地址的功能是经常用到,这里介绍我使用的跨平台获取IP地址的方法,不多说,上干货可能有些头文件没有编译不过,自己查百度看缺什么,代码本身没问题//定义Ip相关信息结构体typedef struct ifconfig_s { char name[128]; char ip[32]; char mask[32]; char mac[32];} ifconfig_t;#ifdef WIN32//widnows版本int GF_ifconfig(...
2021-02-07 11:27:06
547
原创 FFMPEG通过管道将图片推送流媒体
最近遇到个需求,将私有协议的码流,就是比较老的视频设备啦,新设备都支持标准H264,H265了,或者私有平台协议的视频,将这些私有协议视频通过转码推送到标准的流媒体服务器,然后通过网页不使用插件进行。目前无插件播放的播放器很多比如video.js啦,一般只支持H264的flv格式,HLS等,当然也有支持H265的,不过这些都不是重点,今天的重点是怎么通过FFMPEG将私有协议的码流转化为标准的H264然后通过FFMPEG推送到流媒体服务器,从而通过网页直接播放。 这个需求...
2021-02-07 11:04:46
12934
2
原创 windows下将任意exe设置为系统服务
在项目中,经常需要将我们的写的执行程序变成随系统启动的服务程序,这里介绍一种简单的方式,主要用到NSSM。准备工作,从NSSM官网下载最新版本nssm,nssm.exe和我们的执行程序放同一级目录,建立一个bat文件内容为set nssm=nssm64.exeset AppName=执行程序名称sc create %AppName% binpath= "%~dp0%nssm%" s...
2019-01-04 10:25:50
4039
2
原创 C语言遍历目录文件并排序
有时候需要遍历目录文件,但是默认的函数并不支持指定排序的功能,现在介绍一种排序的遍历目录方式,默认按照文件名的数字进行排序window版本string split_pathexe(string szFullPath)//获取文件名{ char szPath[MAX_PATH] = {0}; char szDrive[MAX_PATH] = {0}; char sz...
2019-01-02 14:29:31
2857
原创 golang.org/x编译报错,无法访问问题解决办法
项目中使用了go语言,但是golang.org由于国内墙了,访问不了,而使用mod模式的时候强制连接,导致编译老是出问题,查了不少资料后,发现一个有效的解决办法就是使用代理编译前,导入环境变量使用代理即可export GOPROXY=https://goproxy.io...
2019-01-02 14:16:59
2186
原创 C 语言递归删除目录和目录下的文件
编程的时候经常会遇到需要删除指定目录和里面的文件目录的情况,这里献上我经常使用的代码#ifdef WIN32//判断是否是".."目录和"."目录inline bool is_special_dir(const char *path){ return strcmp(path, "..") == 0 || strcmp(path, ".") == 0;}//判断文件属性是目录...
2018-11-23 15:21:58
2216
1
原创 C语言获取执行程序所在的目录路径
平时编程经常需要获取执行程序所在的路径,WINDOWS其实很多了,但是linux相关的很少,这里给出linux和windows相应的函数,功能一模一样#ifdef WIN32string GF_GetEXEPath(){ char FilePath[255]; GetModuleFileName(NULL,FilePath,255); (strrchr(FileP...
2018-11-23 13:48:46
7924
原创 C语言判断文件所在路径和目录是否存在,不存在则创建
在编程的时候,我们经常会需要生成一些文件,而这些文件为了方便管理,会创建多级目录,有的时候文件所在的目录没有创建,比较麻烦,直接上代码#ifdef WIN32// 核查目录,若目录不存在,创建目录bool GF_FindOrCreateDirectory( const char* pszPath ){ WIN32_FIND_DATA fd; HANDLE hFind =...
2018-11-23 11:55:04
7671
原创 C语言生成UUID
在编程过程中,我们经常需要生成唯一编码标示,生成UUID是最常见的,但是一般来说,生成UUID都需要相应的库文件,并且WINDOWS和linux也不能相互兼容,较为麻烦,以下推荐可以兼容linux和windows的生成UUID方法,不需要依赖库#ifdef WIN32unsigned int getstimeval(){ unsigned int us; LARGE_IN...
2018-11-23 11:41:45
6286
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人