从MediaRecord录像中读取H264参数

网友投稿 634 2022-10-30

从MediaRecord录像中读取H264参数

从MediaRecord录像中读取H264参数

说明:

许多以前做个一个测试项目,想把android手机视频接入视频服务器,做法是这样的:

把android手机的实时视频上传到后台转发服务器,转发服务器把音视频流包装成IPC rtsp服务器形式,流媒体连接手机转发服务器就像连接IPC设备一样,使用rtsp的拉流模式获取视频流。

从而实现手机---转发服务器---视频服务器—PC客户端的双向通信。

这个方案是一个简化方案,手机端仅仅负责抓包回放以及远程播放,转发服务器仅实现一个rtsp封装并未其他任何功能,其他模块是不变的。手机端使用了最上层的mediarecorder对象,一边录制回显,一边上传音视频。

手机端需要使用自定义的协议和转发服务器通信,把音视频参数告知服务器,其中获取视频参数是很重要的。

如何 获取视频参数呢?其实,mediarecorder(H264)的录制数据的开头就包含了SPS和pps参数,分析一下取出来即可,并且相同的设备、相同的配置获取的sps,pps都是相同的,只需要在启动界面的时候获取一下即可,后面就不需要获取了。

如何获取H264参数呢?

解决方案:

1、设置录像的视频解码参数为H264

2、获取到录像数据之后跳过文件头:

​​​​​​

3、后面就是SPS和PPS:

​​​​​​

这样就找到视频参数,然后封装起来,告诉服务器。

参考:

以前我好像写过一篇文章介绍sps,pps,那时候在做h264分片传输。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringMVC中@controllerAdvice注解的详细解释
下一篇:用于Node.js应用程序的SQLite客户端库和基于SQL的迁移API
相关文章

 发表评论

暂时没有评论,来抢沙发吧~