音视频面试题集锦第 31 期:

  • 1、I 帧、P 帧和 B 帧的概念及区别?
  • 2、视频编码中的码率控制技术有哪些?
  • 3、音频采样参数有哪些?
  • 4、RTMP 和 HLS 协议各有什么特点?如何选择?
  • 5、WebRTC 中的 ICE、STUN、TURN 各有什么作用?
  • 6、AAC 编码的 Profile 有什么区别?
  • 7、视频播放内存优化有哪些方向?
  • 8、H.264 和 H.265 有哪些区别?
  • 9、你对音视频同步有哪些理解?
  • 10、弱网环境下的音视频卡顿要如何优化?

图文完整版请阅读:https://gjzkeyframe.github.io/posts/av-interview-qa-31/


想要学习和提升音视频技术的朋友,快来加入我们的【音视频技术社群】,加入后你就能:

  • 1)下载 30+ 个开箱即用的「音视频及渲染 Demo 源代码」
  • 2)下载包含 500+ 知识条目的完整版「音视频知识图谱」
  • 3)下载包含 200+ 题目的完整版「音视频面试题集锦」
  • 4)技术和职业发展咨询 100% 得到回答
  • 5)获得简历优化建议和大厂内推

现在加入,送你一张 20 元优惠券:点击领取优惠券


下面一名音视频技术面试官在面试中常用的一些开场基础面试题,包含音视频基础概念、编解码、传输协议、性能优化等方面。

1、I 帧、P 帧和 B 帧的概念及区别?

这三种帧的主要区别在于它们的压缩方式和相互依赖关系:

  • I 帧(关键帧)

    • 完整编码的独立帧
    • 不依赖其他帧,可独立解码
    • 压缩率最低,但支持随机访问
  • P 帧(预测帧)

    • 仅包含与前一帧的差异信息
    • 依赖前面的 I 帧或 P 帧
    • 压缩率高于 I 帧
  • B 帧(双向预测帧)

    • 参考前后两帧进行编码
    • 压缩率最高
    • 需要更多的解码资源

2、视频编码中的码率控制技术有哪些?

码率控制是调节视频编码输出码率的技术:

  • CBR(固定码率)

    • 保持稳定的码率输出
    • 适合直播等场景
  • VBR(可变码率)

    • 根据画面复杂度动态调整码率
    • 画质更好
  • ABR(平均码率)

    • 在一段时间内保持平均码率
    • 兼顾画质和带宽
  • CQP(固定质量)

    • 保持固定的量化参数
    • 码率会随画面变化

3、音频采样参数有哪些?

音频采样的关键参数:

  • 采样率

    • 每秒采样次数
    • 常见值:
      • 8kHz(电话)
      • 44.1kHz(CD音质)
      • 48kHz(专业音频)
  • 位深度

    • 每个采样点的数据位数
    • 常见值:16bit、24bit、32bit
    • 一般手机通话使用 8kHz/16bit
    • 音乐播放使用 44.1kHz/16bit

4、RTMP 和 HLS 协议各有什么特点?如何选择?

  • RTMP

    • 基于 TCP
    • 延迟低(1-3秒)
    • 实时性好,适合直播
    • 穿透防火墙能力较弱
  • HLS

    • 基于 HTTP
    • 兼容性好
    • 延迟较高(>5秒)
    • 自适应码率
    • 支持点播和直播

选择建议:对延迟要求高的场景选择 RTMP,需要跨平台兼容性好的场景选择 HLS。

5、WebRTC 中的 ICE、STUN、TURN 各有什么作用?

  • ICE(交互式连接建立):收集并尝试各种可能的网络连接路径
  • STUN:帮助位于 NAT 后的设备获取公网 IP 地址和端口
  • TURN:当点对点连接失败时,提供中继服务器进行数据转发

6、AAC 编码的 Profile 有什么区别?

  • AAC-LC

    • 最基本的 Profile
    • 编码效率和音质适中
  • AAC-HE(AAC+)

    • 在 AAC-LC 基础上增加 SBR 技术
    • 更适合低码率
  • AAC-HE v2

    • 在 AAC-HE 基础上增加 PS 技术
    • 进一步降低码率
  • AAC-LD

    • 低延迟版本
    • 适合实时通信

7、视频播放内存优化有哪些方向?

主要优化方向:

  • 使用硬件解码替代软件解码
  • 合理设置解码缓冲区大小
  • 及时释放不需要的解码帧
  • 使用纹理复用机制
  • 控制预加载的数据量
  • 适当降低分辨率和帧率

8、H.264 和 H.265 有哪些区别?

主要区别:

  • H.265 比 H.264 有更高的压缩率(同画质下码率可降低 50%)
  • H.265 支持更大的编码单元和更灵活的分区
  • H.265 的计算复杂度更高
  • H.265 的专利费用较高

选择建议:

  • 对带宽敏感,设备性能足够时选择 H.265
  • 需要广泛兼容性或设备性能受限时选择 H.264

9、你对音视频同步有哪些理解?

时间戳概念:

  • PTS(显示时间戳):标识帧应该在什么时候显示
  • DTS(解码时间戳):标识帧应该在什么时候解码

音视频同步方法:

  • 以音频为基准进行同步
  • 通过比较音视频 PTS 调整视频显示时间
  • 设置同步阈值,超出范围时进行追赶或等待

10、弱网环境下的音视频卡顿要如何优化?

主要处理策略:

  • 自适应码率:根据网络状况动态调整码率
  • 丢帧策略:网络拥塞时优先丢弃 B 帧和 P 帧
  • 缓冲区管理:动态调整缓冲区大小
  • FEC(前向纠错):增加冗余数据用于恢复丢包
  • NACK(丢包重传):检测到丢包时请求重传
  • 音频优先: 确保音频流畅、保证基本的通信体验

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/94196.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/94196.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/94196.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业视频库管理高效策略

内容概要本文全面探讨企业视频库管理的高效策略,旨在帮助组织优化视频资源处理。首先,我们将介绍企业视频库管理的基本概念和核心价值。接着,深入分析智能分类核心技术如何通过AI算法实现视频自动归类。之后,阐述云集成实现路径&a…

WebSocket和跨域问题

WebSocket 特点 WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。简单来说,它就像是在客户端和服务器之间建立了一条"专用通道",双方可以随时主动发送消息给对方,而不需要像HTTP那样总是由客户端发起请求。 同一时间、双向…

微服务-19.什么是网关

一.网关曾经我们的项目是单体项目,前端只需要请求8080端口,就可以获取所有需要的数据和服务并进行渲染。但是拆分成微服务后,会面临几大问题:1.但是现在我们将该单体项目拆分成了微服务项目,每个项目都有自己独立的端口…

从字节码层面剖析以太坊智能合约创建原理

1. 引言 阅读完本文之后,将能理解一下字节码含义: 608060405260405160893803806089833981016040819052601e916025565b600055603d565b600060208284031215603657600080fd5b5051919050565b603f80604a6000396000f3fe6080604052600080fdfea2646970667358221…

typora无需激活版及最新激活版方法!双击安装就能用

介绍 Typora 是一款Markdown编辑器,支持实时预览,所见即所得。跨平台,支持Windows、macOS、Linux。适合写作、笔记、技术文档等。本教程将提供合法安全的安装方案,并解决常见问题,助你高效完成部署! 直接…

基于Java、GeoTools与PostGIS的对跖点求解研究

目录 前言 一、对跖点简介 1、地理学定义 2、人生哲学含义 二、对跖点求解 1、Java求解 2、Geotools求解 3、PostGIS求解 4、三种计算方法的对比 5、Leaflet展示对跖点 三、总结 前言 在地理信息系统(GIS)领域,对跖点(A…

Linux-函数的使用-编写监控脚本

Linux-函数的使用-编写监控脚本前言一、监控cpu二、采集内存的使用信息三、采集磁盘和分区的使用信息四、显示进程的信息前言 编写监控脚本实现以下功能 监控cpu,内存,磁盘,进程等信息,每隔5分钟记录这些信息到日志文件里perform…

Authelia:开源双因素认证与单点登录解决方案

项目标题与描述 Authelia是一个开源的认证和授权服务器,专注于为应用程序提供双因素认证(2FA)和单点登录(SSO)功能。通过Web门户,Authelia能够作为身份和访问管理(IAM)系统&#xff…

Apache Ozone 介绍与部署使用(最新版2.0.0)

目录 一、软件介绍 二、软件架构 Ozone Manager(OM) Storage Container Manager(SCM) Containers Datanodes Storage Containers Recon Recon 和 Ozone Manager Recon 和 Storage Container Manager 三、安装部署 准备…

Review --- Linux

Review — Linux Linux 是一种开源的类 Unix 操作系统内核,广泛应用于服务器、嵌入式设备和个人计算机中。其核心特点是开源、稳定、安全和高度的可定制性。对于大学毕业生而言,掌握 Linux 的基本操作和原理是进入 IT 行业的重要技能之一。 Linux 的基本…

【msyql 】占用硬盘太大 ,那些文件可以清理

从目录内容来看,这台 MySQL 服务器上主要是 xxl-job 调度平台的数据库。占用空间最大的是:24G xxl_job_log.ibd这个文件是 xxl-job 的任务执行日志表,随着时间推移,日志量会非常大。可以清理的文件和方法1. 清理 xxl_job_log 表数…

58 C++ 现代C++编程艺术7-模板友元

C 现代C编程艺术7-模板友元 文章目录C 现代C编程艺术7-模板友元一、基础应用场景 🧩1. 模板类声明友元函数2. 普通类声明模板函数为友元二、模板类互访场景 ⚙️1. 同类模板互访(一对一)2. 异类模板互访(多对多)三、高…

Undertow —— JBOSS 的社区版,redhat 下场维护的开源项目,顶顶好用的 Java web server

Undertow JBoss Community Undertow Undertow is a flexible performant web server written in java, providing both blocking and non-blocking API’s based on NIO. Undertow 是一个用 Java 编写的灵活高性能 Web 服务器,提供基于 NIO 的阻塞和非阻塞 API。…

【AI智能体】Dify 搭建业务单据差异核对助手实战详解

目录 一、前言 二、Dify介绍 2.1 Dify 是什么 2.2 Dify 核心特性 2.2.1 Dify特点 2.2.2 Dify 多模型支持 2.2.3 Dify 适应场景 2.2.4 基于Dify 搭建发票识别应用优势 三、Dify 搭建业务单据核对助手实战过程 3.1 前置准备 3.1.1 安装必要的插件 3.2 完整操作步骤 3…

Centos编译安装Python3.10

gcc编译源码包 下载python源码包并解压 wget https://www.python.org/ftp/python/3.10.18/Python-3.10.18.tgz tar -xf Python-3.10.18.tgz cd Python-3.10.18系统编译依赖环境安装 sudo yum install zlib-devel ncurses-devel gdbm-devel nss-devel openssl-devel readline-de…

Maya 3D建模 导入参考图、锁定参考图

1 导入参考图切换到 前视图 或者 侧视图 导入 (根据参考图片类别去选择)方法1:视图--图像平面--导入图像方法2:直接点 图像平面 备注:误操作导致看不到 解决办法:显示--视口 找对应的2 锁定参考图目的&…

基于单片机智能加湿器/空气加湿器

传送门 👉👉👉👉其他作品题目速选一览表 👉👉👉👉其他作品题目功能速览 概述 基于单片机的智能加湿器通过集成温湿度传感器、控制模块和雾化装置,实现环境湿度的自…

SNDR:高精度ADC系统的综合性能标尺

SNDR:高精度ADC系统的综合性能标尺 一、SNDR的本质定义与理论基础 信噪失真比(Signal-to-Noise-and-Distortion Ratio) 是评估ADC系统综合性能的核心指标,定义为信号功率与噪声及失真功率之和的比值: SNDRdB10log⁡10(PsignalPnoisePdistorti…

2025年渗透测试面试题总结-31(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 一、代码审计核心思路(261) 二、MySQL Getshell前提(262) …

[创业之路-560]:机械、电气、自控、电子、软件、信息、通信、大数据、人工智能,上述技术演进过程

上述关键词反映的技术演进过程可梳理为一条从机械执行到智能决策的递进式发展主线,各技术领域在不同阶段相互渗透、共同推动机器人技术从功能替代向认知革命跃迁。以下是具体演进逻辑与趋势分析:一、技术演进的三阶段递进机械主导阶段(工业革…