![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
音视频开发
永恒_FM
这个作者很懒,什么都没留下…
展开
-
交叉编译的原理
本机编译使用本机器的编译器,将源代码编译链接成为一个可以在本机器上运行的程序。这就是正常的编译过程.交叉编辑就是在一个平台(如PC)上生成另外一个平台(Android、iOS或者其他嵌入式设备)的可执行程序,相较于正常编译,下面来看一下交叉编译的相应角色。首先,最终程序运行的设备就是Android或者iOS设备,源代码就是从第三方开源网站上下载的源代码,编译机器就是我们的PC,而编译...原创 2020-05-03 11:04:29 · 2516 阅读 · 0 评论 -
Android 音视频开发之MediaMuxer
简介在Android中,可以使用MediaMuxer来封装编码后的视频流和音频流到mp4容器中,MediaMuxer最多仅支持一个视频track和一个音频track,所以如果有多个音频track可以先把它们混合成为一个音频track然后再使用MediaMuxer封装到mp4容器中。通常视频编码使用H.264(AVC)编码,音频编码使用AAC编码,在MediaFormat中我们可以看到各种编码格...原创 2020-05-02 23:37:35 · 1787 阅读 · 1 评论 -
Android音视频开发之MediaExtractor
简介Android提供了一个MediaExtractor类,可以用来分离容器中的视频track和音频track。使用步骤通过setDataSource()设置数据源,数据源可以是本地文件地址,也可以是网络地址:MediaExtractor mVideoExtractor = new MediaExtractor();mVideoExtractor.setDataSource(mV...原创 2020-05-02 23:23:52 · 578 阅读 · 0 评论 -
Android 音视频之MediaCodec
简介Android中可以使用MediaCodec来访问底层的媒体编解码器,可以对媒体进行编/解码。MediaCodec可以处理的数据有以下三种类型:压缩数据、原始音频数据、原始视频数据。这三种类型的数据均可以利用ByteBuffers进行处理,但是对于原始视频数据应提供一个Surface以提高编解码器的性能。Surface直接使用native视频数据缓存,而没有映射或复制它们到ByteBu...原创 2020-05-02 19:26:06 · 1544 阅读 · 0 评论 -
视频的编码方式
视频编码相较于音频数据,视频数据有极强的相关性,也就是说有大量的冗余信息,包括空间上的冗余信息和时间上的冗余信息。IPB帧视频压缩中,每帧都代表着一幅静止的图像。而在进行实际压缩时,会采取各种算法以减少数据的容量,其中IPB帧就是最常见的一种。I帧:帧内编码帧(intra picture),I帧通常是每个GOP(MPEG所使用的一种视频压缩技术)的第一个帧,经过适度地压缩,作为随...原创 2020-05-02 18:29:55 · 2157 阅读 · 0 评论 -
视频的基础概念
<div style='display: none'>哈哈我是注释,不会在浏览器中显示。我也是注释。</div>作者:CandyBullet链接:https://www.imooc.com/article/23400来源:慕课网原创 2020-05-02 16:22:20 · 515 阅读 · 0 评论 -
音频渲染
音频渲染Android的SDK(指的是Java层提供的API,对应的NDK是Native层提供的API,即C或者C++层可以调用的API)提供了3套音频播放的API,分别是:MediaPlayer、SoundPool和 AudioTrack。这三个API的使用场景各不相同,简单来说具体如下。MediaPlayer:适合在后台长时间播放本地音乐文件或者在线的流式媒体文件,它的封装层次比较高,使...原创 2020-05-01 16:58:24 · 1877 阅读 · 0 评论 -
音频基础概念
音频的基础知识声音是波声音是由物体振动而产生的,声音是一种压力波,当演奏乐器、拍打一扇门或者敲击桌面时,它们的振动都会引起空气有节奏的振动,使周围的空气产生疏密变化,形成疏密相间的纵波声波的三要素声波的三要素是频率、振幅和波形,频率代表音阶的高低,振幅代表响度,波形代表音色。频率越高,波长就越短。低频声响的波长则较长,所以其可以更容易地绕过障碍物,因此能量衰减就小,...原创 2020-04-19 18:43:12 · 1366 阅读 · 1 评论