影石insta360 嵌入式软件开发实习生(offer已接)

一面:

c++11有哪些特性?

智能指针用途?种类?原理?

lambda表达式主要作用?可读性?

java垃圾回收机制?需要手动管理吗?C++呢?关键字?

什么是内存泄漏?

Linux中grep命令作用?-v呢?

git工具工作流程?多个人push到同一个分支,产生冲突怎么解决?

ffmpeg编解码流程?音视频解码后的数据是什么?

解码后处理有哪些?

ui跟视频怎么叠到一起?

处于什么场景用docker?

镜像和容器区别?

docker命令常见有哪些?下载镜像哪个命令?

用过其他gui框架吗?

qt信号和槽机制,怎么理解?connect参数有几个?

connect中同步和异步区别,怎么判断哪个场景用哪个?怎么区别同步和异步?

qt主要哪些组件?

自定义控件写过吗?实现自定义控件有哪些方法?有用过哪些具体例子?

播放器项目有用到芯片吗?(没有,软件解码)

文件列表显示样式是什么?如果文件名加图片呢?

音视频同步怎么做的?

视频线程怎么获取音频时间戳?

音频重采样目的?

讲讲grpc这个框架,场景和功能?里面server是cs架构吗?(项目里的)

grpc调用有没有同步和异步区分?

数据不会主动通知,而是要主动调用?

界面开发有没有使用动画效果?

二面:

介绍优点和长处?

问qt是自学吗?问学习到做项目的过程?

为什么选择qt?

qt有什么优缺点?

聊项目,项目构建流程

mp4文件解码流程

(MP4容器解开,里面有音频、视频、字幕多轨道信息,视频数据会根据编码格式和包头判断是h264还是h265,会通过ffmpeg的软解和硬解,解码成yuv,根据显示屏转化成相应rgb数据,rgb一般是565;音频也是由MP4解析,格式大部分为aac、flac格式,将aac格式解码成原始流进行播放)

音视频同步实现

介绍一下linux开机流程,从上电到用户第一个二进制程序?

(上电,同步load,屏蔽中断,从flash里面拷到内存里面加载部件,外设初始化,loader把kernel加载到内存里面,kernel从这个位置启动,cpu跳到那个位置执行,开始加载kernel,kernel也分三步,第一步初始化?态,第二步是内核态,第三步是用户态,初始化的时候会将外设、中断什么的初始化,初始化又会跳转到CPU又会跳转到内核态,内核态主要负责内核任务调度、内存管理、驱动加载起来,什么时候跳到用户态?当Linux内核起来完之后,会起一定的对应文件,进程task标号是0,是第一个进程,这个时候才会把内核态转为用户态,这时候才会将用户的二进制程序拉起来,这个流程就完成了)

括号内容是面试官原话................大概

hr面:

就简单聊聊,没什么东西

全部评论

相关推荐

评论
1
3
分享

创作者周榜

更多
牛客网
牛客企业服务