
多媒体--音频
山西茄子
多媒体工程师,从事ffmpeg,gstreamer,视频编码,deepstream等开发,做做笔记。
展开
-
从ffmpeg中提取mp3播放器
mp3 和 mp2 的核心实现在 mpegaudiodec.c 里。如果不需要其它解码只要mpeg声音的解码的话,其接口相当简单。一个是初始化函数 decode_init,另一个是真正的帧解码函数 decode_frame.int decode_init(AVCodecContext * avctx)int decode_frame(AVCodecContext * avctx,voi转载 2012-09-05 13:16:41 · 1096 阅读 · 0 评论 -
音频编码基本概念介绍
编码分类根据编码方式的不同,音频编码技术分为三种:波形编码、参数编码和混合编码。一般来说,波形编码的话音质量高,但编码速率也很高;参数编码的编码速率很低,产生的合成语音的音质不高;混合编码使用参数编码技术和波形编码技术,编码速率和音质介于它们之间。1、波形编码波形编码是指不利用生成音频信号的任何参数,直接将时间域信号变换为数字代码,使重构的语音波形尽可能地与原始语音信号的波形形状保持一致。波形编码...转载 2012-09-01 23:07:01 · 5096 阅读 · 0 评论 -
AAC的封装
AAC in some container format (FLV, MP4, MKV etc.) need "aac_adtstoasc" bitstream filter (BSF)AAC编解码库- FAAC, FAAD/FAAD2 ---编码只有AAC LC- neroAACenc ---非商业可以使用(提供编码工具)- FFmpeg's native AA转载 2016-06-07 12:18:57 · 2256 阅读 · 0 评论 -
声道
单声道 Mono 单声道是比较原始的声音复制形式,早期的声卡采用的比较普遍。当通过两个扬声器回放单声道信息的时候,我们可以明显感觉到声音是从两个音箱中间传递到我们耳朵里的。这种缺乏位置感的录制方式用现在的眼光看自然是很落后的,但在声卡刚刚起步时,已经是非常先进的技术了。立体声 Stereo 单声道缺乏对声音的位置定位,而立体声技术则彻底改变了这一状况。声音在转载 2015-02-05 23:05:54 · 1121 阅读 · 0 评论 -
使用低级音频函数WaveX .
Windows通过高级音频函数、媒体控制接口MCI设备驱动程序;低级音频函数MIDI Mapper、低级音频设备驱动;以及DirectSound提供了音频服务,可以从声卡获取音频流。1. 播放声音文件的其它方法 在介绍wavex系列之前,我先来介绍之外的其它几种方法:1.1 MCI方法简介 用MCI方法是很方便的,它对媒体设备控制主要通过命令接口函数mciSe转载 2012-09-01 23:25:35 · 1291 阅读 · 0 评论 -
PCM
增益用最简单的方式来解释,增益用来增强输入进音箱电路的信号。音频帧1. AAC一个AAC原始帧包含某段时间内1024个采样点相关数据。用1024主要是因为AAC是用的1024点的mdct。音频帧的播放时间 = 一个AAC帧对应的采样样本的个数 / 采样频率(单位为s)。采样率(samplerate)为 44100Hz,表示每秒 44100个采样点,所以,根据公式...转载 2016-08-18 10:02:08 · 1606 阅读 · 0 评论 -
speex开发
预处理模块包括自动增益控制、静音检测和回音消除。以下是接口函数,具体参考speex\ speex_preprocess.h。 函数名称功能简介speex_preprocess_state_init创建预处理器speex_preprocess_state_destroy销毁预处理器转载 2016-08-19 10:37:54 · 2735 阅读 · 0 评论 -
音频编码格式
MP3的全称是Moving Picture Experts Group Audio Layer III。简单的说,MP3就是一种音频压缩技术,由于这种压缩方式的全称叫MPEG Audio Layer3,所以人们把它简称为MP3。MP3是利用 MPEG Audio Layer 3 的技术,将音乐以1:10 甚至 1:12 的压缩率,压缩成容量较小的file,换句话说,能够在音质丢失很小的情况下把文件转载 2013-04-01 19:42:34 · 1186 阅读 · 0 评论 -
WAV格式详解
一、综述 WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文Resource Interchange File Format的缩写,每个WAVE文件的头四个字节便是“RIFF”。 WAVE文件是由若干个Chunk组成的。按照在文件中的出现位置包括:RIFF WAVE Chunk, Format Chunk, Fact Chunk(可选),转载 2015-01-15 22:15:26 · 1107 阅读 · 0 评论 -
拾音器和麦克的区别
拾音器也称监听头、拾音头,是用于同步录音录像监控的拾音配件。形象地说:摄像头是眼睛,拾音器就是耳朵。硬盘录像机、网络视频服务器等负责数字化传输及存储声音和图像,监视器和音箱则用于回放。可以说,没有拾音器的录像就好比无声电影。拾音器集成了先进的的噪声处理、回声处理以及长距传输驱动电路以适应更高标准和特殊需求的安防工程,以其高保真的音质忠实地记录和还原现场。麦克风(又简称为话筒),单纯是一种将声音转换转载 2014-12-27 10:22:25 · 3256 阅读 · 0 评论 -
音频常见的波形编码
G.711是一种由国际电信联盟(ITU-T)订定音频编码方式,又称为ITU-T G.711。G.711使用64Kbps的带宽,可将14bits转换成8bits。目前G.711有两个编码方式:一种是u-law又称mu-law,主要运用于北美和日本;另一种是a-law,主要运用于欧洲和世界其他地区。其中,a-law编码方式是为方便计算机处理而特别设计的。2008年3月国际电信联盟正式发布了最新的宽带...转载 2014-02-28 15:45:47 · 5185 阅读 · 0 评论 -
ffmpeg--音频的解码和编码
音频和视频其实是一样的,在文件中寻找音频流,然后解压出来,得到音频帧的数据,同样也可以按照设定的编码格式进行压缩,我这里把音频的解码和编码做成了两个工程,也是直接上代码:#include #include extern "C"{#include #include #include }int main(char arg,char *argv[]){转载 2013-04-08 08:14:38 · 1163 阅读 · 0 评论 -
audio--waveOutGetNumDevs与mixerGetNumDevs
waveOutGetNumDevs与mixerGetNumDevs还是有大大的区别的. 还是举例看现象吧 本人机器有三块声卡,分别为: 0--Serial Audio Device 1--USB Audio Play 2--Vinyl AC'97 Audio(WAVE)eg1: #define MY_AUDIO_NAME "Serial Audio Devi转载 2013-03-29 16:41:57 · 1835 阅读 · 0 评论 -
core audio采集音频
涉及的接口有:IMMDeviceEnumerator IMMDevice IAudioClient IAudioCaptureClient主要过程:创建多媒体设备枚举器(IMMDeviceEnumerator) 通过多媒体设备枚举器获取声卡接口(IMMDevice) 通过声卡接口获取声卡客户端接口(IAudioClient) 通过声卡客户端接口(IAudioClient)可获...转载 2019-04-10 17:14:35 · 1138 阅读 · 0 评论