linux
文章平均质量分 75
程序课代表
健康分享,快乐生活
展开
-
音视频编解码原理(四) H.264码流组成/哥伦布编码
上一章介绍了H.264帧间编码原理,本章开始介绍H.264码流组成组成H.264码流的结构主要包含以下几个部分,从大到小排序一次是:H.264视频序列、GOP、图像、片组(slice集合)、片(slice)、NALU、宏块、像素。H.264视频序列:一段视频GOP:从I帧到下一个I帧之间的内容图像:视频中的一帧片组(slice集合):片的集合片(slice):一大块像素数据NALU:00 00 00 01 或 00 00 01标志一个NALU单元的开始宏块:被信源编码器划原创 2022-01-28 17:18:42 · 1767 阅读 · 0 评论 -
音视频编解码原理(三) H.264帧间编码原理
由上一章了解到H.264帧内编码的基本原理,本章介绍帧间编码原理首先看一下视频的下面两帧图片其中除了车子和镜头在移动,帧间大部分内容并没有发生大的改变,以车子的车牌为例,车牌向左移动了,就是宏块位置发生了变化,在第二帧中,就不用编码宏块的左侧和上侧的像素信息,只需要记录宏块的坐标信息(运动矢量),从而减少编码和传输的数据量。由此可以归纳出,假如第一帧图像为I帧,那么第二帧运动矢量图像可能是B帧也可能是P帧,取决于H.264内部算法,无需应用关心。为了方便解释,可以做如下总结:原创 2022-01-28 14:49:49 · 1175 阅读 · 0 评论 -
音视频编解码原理(二) H.264帧内编码原理
上一章介绍了音视频封装格式和音视频编码格式,本章开始介绍H.264原理说到H.264,首先不得不提到作为奠基鼻祖的H.261,其主要的贡献有:1.帧内编码第一次根据帧内的像素趋于统一而采用帧内预测编码技术2.帧间编码(运动补偿)使用以宏块为基础的运动补偿预测编码技术,从当前宏块参考帧中产生最佳匹配宏块3.环路滤波器实际上是一个数字低筒滤波器,滤除不必要的高频信息4.块结构的混合编码第一种采用“块结构的混合编码”方案的编码标准本章主要介绍帧内编码原理。H.2原创 2022-01-28 13:14:52 · 2546 阅读 · 0 评论 -
音视频编解码原理(一) 封装格式和编码方式简介
一、封装格式要了解音视频编解码原理,首先需要了解什么是封装格式? 所谓封装格式,就是将已经编码压缩好的视频轨和音频轨按照一定的格式封装到一个文件中,一般情况下,不同的封装格式对应不同文件后缀,例如:视频文件格式 视频封装格式 .avi AVI(Audio Video Interleaved) .mp4 .3gp .mpeg .mpg MPEG(Moving Picture Experts Group) .flv Flash Video .rm...原创 2022-01-28 10:53:19 · 2460 阅读 · 0 评论 -
编译faac音频编码库
faac是MPEG-4和MPEG-2的AAC编码器,我们将使用它作为音频的软编码库。一、下载faac官网:http://faac.sourceforge.net这里使用ubuntu命令行下载,这里下载可能稍慢,耐心等待下载完成sudo wget https://nchc.dl.sourceforge.net/project/faac/faac-src/faac-1.29/faac-1.29.9.2.tar.gz下载完成,使用以下指令解压tar xvf faac-...原创 2021-01-24 23:58:44 · 1112 阅读 · 5 评论 -
编译x264视频编码库
X264作为H264视频编码最好用的有损视频软编码器之一,其性能比FFmpeg中实现的内置编码算法性能更好,其功能强大无以言表。但遗憾的是只能编码为H264,无法编码为H265等其他视频编码格式,本章主要实现通过使用X264源码编译出android中可以使用的X264编码器。一、下载X264官网地址:https://www.videolan.org/developers/x264.html这里使用ubuntu命令行下载1. 因为x264是使用git来管理的,所以如果没有安装gi...原创 2021-01-24 22:55:15 · 1446 阅读 · 0 评论 -
交叉编译环境搭建与测试
一、什么是交叉编译 在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码。这里需要注意的是所谓平台,实际上包含两个概念:1. 体系结构(Architecture)2. 操作系统(OperatingSystem)。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。举例来说: 我们常说...原创 2021-01-23 14:24:18 · 6424 阅读 · 0 评论 -
rtmp协议解析
在介绍主要内容之前,先介绍一下当前各协议的应用场景 RTMP:一般用作直播,允许丢包 RTSP:一般用作安防,不允许丢包 RTP:一般用作音视频通话,允许丢包,低延迟 HLS:即Http Live Stream,苹果公司封装的基于http协议的直播协议然后介绍一下短视频和直播的区别:短视频和直播都要控制数据量的大小,可以根据其特点和应用场景调整参数。 短视频:根据其对实时性无要求,对帧率要求较高,不能出现卡顿掉帧的情况。可以拉长I帧间隔,即gop间...原创 2021-01-17 21:21:56 · 669 阅读 · 0 评论 -
ubuntu 依赖安装pcre 、openssl、zlib指令
使用dpkg命令查看自己需要的软件是否安装。例如查看pcre是否安装:dpkg -l | grep pcre解决依赖包openssl安装,命令:sudo apt-get install openssl libssl-dev解决依赖包pcre安装,命令:sudo apt-get install libpcre3 libpcre3-dev解决依赖包zlib安装,命令:sudo apt-get install zlib1g-dev...原创 2021-01-16 17:56:55 · 5543 阅读 · 0 评论 -
tomcat https配置
参考https://blog.csdn.net/qq_37581115/article/details/81712763原创 2020-01-03 17:11:35 · 139 阅读 · 0 评论 -
WebRtc服务搭建(三)
前面我们介绍了webrtc的环境搭建和服务器搭建,本章开始介绍webrtc的配置和运行,篇幅较长,请注意收藏。让Linux命令在后台运行的命令用:在命令前加nohup命令后加&1、coturn Nat穿透服务器首先,在第一章篇首强调过,云服务器配置入站规则,允许访问3478端口(含tcp和udp,此端口用于nat穿透)#启动 内网ipnohup turnserver ...原创 2019-09-13 18:49:58 · 2620 阅读 · 3 评论 -
WebRtc服务搭建(二)
前面,我们已经完成配置的安装,这一章,我们来完成服务器的安装。1、安装libevent当前目录:/home/ubuntu/webrtc#https://github.com/coturn/coturn/wiki/CoturnConfigsudo wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-s...原创 2019-09-13 15:26:56 · 1079 阅读 · 0 评论 -
WebRtc服务搭建(一)
声明:本人使用的是腾讯云平台Ubuntu16.4 64系统,其他平台同理: 首先开放云服务器入队规则端口:3478、8080、8089、80、443,其中,3478端口UDP和TCP协议都需开放搭建AppRTC安装需要的各种工具(除了apt之外还可以下载安装包或者源码自己编译安装):1、安装JDKapt updateapt install openjdk-8-j...原创 2019-09-13 14:30:25 · 4029 阅读 · 0 评论