工具技巧
老衲不出家
寨都码农一枚,平常喜欢关注音视频技术,从事音视频行业小几年,主要是音视频编解码,语音处理,移动端音视频开发,博客是一个自我记录的地方,如果不妥之处,请高人不吝赐教,如有侵权,请联系我删除。tanningzhong@126.com
展开
-
git 不显示远端分支问题
背景最近在下载GitHub或者gitee项目,发现git fetch 怎么也发现不了远端分支,但是别人是正常的。多次fetch后仍然是不显示远端分支。琢磨半天,解决方式如下解决可执行git config -l 命令,查看git fetch 的配置,上述问题可能是没有进行git fetch的配置(或者只配置了上游分支),可执行付下命令进行配置:git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/*再次执行git fe原创 2021-03-29 11:21:51 · 3322 阅读 · 1 评论 -
Typora 更改编辑器的宽度
Typora 更改编辑器的宽度文章目录1、设置 源码编辑器 的宽度 1.1、验证 2、设置 编辑器(主题) 的宽度1、设置 源码编辑器 的宽度Typora 安装目录,默认为C:\Program Files\Typora\resources\app\style\下,找到base-control.css文件 ,打开后搜索#typora-source,找到max-width(或者直接搜索max-width) ,将其值改为1200,如图所示:1.1、验证重启 Ty...原创 2020-12-07 14:45:24 · 1409 阅读 · 1 评论 -
TCP粘包问题分析和解决
原文链接:https://www.cnblogs.com/kex1n/p/6502002.html在socket网络程序中,TCP和UDP分别是面向连接和非面向连接的。因此TCP的socket编程,收发两端(客户端和服务器端)都要有成对的socket,因此,发送端为了将多个发往接收端的包,更有效的发到对方,使用了优化方法(Nagle算法),将多次间隔较小、数据量小的数据,合并成一个大的数据块,然后进行封包。这样,接收端,就难于分辨出来了,必须提供科学的拆包机制。对于UDP,不会使用块的合并优化算法,原创 2020-10-20 21:03:13 · 414 阅读 · 0 评论 -
标准时间和时间戳转换
c++11 标准时间和时间戳转换//// Created by monktan on 2020/10/16.//#include <cstdint>#include <iostream>#include <chrono>std::time_t getTimeStamp(){ std::chrono::time_point<std::chrono::system_clock,std::chrono::milliseconds> tp原创 2020-10-16 11:03:13 · 1036 阅读 · 0 评论 -
ffmpeg截取视频片段命令优化
正常简单命令:ffmpeg -i input.mp4 -ss 1:05 -t 10 output.mp4-ss 5指定从输入视频第1:05秒开始截取,-t 10指明最多截取10秒。但是上面的命令可能会比较慢,更好的命令如下:ffmpeg -ss 1:05 -i input.mp4 -t 10 -c:v copy -c:a copy output.mp4把-ss 1:05放到-i前面,与原来的区别是,这样会先跳转到第1:05秒在开始解码输入视频,而原来的会从开始解码,只是丢弃掉前1原创 2020-06-11 16:01:49 · 2093 阅读 · 0 评论 -
MAC Wireshark 打开错误
MAC Wireshark 打开错误,打开遇到 you don't have permission to capture on that device mac 错误的解决方案1. 打开终端,输入命令whoami2. 假设用户是tomcat3. 进入/dev目录cd /devsudo chown tomcat:admin bp*4. 重新打开wireshark,成功解决...原创 2020-05-28 15:14:42 · 581 阅读 · 2 评论 -
最新vs2019编译libevent-2.1.11-stable
最新vs2019编译libevent-2.1.11-stable准备工作安装vs2019略下载lievent下载地址开始编译打开vs命令行进入到libevent库目录执行nmake /f Makefile.nmake提示如下报错解决办法编辑minheap-internal.h文件,在最前面添加include <stdint.h>头文件,重新执行上述编译...原创 2020-03-29 13:20:28 · 1721 阅读 · 1 评论 -
Jni本地多线程回调Java函数,env->findClass()失败。
lipeng32768 最后发布于2014-12-19 21:27:06 阅读数 5071 收藏展开遇到的问题,Native层本地多线程回调Java函数时env->findClass()失败。前面的代码是这样的在JNI_OnLoad记录全局变量g_vmstaticJavaVM*g_vm=NULL;JNIEXPORTjintJNICALLJNI_OnLoad(J...转载 2020-03-18 09:44:56 · 1218 阅读 · 1 评论 -
Mac系统应用已经删除,但是右键还有残留的解决办法
打开终端,执行如下命令即可。/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user...原创 2020-03-02 16:19:01 · 4189 阅读 · 5 评论 -
C/C++下__FILE__参数过长的问题解决办法
C/C++下__FILE__参数过长的问题解决办法编译mycode库时,爆出一个编译问题:snprintf(msg, sizeof(msg), “OOTB, %s:%d at %s”, FILE, LINE, func);这儿报告msg的空间不足以存放后续的内容,此字符串在实际编译后,存放的内容大小是固定的,但由于__FILE__带了全路径,导致报告空间不够。搜索一通后解决办法如下:如...原创 2020-02-19 19:13:26 · 1221 阅读 · 0 评论 -
git常用别名
[alias] s = status st = status sb = status -s -b ############# d = diff di = diff dc = diff --cached dk = diff --check dck = diff --cached --chec...原创 2019-12-21 11:22:44 · 204 阅读 · 0 评论 -
Error message when starting vim: “Failed to set locale category LC_NUMERIC to en_CH” (or en_BR, en_R
mac vim配置后改变系统语言,报出如下警告:Warning: Failed to set locale category LC_NUMERIC to en_CH.Warning: Failed to set locale category LC_TIME to en_CH.Warning: Failed to set locale category LC_COLLATE to en_...原创 2019-12-21 11:13:25 · 690 阅读 · 0 评论 -
git常用命令列表
1 常用$ git remote add origin git@github.com:yeszao/dofiler.git # 配置远程git版本库$ git remote set-url --add origin git@gitee.com:yeszao/dnmp.git # 多添加一个push地址,这样一次可以push到多个remote$ git pull ori...原创 2019-12-21 11:03:59 · 178 阅读 · 0 评论 -
mac使用brew update无反应,更新慢解决办法
使用中科大的镜像替换默认源第一步,替换brew.gitcd "$(brew --repo)"git remote set-url origin https://mirrors.ustc.edu.cn/brew.git第二步:替换homebrew-core.gitcd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"g...原创 2019-12-20 10:45:19 · 899 阅读 · 0 评论 -
解决studio Connection refused (Connection refused)
Android studio忽然抽风,不管怎么尝试都无法build,查看studio的log,发现如下日志:2018-04-12 18:12:19,318 [d thread 8] WARN - ect.sync.idea.ProjectSetUpTask - Connection refused (Connection refused) 2018-04-12 18:12:1...原创 2019-12-20 10:43:09 · 4495 阅读 · 2 评论 -
PlanUML画图札记之六 ------ 对象图
对象图对象的定义使用关键字object定义实例。@startumlobject firstObjectobject "My Second Object" as o2@enduml对象之间的关系对象之间的关系用如下符号定义:Type Symbol Image Extension <|-- ...原创 2019-11-21 16:28:21 · 245 阅读 · 0 评论 -
PlanUML画图札记之五 ------ 状态图
状态图简单状态使用([*])开始和结束状态图。使用-->添加箭头。@startuml[*] --> State1State1 --> [*]State1 : this is a stringState1 : this is another stringState1 -> State2State2 --> [...原创 2019-11-21 16:26:08 · 362 阅读 · 0 评论 -
PlanUML画图札记之四 ------ 组件图
组件图我们来看几个例子 := 组件 =组件必须用中括号括起来。还可以使用关键字component定义一个组件。 并且可以用关键字as给组件定义一个别名。 这个别名可以在稍后定义关系的时候使用。@startuml[First component][Another component] as Comp2 component Comp3component [Las...原创 2019-11-21 16:24:29 · 1575 阅读 · 1 评论 -
PlanUML画图札记之三 ------ 活动图
活动图简单活动使用(*)作为活动图的开始点和结束点。有时,你可能想用(*top)强制开始点位于图示的顶端。使用-->绘制箭头。@startuml(*) --> "First Activity""First Activity" --> (*)@enduml箭头上的标签默认情况下,箭头开始于最...原创 2019-11-21 16:23:30 · 398 阅读 · 0 评论 -
PlanUML画图札记之二 ------ 类图
= 类图 =类之间的关系类之间的关系通过下面的符号定义 :Type Symbol Drawing Extension(扩展) <|-- Composition(组合) *-- Aggregation(聚合) o-- 使用..来代替--可以得到点 线.在这些规则下,也可以绘制下列图形...原创 2019-11-21 16:21:36 · 545 阅读 · 0 评论 -
PlanUML画图札记之一 ------ 时序图
PlanUML可以画出漂亮的流程图,时序图之类的,IDEA和CLION之类的IDE都能安装插件时序图简单示例你可以用->来绘制参与者之间传递的消息, 而不必显式地声明参与者。你也可以使用-->绘制一个虚线箭头。另外,你还能用<-和<--,这不影响绘图,但可以提高可读性。 注意:仅适用于时序图,对于其它示意图,规则是不同的。@star...原创 2019-11-21 16:19:36 · 1614 阅读 · 0 评论 -
PyPDF2的使用
pdf使用Adobe公司开发,现在由国际标准化组织ISO进行维护。PDF合成包含链接和按钮,表单字段,音频,视频和业务逻辑在这篇文章中,我们将学习如何做一些pdf的操作:从PDF中提取文字旋转pdf页合并pdf分割pdf向pdf页中添加水印使用简单的python脚本1、安装我们将使用第三方的模块 PyPDF2PyPDF2是作为PDF...原创 2019-11-14 10:18:31 · 2314 阅读 · 0 评论 -
VS2010: WinSDK7.1版DirectShow--从安装到使用
1,尝试安装这个DirectX June 2010。安装一切正常,但最后就是说“安装失败”,错误代码是“S1023”。网上调查半天,原来如此。以下的更新必须先卸掉。Microsoft Visual C++ 2010 x86/x64 redistributable - 10.0.(number over 30319)之后安装成功。再用Windows U原创 2015-07-09 13:15:49 · 903 阅读 · 0 评论 -
Mac Clion 2019.01使用Makefile单步调试
Mac Clion 2019.01使用Makefile单步调试安装Clion略使用Clion单步调试安装MakeFile插件在File>>setting>>plugins>>makefile support>>install安装,如下图所示:编译调试安装完插件后,编写好Makefile文件,选中Makefile文件右键,选中run M...原创 2019-04-08 10:59:43 · 4270 阅读 · 0 评论 -
Git 分支命名规范(完)
Git 分支命名规范分支: 命名: 说明: 主分支 master 主分支,所有提供给用户使用的正式版本,都在这个主分支上发布开发分支 dev 开发分支,永远是功能最新最全的分支功能分支 feature-* 新功能分支,某个功能点正在开发阶段发布版本 release-*...原创 2019-01-07 19:28:21 · 4864 阅读 · 0 评论 -
正则表达式需要转义的特殊字符
正则表达式中有些字符具有特殊的含义,如果在匹配中要用到它本来的含义,需要进行转义(在其前面加一个\)。下面总结了常见的一些需要转义的特殊字符:$ 匹配输入字符串的结尾位置。如果设置了RegExp对象的Multiline属性,则 $ 也匹配,如‘\n’或’\r’。() 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符。* 匹配前面的子表达式零次或多次。+ 匹配前...转载 2019-01-01 15:02:52 · 9424 阅读 · 1 评论 -
markdown时序图语法
语法- 代表实线 , 主动发送消息,比如 request请求> 代表实心箭头 , 同步消息,比如 AJAX 的同步请求-- 代表虚线,表示返回消息,spring Controller return>> 代表非实心箭头 ,异步消息,比如AJAX请求源码sequenceDiagram Title: md时序图练习 participant 客户端 p...原创 2019-01-10 17:03:22 · 7319 阅读 · 0 评论 -
mac下更新vim至最新版本
mac自带vim,但是并不是最新版本,如果我们需要更新vim。 1.安装homebrew,如果已安装则不需要安装,/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2.安装Vimbrew install vim3.改变vim的别名 ali...原创 2018-12-11 10:25:45 · 4307 阅读 · 0 评论 -
Mac下安装ipython3
安装python3brew install python3## 此时,命令行输入python3则打开python3,输入python则打开python2安装ipython3sudo pip install ipythonsudo pip3 install ipython ## ipython3 install配置安装好以后,输入ipython3命令发现没有这个,所以进入到 /us...原创 2018-12-10 19:36:08 · 2183 阅读 · 0 评论 -
Cmake学习笔记
cmake添加debug和release参数SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb ")SET(CMAKE_CXX_FLAGS_RELEASE "${ENV{CXXFLAGS} -O3 -Wall")cmake添加参数去掉"__FILE__"路径set(CMAKE_CXX_FLAGS "${CMAKE_CX...原创 2019-04-19 10:06:43 · 1530 阅读 · 0 评论 -
Linux rsync环境搭建(非ROOT搭建)
Linux rsync环境搭建(非ROOT搭建)环境准备rsync下载https://rsync.samba.org/ftp/rsync/src/rsync-3.1.3.tar.gzinotify下载https://github.com/rvoicilas/inotify-tools/archive/3.20.1.tar.gz环境信息下面是两台服务器的结构,分别为主机...原创 2019-05-09 14:50:22 · 2370 阅读 · 0 评论 -
Python 调用ffmpeg视频转码mp4
import os # import fnmatch import reimport subprocessgl_file_list = []gl_failed_list = []def getFilesPath(path): # 获得指定目录中的内容 file_list = os.listdir(path) for file_name in ...原创 2019-06-28 16:45:33 · 8436 阅读 · 2 评论 -
Jsoncpp两种生成json串区别
代码先上代码 std::string strTime = "2019-07-11 14:49:14.848715"; Json::Value root; root["Time"] = strTime; root["seq"] = 1; root["EnCode"] = "H"; root["Body"] = "ADFASSASDFUUOOOMNNN...原创 2019-07-17 08:58:52 · 1778 阅读 · 0 评论 -
MacBook Pro接通电源后电池不充电 Apple官方解决办法
型号:MacBook Pro 2018现象:在确认电源正常的情况下,接入电源后电池不充电。该现象无规律,偶然会出现原因:Mac有个SMC模块,是否对电池充电是通过SMC控制的,有时候控制逻辑能出不正常,通过重置SMC即可办法:https://support.apple.com/zh-cn/HT201295#t2选取苹果菜单 >“关机”。在 Mac 关机后,按住右 Shift 键、左...原创 2019-07-30 15:35:54 · 36958 阅读 · 17 评论 -
解决:Authentication token is no longer valid; new one required
解决crontab遇到用户密码过期的问题问题描述:近期某服务器的crontab,每天未正常执行,检查日志发现大量报错,如下:该问题是由于近期用户密码更新所致crontab用户密码过期问题解决:1.chage -l ${username}查看用户密码期限相关信息chage -l root;-----------------------------------------Last p...原创 2019-08-05 15:14:10 · 5106 阅读 · 0 评论 -
Crontab -e You are not allowed to use this program (crontab)
最近注意到有系统创建的普通帐户无法使用crontab,但以root身份运行计划任务是不推荐的。每次尝试使用普通用户编辑crontab时,收到以下消息:[miner@cy2 ~] $ crontab -eYou (miner) are not allowed to use this program (crontab)See crontab(1) for more information...原创 2019-08-02 09:31:06 · 5821 阅读 · 0 评论 -
Linux 下修改或者重命名用户名称或者UID/GID
摘要在Linux操作系统下怎么样用命令行去修改用户的名称(也就是重命名),或者UID/GID切记不要手动用vi之类的文本编辑器去修改 /etc/passwd 文件修改用户名称Usage:usermod -l login-name old-name修改用户的名称 old-name 改成 login-name,别的都没有改变。其实我们也应该考虑是否把用户的HOME目录也改...原创 2019-08-13 10:34:00 · 3815 阅读 · 0 评论 -
mac环境boost安装和配置
brew 方式安装安装命令brew install boost安装位置tannzh-mac:~ tannzh$ brew install boost==> Downloading https://homebrew.bintray.com/bottles/boost-1.68.0.mojave.bottle.################################...原创 2018-12-03 10:56:04 · 3597 阅读 · 1 评论 -
可能会有用的Clion技巧—— Mac篇
关于授权JetBrains 全家的产品几乎都支持 student license,所有产品!所有产品!所有产品!重要的事情要说三遍一次授权时间为一年,到期需要重新验证 edu 邮箱,建议学生党们通过该方式激活,戳这里申请,其他有能力的用户可以购买授权支持正版。快捷键配置Clion 的默认快捷键风格是 Visual Studio,Windows 用户就不用改了, Mac 上一般用 ⌘ 代...翻译 2018-11-27 18:30:28 · 15697 阅读 · 0 评论 -
LibCurl编程手册以及代码实例
1. LibCurl编程流程在基于LibCurl的程序里,主要采用callback function (回调函数)的形式完成传输任务,用户在启动传输前设置好各类参数和回调函数,当满足条件时libcurl将调用用户的回调函数实现特定功能。下面是利用libcurl完成传输任务的流程:1. 调用curl_global_init()初始化libcurl2. 调用 cur...转载 2018-11-07 14:40:13 · 305 阅读 · 0 评论