2023年12月6日发(作者:)
音视频会议售后面试问题
1、为什么巨大的原始视频可以编码成很小的视频呢?这其中的技术是什么呢?
(1)空间冗余:图像相邻像素之间有较强的相关性。
(2)时间冗余:视频序列的相邻图像之间内容相似。
(3)编码冗余:不同像素值出现的概率不同。
(4)视觉冗余:人的视觉系统对某些细节不敏感。
(5)知识冗余:规律性的结构可由先验知识和背景知识得到。
2、怎么做到直播秒开优化?
DNS解析慢为了有效降低DNS解析对首开的影响,我们可以提前完成播放域名IP地址的解析,并缓存起来,播放的时候,直接传入带IP地址的播放地址,从而省去了DNS解析的耗时。如果要支持用IP地址播放,是需要修改底层ffmpeg源码的。
播放策略很多侧重点播的播放器,为了减少卡顿,会有一些缓冲策略,当缓冲足够多的数据之后,再送入解码播放。
而为了加快首开效果,需要对播放的缓冲策略做一些调整,如果第一帧还没有渲染出来的情况下,不要做任何缓冲,直接送入解码器解码播放,这样就可以保证没有任何因为「主动」缓冲带来的首开延时。
播放参数设置所有基于ffmpeg的播放器,都会遇到avformat_find_stream_info这个函数耗时比较久,从而增大了首开时间,该函数主要作用是通过读取一定字节的码流数据,来分析码流的基本信息,如编码信息、时长、码率、帧率等等,它由两个参数来控制其读取的数据量大小和时长,一个是probe size,一个是analyze duration。
减少probe size和analyze duration可以有效地减少avformat_find_stream_info的函数耗时,从而加快首开,但是需要注意的是,设置地太小可能会导致读取的数据量不足,从而无法解析出码流信息,导致播放失败,或者出现只有音频没有视频,只有视频没有音频的问题。
3、直方图在图像处理里面最重要的作用是什么?
灰度直方图的定义:灰度级的函数,描述图像中该灰度级的像素个数或该灰度级像素出现的频率。反映了图像灰度分布的情况。
灰度直方图只能反映图像的灰度分布情况,不能反映图像像素的位置,即所有的空间信息全部丢失。
直方图的应用:
a、数字化参数:判断一幅图像是否合理的利用了全部被允许的灰度级范围。一般一幅图应该利用全部或几乎全部可能的灰度级,否则等于增加了量化间隔,丢失的信息将不能恢复。
b、边界阈值选取(确定图像二值化的阈值):假定某图像的灰度直方图具有二峰性,则表明这个图像的较亮区域和较暗区域可以很好地分离,以这一点为阈值点,可以得到很好地2值处理效果(区分物体与背景)。 c、当物体部分的灰度值比其他部分的灰度值大时,可利用直方图统计图像中物体的面积。
d、计算图像的信息量H。
发布评论