C++一面音视频经验

1. 有使用GPU、NPU、CPU编程吗?

  • 编写已有算法模型的GPU/NPU推理工程化实现、前后处理的数学计算,以及自定义算法
  • CUDA并行编程
  • CANN编程
  • 神经网络、计算机视觉算法:目标检测、目标分割、目标跟踪、关键点检测

2. H264,H265编解码有用过吗

H264基础概念
  1.SPS(Sequence Parameter Set):保存一组编码视频序列的全局参数
   a.profile 视频编码的档次
   b.视频长宽
  2.PPS
   a.I帧
   b.P帧
   c.B帧
  3.PTS和DTS
   PTS: 显示时间戳,表示解码后显示的时间
   DTS: 解码时间戳,表示送入解码器的顺序
  4.H264存储的两个形态
   a.Annex B :
    StartCode :NALU单元,开头一般是0001或者001
    防竞争字节:为了区分 0 0 0 1,它采用0 0 0 0x3 1作为区分
    多用于网络流媒体中:rtmp、rtp格式
   b.AVCC :
    表示NALU长度的前缀,不定长用4、2、1来存储这个NALU的长度
    防竞争字节
  多用于文件存储中 mp4的格式

编解码流程

编码流程:
1.av_register_all
2.为AVFormatContext 分配内存
3.打开文件
4.创建输出码流AVSream
5.找到编码器
6.打开编码器
7.写文件头,没有的就不写入
8.循环编码视频像素数据->视频压缩数据
循环编码音频采样数据->音频压缩数据 ———>AVFrame转化为AVPacket
9.将编码后的视频码流写入文件 ——>AVPacket转化为AVFormat函数
10.关闭编码器
11.写文件尾
12.关闭资源文件

解码流程:
1.av_register_all
2.创建AVFormatContext的对象上下文
3.打开文件
4. avformat_find_stream_info
5.找到解码器
6.打开解码器
7.创建AVCodecContext上下文
8.av_read_frame :将avPacket数据转换为avFrame数据

3. 图像处理有做过吗?

4.后端服务架构,熟悉常用的中间件&存储服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值