自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

至虛極,守靜篤

合抱之木,生於毫末;九層之臺,起於累土;千里之行,始於足下。

  • 博客(341)
  • 资源 (19)
  • 收藏
  • 关注

原创 从WEBM文件中提取音频

要从WEBM文件中提取音频,可以使用ffmpeg这个强大的多媒体处理工具。-q:a 4:设置音频压缩质量为中等(范围从0(无损)到51(最低质量),高质量通常需要更高的值)。-c:a libmp3lame:指定输出音频编码器为MP3(使用libmp3lame)。-i input.webm:指定输入文件。output.mp3:输出文件的名称。

2024-05-17 14:36:08 171

原创 用awk做log聚合

日前拿到一份log,一个完整数据集被写在两条log里,通过索引字段排序后,呈现出如上表样式的csv格式。

2024-05-10 11:24:39 114

原创 dstat 与系统 I/O

知道系统运行了哪些服务也许并不能告诉你是谁拖慢了系统。top 命令可以报告CPU占用情况以及I/O等待时间,但这可能也不足以找出导致系统过载的任务。跟踪I/O以及上下文切换有助于揪出问题的源头。dstat 实用工具可以为你指出系统潜在的瓶颈。

2024-04-29 10:57:58 246

原创 Linux 调度优先级

Linux中的每个任务都有其优先级。这个优先级的范围从-20到19。优先级越低(-20),分配给任务的CPU时间就越多。默认的优先级是0。并非所有的任务都需要使用相同的优先级。交互式应用要求快速响应,通过 crontab 运行的后台任务只需要在下次被调度运行之前执行完毕就行。nice 命令可以修改任务的优先级。它能以指定的优先级启动任务。降低任务的优先级会释放出资源给其他任务。默认情况下任务的优先级会是10。如果要设置高优先级,比如-18。

2024-04-26 17:02:53 357 1

原创 libwebsockets的SMB 多线程

libwebsockets内在支持SMB多线程。它的用法很简单,在源码包中,有个实例可以参考:minimal-http-server-eventlib-smp.c。在lws_context_creation_info结构体中,有两个成员用于说明启用SMB线程模型。它们的缺省值为0,表示使用单线程。设置count_threads值为n,告诉LWS你有几个服务线程同时作用于context。无论起多少个线程,socket的监听依然是集中在一个线程下的。

2024-04-19 13:57:10 212

原创 Tmux 使用笔记

命令行的典型使用方式是,打开一个终端窗口,连接计算机,在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session)。会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。

2024-04-09 15:25:34 551

原创 rz 上传文件时乱码输出到终端

今天使用Xshell上传文件, 结果屏幕疯狂输出乱码。上传时rz命令没带参数。

2024-04-03 16:53:03 146

原创 vim搜索设置高亮

最近生产环境中,用VIM打开log后,发现搜索时字符串没有高亮显示。这种方式仅用于当前打开的文档,如果退出VIM后重新打开,还是不生效的。如果是自己的环境,直接在vimrc里加上。

2024-03-23 13:09:35 138

原创 FreeSwitch资源库

感谢杜老师的分享:GitHub - rts-cn/awesome-freeswitch: A curated list of awesome FreeSWITCH resources, modules, libraries and software. FreeSWITCH资源精选。

2024-03-16 15:54:31 248

原创 CentOS 7 devtoolset编译addressSanitizer版本失败的问题解决

这两天,要用Google的addressSanitizer检验内存问题,加上编译参数后,却发现编译不通过。系统是有安装libasan的,但是版本和devtoolset版本不同。在我的一个Cent OS7开发环境中,按。显然,在编译检测时,发现ibasan连接时找不到文件。的方法升级GCC版本到8.3.1。安装完毕后,重新编译就成了。

2024-03-09 10:38:10 616

原创 呼叫中心的ACD

ACD(Automatic Call Distribution)即自动呼叫分配设备。是把接入的呼叫按特定的转接规则和分配策略转接到正确的座席。其性能的优劣直接影响到呼叫中心的效率和顾客的满意度,是呼叫中心有别于一般的热线电话系统、自动应答系统、电话录音系统或其它类似号称呼叫中心但是其实不是真正呼叫中心的重要标志。

2024-03-01 16:46:58 321

原创 VIM Buffer操作命令

有点生疏了,记录一下。

2024-02-23 14:37:16 176

转载 [转]WebRTC 人声检测与舒适噪音

早期版本的舒适噪音的格式定义在RFC 1890中,这个版本的格式只包含一个字段,就是噪音级别。舒适噪音生成器在接收端根据发送到给的参数,来产生类似接收端的舒适噪音, 用来模拟发送方的噪音环境。接收方在收到新的CN包后,会更新产生舒适噪音的参数。如果B具有VAD检测功能,那么B就可以在不说话的时候,发送特殊标记的语音流或者通过减少语音流发送的频率,来减少无意义语音的发送。除此以外,人声检测还能用于减少网络中语音包传输的数据量,从而极大的降低语音的带宽,极限情况下能降低50%的带宽。很少可能是两个人都说话的。

2024-01-27 13:32:32 201

原创 docker 操作所有容器的命令

【代码】docker 操作所有容器的命令。

2024-01-18 08:57:46 717

原创 Windows git diff + beyound compare 文件夹比较

使用git difftool 命令时,发现,行为表现为一次打开一个差异文件,关闭窗口后自动打开下一个差异文件,如果需要在列表间切换,很不方便。那么,有什么办法进行文件夹比较吗?最近使用git 配置对比工具为beyound compare。

2024-01-13 15:16:42 552

原创 VIM合并两行

VIM删除命令不能直接删除换行符,如果需要把两行合并为一行,那么可以用下面命令。上面命令直接合并当前行和下面一行,之间加空格作为分隔符。如果需要连续重复操作,可以在命令前加数字n。重复命令.对合并操作也是生效的。

2024-01-06 13:41:04 630

原创 Linux报错:audit: backlog limit exceeded

今天,一台虚拟机上操作昨天打开的连接一直没响应,新打开连接连接不上。SSH校验不通过。通过IT的后台,可以看到满屏的audit服务记录的审计事件超出默认(或设置)数量 ,达到或超出容量的审计缓冲区队列也可能导致实例锁定或持续无响应状态。audit服务配置。

2023-12-29 10:52:12 872

翻译 第十二讲 打包Debug 及Release

默认条件下,CMake的模型是一个build目录仅包含一个配置,它可以是Debug、Release、MinSizeRel或RelWithDebInfo。但是,设置CPack来绑定多个build目录,以构建同一工程的多个配置是可行的。首先,我们需要确保debug和release所构建和使用的库具有不同的名字,可以用名字前缀来区分。现在,debug 和release的工程目录已经准备好了,我们可以用一个自定义配置文件来封装不同的工程配置。现在,我们需要分别设置debug和release的工程环境。

2023-12-23 13:20:42 171

原创 Vim 搜索多个关键字并高亮

在查看代码或日志的时候,经常会需要搜索某个关键字。VIM搜索时,会把关键字高亮显示,还是比较方便的。可是,一个关键字往往是不够的,能否支持多个关键字查找呢?

2023-12-13 16:37:09 1405

翻译 第十一讲 添加导出配置

添加导出配置

2023-12-08 13:11:59 123

原创 Linux地址空间随机化

ASLR(Address Space Layout Randomization)在2005年被引入到Linux的内核 kernel 2.6.12 中,早在2004年就以补丁的形式引入。内存地址的随机化,意味着同一应用多次执行所使用内存空间完全不同,也意味着简单的缓冲区溢出攻击无法达到目的。

2023-11-29 13:28:01 395

原创 利用curl测试WSS连接的建立

【代码】利用curl测试WSS连接的建立。

2023-11-16 14:08:58 1002

原创 Centos 64位环境下编译32位C程序

但是,在编译过程中,往往会碰到这样的错误:atal error: gnu/stubs-32.h: No such file or directory。在64位平台下,默认编译的是64位程序。如果需要编译32位程序,需要指定gcc 编译选项“-m32”。第一次编译32位程序,很可能有如下错误提示:cannot find -lgcc_s。

2023-11-10 08:43:10 935

原创 CentOS 7升级gcc/G++版本

Centos 7默认gcc版本为4.8,有时需要更高版本,只需要执行几条命令,无需下载源码编译编译。开发包缺省安装在/opt/rh下,每个版本的根目录下都有个enable脚本。选择需要的版本即可。注意,如果想安装7.*版本的,就改成devtoolset-7-gcc*,以此类推。这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本。

2023-11-02 13:16:00 1053

原创 根据进程pid查找该进程所属的容器

【代码】根据进程pid查找该进程所属的容器。

2023-10-30 17:24:31 221

翻译 第十讲 选择静态库还是动态库

如果你这时构建工程,你可能会发现链接失败,因为我们的代码中结合了一个没有位置独立的静态库和一个位置独立的(动态)库。的缺省行为,在没有显式指定类型(静态库,共享库,模块或对象)的前提下,控制库的构建。通过CMake文档,你能找出一个合适的模块来简化它吗?在教程里,我们将显式要求SqrtLibrary实现为静态库。里,我们需要创建一个SqrtLibrary,它会在构建安装过程中根据。为此目的,我们需要在顶层。的代码,让它变成一个真正的库,它封装了。库,我们需要修改库的实现逻辑。做些许修改,它不再使用。

2023-10-20 13:15:21 104

翻译 第九讲 : 打安装包

假设我们的工程已经完工,可以发布给其他人使用了。这和我们之前第五讲的内容不同,当时的安装是直接从源码构建的。在这一讲里,我们将创建一个安装包,它支持二进制安装及软件包管理功能。为此,我们会用到CPack来创建平台特定的安装包。接下来,设置一些CPack变量,它们存储了工程的版权和版本信息。模块,它将会使用之前设定的变量,还有当前系统的一些其它属性来设置安装包。像ZIP这样的归档生成器会归档压缩所有需要安装的文件。最后,安装得到的安装包,并验证安装的软件是否工作正常。接下来,和往常一样构建工程,并执行。

2023-09-28 15:44:34 99

原创 sed的不同执行方式

匹配root或nobody,或mail: 1.2 用\换行Shell的换行符依然有效,这有利于提高长命令的可读性。1.3 用 { }组合语句块2. sed脚本文件如果需要复用一组sed命令,可以把它们写入一个脚本文件,然后用命令行参数-f调用。数据文件data.txt内容:脚本文件cmd.sed执行命令sed脚本的注释行以井号#打头。为上面的脚本加上注释:如果sed脚本 的首行的前两个字符为#n,那么sed会自动使用-n选项(不打印),这时打印需要脚本中

2023-09-22 09:19:12 158

原创 nm: unimrcpserver: no symbols

elf(Executable and Linkable Format)文件有两个符号表,“.symtab”和“.dynsym”。“.dynsym”只保留“.symtab”中的全局符号(global symbols )。命令strip可以去掉elf文件中“.symtab”,但不会去掉“.dynsym”。近日使用官方的包安装了一个unimrcp的环境。想看一下和自己编译的符号表有什么不同。但是用nm查看时却显示不出来。还可以用readelf或 objdump。

2023-09-14 13:57:37 153

原创 sed正则表达式

很多linux命令支持正则表达式,sed也不例外。

2023-09-08 08:00:00 424

翻译 第八讲8 : 添加自定义命令和预生成文件

CMake 教程。

2023-09-01 16:28:13 64

原创 sed替换命令

sed替换命令

2023-08-22 09:00:55 3236

原创 sed 语法和基础命令

sed命令

2023-08-18 17:31:21 137

翻译 第七讲 : 添加系统探测

CMake教程 探测系统依赖性

2023-08-11 15:53:07 73

翻译 第六讲 : 添加测试 Dashboard的支持

把我们的测试结果提交到dashboard是很酷的,CMake也能支持,实现起来也很简单。我们已经为工程定义了一些测试,。现在,我们只需要执行这些测试用例,并把结果提交给CDash就可以。

2023-08-03 16:13:29 82

原创 unimrcp server的session资源分配与回收

这一行mrcp_session_t* session = sofia_agent->sig_agent->create_server_session(sofia_agent->sig_agent);又跳转到 mrcp_server_sig_agent_session_create()函数,它在mrcp_server.c里实现。这个nua_callback批向mrcp_sofia_event_callback()函数,它在mrcp_sofiasip_server_agent.c里实现。它分发处理SIP消息。

2023-07-27 18:08:30 315

原创 asan runtime does not come first in initial library list 问题解决

asan

2023-07-21 13:34:09 2858

翻译 第五讲 : 安装及测试

通常情况下,只构建可执行文件是不够的,我们还需要把它安装到系统上。通过CMake我们可以用命令指定安装规则。在CMake里为构建工程添加本地安装支持很简单,仅需要做两件事:指定安装位置和需要安装的目标文件。

2023-07-20 17:43:48 67

原创 Libwebsockets 多线程的注意事项

Libwebsockets 多线程注意事项

2023-07-07 16:15:17 1253 1

翻译 第四讲 : 添加生成器表达式

在构建系统生成过程中使用生成器表达式()

2023-06-29 15:18:20 109

SDM(MRCP-SERVER)公共云镜像使用.pdf

阿里云MRCP SERVER作用手册

2021-09-15

FreeSWITCH 1.8.pdf

VoIP and WebRTC with FreeSWITCH: The definitive source.

2020-07-21

FreeSWITCH clustering with OpenSIPS

Opensis与FreeSwitch集成的框架说明,英文版本。适合部署参考。OpenSIPS Summit 2018 - Giovanni Maruzzelli - FreeSWITCH clustering with OpenSIPS (done well)

2020-04-22

SIP_ Understanding the Session Initiation Protocol 4 ediation.docx

SIP协议工具书。很好的参考。英文第四版。SIP开发必备。

2019-08-29

FreeSWITCH 1.2

Book Description FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat-driven products, scaling from a soft-phone to a PBX and even up to an enterprise-class soft-switch. It is always exciting to design and build your own telephony system to suit your needs, but the task is time-consuming and involves a lot of technical skill. FreeSWITCH 1.2 comes to your rescue to help you set up a telephony system quickly and securely using FreeSWITCH. It is rich with practical examples and will give you all of the information and skills needed to implement your own PBX system. Book Details Publisher: Packt Publishing By: Anthony Minessale, Michael S Collins, Darren Schreiber, Raymond Chandler ISBN: 978-1-78216-100-4 Year: 2013 Pages: 428 Language: English File size: 4.5 MB File format: PDF

2014-05-21

SIP协议精解

SIP协议基础,一些精简的描述,适合初学者的一本书。

2014-04-03

思科有关七号信令的教程

思科有关七号信令的教程。基础知识。介绍七号信令的基本功能。

2014-04-03

FreeSWITCH Cookbook

freeswitch官方的第二本书,案例描述,E文的。主要案例: Configure users and phones as well as connections to VoIP providers and even Google Voice Control FreeSWITCH remotely with the powerful event socket interface Route inbound and outbound calls Handle call detail records, which includes inserting CDRs into a database Enable text-to-speech conversion in your voice applications Monitor calls via the FreeSWITCH Web interface

2013-07-01

JsSIP demo

JsSIP - 提供的一个兼容WebRTC的JS SIP库,原来托管在github上的一个demo,现在原项目地址似乎不可用了,备份一个。

2013-05-24

Asterisk: The Definitive Guide, 3rd Edition

Design a complete VoIP or analog PBX with Asterisk, even if you have no previous Asterisk experience and only basic telecommunications knowledge. This bestselling guide makes it easy, with a detailed roadmap to installing, configuring, and integrating this open source software into your existing phone system. Ideal for Linux administrators, developers, and power users, this book shows you how to write a basic dialplan step by step, and quickly brings you up to speed on the latest Asterisk features in version 1.8. Integrate Asterisk with analog, VoIP, and digital telephony systems Build a simple interactive dialplan, and dive into advanced concepts Use Asterisk’s voicemail options—including a standalone voicemail server Build a menuing system and add applications that act on caller input Incorporate a relational database with MySQL and Postgre SQL Connect to external services such as LDAP, calendars, XMPP, and Skype Use Automatic Call Distribution to build a call queuing system Learn how to use Asterisk’s security, call routing, and faxing features

2013-01-25

Asterisk Cookbook

Asterisk has a wealth of features to help you customize your PBX to fill very specific business needs. This short cookbook offers recipes for tackling dialplan fundamentals, making and controlling calls, and monitoring channels in your PBX environment. Each recipe includes a simple code solution you can put to work immediately, along with a detailed discussion that offers insight into why and how the recipe works. This book focuses on Asterisk 1.8, although many of the conventions and information presented are version-agnostic. These recipes include solutions to help you: Authenticate callers before moving on in your dialplan Redirect calls received by your auto-attendant Create an automatic call-back service Initiate hot-desking to login to and accept calls at any office device Monitor and interrupt live calls to train new employees at a call center Record calls from your Asterisk dialplan

2013-01-25

RFC4028中文版

RFC 4028的中文翻译版本。SIP keep alive机制的定义。VOIP开发必备的工具文档。

2012-10-22

FreeSWITCH 1.0.6

关于freeswitch经典书箱,英文版的。 Install and configure a complete telephony system of your own even if you are using FreeSWITCH for the first time In-depth discussions of important concepts like the dialplan, user directory, and the powerful FreeSWITCH Event Socket The first ever book on FreeSWITCH, packed with real-world examples for Linux/Unix systems, Mac OSX, and Windows, along with useful screenshots and diagrams Best practices and expert tips from the FreeSWITCH experts, including the creator of FreeSWITCH, Anthony Minessale Book Details Language : English Paperback : 320 pages [ 235mm x 191mm ] Release Date : July 2010 ISBN : 1847199968 ISBN 13 : 978-1-847199-96-6 Author(s) : Anthony Minessale, Darren Schreiber, Michael S. Collins Topics and Technologies : All Books, Networking & Telephony, Open Source

2012-04-13

RPM详细教程

详尽的RPM应用教程,包括使用和制作。linux开发必备工具

2011-09-23

Linux常用的压缩及解压缩命令

Linux常用的压缩及解压缩命令。SHELL编程必备

2011-09-22

VoiceXML基础教程

VoiceXML基础教程针对VoiceXML初学者编写,其由浅入深地介绍VoiceXML的主要内容,包括VoiceXML的历史背景与现状、VoiceXML的脚本设计基础等。

2011-09-22

awk学习笔记

awk工具的使用详解。SHELL编程的必备手册。

2011-09-13

Prentice.Hall.PTR.UNIX.Shells.by.Example.4th.Edition

Shell Example

2008-07-09

空空如也

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

TA关注的人

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