自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (15)
  • 收藏
  • 关注

原创 LeetCode 100题目(python版本)待续...

给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。[0,1]因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。

2024-02-17 13:09:42 954

原创 实时asr新服务串讲

asr 语音识别

2024-01-22 18:23:18 927

原创 实时语音多实例实现设计方案(服务端)

asr服务架构设计

2024-01-17 17:43:44 978

原创 webrtc学习(七)windows界面与消息

所以注册窗口的一个很重要的功能就是指定一个消息处理函数第二步创建窗口,在内存中创建一个实例,创建窗口的时候可以指定窗口的起始位置,可以指定窗口的大小。消息分发,第一步是获取消息,通过windows底层api获取一个属于我们的消息,第二步对于键盘消息,我们还要对他进行一次转换,转换之后才能由我们的消息处理函数进行处理,第三步是消息的分发。1.WinMain函数,是程序的入口点,在这个入口点中,我们可以写我们自己的一系列逻辑,比如窗口的创建,消息的分发,都是在WinMain函数中执行的。

2023-08-22 23:09:30 99

原创 webrtc学习(七)-媒体协商

媒体协商嘴主要的作用就是看通信双方都支持那些编解码器,这些编解码器又包含那些参数,比如音频的参数包括采样率,采样大小,通道数,对于视频的参数包括分辨率帧率等一系列参数,此外传输中用的payloadtype也是协商中确定的,这些信息都是在sdp中进行的描述。

2023-08-22 22:28:37 700

原创 webrtc学习(六)重要信令级时序图

1.用户登录信令SignIn2..用户登出信令SignOut3..用户等待信令wait信令是指从服务器的消息队列中获取暂存的中转消息,比如说sdp消息,对于信令服务器来说,他没有办法给用户推送消息,只能是用户推送消息给他,或者用户从服务端拉取消息。4..透传信令message这个信令是客户端将sdp等传输给服务端,服务端会将消息转存到他想通信的用户的队列中,当对端向服务器请求消息的时候,服务器就会将暂存在队列中的消息发送给对端。以上四个信令是peerconnet中最重要的四个信令了。

2023-08-18 01:53:48 556

原创 webrtc学习(五)-peerconnect_client

conduct实现webrtc native api相关实现的调用,创建answer,创建offer,是最核心的,对于两个模块的调度;mainwindow主要用于界面的展示与调度。橙色模块主要是信令模块,所有的用户的登录登出交换信息。

2023-08-18 01:12:34 477

原创 webrtc学习(四)编译参数

表示out/Default目录生成编译脚本。编译完成之后通过该命令生成vs工程文件。查看is_debug这个参数的取值。清理该目录下生成的编译脚本。查看编译中的所有参数。

2023-08-08 23:45:05 113

原创 webrtc学习(三)数据流转

webrtc数据流程图简介

2023-08-08 22:24:08 130

原创 webrtc学习(二)webrtc架构图

接口层有web的接口层和c++的接口层。

2023-08-08 21:58:40 59

原创 实时直播实现的难点

在极端网络情况,才会有tcp和udp之争,极端网络选择udp不能选择tcp,关键的原因是是我们的延时不能超过500ms,所以不能使用tcp。tcp重传机制最小是200ms,最长120s(linux系统默认值)。tcp和udp的选择。

2023-08-07 22:54:46 27

原创 浅谈直播分类

直播从产品上可以分为两种直播带货,游戏直播,娱乐直播等。对于传统直播,使用的传输协议一般是hls/rtmp,都是基于tcp的,因为tcp机制(丢失重传)的原因,传统直播的延时可能非常大,甚至几十s的延迟,平均延时也在3秒以上。对于传统直播来说,底层大多数使用ffmpeg来实现,相对来说开发ffmpeg开发难度比较低。音视频会议,在线课堂等场景。实时互动直播,使用的协议是RTP/RTCP协议,底层是基于udp的,国内几十毫秒的延时。

2023-08-07 22:25:55 67

原创 webrtc学习(一)重要的几大特点

网络质量是webrtc非常突出的一点,主要表现在:1.数据传输的实施性(<500ms)2.可以试试准确的评估出带宽(REMB,TCC),通过丢包率以及包延迟的增长速度对带宽进行评估。3.优秀的防拥塞控制算法(GCC)4.可以保证网络带宽使用的公平性(TCP GCC)一方面保证内部多个GCC连接的公平性,另考虑与TCP共存时使用带宽的公平性5.抗丢包(NACK, FEC)6.防抖动 防乱序(jitterBuffer NetEq)7.可以传输各种数据(音视频 文本 二进制数)

2023-08-07 21:12:54 105

原创 rust交叉编译

rust交叉编译示例。

2023-08-07 11:29:09 197

原创 交叉编译pipewire

pipewire是一个服务器和用户空间API,用于 处理多媒体管道。

2023-08-05 11:08:40 227

原创 webrtc源码编译

【代码】webrtc源码编译。

2023-08-03 17:41:49 171

原创 信号量,锁,CAS,原子变量,多线程的性能问题简单测试。

对于CAS和原子变量来说,此二者都属于无锁编程效率比使用锁的方式保证同步性能肯定是要好一些。信号量可以看成属于锁的一种,效率相对来说比较低一些。可以看出来锁的效率相对要低很多,原子变量效率比较高,但是很多场景使用起来比较困难,cas有经典的ABA问题,编程时候根据具体情况进行选择。根据下面的测试结果可以得出耗时排名 锁 > 信号量 > CAS > 原子变量。共耗时:1.34078 ms。共耗时:0.453776 ms。共耗时:3.02758 ms。共耗时:1.69192 ms。...

2022-08-15 16:09:16 534 1

原创 QT修改槽函数名称之后不生效的问题

首先要理解,信号这个玩意不是真的不需要实现,他是系统自动生成moc文件里面定义的,所以续上这种问题,如果代码没有任何问题的话,考虑重新生成moc文件试试,先清除再重新生成文件即可,大部分问题可以被解决。...

2022-01-18 11:40:57 556 1

原创 数据链路广播风暴成环检测算法的实现

最近在工作中遇到个比较棘手的算法问题,抽象起来其实就类似于交换机的广播风暴的成环检测算法的实现,因为个人有过在新华三集团任职高级固网工程师的经历,所以这个算法设计与实现的任务就落在了我的头上,由于核心代码涉及公司机密,所以我就抽象出来个数学模型来和大家进行交流。 算法的核心是图的遍历,我需要将图的原型虚拟化出来,,进行深度优先遍历,然后入栈出栈保存图中所有环上的结点然后...

2020-04-06 13:17:20 407

原创 threading实现多线程的三种方法

  threading模块中Thread类是主要执行对象,可以有三种方法创建线程。1.给Thread实例传入一个函数。2.给Thread实力传如一个类实例。3.派生Thread子类创建一个子类的实例。1.给Thread实例传入一个函数:import threadingfrom time import sleep ,ctimeloops = [4,2]def loop(nloop,...

2019-09-05 11:33:11 543

原创 python多线程编程技术之thread(内容来自python核心编程)

  1.python提供了多个模块支持多线程编程。thread,threading和Queue模块等。thread模块建议研究底层用,一般用功能更完善的threading。...

2019-09-04 13:50:53 110

原创 python网络编程

客户端服务端两种常用协议TCP和UDP。UDP不需要连接直接创建套接字,发送接受数据就可以了。主要聊聊TCP。1.socket包服务器代码:from socket import *from time import ctimeHOST = ''PORT = 21567BUFSIZE = 1024ADDR = (HOST, PORT)tcpSerSock = soc...

2019-09-02 12:39:55 68

原创 python设计模式之装饰器模式

装饰器模式是给函数加上了其他的功能,下面代码实现斐波那契函数 使用装饰器计算运行时间:import timefrom functools import wrapsclass ProfilingDecorator(object): def __init__(self,f): print("Profiling decorator initiated") self.f ...

2019-08-06 13:17:26 106

原创 适配器模式

适配器模式目的是为了把当前的类封装成别的类使用,这样我们就可以根据业务需要选择一些接口去适配,而不必把所有借口都适配完,根据需要兼容项目代码。实现思路是写一个类(需要封装成的类)继承现有的类并实现该接口,调用父类方法去实现接口类。 ...

2019-07-31 16:23:55 77

原创 python的工厂模式

1.工厂模式是使用父类调用子类,使得定义和声明分离。2.抽象工厂使用abc模块实现3.@staticmethed下的函数可以使用类名直接调用,根据不同参数调用不同的子类去实例化对象。...

2019-07-29 17:10:49 70

原创 python设计模式之原型模式

1.原型模式的使用可以使用现有的对象直接复制对象,减少系统开销,copy模块里面的clone()(深拷贝)就可以实现。2.深拷贝拷贝的是整个内存里的东西,两个对象是两个不同的副本.浅拷贝是指针指向同一段内存。a=range(1,6)的直接赋值(b=a)是浅拷贝,切片赋值(a=b[:])只能用在没有复杂对象的列表里面,不然会有浅拷贝出现。...

2019-07-29 14:00:10 78

原创 使用单例模式创建一个简单的日志记录器

1.单例模式是设计模式的第一个模式,使用单例模式可以避免对象被多次创建和修改,整个程序都不会试着修改它。下面我们用单例模式设计一个日志记录器,整个程序只创建一次,可以只开辟一次内存。2.具体代码见我上传的文件,连续两次实例化之后打印相关内存地址:john@ubun:~/Project/Server$python testlog.pyinstence=Nonenewnewinsten...

2019-07-26 18:13:58 418

原创 遍历文件夹下文件 打印创建时间 并按创建时间排序 然后按时间每隔一秒发送给pacs服务器(自动化模拟CT部分代码)

直接上代码:#include <time.h>#include <sys/types.h>#include <sys/stat.h>#include <stdio.h>#include <stdlib.h>#include <iostream>#include "fstream" #include <...

2019-06-26 15:31:46 1397

原创 pacs系统Debugging with DCMTK

1.系统组成: CT 设备 连接 pacs服务器实现数据下载功能。2.pacs系统配置和搭建参考网站:https://support.dcmtk.org/redmine/projects/dcmtk/wiki/Howto_PACSDebuggingWithDCMTK3.配置完成之后测了下本地与服务器连接是否正常:jjkj@jjkj-MS-7A54-Invalid-entry-...

2019-06-13 18:40:19 612

原创 C/C++混合编程时爬过的坑(我的项目是vs2015写的,调ocr的代码进行编译,ocr这东西有点老,所以找的库都是.c的源文件)!

1.首先把单个的.c文件全部设置成不使用预编译头(坑一)。2.然后编译一下,提示GifFilePrivateType 未声明的标识(坑二),找到源文件里的定义声明:typedef struct GifFilePrivateType { GifWord FileState, FileHandle, /* Where all this data goes to! */ B...

2019-06-06 16:54:09 203

原创 syncedmem.cpp:56] Check failed: error == cudaSuccess (2 vs. 0) out of memory

1.问题描述今天用faster-rcnn跑数据模型报错:prepared the input dataF0531 13:41:25.938465 12409 syncedmem.cpp:56] Check failed: error == cudaSuccess (2 vs. 0) out of memory*** Check failure stack trace: ***...

2019-05-31 14:32:37 1272

原创 STL库的使用 vector使用如果没有办法开辟连续的空间 就会提示转储错误

使用容器注意调用它的析构函数

2019-05-24 23:53:29 192

原创 while(1){print("****************"); sleep(1);} 这样的语句输出结果是什么?

答案是输完**************** 然后程序由于缓存区没有结束符(print的问题) 控制台不显示出来,一直往缓存写,只有缓存满了之后才输出或者遇到\n!!!...

2019-05-24 23:32:54 835

原创 thread.hpp:117: error: expression cannot be used as a function f();

使用boost库,线程的命名不能和函数命名同名 :boost::thread initStoreServer(&initStoreServer); 不然会报上面的错误 .

2019-05-24 16:27:08 7946

QDoubleValidator类和QIntValidator类不生效问题

QT 自带验证器不生效,比如设置了最大值和最小值,但是依然可以输入比最大值更大的数值,上下限无效,这就需要继承重写QT界面的类函数,上面就是可以重写的类,可以直接拿来使用。

2022-02-17

program.tar.gz

信号量S的物理意义为:S>=0表示某资源的可用数,SP操作的定义:S=s-1,若S>=0,则执行p操作的进程继续执行,否则,SV操作的定义:S=S+1,如果S>0,则执行V操作的进程继续执行,如果S<=0,则从阻塞状态唤醒一个进程,并插入就绪队列,执行V操作的进程继续执行.

2019-11-01

[C++]收集雨水问题:给定n个非负整数,表示直方图的方柱的高度,同时,每个方柱的宽度假定都为1。若使用这样形状的容器收集雨水,可以盛多少水量?

linux下可以执行,将阶梯数组放入input文件里面,运行程序,结果存放在output里面,类里面有问题思路,学习的话直接下下来,读源码就可以了。

2019-10-18

extendpython.zip

给python加入自己写的库,比如我的库是用我自己的名字命名的,属于写库函数的基础代码,代码可以直接运行,也可以进行学习。

2019-09-06

python re模块正则表达式的简单程序,分割linux下的当前登陆用户的信息。

python核心编程第三版第一章的简单示例,python re模块正则表达式的简单程序。

2019-08-30

windows下关闭相关应用程序脚本(示例是关闭英雄联盟及wegame的相关进程,直接运行瞬间关掉应用程序)

杀死相关进程的方法,在dos里面输入query process 查看相关进程名,替换脚本里的进程名即可。

2019-08-28

linux C++ poll技术源码客户端及服务端实现

linux下并发访问之poll技术源码实现,有源代码和编译好的可执行文件。

2019-08-26

monitorcpu.sh

跑脚本之后可以将当时的cpu 内存等信息写入相关文件里等待调用。

2019-08-22

sendemail.zip

使用smtplib库实现邮件发送功能:从csv文件读取目标邮箱,然后使用自己的邮箱作为代理发送数据,可以镶嵌在代码里作为自动化的一部分,某中种情况下发送邮件传输信息。

2019-07-31

builder.py

python设计模式之建造这模式,指挥类直接和客户对接,调用建造类,然后调用其子类具体实现,然后生成产品对象。

2019-07-30

graphic_base.py

工厂模式实现GUI上面绘画矩形和圆,完成图形的调用,小小功能的实现为以后个人使用这种模式的时候进行参考。核心在于静态方法的调用,根据不同参数选择使用不同的子类去实例化对象。

2019-07-29

使用python写的单例模式日志记录器(设计模式之单例模式)

使用python写的使用但里模式创建的一个日志记录器,具体相关知识可以参阅我的博客。

2019-07-26

遍历文件.tar.xz

遍历文件运行precreat调用creat执行代码,每过2妙发送到别的文件夹

2019-06-27

jiejieyuce_bk.zip

我的可执行程序可以直接运行 每隔一秒进行一次截屏处理 处理后的文件放在了D盘的test.png文件里 如果你要自己编的话要下载opencv 我云盘里面有!安装方法参见https://blog.csdn.net/maizousidemao/article/details/81474834#commentBox

2019-06-07

freetype-2.8.zip

编译好了32位freetype28d.lib和64位静态库freetype28d.lib,直接加入工程就可以用,当然也可以下下来自己编译一下。

2019-06-06

空空如也

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

TA关注的人

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