所谓硬件视频编解码,其实本质就是将视频编码和视频解码做成单独的硬件IP,本质还是图像处理的IP。但是编解码因为协议众多,比如AVC(又叫H.264),HEVC(又叫H.265),VVC(又叫H.266),AV1, AV2,AVS2,AVS3等,其实不同协议的差距主要是编码工具上。
首先介绍这一块的行业工作,包括以下:
(1)软件算法工程师,主要在直播平台,比如快手/抖音/Bilibili 从事于编解码算法研发,主要是x264/x265还有一系列自研的软件编解码器。
(2)硬件算法工程师,主要在端侧芯片公司以及IP公司,比如Chips&Media, 芯原VPU,ARM中国玲珑等做自研IP的编解码算法。端侧因为成本原因,编解码器的面积优化和裁剪占据一席之地,比如大部分端侧低阶的产品主要是编码器,且是没有B帧的。如果是边侧,一般对解码性能要求比较高。至于云端,目前看到最新的昇腾都不放编解码只放JPEG/图像处理。做自研GPU等公司还是会放编解码,比如摩尔线程/沐熙等。
(3)驱动工程师。这一块其实是市场上岗位最多的,简单来说做Chips&Media / 芯原驱动开发的岗位居多。前者有firmware,大幅度降低驱动开发难度。还有一些公司自己做的一些框架,比如hisi/rk的MPP等。再往上层,还有一些FFmpeg/Gstreamer/VAAPI/Vulkan/CUDA框架的适配等。
(4)数字IC工程师,设计方面,个人感觉,编解码IP开发难度还是挺大的,并且开发周期长,且行业岗位其实不多。至于验证,实在不知道有啥好验证,编码就是配置一系列参数,看码流跟Cmodel输出是否一致。解码就是配置一系列码流,看输出的yuv跟Cmodel输出是否一致。如果是专门做这个方向的验证,收益不大。