- 博客(78)
- 资源 (2)
- 收藏
- 关注
原创 第三章、视频基础知识
本章将讲解视频的基础知识(像素、RGB、分辨率等)、视频帧(图像)与显示器之间的关系。重点讲解YUV数据格式(如YUV444、YUV422、YUV420等),并让你掌握YUV与RGB之间的转换以及视频未编码码流该如何计算。...
2022-07-15 21:43:29
1132
原创 第二章、音频压缩算法
音频压缩音频压缩技术指的是对原始数字音频信号流(PCM编码)运用适当的数字信号处理技术,在不损失有用信息量,或所引入损失可忽略的条件下,降低(压缩)其码率,也称为压缩编码。它必须具有相应的逆变换,称为解压缩或解码。音频信号在通过一个编解码系统后可能引入大量的噪声和一定的失真。1、音频信号的冗余信息数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽。例如,一套双声道数字音频若取样频率为44.1KHz,每样值按16bit量化,则其码率为:2*44.1kHz*16bit=1.411Mbit
2022-01-30 14:29:42
11130
原创 第一章、音频基础知识
音频处理流程 音频数据流的处理过程声音是如何被听到的声音是由于物体振动产生的;声音通过空气、液体或者固体等进行传输;声音通过振动耳膜,产生神经信号进入大脑。人类在声音方面的生理特性声音的三要素 音调: 音调快慢 男生-> 女生 -> 儿童音量:振动的幅度音色: 谐波模数转换模拟音频(Analogous Audio)用连续的电流或电压表示的音频信号,在时间和振幅上是连续。在过去记录声音记录的都是模拟音频,比如机械录音(以留声机、.
2022-01-27 13:48:57
4928
原创 /var/spool/postfix/maildrop占用大量i节点和空间
缘起最近临时需要做一些运维工作,看到一个i节点告警的信息。一路排查下去发现是/var/spool/postfix/maildrop下的inode很大,查看了下文件数量查询资料了解到:由于 Linux 在执行 cron 时,会将 cron 执行脚本中的 output 和 warning 信息,都会以邮件的形式发送 cron 所有者, 而由于客户环境中的 sendmail 和 postfix 没有正常运行,导致邮件发送不成功,全部小文件堆积在了 maildrop 目录下面,而且没有自动清理.
2021-10-30 13:17:37
787
原创 将git上多模块的项目的子模块拆分为独立项目
项目一开始把很多模块都放在一个git库里面。后续需要将某个目录单独出一个项目来开发,此时就可以利用这个subtree的功能分离里。使用subtree的方式可以将源码子目录作为一个新的仓库,并且需要保留和子目录相关的log记录。假设父目录为 folder-parent两个子模块为module-amodule-b目录结构为/folder-parent/module-a/folder-parent/module-b拆分项目的方式# 进入父目录cd folder-parent #为模块b
2020-05-08 20:27:51
3117
2
原创 centos 6编译zeromq 4.1.2版本
目前,服务器使用的zeromq的版本是4.1.2, 存在一个bug:Resource temporarily unavailable (src/signaler.cpp:282)如果直接升级zeromq的版本担心引起不兼容问题,以及其他依赖zmq的程序异常。所以决定在4.1.2上自己打补丁。补丁打法有两种:https://github.com/zeromq/libzmq
2018-01-15 17:27:16
978
原创 FLV文件格式解析
最近要用到flv,整理了一些flv格式的资料,供参考。 flv文件主要由两部分组成:header和body。1.headerheader部分记录了flv的类型、版本等信息,是flv的开头,一般都差不多,占9bytes。具体格式如下:文件类型3 bytes“FLV”版本1 byte一般为0x01流信息
2016-06-27 17:48:53
1038
原创 在linux系统中如何使用命令行获取本机的公网IP
最近本地配置了服务器,使用了家用的带宽没有固定的IP地址。因此,需要获取到自己的公网IP地址。机器是CentOS 6.5的服务器版本自然就没有办法通过浏览器访问的方式获取到公网IP地址。因此记录一些从命令行获取公网IP的方法。首先,需要在机器上按照curl:sudo yum install curl其次,使用下列命令中得一个来获取本地地址:curl http://members
2015-10-20 14:14:35
5284
原创 Xcode7 使用NSURLSession发送HTTP请求的问题
Xcode升级到了7.0之后,原先没有异常的程序也出现了如下报错:App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist
2015-10-10 16:16:23
597
转载 Go1.5 改进摘要
Go1.5 改进简介1. 纯Go(+少量汇编)实现 runtime 和 编译器2. 改进 垃圾回收器, 支持并发 (有个指标好像是 停顿在 10 毫秒以内).3. GOMAXPROCS默认值改为 CPU 核数4. internal限制规则推广到第三方包 (之前只有 std 包启用)5. 增加 vendor 支持, 基本解决 第三方库的依赖
2015-07-13 19:16:05
1409
原创 CentOS使用key登录服务器时候出现密码失败问题
在CentOs服务器上配置好key登录的各种设置; 使用ssh进行登录,出现密码异常。 发现提示输入用户密码而不是key的密码。
2015-07-02 23:13:32
1322
原创 Go by Example: Pointers
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都有适当的注释。 这是第十七章节,关于指针( Pointers)
2015-06-28 16:49:13
1651
转载 我为什么从 Python 转向 Go?
作者微博:http://weibo.com/p/1005052755890521原文地址:http://toutiao.io/r/rnmoe应puppet大拿刘宇的邀请,我去西山居运维团队做了一个简短分享,谈谈为什么我要将我们的项目从python转向go。坦白的讲,在一帮python用户面前讲为什么放弃python转而用go其实是一件压力蛮大
2015-06-14 13:34:39
1905
1
原创 Linux服务器管理常用的命令集合
1、查找并删除几天前的文件find path2Delete -name '*filename*' -mtime +n |xargs rm -f上述命令需要三个参数:path2Delete: 需要删除旧文件的文件夹路径;filename: 需要删除的文件名;n: 需要删除几天前的数据。Example: find /var/log -name "*" -mtime
2015-05-10 10:58:38
604
转载 别再自称“码农”了,编程是门思维的艺术
一个足球评论员可能并不会踢足球,却并不妨碍在解说比赛时对某某球星的技艺评头论足。同样我也绝不敢以高明的程序员自居,而只是以类似足球评论员的角度来阐述我对程序员的理解。这样,大家也许就不以我为鄙薄狂妄了。这是我必须首先声明的。什么是程序员按照Wikipedia的定义,程序员又称为计算机程序员(Computer Programmer)、开发者(Devel
2015-04-21 11:58:45
1756
原创 将Centos的yum源为国内的阿里云源
阿里云Linux安装软件镜像源阿里云是最近新出的一个镜像源。得益与阿里云的高速发展,这么大的需求,肯定会推出自己的镜像源。阿里云Linux安装镜像源地址:http://mirrors.aliyun.com/CentOS系统更换软件安装源第一步:备份你的原镜像文件,以免出错后可以恢复。mv /etc/yum.repos.d/CentOS-Base.repo /etc/
2015-04-15 11:33:52
15995
原创 Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
今天使用yum安装,遇到一下问题:Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again处理很简单,修改文件“/etc/yum.repos.d/epel.repo”,将baseurl的注释取消, mirrorlist注释掉。即可。修改为一下内
2015-04-15 11:19:26
800
转载 Google公布实现Go 1.5自举的计划
本文转自InfoQ的公众号,分享给大家。Google最近公布了实现Go 1.5自举(Bootstrap)的计划。相关文档的作者是Go核心开发者Russ Cox,他在Go语言上已经耕耘了接近6年。据Russ介绍,Google就“如何从Go源码树中去除所有的C程序”已经酝酿了一年。自举(Bootstrapping) 是这样的过程,“用要编译的目标编程语
2015-03-18 21:34:15
1266
原创 非交互式修改本地用户的密码
最新需要更新服务器的root密码使用saltstack部署工具进行批量修改,因此就不能使用交互的方法。非交互的方法有一下两种:1、使用chpasswdecho "test:1234" | chpasswd2、使用passwd也可以实现非交互的密码修改echo "1234" | passwd --stdin "test"以上两种方法都是使用非交互的方式修改用户test的密
2015-03-16 17:06:09
2642
原创 yum 下载软件的存放位置
yum 下载软件的存放位置 /var/cache/yum/*/packages 通常安装后删除,但亦可通过配置保留。 配置yum.conf keepcache选项 keepcache=1.用yum只下载rpm包首先,安装yum-utils:yum -y install yum-utils然后,直接用yumdownloader 就可以直接下载yum源中的rpm
2015-03-02 16:30:08
1396
原创 linux端口映射转发工具rinetd安装使用
Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具。Rinetd是单一过程的服务器,它处理任何数量的连接到在配置文件etc/rinetd中指定的地址/端口对。尽管rinetd使用非闭锁I/O运行作为一个单一过程,它可能重定向很多连接而不对这台机器增加额外的负担。
2015-01-26 15:20:46
4673
翻译 Go by Example: Recursion
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十六章节,关于递归函数(Recursion)。
2015-01-02 23:21:37
1285
翻译 Go by Example: Closures
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十五章节,关于函数闭包(Closures)。
2015-01-02 19:39:16
1054
原创 Go by Example: Variadic Functions
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十四章节,关于可变参数函数(Variadic Functions)。
2015-01-02 19:36:59
1173
翻译 Go by Example: Multiple Return Values
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十三章节,关于函数的多值返回(Multiple Return Values)。
2014-12-06 17:17:12
1327
翻译 Go by Example: Functions
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十二章节,关于函数(Functions)。未来几个章节都将会是关于函数。
2014-12-06 17:12:05
1376
翻译 Go by Example: Range
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十一章节。关于Range。
2014-12-06 16:43:56
1412
翻译 Go by Example: Maps
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第十章节。关于字典(Maps)。
2014-12-04 18:35:29
1421
翻译 Go by Example: Slices
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第九章节。关于切片(Slices)。
2014-12-01 22:23:42
1309
翻译 Go by Example: Arrays
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第八章节。关于数组(Array)。
2014-11-26 21:01:44
1380
翻译 Go by Example: Switch
Go语言是一门开源的编程语言,它的设计目标是能够打造编译简单、执行速度快和可靠的软件。Go by Example是Go语言的动手学习指南,它的每个例子都带有适当的注释。 这是第七个例子:关于Switch表达式。
2014-11-26 20:32:12
1152
翻译 Go by Example: Variables
In Go, variables are explicitly declared and used by the compiler to e.g. check type-correctness of function calls.zai
2014-11-15 17:13:56
992
转载 Go 1.4 Beta 1发布,12月发布正式版本
Go语言是由Google开发的一个开源项目,目的之一是为了提高开发人员的编程效率。近日,在Go 1.3.3发布一个月之后,Go官方宣布Go 1.4 Beta 1版本发布。此版本在支持向后兼容的前提下重点多编译器和运行时进行了改进,并实现了不同架构处理器的支持等。值得关注的改进内容如下:1、运行时对运行时做了重大的改进,如垃圾收集器、并发处理、接口管理、maps方法、slic
2014-11-14 21:50:07
1230
使用FFmpeg将RGB格式图片或视频转换为YUV格式
2014-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人