- 博客(42)
- 问答 (2)
- 收藏
- 关注
原创 GB28181协议简介以及学习GB28181协议所涉及的名词汇总(入门篇)
GB28181协议简介以及学习GB28181协议所涉及的名词汇总(入门篇) 近年来,国内视频监控应用发展迅猛,系统接入规模不断扩大,涌现了大量平台提供商,平台提供商的接入协议各不相同,终端制造商需要给每款终端维护提供各种不同平台的软件版本,造成了极大的资源浪费。各地视频大规模建设后,省级、国家级集中调阅,对重特大事件通过视频掌握现场并进行指挥调度的需求逐步涌现,然而不同平台间缺乏统一的互通协议。在这样的产业背景下,基于终端标准化、平台互联互通的需求,GB/T28181应运而生。
2023-05-05 11:18:54 9217 1
原创 什么是C语言,C语言包含什么,C语言基础讲解
C语言是一门广泛应用于系统编程、嵌入式开发、科学计算等领域的编程语言,具有高效、灵活、可移植等特点。C语言的基础概念包括变量、数据类型、运算符、流程控制、函数、文件操作、预处理器、指针等,熟练掌握这些概念对于学好C语言非常重要。在学习C语言时,可以通过阅读相关书籍、视频教程、实践编程等方式提高自己的编程水平。同时也要注意规范编程风格,避免出现一些常见的错误,例如数组越界、内存泄漏、空指针访问等。总的来说,C语言是一门非常重要的编程语言,在计算机科学领域发挥着巨大的作用。
2023-02-23 14:03:49 3948
原创 RFC3984: RTP Payload Format for H.264 Video英文版官方文件,H.264视频的RTP荷载格式中文版;RFC3984中文版;
RFC3984: RTP Payload Format for H.264 Video英文版官方文件,H.264视频的RTP荷载格式中文版;RFC3984中文版;
2024-04-30 16:18:23 691
原创 基于H.264的RTP打包中的组合封包以及分片封包结构图简介及抓包分析;FU-A FU-B STAP-A STAP-B简介;
基于H.264的RTP打包中的组合封包以及分片封包结构图简介及抓包分析; FU-A FU-B STAP-A STAP-B简介;
2024-04-29 14:33:11 909
原创 RFC3984: RTP Payload Format for H.264 Video(中英文版)官方文献,RTP协议头格式分析详解;RTP载荷H264码流;
RFC3984: RTP Payload Format for H.264 Video(中英文版)官方文献,RTP协议头格式分析详解;RTP载荷H264码流;
2024-04-28 11:34:21 260
原创 linux终端下vi文本编辑器的基础使用方法
对于更复杂的操作和详细功能,建议查阅官方文档或在线教程以获取更全面的指导。如果文件存在,则打开该文件;如果不存在,则创建新文件。要从命令模式切换到插入模式,请按。要返回命令模式,请按下。
2024-03-21 13:34:08 446 2
原创 在C++11中利用for()循环遍历迭代器的同时,也可对容器内的数据进行更改
for (auto &&it : _groups) 是一个范围-based for 循环(也称为 foreach 循环),用于遍历容器 _groups 中的元素。这种循环语法在 C++11 及更高版本中引入,允许以一种更简洁的方式遍历容器中的元素。
2024-01-04 18:19:52 555
原创 auto关键字的含义以及常见用法,C++11中的关键字
关键字在这些例子中简化了代码,使得代码更加清晰,减少了手动指定变量类型的工作量,同时保持了类型安全。关键字在 C++ 中用于自动推断变量的类型,它可以让编译器根据初始化表达式的类型推导出变量的类型。提高了代码的灵活性和可读性,但过度使用时也可能降低代码的可读性,因此应在合适的场景使用。auto:这是 C++11 引入的关键字,用于自动推断变量的类型;
2024-01-04 08:44:52 596
原创 通过WinFsp将linux目录映射到windows下,ubuntu开启SSH服务,并允许ROOT权限远程登录,WinFsp使用教程;
通过WinFsp将linux目录映射到windows下,ubuntu开启SSH服务,并允许ROOT权限远程登录,WinFsp使用教程;
2023-08-26 14:43:10 1530
原创 C语言设计实现十六进制与十进制数之间的相互转换
C语言设计实现十六进制与十进制数之间的相互转换一、十六进制数转为十进制数1.设计一个C语言代码实现十六进制数例如0xFEFF转为十进制二、十进制数转换为十六进制数1.设计一个C语言代码实现十进制转为16进制数并且16进制数的形式是0x0000000,这种形式:三、总结通过上述两个代码示例,研究进行假设不同的数据,进行进制转换过程;
2023-06-14 15:51:01 21517 1
原创 linux强制复制某文件夹到另一个文件夹下
要在Linux中强制复制一个文件夹到另一个文件夹下,你可以使用。选项来递归复制整个目录结构。命令将询问是否覆盖。为了强制覆盖而不进行任何提示,你可以使用。请注意,如果目标文件夹已经存在同名的文件夹,为实际的源文件夹和目标文件夹的路径。
2023-05-23 17:14:51 1907
转载 嵌入式工程师 面试题 集-C语言
答:预编译又称预处理 , 就是做些代码文本的替换工作。# 开头的指令,比如拷贝 #include 包含的文件代码,#define 宏定义的替换 , 条件编译等,就是为编译做的预备工作的阶段。C提供的预处理功能主要有以下三种:1 )宏定义。#define2 )文件包含。#include。该指令指示编译器将xxx.xxx文件的全部内容插入此处。3 )条件编译。何时需要预编译:1 )总是使用不经常改动的大型代码体。2 )程序由多个模块组成,所有模块使用一组标准的包含文件和相同的编译选项。
2023-05-20 16:53:39 566 1
原创 在GB28181项目中,调用eXosip_register_send_register函数并且返回值为-2或者-3的含义是什么
身份验证失败:可能由于提供的用户名或密码错误或者没有提供正确的凭据,导致服务器拒绝注册请求。在某些情况下,服务器可能只允许一次注册,如果您尝试多次注册,服务器可能会拒绝请求。该返回值的含义是注册请求被拒绝,可能是由于身份验证失败或其他原因导致的。网络连接问题:可能是由于网络连接故障或配置错误,导致无法发送注册请求。注册信息格式错误:可能是由于注册请求中提供的信息格式不正确,或者缺少必需的字段,导致服务器拒绝请求。服务器故障:可能是由于服务器发生故障或配置错误导致的。参数中提供的注册信息可能存在问题。
2023-05-19 09:28:27 720
原创 Thread线程学习(3) 了解Linux线程中的pthread_cancel()函数
Thread线程学习(3) 了解Linux线程中的pthread_cancel()函数;二、使用pthread_cancel()函数的基础示例;三、使用pthread_cancel()函数取消线程的进阶示例本文深入介绍了Linux线程的pthread_cancel()函数,该函数可以用于取消一个正在执行的线程。在使用pthread_cancel()函数时,需要合理设置线程的取消状态和取消类型,并确保线程在取消前完成必要的清理工作。
2023-05-17 14:39:07 1108
原创 Thread线程学习(2) Linux线程的创建、终止和回收
线程ID(Thread ID)是用于唯一标识一个线程的值。它是在操作系统层面上分配和管理的,用于区分不同的线程。线程ID的作用是多方面的:线程标识:通过线程ID,我们可以区分不同的线程。每个线程都被分配一个唯一的线程ID,使得我们能够对特定的线程进行操作,如创建、终止、回收等。线程控制:线程ID可以用于控制线程的执行。通过线程ID,我们可以向指定的线程发送信号、设置线程的优先级、挂起或恢复线程的执行等。线程同步:在线程同步的场景中,线程ID常用于标识要进行同步操作的线程。
2023-05-16 20:28:18 649
原创 Thread线程学习(1) 了解线程的基本知识——什么是线程
线程可以被看作是进程中的一个执行路径。在一个进程中,可以同时运行多个线程,每个线程独立执行自己的任务。与进程不同的是,线程之间共享进程的资源,如内存空间、文件句柄等。线程可以更高效地利用系统资源,并能够实现并发执行。通过本文的介绍,我们了解了线程的基础知识。线程是执行计算机程序的基本单元,它能够实现并发执行、高效利用系统资源,并在许多应用场景下发挥重要作用。理解线程对于学习并发编程是至关重要的。然而,多线程编程也带来了一些挑战,如数据竞争、死锁等问题。
2023-05-15 11:40:58 287
原创 将虚拟机的Ubuntu映射为windows的网络驱动器,将Linux下的目录映射到Windows目录下,以及如何解决映射盘更换登录用户名问题;
将虚拟机的Ubuntu映射为windows的网络驱动器,将Linux下的目录映射到Windows目录下,以及如何解决映射盘更换登录用户名问题;指定的网络文件夹目前是以其他用户名和密码进行映射的。要用其他用户名和密码进行连接,首先请与所有现有连接到该网络共享的映射断开连接。
2023-05-10 20:11:20 2668 1
原创 解决Ubuntu 20.04网络无法连接,没有网络图标
网络适配器处于NAT,并且电脑主机有网络,但是Ubuntu20.04中没有网络,或者初次启动Ubuntu20.04时是由网络的,但后来不知是何原因导致网络不通,无法用浏览器访问百度。缓存文件,重启网络后问题就解决了。如下图右上角有线网络图标消失了。右上角有线网络图标重新出现了。打开浏览器可以访问百度了。
2023-05-05 15:06:46 4832 8
原创 在Linux下安装gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tgz的步骤
在Linux下安装gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tgz的步骤如下
2023-04-25 09:54:06 2903 1
原创 C++中std::vector容器的入门讲解
本文介绍了 std::vector 的用法。 std::vector 是 C++ 标准库中的一个容器,用于存储一组具有相同类型的元素。 std::vector 具有动态分配内存、随机访问、尾部添加和删除元素等特性,是C++中常用的数据结构之一。
2023-04-20 14:54:39 2445
原创 关键字public、private、protected各自的作用,以及构造函数的定义
关键字public、private、protected各自的作用,以及构造函数的定义及其基本用法
2023-04-08 13:52:18 3839
原创 “|=“运算符用法示例讲解
运算符是 C/C++ 语言中的一个复合赋值运算符,它将位或运算和赋值操作合并在一起,用于对一个整型变量的值进行按位或运算后再将结果赋值回这个变量。提高效率:使用复合赋值运算符可以避免多次对同一变量进行赋值操作,减少中间变量的使用,从而提高代码的执行效率。简化代码:使用复合赋值运算符可以将多个语句合并成一条语句,简化代码结构,提高代码的可读性和可维护性。的二进制表示中的每一位进行逻辑或运算,将结果存储到新的整数中。,即对应二进制位上的值进行按位或运算后的结果。需要注意的是,位或运算符。
2023-03-20 11:34:39 18437
原创 c语言文件操作函数的讲解;fopen();fputs();fgets();fflush();fsync();fileno();open();fclose();等函数的含义及其作用;
在C语言编程中,文件是指在存储设备上的一个数据集合,可以包含文本、二进制或其他格式的数据。文件可以被打开,读取、写入或关闭。在C语言中,可以使用标准库函数和系统调用函数来操作文件。常见的文件类型包括文本文件和二进制文件,例如文本文件可以包含文本字符串,而二进制文件可以包含任何类型的数据,包括图像、音频、视频等。
2023-03-17 14:19:54 2782
原创 图像/短视频文件的MD5码的定义、作用以及获取方式
MD5(Message-Digest Algorithm 5)是一种常用的哈希算法,用于计算文件的哈希值。哈希值是一个固定长度的字节序列,可以用于验证文件的完整性和唯一性。
2023-03-10 18:29:01 4582
原创 H264和H265的学习笔记
(2)在每个IDR关键帧前都会有SPS,PPS,等NALU,因此将SPS,PPS,IDR的NALU封装成一个PS包,其包 结构如下:PS包 = PS header + PS system header + PS system map + PES header + h264 raw data。(5)、h264 raw data:h264原始数据以SPS(序列参数集)00 00 00 01 67开始,其中包括SPS(67)、PPS(68)、SEI(06)、 IDE(65)、P帧(61)等。
2023-03-10 13:34:35 2063 1
原创 fseek( fp, SEEK_SET, SEEK_END );的作用?以及如何获取一个文件的大小?
fseek( fp, SEEK_SET, SEEK_END );的作用?以及如何获取一个文件的大小?fseek函数的作用是设置文件指针的位置,通过offset和whence参数的组合,可以实现对文件指针的灵活定位。在本代码中,通过将whence设置为SEEK_END,将offset设置为0,实现了将文件指针指向文件末尾的目的,从而可以通过ftell函数获取文件大小。
2023-03-10 09:03:10 5865
原创 send()函数的用法;MSG_NOSIGNAL什么含义?有什么作用?以及flags中参数类型有哪些各自又起到什么作用?
send()函数的用法;MSG_NOSIGNAL什么含义?有什么作用?以及flags中参数类型有哪些各自又起到什么作用?
2023-03-01 16:55:42 2649
原创 print()、printf() 和 sprintf()三者之间的区别与联系
在 C 语言中,有三种常用的输出函数:print()、printf() 和 sprintf()。虽然它们都可以用来输出字符串,但是它们的使用方法和输出方式是有区别的。下面,我们将介绍这三个函数的区别和用法。
2023-02-25 13:45:08 9411 4
原创 “&”是什么含义?与运算&入门级讲解;什么是与运算?
“&”是什么含义?与运算&入门级讲解;什么是与运算?与运算(AND)是计算机中最基础、最常用的一种逻辑运算,也被称为按位与(Bitwise AND)运算。它是指在二进制数中,对两个二进制数的每一位进行逻辑与操作,只有当两个二进制数的对应位都为1时,结果才为1;否则结果为0。下面我们来详细介绍一下与运算。
2023-02-24 18:53:43 12854
原创 warning: implicit declaration of function ‘gets‘ is invalid in C99 [-Wimplicit-function-declaration]
C项目中用gets();会产生告警的原因和解决办法warning: implicit declaration of function 'gets' is invalid in C99 [-Wimplicit-function-declaration]
2022-12-10 15:46:59 7301 1
空空如也
在java中如何写方法签名
2023-02-07
如何用C语言实现计时重传(超时检测重传)机制:
2023-01-07
为代码添加注释讲解一下
2023-01-05
gb28181中媒体控制功能出现状态码400,由哪些因素可以导致出现此问题
2022-08-20
获取系统时间函数,输出错误,如何修改
2022-08-18
给std::vector这一句代码添加注释,可简要分析
2022-08-12
gb28181场景中,map用法分析,对其进行代码注释说明
2022-08-10
char xml_body[4096];是什么意思
2022-08-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人