<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[croop520的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/croop520</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; croop520]]></copyright><item><title><![CDATA[chrome 64 bit 用于最新版本下载]]></title><link>https://blog.csdn.net/croop520/article/details/120349135</link><guid>https://blog.csdn.net/croop520/article/details/120349135</guid><author>croop520</author><pubDate>Fri, 17 Sep 2021 15:00:57 +0800</pubDate><description><![CDATA[全部版本下载集锦：

Download Google Chrome Full Standalone Offline Installer – AskVG

64bit:


https://www.google.com/intl/en/chrome/thank-you.html?standalone=1&amp;statcb=1&amp;installdataindex=empty&amp;defaultbrowser=0


https://dl.google.com/tag/s/appguid%3D%7B]]></description><category></category></item><item><title><![CDATA[Ubuntu 18.04 编译部署TeamTalk]]></title><link>https://blog.csdn.net/croop520/article/details/114116745</link><guid>https://blog.csdn.net/croop520/article/details/114116745</guid><author>croop520</author><pubDate>Fri, 26 Feb 2021 10:29:27 +0800</pubDate><description><![CDATA[1.准备环境

   建议所有的编译和安装部署，使用root用户操作，如果不切换到root用户的话，请使用sudo

1.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 ...]]></description><category></category></item><item><title><![CDATA[Ubuntu20.04 Beyond Compare 4.3.7 安装]]></title><link>https://blog.csdn.net/croop520/article/details/113772900</link><guid>https://blog.csdn.net/croop520/article/details/113772900</guid><author>croop520</author><pubDate>Tue, 09 Feb 2021 17:12:36 +0800</pubDate><description><![CDATA[原来在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...]]></description><category></category></item><item><title><![CDATA[Feign 使用protobuf的类作为参数调用]]></title><link>https://blog.csdn.net/croop520/article/details/112176635</link><guid>https://blog.csdn.net/croop520/article/details/112176635</guid><author>croop520</author><pubDate>Mon, 04 Jan 2021 14:53:28 +0800</pubDate><description><![CDATA[这两天在把原来的项目迁移到spring cloud上，微服务之间的数据传输使用protobuf。

  码了几天的代码。重要准备上线测试下微服务之间的接口调用功能，但是在用feign调用数据库代理接口时，总是报一个错误，在这记录下。

  feign客户端接口定义如下：

 


@FeignClient(name = "db-proxy")
public interface RemoteRestFull {
    @RequestMapping(value = "/getUser"...]]></description><category></category></item><item><title><![CDATA[mysql常用操作命令]]></title><link>https://blog.csdn.net/croop520/article/details/111252659</link><guid>https://blog.csdn.net/croop520/article/details/111252659</guid><author>croop520</author><pubDate>Wed, 16 Dec 2020 14:28:06 +0800</pubDate><description><![CDATA[做开发，有时候要自己搭建mysql数据库，一些数据库的基本操作不是经常用，经常会忘，记录下供自己以后查阅。

数据库操作，可以选用可视化工具。当前我用的是SQLyog，这个工具停好用的，需要的同学可以下载

链接：https://pan.baidu.com/s/1FMjbzBVAwf8yBxgq2SSmbQ
提取码：y4ix


现在开始正事，mysql常用操作命令，持续更新中。。。

请注意，进入数据后，所有的操作命令后面都需要跟英文字符的分号"；"，这样才是一条完整的mysql命令

下面为了方便...]]></description><category></category></item><item><title><![CDATA[centos7.8 安装mysql 5.7]]></title><link>https://blog.csdn.net/croop520/article/details/111248048</link><guid>https://blog.csdn.net/croop520/article/details/111248048</guid><author>croop520</author><pubDate>Wed, 16 Dec 2020 11:25:48 +0800</pubDate><description><![CDATA[最近弄了个centos7.8的系统，做一些项目开发。之前都是用的ubuntu，所以在一些工具上安装和操作有些不一样。记录下

1.下载rpm安装源

进入自己的下载目录执行下面下载命令：

#cd ~

#wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

2.安装mysql源

#yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
]]></description><category></category></item><item><title><![CDATA[Centos7.8安装Redis5.0.3]]></title><link>https://blog.csdn.net/croop520/article/details/110549551</link><guid>https://blog.csdn.net/croop520/article/details/110549551</guid><author>croop520</author><pubDate>Thu, 03 Dec 2020 17:06:09 +0800</pubDate><description><![CDATA[参考：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...]]></description><category></category></item><item><title><![CDATA[Ubuntu18.04.4 安装xrdp 远程桌面]]></title><link>https://blog.csdn.net/croop520/article/details/106503295</link><guid>https://blog.csdn.net/croop520/article/details/106503295</guid><author>croop520</author><pubDate>Tue, 02 Jun 2020 20:02:20 +0800</pubDate><description><![CDATA[因为工作的关系，需要远程桌面使用Linux，安装了最新的Ubuntu18.04.4版本。参考了网上一堆的VNC和安装xubuntu等，都不是自己想要的，ubuntu原生的桌面就非常的好。只是安装下xrdp就可以使用原生的桌面。

 安装xrdp时，不用自己安装，国外牛人其实已经有安装的脚本了。

 http://www.c-nergy.be/products.html

 在这个链接上，下载下面的脚本：



 下载上面的脚本后，添加运行权限：sudo chmod a+xStd...]]></description><category></category></item><item><title><![CDATA[spring boot  JAP调用mysql存储过程]]></title><link>https://blog.csdn.net/croop520/article/details/104041159</link><guid>https://blog.csdn.net/croop520/article/details/104041159</guid><author>croop520</author><pubDate>Sun, 19 Jan 2020 15:59:56 +0800</pubDate><description><![CDATA[因为要对接项目的mysql数据库，部分语句要使用到mysql的存储过程，保证调用的一致性。

  在网上查找了好多种方式，都很复杂，而且我试验了好多种，都没有成功。最后使用了


EntityManager的createNamedStoredProcedureQuery调用，成功执行mysql的存储过程。

   现将方式记录，以便后面查阅。

1.mysql的存储过程很复杂，主...]]></description><category></category></item><item><title><![CDATA[ubuntu  mysql开放远程访问权限]]></title><link>https://blog.csdn.net/croop520/article/details/103634489</link><guid>https://blog.csdn.net/croop520/article/details/103634489</guid><author>croop520</author><pubDate>Fri, 20 Dec 2019 16:38:34 +0800</pubDate><description><![CDATA[远程访问mysql时，提示错误码:2003，这是mysql没有开发远程访问权限导致。

开发mysql远程访问权限步骤：

1、用root用户登录mysql数据库

 


mysql -u root -p

2、创建一个用于远程登录的mysql账号和密码


create user username identified by 'password';

username 为你要设置的mys...]]></description><category></category></item><item><title><![CDATA[Mqtt 协议格式（适合初学者）]]></title><link>https://blog.csdn.net/croop520/article/details/100558923</link><guid>https://blog.csdn.net/croop520/article/details/100558923</guid><author>croop520</author><pubDate>Thu, 05 Sep 2019 15:47:00 +0800</pubDate><description><![CDATA[Mqtt的协议，初步通读时，有些迷糊，故特意归纳下，像字典一样查看，容易理解Mqtt的代码。

大家在学习mqtt时，还是要先看下协议，只是在解析Mqtt的协议时，可以参考下边的表格。

1、CONNECT

CONNECT
		Bits
			7
			6
			5
			4
			3
			2
			1
			0
			说明
			　
		byte1
			0
			0
			0
		...]]></description><category></category></item><item><title><![CDATA[Pjsip 视频拉取实现方案]]></title><link>https://blog.csdn.net/croop520/article/details/100031316</link><guid>https://blog.csdn.net/croop520/article/details/100031316</guid><author>croop520</author><pubDate>Fri, 23 Aug 2019 10:02:51 +0800</pubDate><description><![CDATA[视频拉取，指的是P1拉取P2的摄像头的视频，但是P2是不知道的。

使用Pjsip实现端到端的视频拉取，指的是P1通过拨打视频电话方式和P2通信，但是P2并没有通话的提示，也不用接听动作，P1就可以查看P2摄像头录像的视频，而且只能P1查看P2摄像头的视频和声音，P2是无法查看和听到P1的视频和声音的，说白了就是视频和声音是P2---&gt;P1的单项传输。不过怎么区别普通的视频通话和拉取视频通话...]]></description><category></category></item><item><title><![CDATA[Pjsip conference分析]]></title><link>https://blog.csdn.net/croop520/article/details/94554632</link><guid>https://blog.csdn.net/croop520/article/details/94554632</guid><author>croop520</author><pubDate>Wed, 03 Jul 2019 17:08:23 +0800</pubDate><description><![CDATA[Pjsip的Conference会议桥，主要的功能是抽象media的输入输出为port，并把port中的PCM数据进行混音，已达到多方通话的混音功能。

  对conference感兴趣的主要是两点：

怎么抽象port
	怎么混音
  conference的代码位置：pjmedia/src/pjmedia/conference.c

  conference在Pjsip的me...]]></description><category></category></item><item><title><![CDATA[Pjsip 修改PJSUA_MAX_CALLS最大呼叫数]]></title><link>https://blog.csdn.net/croop520/article/details/94452756</link><guid>https://blog.csdn.net/croop520/article/details/94452756</guid><author>croop520</author><pubDate>Tue, 02 Jul 2019 16:27:20 +0800</pubDate><description><![CDATA[修改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_...]]></description><category></category></item><item><title><![CDATA[Pjsip信令超时机制修改]]></title><link>https://blog.csdn.net/croop520/article/details/94451602</link><guid>https://blog.csdn.net/croop520/article/details/94451602</guid><author>croop520</author><pubDate>Tue, 02 Jul 2019 16:15:57 +0800</pubDate><description><![CDATA[超时机制
Sip信令的超时，主要指超时重发机制。Sip信令交互可以使用TCP或者UDP，如果是TCP，不需要重发，可以保证信令的时效性。但是UPD本身的机制问题，存在丢包等的情况。而sip信令的丢失容易造成sip状态的混乱。



Pjsip本身已经实现了信令的超时重发机制，主要包括INVITE信令，普通的BYE，UPDATE等信令的重发。



UAC：呼叫发

UAS：被叫方

超时修改
...]]></description><category></category></item><item><title><![CDATA[格式化输出Log]]></title><link>https://blog.csdn.net/croop520/article/details/90263742</link><guid>https://blog.csdn.net/croop520/article/details/90263742</guid><author>croop520</author><pubDate>Thu, 16 May 2019 15:37:14 +0800</pubDate><description><![CDATA[很多系统，都需要标准化输出Log，达到直观阅读Log的目的。

这个是在Linux上测试的，如果需要移植到其他的系统，请根据系统情况实现inner_中的系统相关函数。

自己实现了一个Log输出实现，可以根据自己需要自定义输出格式。完整输出如android的规范输出：


05-16 15:21:18.501   11942   11942 F main:pid:100,tid:200
05-16...]]></description><category></category></item><item><title><![CDATA[pjsip 字符串转整数处理基本函数实现]]></title><link>https://blog.csdn.net/croop520/article/details/84634429</link><guid>https://blog.csdn.net/croop520/article/details/84634429</guid><author>croop520</author><pubDate>Thu, 29 Nov 2018 16:04:01 +0800</pubDate><description><![CDATA[
/*
 * 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
{...]]></description><category></category></item><item><title><![CDATA[Pjsip中一些有用的基本函数实现]]></title><link>https://blog.csdn.net/croop520/article/details/84634160</link><guid>https://blog.csdn.net/croop520/article/details/84634160</guid><author>croop520</author><pubDate>Thu, 29 Nov 2018 15:56:27 +0800</pubDate><description><![CDATA[最近在看些Pjsip的代码，想着把其中经常使用到的基本函数实现代码摘出，供以后有需要的时候使用。

这部分代码，都是C的。


#  define isalnum(c)        (isalpha(c) || isdigit(c))
#  define isalpha(c)        (islower(c) || isupper(c))
#  define isascii(c)      ...]]></description><category></category></item><item><title><![CDATA[Java中Double保留后小数位的几种方法]]></title><link>https://blog.csdn.net/croop520/article/details/83508382</link><guid>https://blog.csdn.net/croop520/article/details/83508382</guid><author>croop520</author><pubDate>Mon, 29 Oct 2018 16:44:15 +0800</pubDate><description><![CDATA[记录点小技巧。

转载自：https://www.cnblogs.com/dichuan/p/7769098.html

最近做个小实验，其中一部分要求将表单提交的数据转换为double，这个功能其实很简单直接一句Double.parseDouble(request.getParameter(&quot;chinese&quot;).trim())就可以实现，但因为是统计成绩，所以需要保留小数点后两位，所以各种百度发...]]></description><category></category></item><item><title><![CDATA[Android framework层的C++代码设置线程优先级]]></title><link>https://blog.csdn.net/croop520/article/details/83145685</link><guid>https://blog.csdn.net/croop520/article/details/83145685</guid><author>croop520</author><pubDate>Thu, 18 Oct 2018 14:05:12 +0800</pubDate><description><![CDATA[
int threadFunc(void* func) {
    pid_t tid = androidGetTid();
    androidSetThreadPriority(tid, ANDROID_PRIORITY_AUDIO);
    while(1) {
       ......
    }
}

通过上面的代码可以设置framework层C++的线程 优先级。参考：Audio...]]></description><category></category></item></channel></rss>