主页

音频编码之MP3

概观 MP3是一个数据压缩格式。它舍弃脉冲编码调制(PCM)音频数据中,对人类听觉不重要的数据(类似于JPEG,是一个有损图像的压缩格式),从而达到了压缩成小得多的文件大小。 在MP3中使用了许多技术,其中包括心理声学,以确定音频的哪一部分可以丢弃。MP3音频可以按照不同的比特率进行压缩,提供了权衡数据大小和音质之间的依据。 MP3格式使用了混合的转换机制将时域信号转换成频域信号: 32波段多相积分滤波器(PQF) 36或者12 tap 改良离散余弦滤波器(改进的离散余弦变换);每个子波段大小可以在0…1和2…31之间独立选择 混叠衰减后处理 尽管有许多创造和推广其他格式的重要努力,如 MPEG 标准中的 AAC(Advanced Audio Coding)和...

阅读更多

音频编码之AAC

概述 高级音频编码 (英语:Advanced Audio Coding,AAC)是有损音频压缩的专利数字音频编码标准,由Fraunhofer IIS、杜比实验室、贝尔实验室、Sony、Nokia等公司共同开发。出现于1997年,为一种基于MPEG-2的标准,2000年,MPEG-4标准在原本的基础上加上了PNS(Perceptual Noise Substitution)等技术,并提供了多种扩展工具。为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。其作为MP3的后继者而被设计出来,在相同的比特率之下,AAC相较于MP3通常可以达到更好的声音质量 ^[2]^ 。 AAC由国际标准化组织及国际电工委员会标准化为MPEG-2及MPEG-4规格的一部分。 ^[3]^ ^[...

阅读更多

音频基础知识

概述 声音的本质是空气压力差造成的空气振动,振动产生的声波可以在介质中快速传播,当声波到达接收端时(比如:人耳、话筒),引起相应的振动,最终被听到。 两个基本属性: 振幅。声音的振幅就是音量。 频率。频率的高低就是音调,频率的单位是赫兹(Hz)。 当声波传递到话筒时,话筒里的碳膜会随着声音一起振动,而碳膜下面是一个电极,碳膜振动时会触碰电极,接触时间的长短跟振动幅度有关(即:声音响度),这样就完成了声音信号到电压信号的转换。后面经过电路放大后,就得到了模拟音频信号。 模拟音频:用连续的电流或电压表示的音频信号,在时间和振幅上是连续。过去记录的声音都是模拟音频,比如:机械录音(以留声机、机械唱片为代表)、磁性录音(以磁带录音为代表)等模拟录音方式。 计算机...

阅读更多

视频基础知识

基础知识 图像基础 像素 像素是图像的基本单元,一个个像素就组成了图像。也可以认为像素是图像中的一个点。 分辨率 图像(或视频)的分辨率是指图像的大小或尺寸。我们一般用像素格式来表示图像的尺寸。 比如说一张1920x1080的图像,前者1920指的是该图像的宽度方向上有1920个像素点,而后者1080指的是图像的高度方向上有1080个像素点。 常见分辨率: 名称 分辨率 QCIF 176x144 CIF 352x288 D1 704(720)x576 ...

阅读更多

代码检查工具cppcheck的安装及使用

简介 官方网站:http://cppcheck.net/ Cppcheck 是用于 C/C++ 代码的静态分析工具。它提供独特的代码分析来检测错误,并专注于检测未定义的行为和危险的编码构造。目标是实现很少的误报。Cppcheck旨在能够分析您的C / C++代码,即使它具有非标准语法(在嵌入式项目中很常见)。 安装 Windows 下载安装包安装即可。下载地址:http://cppcheck.net/ Linux Cppcheck can also be installed from various package managers; however, you might get an outdated version then. Debian sudo apt-ge...

阅读更多

vscode配置qt开发环境

背景 因为个人感觉QT Creator使用起来没有VSCode顺手, 故网上查找了一下,在VSCode中搭建QT开发环境的方法。因为QT5过后支持使用CMake构建项目,所以在VSCode中也可以使用CMake构建QT项目。 以下并非原创,只是记录过程,方便自己日后翻阅。文章来自于CSDN博客 测试环境 QT 5.14.2(MinGW 7.3.0 64bit) CMake 3.19.1 Visual Studio Code 1.63.2 软件&插件安装 软件安装 QT Creator安装 Visual Studio Code安装 VSCode插件安装 在扩展商店搜索插件,点击安装即可 C/C++扩展 CMake ...

阅读更多

shell教程

shell 教程链接 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。 shell脚本 Shell 脚本(shell script),是一种为 shell 编写的脚本程序。 业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念。 由于习惯的原因,简洁起见,本文出现的 “shell编...

阅读更多

linux下非特权用户安装软件

Linux下非特权用户安装软件 下载源码 编译可执行程序 设置用户环境变量 安装tree # 下载源码 wget http://mama.indstate.edu/users/ice/tree/src/tree-1.7.0.tgz # 解压 tar zxvf tree-1.7.0.tgz # 编译 cd tree-1.7.0 make # 设置环境变量 vi ~/.bashrc # 添加内容 export PATH=/home/user/tree-1.7.0:$PATH # 生效 source ~/.bashrc 安装 ncurses-devel # 下载 wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar...

阅读更多