- 博客(680)
- 收藏
- 关注
原创 软件工程(二):开发模型
模型适用场景优点缺点瀑布模型需求稳定的传统项目管理简单灵活性差原型模型需求不明确或探索性开发需求澄清快架构可能混乱增量模型大型系统、需快速交付早期交付,灵活集成难度高螺旋模型高风险复杂项目风险管理好成本高,复杂V模型要求高质量的软件项目测试完善变化适应弱敏捷模型快速变化的互联网项目快速适应变化需高效沟通与自律DevOps模型快速上线、自动化运维项目持续交付与反馈快初期建设成本高。
2025-04-28 22:12:08
1023
原创 系统架构设计(三):质量属性
系统响应请求的速度,处理数据的能力,系统在压力下的表现。系统能持续正常对外提供服务的能力,通常用「99.9%」、「五个9」来衡量。系统能在特定时间段内,持续正确运行,无故障出错。系统容易修改、扩展、排查、修复的能力。保护系统资源免受未授权访问或破坏的能力。系统在业务增长、用户量增加时,能够顺利扩展的能力。系统能够被有效地验证和验证改动是否正确的能力。系统新版本发布、回滚的便利性和稳定性。每个系统架构都是一场关于质量属性的权衡和妥协。通常选2~3个最重要的质量属性金融系统:安全性 > 可用性 > 可靠性。
2025-04-26 21:44:48
1052
原创 系统架构设计(二):基于架构的软件设计方法ABSD
基于架构的软件设计方法”()是一种通过从出发指导详细设计的系统化方法。它旨在,确保系统的高层结构能够有效指导后续开发。
2025-04-21 22:05:01
483
原创 音视频学习(三十五):aud
AUD 是 H.264 视频中的一个帧分隔符,用于辅助解码器识别帧起点,但在 WebRTC 等现代实时通信协议中通常不需要,甚至应剔除。
2025-04-21 21:57:02
710
原创 音视频学习(三十三):GOP详解
GOP(图像组)是视频编码中,它从一个关键帧(I帧)开始,后面跟随若干个参考帧(P帧)和预测帧(B帧)。其结构决定了视频帧的压缩和还原方式。
2025-04-13 20:24:54
1057
原创 音视频学习(三十二):VP8和VP9
发布者:Google(2013年开源)定位开放的高效视频压缩标准(H.265 竞争者)应用YouTube(主流编码格式)Chrome、Firefox、Edge、Android 原生支持WebRTC(与 VP8 并存)支持 WebM 封装格式(.webm)
2025-04-06 21:20:34
996
原创 音视频学习(三十一):DASH协议
DASH 是 HTTP 传输协议,不依赖专用流媒体服务器。支持自适应码率,确保流畅播放。适用于 VOD 和直播,兼容各种编码格式。播放器支持需要额外集成(如 dash.js、Shaka Player)。
2025-03-30 19:49:20
1158
原创 linux基础65——pkg-config
pkg-config主要用于管理库的编译和链接参数。.pc文件存储库的信息,包括头文件路径、库路径和依赖项。通过和获取库的编译和链接参数。可以与gcc或CMake结合使用,简化构建过程。适用于 Linux/Unix,Windows 需要额外配置。
2025-03-30 18:31:42
388
原创 音视频学习(三十):fmp4
FMP4 适用于流媒体传输,支持按片段加载,提高播放灵活性。主要由moov(初始化)和(片段)组成。广泛应用于 HLS(CMAF)和 DASH,降低延迟,提高兼容性。
2025-03-23 22:00:49
793
原创 linux(centos8)下编译ffmpeg
报错内容:ERROR: libass >= 0.11.0 not found using pkg-config。将上述/usr/local/lib/下编译好的动态库拷贝至/usr/local/ffmpeg/lib。报错内容:ERROR: vorbis not found using pkg-config。报错内容:ERROR: vorbis not found using pkg-config。报错内容:ERROR: opus not found using pkg-config。
2025-03-17 21:52:19
455
原创 centos8安装samba
samba服务的所属端口是139、445,此类端口即使在云上本身是没有限制的,部分端口存在安全隐患,尽管腾讯云未做限制,但运营商仍会将其拦截,从而导致无法访问。使用腾讯云服务器搭建samba服务后,windows无法访问smb。4)映射该服务器的1445端口到本地455端口。3)查看samba端口监听。5)查看映射关系是否生效。1)重新配置samba。2)重启samba服务。键盘WIN+R,执行。键盘WIN+R,执行。
2025-03-16 11:33:37
322
原创 c++ 嵌入汇编的方式实现int型自增
x86 平台上,使用LOCK XADDlock xaddl+m(*value)+m"1"(1)1memory在 ARM(32 位)上,使用ldrex和strexldrexresultaddstrexvaluestrexteq %1, #0strex在 ARM64(64 位)上,可以使用ldxr和stxrldxrvaluestxrvaluecbnzstxr。
2025-03-09 22:25:51
353
原创 c++ gcc工具链
目标推荐优化选项开发调试-Og -g一般优化-O2极限优化小代码体积浮点运算优化多线程优化任务命令安装 ARM 交叉编译器编译 ARM 64 可执行文件编译静态库编译动态库QEMU 运行 ARM 程序远程 GDB 调试。
2025-02-16 21:46:18
1023
原创 c++ CPU指令集和优化选项
Intel 处理器优化的关键是利用其支持的高级指令集(如 AVX、AVX2、SSE 等),并通过合适的编译器选项让程序充分发挥硬件性能。在 Makefile 中,可以通过设置。
2025-02-13 21:51:01
1234
原创 centos7 curl#6 - Could not resolve host mirrorlist.centos.org; 未知的错误 解决方案
centos7系统安装完成后,yum安装软件时报错“curl#6 - “Could not resolve host: mirrorlist.centos.org;未知的错误””
2025-02-09 19:17:08
900
原创 c++11总结26——std::regex
功能使用方法完全匹配搜索字符串替换字符串遍历所有匹配推荐简单匹配:直接用std::regex。老版本 C++(C++98/C++03):使用。高性能需求:使用PCRE。
2025-02-06 23:19:28
478
原创 计算机组成原理(十):异常与中断
异常是指。异常通常是由于程序指令或运行时错误导致的。常见的异常类型:程序错误程序异常是指。其主要特点是来源于软件执行过程,与硬件操作无关。
2025-01-15 21:45:55
452
原创 音视频学习(二十八):websocket-flv
flv.jsflv协议:https://blog.csdn.net/www_dong/article/details/128166528。
2024-12-25 21:29:56
1580
原创 音视频学习(二十七):SRT协议
SRT(Secure Reliable Transport)是一种开源的网络传输协议,专为实时音视频数据传输设计,具有低延迟、高可靠性和安全性等特点。
2024-12-20 21:58:53
1556
2
原创 音视频学习(二十六):http-flv
FLV 是一种容器格式,主要用于存储视频和音频数据,最早由 Adobe 用于 Flash 播放器的视频流播放。FLV 文件可以包含多种编码格式的视频(如 H.264)和音频(如 MP3 或 AAC)流,便于在 Flash 播放器上流式传输。尽管 Flash Player 已经被淘汰,FLV 格式仍然在一些直播和点播服务中被使用,尤其是在 Flash 被广泛应用于早期的 Web 视频和直播平台中。HTTP-FLV 是通过 HTTP 协议传输 FLV 视频流的技术方案。
2024-12-18 22:46:06
1437
原创 音视频学习(二十五):ts
TS(Transport Stream)是一种为广播和流媒体应用设计的容器格式,具有高容错性和灵活性,能够承载视频、音频、字幕等多种数据流。它常用于卫星电视、广播电视、视频流传输等场景。文件扩展名.ts。基本组成:TS 文件将视频和音频编码流(如 H.264、AAC)分割成固定大小的小数据包(通常为 188 字节)。每个数据包包含一个或多个编码流的包头和数据负载。TS 文件(Transport Stream)
2024-12-18 22:30:42
1126
原创 音视频学习(二十四):hls协议
HLS协议通过将视频文件切分成多个小的媒体段(通常是10秒左右的.ts文件),并通过HTTP传输给客户端。视频播放过程中,客户端按顺序请求这些小段文件来逐步播放整个视频流。HLS还支持多种码率,以便适应不同网络条件的动态调整(自适应流)。
2024-12-18 22:13:51
1738
原创 计算机组成原理(八):加法器
在中,加法器(Adder)是一个非常基础且重要的组件,用于执行二进制加法运算。加法器不仅在中起着核心作用,而且在许多其他硬件模块中也有应用,如处理器的运算、乘法器、地址生成器等。加法器的基本任务是将两个二进制数加在一起,并根据需要产生一个进位(carry)。在加法过程中,除了计算结果(sum)外,还需要处理进位(carry)的传播问题。等。
2024-12-17 21:47:30
1445
原创 计算机组成原理(六):动态链接
动态链接(Dynamic Linking)是现代计算机操作系统和程序运行中一种重要的机制,它允许程序在运行时将所需的库或模块加载到内存中,而不是在编译时将其嵌入到可执行文件中。这样可以有效节省内存空间,并使程序的维护和升级更加灵活。
2024-12-15 19:23:56
1125
原创 音视频学习(二十三):srs+ffmpeg实现rtmp的推拉流
rtmp协议:https://blog.csdn.net/www_dong/article/details/131026072rtmp收流:https://blog.csdn.net/www_dong/article/details/135073488rtmp发流:https://blog.csdn.net/www_dong/article/details/135254847。
2024-12-15 15:31:53
1153
原创 计算机组成原理(五):程序装载
在计算机组成原理中,(Program Loading)是指将程序从外存(如磁盘)加载到内存中,并为其运行做好准备的过程。程序装载是实现程序从静态存储状态到动态运行状态的关键环节,涉及地址映射、内存分配和链接等技术。
2024-12-14 22:07:40
1052
原创 计算机组成原理(四):ELF和静态链接
ELF(Executable and Linkable Format)是一种通用的二进制文件格式,广泛用于类 Unix 系统(如 Linux)。它定义了程序在编译后如何组织为可执行文件、目标文件或共享库。Windows的可执行文件格式叫做PE(Portable Executable Format)。
2024-12-11 22:16:29
1193
原创 计算机组成原理(三):函数调用
普通函数调用:每次调用时,都会涉及栈的操作,包括压栈返回地址、参数、局部变量等,创建新的栈帧,导致栈空间的变化。inline函数:通过将函数体直接插入到调用点,避免了栈的操作,不会创建新的栈帧,也不会有栈的压栈或弹栈操作。性能提升inline函数避免了函数调用的开销,减少了栈操作,因此在小型频繁调用的函数中,inline函数可以提高性能。栈溢出inline函数可以减少栈溢出的风险,因为它避免了函数调用的栈帧分配。然而,过度使用inline可能导致代码膨胀,反而影响性能。
2024-12-10 20:53:16
830
原创 计算机组成原理(二):指令跳转
指令跳转是现代计算机的核心功能之一,为程序提供灵活的控制流。在实现上,跳转通过修改程序计数器 (PC)的值来改变执行路径。
2024-12-09 20:07:31
1121
原创 c++ 梅森旋转随机数生成器类(32位和64位)
private:// 状态向量大小// 捻转参数// 常量// 高位掩码// 低位掩码// 状态向量int index;// 混合两个整数public:index = N;i < N;= 0) { // x 的最低位为1index = 0;// 后处理提高随机性return y;// 使用种子初始化i < 10;
2024-12-09 11:31:32
573
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人