![](https://img-blog.csdnimg.cn/decfd6f1c4684c8ea9effcd060811b18.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
音视频开发
文章平均质量分 61
音视频开发
WongKyunban
这个作者很懒,什么都没留下…
展开
-
为什么有些视频能够边下载边观看?
在传输上,与要下载才能播放的视频没有区别,只是流媒体不需要保存它的副本或它的数据,流媒体音视频数据可以被直接消费,需要下载的视频则必须先保存音视频的所有视频或一个完整的副本才能够开始播放。在流媒体,浏览器或播放器不需要创建一个本地的视频副本或保存接收到视频数据,然后再播放,浏览器或播放器只需要先加载少量的视频数据就可以实时播放视频了。因此对于要下载完毕才能播放的音视频文件,是因为播放端不知道如何对文件进行解析,必须下载整个文件,才能收集到足够的信息去做数据解析,所以它不能边下载边播放。电影,你可以直接看;原创 2024-01-14 17:52:43 · 591 阅读 · 0 评论 -
音视频编码基础知识
视频编码指的是通过特定的压缩技术将一种视频格式文件转换成另一种视频格式文件的过程。DTS与PTS的意思。原创 2023-12-27 10:19:53 · 751 阅读 · 0 评论 -
什么是流媒体
这里的首屏秒开是指从视频播放开始到真正看到第一帧画面所消耗的时间要尽可能的短,不能让观众有明显的等待时间。这种能力主要依靠云端服务的优化以及播放器的配合,使用阿里云的秒开功能最快可以实现 200ms 左右的首屏打开速度,如果网络下行足够够好的话甚至可以瞬开。所谓的流媒体是指将一连串的媒体数据压缩后,经过网络分段发送数据,在网上即时传输音视频以供观赏的一种技术。如果没有流媒体技术,那么在观赏前必须下载整个媒体文件。目前应用流媒体技术就多的场景就是直播场景。原创 2023-12-25 18:21:55 · 139 阅读 · 0 评论 -
音视频转码
音视频转码一般过程是先解码再编码,方式可以是通过软件解码和编码(俗称软解软编),亦可以是通过硬件解码和编码(俗称硬解硬编)。据说一部90分钟的电影就大到1000GB,1s的视频大小就有186多MB,所以必须经过编码压缩之后才方便存储、方便网络上传输。当连续的图像变化每秒超过24帧以上,根据视觉暂留原理,人眼无法辨别单幅的静态画面,看上去是平滑连续的视觉效果,这样的连续的画面就叫视频。根据视频定义,我们不难理解,在视频数据中往往在时间域和空间域层面都存在大量冗余信息,而压缩技术就是去掉当中的冗余信息。原创 2023-12-23 19:18:20 · 623 阅读 · 0 评论 -
音视频的编码格式与封装格式
音视频的编码格式与封装格式是两个不同的概念,视频封装格式常见的有:mp4,rmvb,avi,mkv,mov,mpg,vob,3gp,asf,rmvb,wmv,divx,flv,ts/ps,rm,webm,dat,mpeg,ogg,这些视频封装格式是包裹了音视频编码数据的容器,把特定编码标准编码的视频流和音频流混在一起。在移动端一般将视频封装为mp4格式,mp4支持H.264, H.265等视频编码和acc,mp3等音频编码。封装简单来说就是将已经编码压缩好的视频轨和音频轨按照一定格式放在一个文件中。原创 2023-12-22 09:48:19 · 490 阅读 · 0 评论 -
ffprobe工具
ffprobe工具主要用于检测多媒体信息,如时长,视频分辨率、帧率、音频采样率、声道数、每个流信息等等。关于ffprobe更多参数可以参考。原创 2023-12-21 21:29:28 · 107 阅读 · 0 评论 -
ffplay工具
在编译ffmpeg时,如果系统中包含了SDL库,则会默认编译生成ffplay工具,否则无法生成ffplay工具。ffplay即可以作为播放器,也可以作为很多图像化音视频数据的分析工具,通过它可以看到视频图像的运动估计方向、音频数据的波形等。ffplay也可以作为用于测试ffmpeg的codec引擎、format引擎、filter引擎的工具。ffplay的常用参数,更多的参数信息请参考。原创 2023-12-19 23:15:15 · 213 阅读 · 0 评论 -
Y4M视频文件格式
以YUV4Mpeg格式创建的视频文件;这个视频文件存储了一组未压缩的YCbCr图像,这些图像逐帧组成视频;在压缩成MPEG-2或Matroska等更流行的视频格式之前,用作原始的彩色视频格式Y4M文件是一个纯文本格式的header开始,header有0或多个参数,每个参数以0x20分隔,在所有参数最后以0x0A结束,后面就是YUV原始数据。header后面是任意数量帧数据。每帧数据以固定字符串FRAME开始,我们以这个Y4M文件来一窥究竟。YUV4MPEG2: 签名,这是固定的,在文件的最前面。原创 2023-12-17 22:34:55 · 180 阅读 · 0 评论 -
ffmpeg模拟信号到数字信号
声道数就是声音通道数量,声道数是指在一次采样中所记录的声音波形个数,声道数增加,声音质量也会随之提升,同时音频文件的大小也会增加。将会影响音频数字信号的质量。原创 2023-12-17 13:51:05 · 87 阅读 · 0 评论 -
FFmpeg转码流程和常见概念
7、码率(bitrate per second, bps):又叫比特率,是指每秒处理的比特数,用于衡量视频或音频质量的一个参数。主要的封装(Mux/Demux)类型包括flv,avi,rmvb,mp4,mov,mkv,ts,m3u8等。6、帧率(帧频率):指的是视频文件中每一秒的帧数,人的眼睛如果想要看到连续移动的图像,每秒至少需要15帧。视频格式:mkv,flv,mov,wmv,avi,mp4,m3u8,ts等等。3、帧(Frame):在这里指的是一张静止的图像,它分为I、P、B三种帧。原创 2023-12-17 00:11:59 · 311 阅读 · 0 评论 -
FFmpeg项目的组成
无论是上面提供的工具还是SDK,它们的源代码都在工程中,都是由这些源代码编译出来的,FFmpeg是由C语言实现的,主要在Linux平台上进行开发。这个部分是供开发者使用的SDK,SDK是编译好的库。基本上每个平台都有对应的SDK。原创 2023-12-16 23:26:25 · 240 阅读 · 0 评论 -
音视频架构的三部分之CDN(二)
CDN就是内容分发网络,这是一个策略性部署的整体系统,专门用来解决网络带宽小、用户访问量大、网点分布不均匀造成访问慢的问题。它的具体实现是通过在现有的网络中增加一层新的网络架构,将网站内容发布在离用户最近的网络节点上,这样用户就能就近获取网站资源。CDN大致包源站、缓存服务器、智能DNS、客户端等几个部分:源站:发布内容的原始站点。添加、删除、更改网站的文件都是在源站上进行的。缓存服务器所抓取...原创 2019-07-11 22:07:38 · 7094 阅读 · 0 评论 -
音视频架构的三部分之拉流过程(三)
拉流原创 2019-07-12 22:25:11 · 2664 阅读 · 0 评论 -
直播卡顿优化
视频播放卡顿优化,可以从设备、视频流、网络三个方面来优化。1、设备如果设备的配置太低,解码将会导致卡顿。可优化的点:升级硬件设备升级软件提高兼容性和容错率降低视频码率选择流畅或标清画质进行进行播放增大缓冲区,缓解因网络或解码不稳定引起的卡顿2、视频流音视频不同步也会导致卡顿,如声音是连续的,但画面是静止的,也有可能是视频流参数配置有问题。音频和视频不同步有两种情况:推流...原创 2019-07-13 15:03:09 · 3487 阅读 · 0 评论 -
直播原理
无论哪种直播,都离不开端与端之间的交互.原理:(1)通过计算机上的音视频输入设备或手机端的摄像头和麦克风实时录制的音视频流,然后将音视频流编码,最后把好编好码的数据包通过直播协议实时地发送给服务器,服务器再通过流媒体协议把数据包实时地分发出去,其他终端通过直播协议实时请求数据包,并进行解码播放…...原创 2019-07-09 22:16:39 · 2460 阅读 · 0 评论 -
直播时延优化
会产生时延的三个地方:(1)推流时,对采集到的音视频数据进行的处理和编码会产生时延;(2)通过流媒体协议进行推流时,会受到网络状态的影响也会产生时延;(3)在拉流端对音视频数据拉取和解码也会产生时延。以上产生时延的地方涉及到数据处理、编码、传输的问题。可以从以下几方面来优化:1. 处理数据时延优化处理数据包括美颜、水印、滤镜、加贴纸效果等,把这些都让GPU来处理,可大大减小处理数据的时...原创 2019-07-13 17:15:55 · 3702 阅读 · 0 评论 -
音视频的相关名词、术语、概念
1. 帧率每秒显示帧数,表示图形处理器处理场每秒能更新的次数。高帧率就会更流畅、逼真。一般来说30fps就可以接受了。注意:如果帧率超过屏幕的刷新率,就只会浪费图像处理器的能力,因为如果屏幕不能以那么快的速度更新,那么超过屏幕刷新率的帧率就会被浪费。2.刷新率指屏幕每秒画面被刷新的次数。刷新率分垂直刷新率和水平刷新率,一般都指垂直刷新率。垂直刷新率表示屏幕上图像每秒重绘的次数,即每秒屏幕刷新...原创 2019-07-04 21:34:51 · 8460 阅读 · 0 评论 -
直播弱网优化
弱网优化可以从推流端和拉流端两个方面来优化。1. 根据上行带宽的状况来动态调整码率、帧率、分辨率直播过程中可能会遭遇网络变差的情况,为了保证直播流的延续,可以根据上行带宽来适当降低码率、帧率、分辨率。不同的带宽对应一定范围的码率、帧率值 ,调整过后,就不至于太低或太高导致画面不流畅。2. 推流端使用H.265编码推流使用H.265编码推流可以节省40%带宽,可惜的是并不是所有手机都支持用H...原创 2019-07-14 16:39:47 · 2950 阅读 · 0 评论 -
直播之数据代理优化
当播放器直接CDN请求音视频数据,可能会遇到网络突然变差的情况,播放器就会处于一直在加载的状态。这种情况可以通过在播放器端加上数据代理,缓冲一部分数据供播放器源源不断地进行播放。这样不会出现播放器无数据可播的局面了。首屏秒开可以极大提升用户体验,那么可以怎么样做到首屏秒开呢?可以从以下几个方面来优化:服务器边缘节点缓存GOP(Group of pictures)在拉流时,只须下载并解码播放首...原创 2019-07-14 17:12:39 · 1966 阅读 · 0 评论 -
音视频架构的三部分之推流过程(一)
原始音视频数据采集,包括了音频采集和视频采集。音频采集采集过程:设置采集设备的一些参数:采样率、采样数;将音频信号采集为PCM编码的原始数据;再把原始数据编码压缩成MP3或AC3等封装格式的数据;最后,将封装好的数据通过流媒体协议发给服务器。常见的音频封装格式:MP3、AAC、OGG、AMR、APE、WMA等。面临挑战:音频采集面临去噪、回声消除、静音检测等问题。重点考虑:...原创 2019-07-10 22:31:20 · 3483 阅读 · 0 评论 -
视频音频编码解码技术初探
视频音频编码解码技术初探视频播放器原理流媒体协议技术封装技术视频压缩编码技术音频压缩编码技术网络视音频服务平时我们下载的电影、音乐文件有各种各样的格式,它们用不同的后缀来表示,如avi、rmvb、mp4、flv、mkv等,这些格式代表了不同的封装格式。所谓的封装格式就是把视频数据和音频数据打包成一个文件的规范。视频播放器原理视频播放器播放一个网上的视频文件的经过:Created with ...原创 2018-10-10 18:21:23 · 874 阅读 · 0 评论