关于手机是否支持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博客

相关推荐
创思通信8 小时前
STM32F103C8T6采 DS18B20,通过A7680C 4G模块不断发送短信到手机
javascript·stm32·智能手机
echo的PHP开发8 小时前
如何获取苹果手机的 XcodeOrgId
python·智能手机·苹果手机
lxysbly8 小时前
安卓 PS1 模拟器,手机上也能玩经典 PlayStation 游戏
android·游戏·智能手机
轻口味9 小时前
[鸿蒙2025领航者闯关]HarmonyOS 6.0 云台、机械臂等机械体设备与手机交互能力Mechanic Kit介绍
智能手机·交互·harmonyos
专业开发者9 小时前
手机变身万能钥匙:是否可以通过蓝牙解锁未来生活
智能手机·生活
Simon_lca9 小时前
迈向绿色未来:全球手机品牌ESG实践深度剖析——聚焦供应链减排与零碳转型
大数据·人工智能·经验分享·智能手机·分类·制造
TheNextByte19 小时前
如何通过无线或USB连接三星手机到电脑?
智能手机·电脑
HMS Core9 小时前
HarmonyOS SDK携手Remy让普通手机即可完成专业级3D空间重建
3d·智能手机·harmonyos
lxysbly10 小时前
安卓 PSX 模拟器,手机上重温 PS1 经典的几种选择
android·智能手机
线束线缆组件品替网1 天前
Aries Electronics 定制线缆选型与设计建议
数码相机·测试工具·智能手机·电脑·pcb工艺