从60道经典音视频面试题的角度去看:如何从零开始
Posted 初一十五啊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从60道经典音视频面试题的角度去看:如何从零开始相关的知识,希望对你有一定的参考价值。
前言
随着互联网的高速发展,抖音等音视频的发酵,加之5G落地,催生出大量音视频需求,国内技术人才少,岗位多,出现公司抢人还难招聘的情况。
想成为资深音视频开发?面临着:
- 音视频资料非常少
- 不知道从何学习
- 又渴望掌握更高级的技术
也有不少人吐槽去面试音视频开发,不知道会问到那些问题,今天就从60道经典音视频的角度来分析如何从0出去进阶音视频。🤣
首先来看一下60道经典音视频面试题(含答案)
1.为什么巨大的原始视频可以编码成很小的视频?这其中有什么技术?
2.怎么做到直播秒开优化
3.直方图在图像处理里面最重要的作用是什么?
4.数字图像滤波有哪些方法?
5.图像可以提取的特征有哪些?
6.衡量图像重建好坏的标准有哪些?怎么计算?
7.AAC
和PCM
的区别?
8.H264
存储的两个形态
9.FFmpeg
:图像如何合成视频?
10.常见的音视频格式有哪些?
11.1080P
的意义
12.请解释颜色的本质及数字记录原理,并说出你知道的色域
13.请解释矢量图和位图的区别
14.请从光圈,快门速度,感光度,白平衡,景深中任意选2个进行叙述?
15视频分量YUV
的意思及数字化格式
16.在MPEG
标准中图像类型有哪些?
17.列举一些音频编解码常用的实现方案?
18.叙述MPEG
视频基本码流结构?
19.SPS
和PPS
的区别
20.叙述AMR
基本码流结构?
21.预测编码的基本原理是什么?
22说一说FFmpeg
的数据结构
23.说一说AVFormatContext
和AVIntFormat
之间的关系?
24.说一说AVFormatContext
, AVStream
和AVCodecContext
之间的关系?
25.说一说视频拼接处理步骤?(细节处理,比如分辨率大小不一,时间处理等等)
26.NV21
如何转换成I420
?
27.DTS
与PTS
共同点?
28.影响视频清晰度的指标有哪些?
29.编解码处理时遇到什么困难?
30.如何秒开视频?什么是秒开视频
31.如何降低延迟?如何保证流畅性?如何解决卡顿?解决网络抖动?
32.需要把网络上一段视频存储下来(比如作为mp4 ), 请实现并说出方法(第一个视频需要翻墙才能进)?
33.需要把网络上一段语音存储下来(比如作为mp3 ), 请实现并说出方法?
34.为什么要有YUV
这种数据出来?(YUV
相比RGB
来说的优点)
35.H264/H265
有什么区别?
36.视频或者音频传输,你会选择TCP
协议还是UDP
协议?为什么?
37.平时说的软解和硬解,具体是什么?
38.何为直播?何为点播?
39.简述推流、拉流的工作流程?
40.如何在直播中I
帧间隔设置、与帧率分辨率选定?
41.直播推流中推I帧与推非I帧区别是什么?
42.常见的直播协议有哪些?之间有什么区别?
43.点播中常见的数据传输协议主要有哪些?
44.RTMP
、HLS
协议各自的默认端口号是?
45.简述RTMP
协议,如何封装RTMP
包?
46.m3u8
构成是?直播中m3u8
、ts
如何实时更新?
47.何为音视频同步,音视频同步是什么标准?
48.播放器暂停、快进快退、seek
、逐帧、变速怎么实现
49.说说你平时在播放过程中做的优化工作?
50.你研究过哪些具体的流媒体服务器,是否做过二次开发
51.什么是GOP
?
52.音频测试的测试点,音频时延如何测试?
53.美颜的实现原理,具体实现步骤?
54.如何直播APP抓包过来的文件,如何过滤上行,下行,总码率?
55.如何测试一个美颜挂件?
56.为什么要用FLV
?
57.如何测试一个美颜挂件?
58.平常的视频格式?
59.何为homebrew
?你用它安装过什么?常用命令有哪些?
60.RTMP
、HLS
协议各自的默认端口号是?
60道经典音视频开发的面试题目前就这些了,答案可以自己获取,接下来我们从音视频面试的角度来看音视频如何去学习:
一丶从零到一:音视频初级开发
1.通过三种方式绘制图片.
2.使用 AudioRecord
采集音频PCM
并保存到文件.
3.使用 AudioTrack
播放PCM
音频.
4.使用 Camera API
采集视频数据.
5.使用 MediaExtractor
和 MediaMuxer API
解析和封装 mp4 文件
6.MediaCodec API
详解
7.音视频如何录制?
二丶从一到熟悉:音视频中级开发
1.OpenGL ES
环境搭建,定义.绘制形状
2.OpenGL ES
使用投影和相机视图
3.OpenGL ES
添加运动效果
4.OpenGL ES
响应触摸事件
5.OpenGL ES
着色器语言GL
SL
6.OpenGL ES
纹理贴图
7.通过GLES20
与着色器交互
8.利用SoundTouch
实现PCM
音频的变速和变调
三丶从熟悉到精通:音视频高级开发
1.MPEG-4/H.264 AVC
编解码标准
2.AAC
音频编码技术
3.流媒体协议:HLS
,RTMP
4.多媒体文件格式:MP4
,FLV
,M3U8
,TS
,PCM / WAV
5.查看媒体文件头信息工具ffprobe
6.:播放媒体文件的工具ffplay
7.媒体文件转换工具ffmpeg
8.FFmpeg
调整音视频播放速度
9.Mac
下安装FFmpeg
10.将 FFmpeg
移植到 android平台
11.FFmpeg API
介绍与通用 API
分析
12.FFmpeg
编解码 API
分析及超时设置
13.FFmpeg
核心模块 libavformat
与 libavcodec
分析
14.AVFormatContext
,AVStream
,AVPacket
,AVFrame
, AVCodec
,AVCodecContext
,AVIOContext
分析
15.FFMPEG
中重要结构体之间的关系
16.FFmpeg
开发之 AVFilter
使用流程总结
17.FFmpeg
和NDK
在Centos7
上交叉编译
18.x264
和NDK
在Centos7
上交叉编译
19.faac
和NDK
在Centos7
上交叉编译
20.Webrtc
音视频通话
算得上是音视频开发模块非常全面的东西了~收藏吃灰🤣
以上是关于从60道经典音视频面试题的角度去看:如何从零开始的主要内容,如果未能解决你的问题,请参考以下文章