关于手机是否支持h264的问题的解决方案

目录

现象

原理

修改内容



现象

开始以为是手机不支持h264的编码 。机器人chatgpt一通乱扯。

后来检查了下手机,明显是有h264嘛。

终于搞定,不枉凌晨三点起来思考

原理

WebRTC 默认使用的视频编码器是VP8和VP9,WebRTC内置了这两种编码器的软件实现,因此使用WebRTC进行视频通信的时候视频编码器都是VP8或者VP9,当需要用到H264格式的时候发现WebRTC在sdp协商过程中就失败了,通过查看sdp信息,发现sdp中完全没有H264相关的信息,也就是说手机不支持H264,这是不可能的,H264作为视频的主流编码器,手机厂商不可能不支持,而且大部分手机厂商都将H264编码算法植入到硬件中,实现了H264的硬件编解码。

如何让WebRTC支持H264,需要看一下WebRTC的源码,看一下HardwareVideoEncoderFactory这个类,有一个isHardwareSupportedInCurrentSdk私有方法,这个方法就是判断当前的Android 版本是否支持硬件编码,里面调用了一个方法isHardwareSupportedInCurrentSdkH264,找到H264了,同样这个方法是用来判断当前Android版本是否这次H264硬件编码器

修改内容

参考文档

WebRTC 支持H264编解码_webrtc android h264-CSDN博客

相关推荐
RoboWizard6 小时前
8TB SSD还有掉速问题吗?
人工智能·缓存·智能手机·电脑·金士顿
产业家9 小时前
AI手机的终极猜想:超级Agent入口|产业深度
人工智能·智能手机
装不满的克莱因瓶10 小时前
Android Studio 的模拟器如何上传本地图片到手机相册
android·智能手机·android studio
2401_8658548811 小时前
腾讯云云手机的质量如何
智能手机·云计算·腾讯云
思茂信息12 小时前
CST仿真实例:手机Type-C接口ESD仿真
c语言·开发语言·单片机·嵌入式硬件·智能手机·cst·电磁仿真
qq_2518364571 天前
基于javaWeb 手机销售系统设计与实现
智能手机
宇宙老魔女1 天前
三星手机无法安装APK,国内的小米,华为却可以安装
华为·智能手机
线束线缆组件品替网1 天前
Panduit 数据中心布线设计实战解析
数码相机·测试工具·智能手机·电脑·pcb工艺·智能手表·智能电视
Name_NaN_None1 天前
有主机没键盘,手机怎么当电脑键盘?—「应急方法」
智能手机·电脑