自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序员沙子的专栏

重来没有这么努力过,因为我知道时间不等人。

  • 博客(120)
  • 资源 (8)
  • 收藏
  • 关注

原创 [20240119]k8s基础知识学习

K8S基础知识学习

2024-01-19 10:34:17 394

原创 2023.12.27数据包分析技术与网络基础

发起连接:谁发起,真正通信前做了啥 协商连接参数:加密、如何传输 数据格式:数据如何排列、数据包的顺序。理解PDU的传输过程:PDU沿着OSI模型向下时,PDU逐渐变化、增长、各层协议均将头部或者尾部的信息加进去,到物理层时,最终形式发给计算机;-广播流量:广播数据包会发送到一个网段上的所有端口。用来实现目标:网络特征、通信主体、谁在占用带宽、高峰时间、恶意活动攻击、寻找不安全以及滥用资源的应用。数据封装过程将创建一个协议数据单元(PDU):正在发送的网络数据、增加的头部与尾部数据;

2023-12-27 19:13:33 369

原创 【2023-10-12】如何保证代码质量

如何保证代码质量

2023-10-12 10:57:58 165

原创 【2023-05-05】学JAVA第1天

入门教程,我是初学

2023-05-05 21:47:26 129 1

原创 【2023-03-04】QProcess启动进程后继承父进程fd导致的现场问题

在Linux系统上,父进程创建子进程时需要注意资源的继承,本场景中,socket文件描述符就是其中一个。

2023-03-04 23:04:45 766

原创 【2022-12-16】使用 fork-exec模型编写守护进程一个注意点

在编写 fork-exec模型的守护进程时,在while循环中,使用fork创建子进程,在pid=0的条件下,使用execvp函数替换当前程序;

2022-12-16 13:28:18 180

原创 【2022-11-07】 转-代码质量保证

代码质量保证

2022-11-07 14:08:37 463

原创 2022-10-22 下载安装编译使用Google_Protobuf一篇到位

该库的介绍自行百度,项目中使用到的话,参考这篇文档;PS:本人编写的时候,也是第一次编译,请跟随我的脚步依次进行探索。期间可能会遇到多种多样的问题,我会分享我的解决方法和思路;

2022-10-25 17:13:58 2451

原创 2022-10-17 我帮你踩了libcurl接收json数据的一些坑

libcurl接收json数据时候的一些坑,以及对应的处理方法、代码;本文贴出了详细的排查跟踪过程;

2022-10-17 14:47:29 1111

原创 2022-09-13 分享rtpproxy中处理信号signal的代码片段

rtpproxy中对于signal的处理片段

2022-09-13 17:03:28 270

原创 2022-09-09 mysql数据库连接池的1.0实现

mysql数据库连接池1.0实现

2022-09-09 13:50:56 316

原创 2022-08-27 C#调用C++DLL获取char*的常用封装技巧

C#调用C++dll获取char*的常用封装技巧

2022-08-27 15:55:19 1014

原创 2022-08-27 一个正则表达式处理RTSP鉴权的小例子

一个正则表达式处理RTSP鉴权的小例子demo

2022-08-27 15:39:00 241

原创 2022-08-23 Windows_iocp一般编程方法

演示IOCP编程的一般方法,希望对有的同学能起到帮助;

2022-08-23 17:29:45 450

原创 2022-08-12 Linux下epoll模型-高性能网络IO

本文结合代码和理论,将epoll的相关知识娓娓道来,希望对读者有用。同时对我个人也是总结和提高。

2022-08-12 16:20:37 340

原创 2022-08-01 回顾基础二叉树以及操作

基础二叉树操作

2022-08-01 17:45:58 105

原创 2022-07-22 回顾链表操作以及部分问题

回顾链表操作,以及(反转,查找公共节点,闭环等)

2022-07-22 16:30:15 162

原创 2022-07-21 回顾排序算法

回顾排序算法

2022-07-22 10:47:43 185

原创 2022-05-18 使用std::future解决std::thread的局限性(异步等待线程结束、获取一次性事件)

使用future解决一次性事件,等待线程异步结束

2022-05-18 10:08:58 665

原创 2022-05-17 惊呆了,居然发现还有人还不会写线程安全的队列~

mark给新手,线程安全队列

2022-05-17 09:56:58 173

原创 2022-05-15 周末无聊手写一份线程池代码

无聊手写一份简单的线程池代码

2022-05-15 22:40:54 336

原创 2022-05-13【webrtc应用】yangrtc/metaRTC开源库源码分析(四)

标题yangrtc/(又名metaRTC)源码分析(四)这一次,我们解决了一个通信系统中常见的问题。语音播放数据的延迟问题。项目场景:业务流程大致如下:yangrtc拉取OPUS流,解码存入队列之后;业务线程从队列取出数据,进行编码修改后丢入编码后队列;Play业务取出编码后数据进行消费。问题描述在使用yangrtc库,进行二次开发的过程中,出现了一个问题,语音数据随着“拉流时间持续时间越来越长”,播放端出现了延迟越来越大的情况?原因分析:当右侧的编码后队列,不停的膨胀,

2022-05-13 15:48:58 537

原创 Linux下QProcess不产生finished信号、waitforfinished阻塞超时【defunct进程】

项目场景:涉及Linux下的多进程编程,比较让人绕晕。初步以为,是由于在子进程中,又创建了子进程,导致的最后创建的子进程异常。问题描述使用fork函数,创建子进程A;A主要 调用execvp函数拉起QT主程序B;主程序B中调用QProcess::start函数调用进程C(ffmpeg的命令);B中connect进程C的finished信号,或者waitforfinished均失败;异常有:1. finished信号不触发; 2. ffmpeg转码明明结束了,进程却不推出; 3.

2022-04-28 22:25:56 3734

原创 【自勉-向后端架构师/音视频架构师出发】我的目标是星辰大海(4月)

向后端架构师/音视频架构师出发,我的目标是:星辰大海

2022-04-24 17:43:10 4826

原创 【经验分享】为什么视频画面解码失败之后显示的是绿幕?

项目场景:项目场景:我们在处理视频数据解码时,经常会遇到解码失败出现绿幕的情况,这个时候一般我们会去检查解码端的程序代码。问题描述在出现问题的时候,是否有考虑过以下的问题:“为什么是绿幕,不是黄幕、蓝幕或者其他颜色的?”原因分析:视频数据解码之后,是YUV格式,即分别由Y\U\V分量组成;最终画面显示的话,是需要由YUV格式转为RGB,RGB是三原色的red、green、blue的简称;当我们进行解码时,通常将YUV视频画面的数据初始化为0;当解码失败时,根据YUV与RGB的转

2022-04-22 13:37:03 1420

原创 2022-4-21 【webrtc应用】yangrtc/metaRTC开源库源码分析(三)

yangrtc/(又名metaRTC)源码分析(三)这一次,我们主要还是针对webrtc拉流操作,进行大胆的尝试,主要做了以下工作:简要归纳下一篇,将对核心代码进行分解,抽取出主流程,单独编译。文章目录yangrtc/(又名metaRTC)源码分析(三)前言一、归纳源码从SRS拉流的“粗”流程前言这次是一次大胆的尝试,做了一些归纳,希望有不足之处或者理解不对的地方,欢迎指正。同时后续随着对代码的越发深入了解,会不停的更新此文章,欢迎大家收藏。提示:以下是本篇文章正文内容,下面案例可

2022-04-21 16:32:55 624

原创 2022-04-19 【webrtc应用】yangrtc/metaRTC开源库源码分析(三)

源码在Linux场景下,播放webrtc流,能否与声卡剥离?我们的服务器,只需要执行拉流操作。

2022-04-19 10:15:58 920

原创 【2022-04-18】 浅谈由window异常处理方法转向Linux下的异常编程处理

后端服务器开发经验分享在开发Windows程序时我们在开发Windows服务器时,除了在开发阶段尽可能的处理掉“程序异常”时,经常会遇到程序在客户机上跑时,各种各种奇葩的未经处理的异常,导致我们的程序core dump; 可以看下, Windows下C++异常处理,也可以看下《Windows核心编程》中有专门一章对齐进行解释。这种情况下,必须要求服务器对常用的异常进行“捕捉”、“分析”、“过滤“、”处理”;根据经验,通常可做以下一些操作:忽略异常;执行异常处理代码后,局部恢复动作;程序进入异常结

2022-04-18 12:06:48 715

原创 【2022-04-12】ACS与CPE之间的连接异常keep问题(基于TR069)

ACS与CPE之间的连接异常keep问题(基于TR069)

2022-04-12 16:50:12 1235

转载 【转载】服务器性能调优,这篇说的挺好,很多是设计之处就应考虑的问题

【转载】服务器性能调优,这篇说的挺好,很多是设计之处就应考虑的问题

2022-04-12 12:13:19 244

原创 2022-04-03 【webrtc应用】yangrtc/metaRTC开源库源码分析(二)

接第一篇内容,分析一下play函数的大致业务流程;同时分享一种 “ 如何将yangrtc接收解码后音频数据进行二次利用”的方法?文章目录yangrtc/(又名metaRTC)源码分析(二)前言一、分析源码play函数二、使用步骤1.引入库2.读入数据总结前言开门见山:分析源码play函数;改造代码,使得自己能够单独取出音频数据(PS:这个需求应该非常通用)一、分析源码play函数关键函数palyRtc,从下图中可以看到,在de

2022-04-03 12:00:15 2636 1

原创 2022-04-02 分享简单应用层心跳保活、判断设备离线的代码段

应用层心跳保活、判断设备离线的最简代码段。

2022-04-02 08:59:53 1187

原创 2022-03-31 Amr-nb格式字节对齐、非字节对齐的转换和解码处理(含源码)

开发音频解码时,amr-nb的非字节对齐如何转换成字节对齐,不会处理或者没有头绪的话,看我这一篇。满满的源码,有助于你理解协议格式的区别哦!!

2022-03-31 15:19:19 6281

原创 2022-03-15 【srs流媒体】rtmp超时中断场景解决,如何增加srs配置文件conf的配置项

教你如何配置SRS。解决问题场景:librtmp推流时,因短暂未推送导致与SRS的连接中断;产生的Broken pipe错误,如何解决?

2022-03-15 13:49:38 3577 2

原创 2022-03-13 今天谈谈我自己对于工厂模式的理解和使用

本文主要与大家闲聊抽象工厂模式在实际中的应用,并且用我通俗易懂的语言让大家明白。如果讲的不好,还望指点。文章目录前言一、紧耦合问题二、导致什么问题二、抽象工厂模式中心思想1.引入库2.读入数据总结前言设计模式的出现,让程序员大大提高了开发效率;好的应用,也可以使得代码既简洁又可复用性高。可以说,它是前人经验的完美总结,用它不会错。提示:以下是本篇文章正文内容,下面案例可供参考一、紧耦合问题开发C++程序时,在类A中,创建其他类B\C\D的时候,经常会使用new一个对象;由于程序是随需.

2022-03-13 22:53:38 1072

原创 2022-3-12 【webrtc应用】yangrtc/metaRTC开源库源码分析(一)

学习webrtc一定要结合源码。理解webrtc基础之后,用yangrtc/metaRTC这个库去实践和检验认知。webrtc的原始api实在太大了,听我的跟我一起边分析源码,边豁然开朗吧。

2022-03-12 16:02:44 4303

原创 2022-3-11 基于libevent/evhttp模块的简易http服务器归纳小结-与前端同事的互侃

libevent的单个base对象并不能处理多并发应用请求;libevent的多线程http服务器,实际就是tcp的多线程并发处理;libevent接收请求似乎是并发接过来,但是处理的时候会报异常;

2022-03-11 21:06:00 1237

原创 2021-09-23 基于ffmpeg+nginx+rtsp的http-flv点播方案-推流失败问题分析

项目场景:使用ffmpeg拉取rtsp服务器的码流,并且推rtmp流到nginx,web前端使用flv码流进行点播;拉流以及推流使用的是ffmpeg原生接口;点播服务器使用是NGINX,并集成了http-flv模块(可以参考我的其他文档。)问题描述:ffmpeg打开rtsp的url,从in_stream的码流中,复制所需要的h264编码信息;然后写入对应的rtmp流(out_stream)中,结果发现写入函数av_interleaved_write_frame一直异常,无法写入?并且错误信

2021-09-23 17:11:48 4399

原创 2021-09-18 编译nginx带http-flv-module模块的小结

nginx编译http-flv-module模块基于nginx-1.8.0编译带http-flv-module模块步骤方法;并打开nginx的debug日志登记,捕捉调试信息;文章目录nginx编译http-flv-module模块前言一、编译准备二、编译步骤1.引入库2.打开日志登记调整为debug总结前言记录几个细节一、编译准备1. nginx1.8.0代码2. http-flv-module-master源码;3. 将http-flv-module-master源码复制到

2021-09-18 11:11:13 423

原创 2021-09-18 稍微写一些关于RTSP协议分析后的小结

RTSP协议(Real Time Streaming Protocol)偷懒了,好久没更新了。近日,在做一些视频推流方面的工作,大致的内容,就是利用ffmpeg拉取rtsp流,推送至nginx服务器,由nginx实现rtmp的视频流点播功能。遇到了一些问题是关于RTSP协议的,下面就对协议结合数据包做一些分析和总结;下面跟着我的思路一起学习和理解RTSP协议吧。文章目录RTSP协议(Real Time Streaming Protocol)前言一、什么是RTSP协议,与RTP\RTCP什么关系?二

2021-09-18 10:51:58 877

yangrtc从SRS取流分析.pcap

本人在博文中所用的抓包数据文件

2022-04-21

amr-nb格式的使用,非字节对齐转换成字节对齐的源码。

amr-nb格式的使用,非字节对齐转换成字节对齐的源码。基于这份源码,可以理解两者格式的差别,并且实现代码的转换。最终使用opencore-amr库,可以实现解码。

2022-03-31

处理amrnb解码时需要的解码库

处理amrnb解码时需要的解码库

2022-03-31

RTSP说明书以及抓包文件.zip

rtsp说明书以及抓包分析

2021-09-18

MediaInfo音视频信息解析类

有源码和说明,包括一些简单的实例,适合自己二次封装并使用。

2015-11-06

arm-linux-gcc-4.4.3.tar.gz

我在移植Qt4.6.3的时候用到,亲测可用

2013-06-17

Qt从基础入门到精通

初学QT不可多得的入门教程,充分了解QT和学会使用QT

2013-01-30

madplay移植方法及移植好的文件(部分可用)

具体说明了madplay的移植方法,亲测可行,./madplay XXXX.mp3可播放音乐

2012-05-12

空空如也

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

TA关注的人

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