“深入浅出”系列之音视频开发:(3)岗位要求

算法工程师-视频编解码

职位描述

在这里,你将参与JVET / VVC的下一代视频编码标准设计和算法研究;

在这里,你将参与视频编码(包括但不限于VVC/AV1/AVS3)优化:通过信号处理和机器学习的快速编码决策、数据结构、并行框架设计,优化编码速度,同时在有竞争力的视频编码内核基础上,探索基于语义的内容自适应编码优化;

在这里,你将参与超低带宽的视频压缩:针对超低带宽场景下,探索针对信号处理和语义的信息论极限;

在这里,你将参与视频编码与处理联合优化:在标准编码框架的基础上,借助AI领域的新技术成果来研究视频信号的表征、编码与处理,将视频前后处理与编码联合优化,提升端到端压缩效果;

在这里,你将进行面向人眼视觉模型编解码技术研究:将视频编码与质量评价相结合,提升人眼压缩体验;

在这里,你将参与为VR/ AR等新兴应用设计和实施新颖的视频处理、编码和质量评估算法,以推动端到端系统体验优化。

加入我们,迎接未来的视频洪流的挑战,同时为用户提供无处不在的沉浸式高品质视频服务,布局下一代多媒体标准开发和沉浸式多媒体体验创新(如虚拟现实、增强现实、沉浸式音视频等)。来吧,我们等你加入!

职位要求

【必备项】

  1. 本科及以上学历,计算机等相关专业,有视频或图像编码和处理研究背景;

2、有视频编码优化或视频标准的经验优先考虑,如X264,X265,VVENC, VVC,JEM,HEVC,SHVC,SCC,H.264 / AVC,SVC,MVC,AVS,VP8和/或图像编码标准,如JPEG,JPEG-XR,JPEG HDR或JPEG2000;

3、精通C ++和C编程,有使用视频编码开源软件或标准参考软件的经验,如X264,X265,VVENC, VTM,JEM,HM,SHM,JM和JSVM优先考虑;

4、有出色的分析研究及创新能力。

研发工程师-音视频

职位描述

在这里,你将参与淘宝直播及短视频等丰富的内容业务场景,围绕“更清晰、更好看、更好玩”,和其他优秀的同学一起,为用户提供极致的体验; 在这里,你将负责为用户提供最优的播放体验,负责直播推流和视频播放,包括但不限于音视频采集渲染、RTC视频传输、QOS优化、视频架构设计、客户端性能优化等; 加入我们,你将会面对新的内容场景,通过技术深耕,致力于行业领先的音视频技术创新和应用,帮助创造极致的消费者体验。你的工作将服务于改善全世界数十亿人的购物、娱乐和交互的体验。探索未知,挑战未来,来吧,我们等你加入!

职位要求

【必备项】

  1. 熟悉音视频引擎技术架构和常见的多媒体框架,如WebRTC、FFMPEG、GStreamer等;
  2. 了解音视频通话的客户端架构,了解音视频采集、编码、推流等环节;如H.264、Opus、AAC、AV1等,熟悉常见的系统层,如RTP、RTCP、RTSP、RTMP等;
  3. 熟练掌握C/C++开发语言,计算机基础扎实;
  4. 扎实的网络技术基础,对Socket通信、UDP、TCP/IP、HTTP、ICE有深刻的理解;
  5. 有较强的学习欲、好奇心和进取心,积极乐观、责任心强,具有良好的团队沟通和协作能力

云计算工程师

可以参与到弹性计算、智算超算、云存储、云网络、混合云、数据库、云终端、云原生、操作系统、高性能网络、芯片、信息安全、其他(架构及平台研发)等一个或多个领域,开展科研及技术研发工作。

  1. 从事云计算、云网融合领域的新技术研究探索,开展技术评测与验证;
  2. 承担天翼云操作系统、弹性计算、分布式存储、服务器、云安全等技术及软硬协同、云网融合、云边协同、ABC一体化(AI/BigData/Cloud)等方向关键问题的深入研究,提出创新方法,并与产品研发团队协同,完成落地实施;
  3. 跟踪、研究云计算领域前沿技术和相关产业的发展趋势,提出云计算领域关键核心技术攻关方向,探索和解决核心技术问题,提出创新性解决方案;
  4. 产出高质量的研究报告、知识产权和技术标准,丰富中国电信在云计算领域的知识产权储备;

5.深化与国内外高校、研究机构的学术交流与合作,提升中国电信在云计算领域的学术影响力。 本岗位需求将根据实际需要由中国电信天翼云和中国电信云计算研究院共同招聘。

1 音视频播放器

FFmpeg常见的API

音频队列视频队列

PTS DTS 音视频同步

OpenGL渲染视频

音频冲采样

音频播放

硬件解码。

2 视频容器mp4封装技术

h.264 265编码,

aac编码,

音视频同步

pts 时间基

OpenGL基础,我们必须要掌握的。

1、基本概念和安装配置

* 学习图形学的基本概念:像素、坐标系、颜色、矢量、矩阵等。

* 绘制基本形状:使用顶点缓冲对象(VBO)和顶点数组对象(VAO)绘制三角形、四边形等基本形状。

* 简单着色器:编写顶点着色器(Vertex Shader)和片段着色器(Fragment Shader),理解着色器的基本概念。

  1. 变换和3D投影

* 变换矩阵:学习平移、旋转、缩放变换,以及使用矩阵表示和计算这些变换。 * 视图变换:了解视角变换和观察点的概念,学习设置观察矩阵。 * 投影变换:理解正交投影和透视投影,学习设置投影矩阵。

  1. 纹理映射 * 基本纹理映射:学习加载和使用纹理,理解纹理坐标和采样。 * 多重纹理:了解如何在一个物体上应用多个纹理。 * 纹理过滤和环绕方式:学习设置纹理的过滤模式(如线性过滤、最近邻过滤)和环绕方式(如重复、镜像等)。
  2. 光照和材质 * 基本光照模型:学习Phong光照模型,包括环境光、漫反射光、镜面反射光。 * 光源:学习如何在场景中添加点光源、平行光和聚光灯。 * 材质属性:了解物体材质的属性,如漫反射、镜面反射、发光等。
  3. 高级OpenGL技术 * 帧缓冲对象(FBO):学习使用FBO进行离屏渲染,理解多重渲染目标(MRT)。 * 高级着色器技术:了解几何着色器(Geometry Shader)和计算着色器(Compute Shader)的使用。 * 后期处理:实现一些常见的后期处理效果,如模糊、边缘检测、HDR等。
  4. 动画和物理 * 基本动画技术:学习关键帧动画、骨骼动画等。 * 物理引擎:了解如何结合物理引擎(如Bullet)进行物理模拟。
  1. 优化和高级渲染技术 * 性能优化:学习减少绘制调用、使用Instancing、批处理等技术来优化性能。 * 高级渲染技术:了解延迟渲染(Deferred Shading)、全局光照(Global Illumination)、环境光遮蔽(Ambient Occlusion)等。

音视频流媒体开发

第一阶段:

无论是音视频图像渲染方向,还是流媒体方向,音视频基础都是需要学习的,比如rgb yuv,FFmpeg 播放器核心,音视频编解码,硬件编解码

H.264 265编码算法,解析。mp3/aac/mp4/flv/mkv这些视频容器。以及如何将264 265这些视频流封装到mp4 都是需要深入学习的

流媒体开发方向侧重于网络通讯,所以Linux网络socket通讯编程是基础中的基础,从自己手写tcp udp私有协议开始,到深入tcp协议栈,可靠性udp封装,udp打洞 p2p,流媒体转发服务器等,都要滚瓜烂熟。 然后就是一些常见的流媒体协议,比如rtsp rtmp rtcp rtp hls sip等。当然这些东西,你音视频网络通讯功底好,就非常容易学习。

第二阶段:

深入研究网络通讯,比如webrtc这种低延迟,经济实惠的p2p 结合relay的框架, 比如它里面的udp打洞,网络拥塞,都懂,丢包重传等机制。这些东西一方面需要你的网络通讯基础,另一方面需要你的 c++工程能力。

第三阶段:

进一步研究这一套低延迟框架如何适应大规模的应用场景。这种工作 更加偏向于后端音视频服务器开发,当然这种岗位现在局限于一些大厂。中小公司没这种技术以及金钱的实力

应届C++ OpenGL开发方向就业市场分析:

  • 就是我们前面说的OpenGL+音视频的岗位,这些岗位主要做的工作,其实在音视频领域叫后期处理。

第二 就是视频特效叠加。这个属于AR领域,大家看到的直播带货虚拟场景啊,直播特效啊,人脸上带个狗鼻子啊,变脸啊,最近 几年新兴的一些应用场景特别多。我们将实时采集的图片,交给机器学习,机器学习就能实时识别场景里面的内容,比如识别到人脸,就能 准确标定人脸上鼻子的具体位置,嘴唇的具体位置,有了这些位置数据以后,我们就可以用opengl 叠加各种特效,动画。 所以这个属于比较前沿的AR领域。

 第三就是 AIGC领域,随着大模型人工智能越来越火,那么大模型要接触到终端消费者,一些前端的交互界面,渲染,都需要用到OpenGL。

第四就是各种设计软件领域,比如CAD CAE啊,这几年国产替代,很多国产设计软件都在大量招人,这个领域一般跟Qt结合开发的岗位比较多。

第五就是游戏引擎,以及游戏引擎周边的工具软件开发,比如游戏编辑器啊等等。 第六就是一些前沿的虚拟现实 虚拟仿真软件领域的基础软件开发,这个市场稍微小一些,但是依然有公司在做。

音视频流媒体

所需要具备的技能音视频基础(ffmpeg环境搭建,音视频基础)FFMPEG编程(FFMPEG命令,音视频渲染,FFmpeg API,音视频编码,音视频封装格式,音视频过滤器,播放器开发,ffplay播放器,ffmpeg录制转码)

流媒体(rtmp流媒体,hls流媒体,http-flv流媒体,RTMP/HLS/HTTP-FLV流媒体服务器,RTSP流媒体)

WEBRTC(WebRTC中级开发, WebRTC高级开发,Janus服务器源码)

应用场景:

视频点播

视频会议

远程教育

远程医疗

短视频

在线直播系统

主流的流媒体协议主要有:RTMP,HLS,RTSP等

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

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

相关文章

电脑换固态硬盘

参考: https://baijiahao.baidu.com/s?id1724377623311611247 一、根据尺寸和缺口可以分为以下几种: 1、M.2 NVME协议的固态 大部分笔记本是22x42MM和22x80MM nvme固态。 在京东直接搜: M.2 2242 M.2 2280 2、msata接口固态 3、NGFF M.…

回顾2024年在CSDN的成长

文章目录 我与CSDN的初次邂逅初学阶段的阅读CSDN:编程新手的避风港初学者的福音:细致入微的知识讲解考试复习神器:技术总结的“救命指南”曾经的自己:为何迟迟不迈出写博客的第一步兴趣萌芽:从“读”到“想写”的初体验…

抖音ip属地不准是什么原因?可以改吗

在数字化时代,社交媒体平台如抖音已成为人们日常生活的重要组成部分。随着各大平台对用户隐私和数据安全的日益重视,IP属地的显示功能应运而生。然而,不少抖音用户在使用过程中发现,显示的IP属地与实际位置存在偏差,这…

Win11 安装与配置 Java环境 JDK(以JDK11为例)

0,下载JDK 访问JDK官网:Java Downloads | Oracle 选择对应版本进行下载,目前21和23都是可以直接下载的 但是如果需要下载旧版本,往下拉找到要下载的版本,不过这时候下载就需要登录账号了,注册一个就成 2&…

LabVIEW串口通信调试与数据接收问题

在使用LabVIEW进行串口通信时,常常会遇到无法接收数据的情况。这可能与串口设置、连接、设备响应等多方面因素相关。本文将详细讨论如何使用LabVIEW进行串口通信,并提供常见问题的排查与解决方法,帮助用户更高效地进行数据接收调试。通过调整…

概率扩散去噪模型DDPM

文章目录 摘要abstract高斯噪声扩散模型正向过程逆向过程 论文阅读论文创新点解决的问题 总结参考文献 摘要 本周主要学习了高斯噪声在扩散模型中的应用及相关算法实现。扩散模型受到自然现象的启发,通过在图像中引入高斯噪声,模拟出扩散效果&#xff0…

Python操作Excel——openpyxl使用笔记(3)

3 单元格基本操作 3.1 访问单元格和读写其内容 在前面的例子中,已经简单演示过了向单元格中写入和读取数据。这里进一步提供访问单元格的一些方法。和前面一样,使用工作表的索引方式,可以快速定位一个单元格: import openpyxl w…

2025.1.18机器学习笔记:PINN文献精读

第三十周周报 一、文献阅读题目信息摘要Abstract创新点物理背景网络框架实验实验一:直道稳定流条件实验二:环状网络中的非稳定流条件 结论缺点及展望 二、代码实践总结 一、文献阅读 题目信息 题目:《Enhanced physics-informed neural net…

CSS 的基础知识及应用

前言 CSS(层叠样式表)是网页设计和开发中不可或缺的一部分。它用于描述网页的视觉表现,使页面不仅实现功能,还能提供吸引人的用户体验。本文将介绍 CSS 的基本概念、语法、选择器及其在提升网页美观性方面的重要性。 什么是 CSS&…

Web开发 -前端部分-CSS-2

一 长度单位 代码实现&#xff1a; <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document<…

Linux shell zip 命令实现不切换当前终端的工作目录打包另一个路径下的文件和文件夹

如图&#xff0c;我想在当前目录 ~/Bypasser 下打包 src 文件夹&#xff0c;使得生成的 zip 压缩包中具有 src 文件夹下的所有文件夹、所有文件夹中的所有子项目、所有文件&#xff0c;保留层次结构但压缩包中最外面不包含 src 这一层。执行命令时&#xff0c;不要改变当前终端…

QT跨平台应用程序开发框架(3)—— 信号和槽

目录 一&#xff0c;基本概念 二&#xff0c;connect函数使用 2.1 connect 2.2 Qt内置信号和槽 2.3 一些细节 三&#xff0c;自定义信号和槽 3.1 自定义槽函数 3.2 自定义信号 3.3 带参数的信号槽 四&#xff0c;信号和槽的意义 五&#xff0c;信号和槽断开连接 六&…

聊聊如何实现Android 放大镜效果

一、前言 很久没有更新Android 原生技术内容了&#xff0c;前些年一直在做跨端方向开发&#xff0c;最近换工作用重新回到原生技术&#xff0c;又回到了熟悉但有些生疏的环境&#xff0c;真是感慨万分。 近期也是因为准备做地图交互相关的需求&#xff0c;功能非常复杂&#x…

一、1-2 5G-A通感融合基站产品及开通

1、通感融合定义和场景&#xff08;阅读&#xff09; 1.1通感融合定义 1.2通感融合应用场景 2、通感融合架构和原理&#xff08;较难&#xff0c;理解即可&#xff09; 2.1 感知方式 2.2 通感融合架构 SF&#xff08;Sensing Function&#xff09;&#xff1a;核心网感知控制…

golang标准库path/filepath使用示例

文章目录 前言一、常用方法示例1.将相对路径转换为绝对路径2.获取路径中最后一个元素3.获取路径中除去最后一个元素的部分4.路径拼接5.将路径拆分为目录和文件名两部分6.返回一个相对路径7.文件路径遍历8.根据文件扩展名过滤文件9.使用正则表达式进行路径匹配 前言 path/filep…

HBase实训:纸币冠字号查询任务

一、实验目的 1. 理解分布式数据存储系统HBase的架构和工作原理。 2. 掌握HBase表的设计原则&#xff0c;能够根据实际业务需求设计合理的表结构。 3. 学习使用HBase Java API进行数据的插入、查询和管理。 4. 实践分布式数据存储系统在大数据环境下的应用&#xff0c;…

HarmonyOS NEXT应用开发边学边玩系列:从零实现一影视APP (三、影视搜索页功能实现)

在HarmonyOS NEXT开发环境中&#xff0c;可以使用nutpi/axios库来简化网络请求的操作。本文将展示如何使用HarmonyOS NEXT框架和nutpi/axios库&#xff0c;从零开始实现一个简单的影视APP&#xff0c;主要关注影视搜索页的功能实现。 为什么选择nutpi/axios&#xff1f; nutpi…

天机学堂3-ES+Caffeine

文章目录 day05-问答系统表 用户端分页查询问题目标效果代码实现 3.6.管理端分页查询问题ES相关 管理端互动问题分页实现三级分类3.6.5.2.多级缓存3.6.5.3.CaffeineTODO&#xff1a;使用Caffeine作为本地缓存&#xff0c;另外使用redis或者memcache作为分布式缓存&#xff0c;构…

重拾Python学习,先从把python删除开始。。。

自己折腾就是不行啊&#xff0c;屡战屡败&#xff0c;最近终于找到前辈教我 第一步 删除Python 先把前阵子折腾的WSL和VScode删掉。还是得用spyder&#xff0c;跟matlab最像&#xff0c;也最容易入手。 从VScode上搞python&#xff0c;最后安装到appdata上&#xff0c;安装插…

智能新浪潮:亚马逊云科技发布Amazon Nova模型

在2024亚马逊云科技re:Invent全球大会上&#xff0c;亚马逊云科技宣布推出新一代基础模型Amazon Nova&#xff0c;其隶属于Amazon Bedrock&#xff0c;这些模型精准切入不同领域&#xff0c;解锁多元业务可能&#xff0c;为人工智能领域带来革新。 带你认识一起了解Amazon Nova…