自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (11)
  • 收藏
  • 关注

原创 chrome 64 bit 用于最新版本下载

全部版本下载集锦:Download Google Chrome Full Standalone Offline Installer – AskVG64bit:https://www.google.com/intl/en/chrome/thank-you.html?standalone=1&statcb=1&installdataindex=empty&defaultbrowser=0https://dl.google.com/tag/s/appguid%3D%7B

2021-09-17 15:00:57 387

原创 Ubuntu 18.04 编译部署TeamTalk

1.准备环境 建议所有的编译和安装部署,使用root用户操作,如果不切换到root用户的话,请使用sudo1.1安装依赖apt-get -y install cmake apt-get -y install libuu-dev apt-get -y install libcurl4-openssl-dev apt-get -y install libhiredis-dev apt-get install -y libapr1-dev apt-get install -y ...

2021-02-26 10:29:27 326

原创 Ubuntu20.04 Beyond Compare 4.3.7 安装

原来在Ubuntu18.04使用的版本是:bcompare-4.3.7.25118_amd64.deb,但是今天换成了bcompare-4.3.7.25118_amd64.deb,原因是新装了Ubuntu20.04,老版本bcompare-4.3.7.25118在Ubuntu 20.04上安装不了,查询Ubuntu官网,说是2019年的时候,Ubuntu移除了Qt4,而老版本需要这个。安装步骤如下:一、官网下载 wget https://www.scootersoftw...

2021-02-09 17:12:36 5249 4

原创 Feign 使用protobuf的类作为参数调用

这两天在把原来的项目迁移到spring cloud上,微服务之间的数据传输使用protobuf。 码了几天的代码。重要准备上线测试下微服务之间的接口调用功能,但是在用feign调用数据库代理接口时,总是报一个错误,在这记录下。 feign客户端接口定义如下: @FeignClient(name = "db-proxy")public interface RemoteRestFull { @RequestMapping(value = "/getUser"...

2021-01-04 14:53:28 1181 1

原创 mysql常用操作命令

做开发,有时候要自己搭建mysql数据库,一些数据库的基本操作不是经常用,经常会忘,记录下供自己以后查阅。数据库操作,可以选用可视化工具。当前我用的是SQLyog,这个工具停好用的,需要的同学可以下载链接:https://pan.baidu.com/s/1FMjbzBVAwf8yBxgq2SSmbQ提取码:y4ix现在开始正事,mysql常用操作命令,持续更新中。。。请注意,进入数据后,所有的操作命令后面都需要跟英文字符的分号";",这样才是一条完整的mysql命令下面为了方便...

2020-12-16 14:28:06 151

原创 centos7.8 安装mysql 5.7

最近弄了个centos7.8的系统,做一些项目开发。之前都是用的ubuntu,所以在一些工具上安装和操作有些不一样。记录下1.下载rpm安装源进入自己的下载目录执行下面下载命令:#cd ~#wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm2.安装mysql源#yum -y localinstall mysql57-community-release-el7-11.noarch.rpm

2020-12-16 11:25:48 287

转载 Centos7.8安装Redis5.0.3

参考:https://www.cnblogs.com/clownKing/p/13684993.html一、安装gcc依赖由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装[root@localhost local]# yum install -y gcc二、下载并解压安装包[root@localhost local]# cd /usr/local[root@localhost loca...

2020-12-03 17:06:09 117 1

原创 Ubuntu18.04.4 安装xrdp 远程桌面

因为工作的关系,需要远程桌面使用Linux,安装了最新的Ubuntu18.04.4版本。参考了网上一堆的VNC和安装xubuntu等,都不是自己想要的,ubuntu原生的桌面就非常的好。只是安装下xrdp就可以使用原生的桌面。 安装xrdp时,不用自己安装,国外牛人其实已经有安装的脚本了。 http://www.c-nergy.be/products.html 在这个链接上,下载下面的脚本: 下载上面的脚本后,添加运行权限:sudo chmod a+xStd...

2020-06-02 20:02:20 3191

原创 spring boot JAP调用mysql存储过程

因为要对接项目的mysql数据库,部分语句要使用到mysql的存储过程,保证调用的一致性。 在网上查找了好多种方式,都很复杂,而且我试验了好多种,都没有成功。最后使用了EntityManager的createNamedStoredProcedureQuery调用,成功执行mysql的存储过程。 现将方式记录,以便后面查阅。1.mysql的存储过程很复杂,主...

2020-01-19 15:59:56 1364 1

原创 ubuntu mysql开放远程访问权限

远程访问mysql时,提示错误码:2003,这是mysql没有开发远程访问权限导致。开发mysql远程访问权限步骤:1、用root用户登录mysql数据库 mysql -u root -p2、创建一个用于远程登录的mysql账号和密码create user username identified by 'password';username 为你要设置的mys...

2019-12-20 16:38:34 275

原创 Mqtt 协议格式(适合初学者)

Mqtt的协议,初步通读时,有些迷糊,故特意归纳下,像字典一样查看,容易理解Mqtt的代码。大家在学习mqtt时,还是要先看下协议,只是在解析Mqtt的协议时,可以参考下边的表格。1、CONNECTCONNECT Bits 7 6 5 4 3 2 1 0 说明   byte1 0 0 0 ...

2019-09-05 15:47:00 5297

原创 Pjsip 视频拉取实现方案

视频拉取,指的是P1拉取P2的摄像头的视频,但是P2是不知道的。使用Pjsip实现端到端的视频拉取,指的是P1通过拨打视频电话方式和P2通信,但是P2并没有通话的提示,也不用接听动作,P1就可以查看P2摄像头录像的视频,而且只能P1查看P2摄像头的视频和声音,P2是无法查看和听到P1的视频和声音的,说白了就是视频和声音是P2--->P1的单项传输。不过怎么区别普通的视频通话和拉取视频通话...

2019-08-23 10:02:51 1947

原创 Pjsip conference分析

Pjsip的Conference会议桥,主要的功能是抽象media的输入输出为port,并把port中的PCM数据进行混音,已达到多方通话的混音功能。 对conference感兴趣的主要是两点:怎么抽象port 怎么混音 conference的代码位置:pjmedia/src/pjmedia/conference.c conference在Pjsip的me...

2019-07-03 17:08:23 1598

原创 Pjsip 修改PJSUA_MAX_CALLS最大呼叫数

修改pjlib/include/pj/config_site_sample.h文件修改所有的PJSUA_MAX_CALLS, 把原来的定义4改成32如:#define PJSUA_MAX_CALLS 32 //change default 4 to 32,modify by dengfei 2 .修改pjsua_core.c修改pjsua_...

2019-07-02 16:27:20 759

原创 Pjsip信令超时机制修改

超时机制Sip信令的超时,主要指超时重发机制。Sip信令交互可以使用TCP或者UDP,如果是TCP,不需要重发,可以保证信令的时效性。但是UPD本身的机制问题,存在丢包等的情况。而sip信令的丢失容易造成sip状态的混乱。Pjsip本身已经实现了信令的超时重发机制,主要包括INVITE信令,普通的BYE,UPDATE等信令的重发。UAC:呼叫发UAS:被叫方超时修改...

2019-07-02 16:15:57 2637

原创 格式化输出Log

很多系统,都需要标准化输出Log,达到直观阅读Log的目的。这个是在Linux上测试的,如果需要移植到其他的系统,请根据系统情况实现inner_中的系统相关函数。自己实现了一个Log输出实现,可以根据自己需要自定义输出格式。完整输出如android的规范输出:05-16 15:21:18.501 11942 11942 F main:pid:100,tid:20005-16...

2019-05-16 15:37:14 2170

原创 pjsip 字符串转整数处理基本函数实现

/* * Data structure types. *//** * This type is used as replacement to legacy C string, and used throughout * the library. By convention, the string is NOT null terminated. */struct pj_str_t{...

2018-11-29 16:04:01 618

原创 Pjsip中一些有用的基本函数实现

最近在看些Pjsip的代码,想着把其中经常使用到的基本函数实现代码摘出,供以后有需要的时候使用。这部分代码,都是C的。# define isalnum(c) (isalpha(c) || isdigit(c))# define isalpha(c) (islower(c) || isupper(c))# define isascii(c) ...

2018-11-29 15:56:27 781

转载 Java中Double保留后小数位的几种方法

记录点小技巧。转载自:https://www.cnblogs.com/dichuan/p/7769098.html最近做个小实验,其中一部分要求将表单提交的数据转换为double,这个功能其实很简单直接一句Double.parseDouble(request.getParameter("chinese").trim())就可以实现,但因为是统计成绩,所以需要保留小数点后两位,所以各种百度发...

2018-10-29 16:44:15 275

原创 Android framework层的C++代码设置线程优先级

int threadFunc(void* func) { pid_t tid = androidGetTid(); androidSetThreadPriority(tid, ANDROID_PRIORITY_AUDIO); while(1) { ...... }}通过上面的代码可以设置framework层C++的线程 优先级。参考:Audio...

2018-10-18 14:05:12 1451

原创 android 中获取所有有效网卡和对应的IP地址

在开发应用时,经常要获取网络的所有网卡的IP地址,这样可以选择绑定哪个网卡。代码如下:获取所有有效的网卡:import java.net.Inet6Address;import java.net.InetAddress;import java.net.NetworkInterface;public static String[] getAllNetInterface() {...

2018-09-04 11:36:58 6032

转载 C语言中do {...} while (0) 在宏定义中的作用

转载:https://www.cnblogs.com/lanxuezaipiao/p/3535626.html如果你是一名C程序员,你肯定很熟悉宏,它们非常强大,如果正确使用可以让你的工作事半功倍。然而,如果你在定义宏时很随意没有认真检查,那么它们可能使你发狂,浪费N多时间。在很多的C程序中,你可能会看到许多看起来不是那么直接的较特殊的宏定义。下面就是一个例子:#define __set...

2018-08-15 10:59:03 575

原创 asterisk设置调试级别和打开Pjsip的打印

asterisk调试需要,需打印详细的log,此时可以进行如下操作。进入/usr/sbin目录,运行asterisk运行程序,并携带参数。#cd /usr/sbin/#./asterisk -cvvvvvddddd运行asterisk命令后,会出现cli命令界面,输入下面命令。#*CLI> core set verbose 5#*CLI> core set d...

2018-08-10 17:01:42 1685

原创 Pjsip中默认注册的模块和优先级

Pjsip中在收到request和发送response时,都是通过遍历模块来处理的。优先级的值越低,模块的优先级越高。在收到request和response时,先从高优先级的模块开始处理。在发送request和response时,先从低优先级的模块开始处理。模块的结构体如下:模块优先级如下:Pjsip 默认注册的模块如下:1.    mod-pjsua-log   ...

2018-08-10 11:12:32 1085

原创 Asterisk在mysql数据库中添加sip账号

Asterisk版本:15.5.0系统版本:Ubuntu 14.04添加sip账号有好几种方法,本文中描述的只是其中的一种方法。在网上我也找了好多配置sippeers账号的,始终没有配置成功,最后在官网中找到了配置pjsip动态账号的方法,配置成功后可以正常通话。在进行下面配置前,请先安装asterisk,安装可以参考文章:Ubuntu编译并安装voip服务器软件Asterisk官...

2018-08-07 15:31:10 5418

原创 Ubuntu编译并安装voip服务器软件Asterisk

Ubuntu系统版本:14.04 LTSAsterisk版本:asterisk-15.5.0Asterisk下载链接:https://www.asterisk.org/download-asterisk-thank-you官网的安装指导链接:https://wiki.asterisk.org/wiki/display/AST/Installing+Asterisk+From+Sourc...

2018-08-03 11:44:05 2426

原创 SharedPreferences保存对象和list数据

使用google的gson,可以把对象转换成json字符串,这样就可以使用SharedPreferences保存数据。使用时,请先下载gson的jar包。代码如下:package com.example.app;import android.content.Context;import android.content.SharedPreferences;import andr...

2018-07-31 13:58:22 4493

原创 使用android studio创建jar包工程,并导出jar

    1、打开android studio选择File->New->New Module...         选择Android Library,创建一个Android Library的jar包工程2、打开工程中的build.gradle在文件末尾添加如下脚本task deleteOldJar(type:Delete) { delete 'build/libs/APPTes...

2018-04-13 16:36:35 1588

原创 android 5.1 添加自定义的SystemServer服务

    某些情况下,在系统研发时,需要加入自定义的SystemServer服务,以便为应用提供自定义的功能。    下面介绍如果添加自定义的SystemServer系统服务。    本示例基于Android 5.1版本,如果是其他的android版本,可参考。    以自定义DDTS服务为例,步骤如下:1、创建自定义服务的aidl文件    创建aidl文件目录:frameworks/base/c...

2018-04-13 16:21:36 1638

转载 __builtin_expect 解惑

转载自:https://my.oschina.net/moooofly/blog/175019最近看 GLib 的代码遇到这个东东,网上搜索一圈,发现很多人都写过这个,自己今天才研究到,汗颜一下,扫盲一个点,留此记录为证! 首先看一篇最官方的讲解: ====== likely() and unlikely() What are they ?       In Linux kernel code, ...

2018-02-26 15:43:05 627

转载 sdp概览

比较不错的文章,转载:https://www.cnblogs.com/wendellyi/p/3593322.htmlsdp会话描述符有多行用如下格式组成的文本:  =等号旁边不允许留白。sdp会话描述符有一个session-level的段,后面会接零个或者多个media-level段。session-level部分使用”v=“开始,直到第一个media-level段。每个

2018-02-01 17:05:20 525

原创 Ubuntu 14.04搭建opensips 2.3.2和MediaProxy

网上很多搭建opensips的文章,在参考多篇文章后,自己动手搭建opensips,搭建成功。下面把自己的搭建细节记录如下:一、安装依赖包在编译opensips前,先安装相应的依赖包,否则在编译时会频繁的报错。为避免安装依赖包时,找不到相应的源,请先更新ubuntu的软件包:$ sudo apt-get update1、安装部分依赖包$ sudo apt-get install build-ess...

2018-01-31 15:57:08 3565 2

原创 ubuntu 14.04 中重定向opensips的log

在默认情况下,log是输出到syslog文件中,并保存在/var/log/syslog中。为了单独查看opensips的log,需要对opensips的log进行重定向到单独的文件中。1)修改 etc/opensips/opensips.cfg文件,增加如下命令,把log重定向到local 0上,如果源文件中已经包含,则略过log_facility=LOG_LOCAL02)在/va

2018-01-24 10:35:22 815

原创 set命令用法

显示、设置或删除 cmd.exe 环境变量。SET [variable=[string]]  variable  指定环境变量名。  string    指定要指派给变量的一系列字符串。要显示当前环境变量,键入不带参数的 SET。如果命令扩展被启用,SET 会如下改变:可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配SET 命令已使用的名称的所有变量的值。例如:    SET P会显示

2018-01-18 19:51:01 2659

原创 Pjsip笔记之pjsip使用示例

学习一个程序,最希望的就是有个demo,通过demo的API调用逻辑,跟踪程序的执行过程,了解里面的设计。Pjsip一个最简单的示例就是simple_pjsua.c,位于:pjsip_apps/src/samples目录下。不到200行的代码。却演示了pjsip初始化到拨打电话和挂点电话的API调用逻辑。主要的逻辑在main函数中:pjsua接口使用时,需要创建、初始化、开始和销毁

2017-12-15 15:14:59 16454 7

原创 sip信令超时时间调整

Pjsip在使用过程中,如果网络环境不好,sip信令在交互过程中,会出现超时的情况,此时,sip信令会重复发送信令,知道收到信令的反馈或者sip超时退出通话。针对上诉的情况,需要修改sip信令的超时时间,以便适应复杂的网络情况。sip信令的传输代码主要在:pjsip/src/pjsip/sip_transaction.c中。sip_transaction.c实现了一个状态机,根据sip

2017-11-29 17:25:07 7161 1

原创 android 原生工程中集成第三方so动态库和.a静态库和apk

在android实际的开发过程中,经过需要使用到第三方的资源,第三方提供的资源包括apk文件,so动态库文件,.a的静态库文件。而第三方提供的这些资源,经常需要集成到Android的原生工程中。 集成so动态库,Android.mk文件书写如下: #build lib soLOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)...

2017-09-09 16:20:13 3971 1

原创 强制关闭android 的selinux

有时候需要添加本地服务,但是selinux的机制,导致添加本地服务要添加很多权限。如果我们只是要调试本地服务器的功能,而不想花很多的时间在selinux权限的添加调试上,我们可以关闭selinux。      请注意,本方法是适用于可以编译android整个工程。      修改init.rc,文件路径:/system/core/rootdir/init.rc      打开init.

2017-09-06 10:55:06 22865 5

原创 source insight 4.0中宏定义做为函数返回值时,函数识别错误

在使用source insight 4.0看pjsip代码时,函数返回值多用的是宏定义。在source insight的函数列表中,可以看到,会把函数的返回值宏定义作为函数名,导致在函数列表中找函数很痛苦。在网上找了很多,没有明确的说明怎么修改,还好有个参考。https://wenku.baidu.com/view/1332be6cb7360b4c2f3f643f.html其实

2017-07-31 18:08:03 3559 2

原创 pjsip 多方通话

在pjsip 2.6的pjproject-2.6\pjsip-apps\src\pjsua 目录下,有个很好的例子,可以拨打单方通话和多方通话。        示例在:pjsua_app_cli.c里面static pj_status_t cmd_make_multi_call(pj_cli_cmd_val *cval)函数中。多方通话的逻辑和单独拨打一个电话的逻辑是一样的,只是拨打一个电话,调用...

2017-07-27 10:40:16 4092 3

logger.tar.gz

自己实现的一套格式化标准输出,具体的输出格式和实现请见博客,怎么设置资源分呢?我只想免费

2019-05-16

DHCP协议讲解.pdf

这是华为内部DHCP协议的说明文档,对DHCP协议做了简要的说明。

2012-04-09

计算机组成原理.pdf

这本书对计算机组成的描述算是写的很好的,对于想了解计算机硬件组成的人员有知识普及的作用。

2012-04-09

C语言中堆和栈的区别.pdf

清晰明确的描述出系统中堆和栈的区别,对C程序员了解底层堆栈有很大的帮助

2011-08-09

Linux C 函数手册.chm

可以查询日常使用的linux函数,就当字典还是不错的。

2010-11-22

测试理论基础.doc

比较详细的讲述了目前用到的测试技术,和测试理论知识。对测试的重点把握很好。

2009-02-20

Linux0.11内核完全注释.pdf

对linux的内核代码进行了详细的注释。

2008-11-14

嵌入式入门笔记.pdf

记录了刚接触Linux到对它有个整体认识的学习,调试过程,出现的问题及心得总结

2008-09-08

嵌入式浏览器的设计开发

结合嵌入式浏览器的具体开发应用,对嵌入式浏览器的设计思想作了比较详细的介绍。

2008-09-02

GNU Make 使用手册(中译版)

makefile规则,如何书写makefile

2008-08-21

空空如也

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

TA关注的人

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