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

相关推荐
herinspace5 小时前
如何设置电脑分辨率和显示缩放
服务器·数据库·智能手机·电脑
2501_9160088912 小时前
手机 iOS 系统全解析,生态优势、开发机制与跨平台应用上架实践指南
android·ios·智能手机·小程序·uni-app·iphone·webview
那年窗外下的雪.14 小时前
鸿蒙ArkUI布局与样式进阶(十二)——自定义TabBar + class类机制全解析(含手机商城底部导航案例)
开发语言·前端·javascript·华为·智能手机·harmonyos·arkui
wanhengidc18 小时前
云手机和云游戏的不同之处
运维·服务器·安全·游戏·智能手机
wanhengidc1 天前
云手机的安全保护措施有哪些?
运维·服务器·安全·游戏·智能手机·云计算
卓码软件测评2 天前
使用Wireshark测试手机APP网络通信完整指南
网络·功能测试·测试工具·智能手机·wireshark·测试用例·压力测试
AORO20252 天前
防爆手机是什么?2025年防爆手机哪个牌子好?
网络·5g·智能手机·制造·信息与通信
wanhengidc3 天前
服务器的安全性如何?
运维·服务器·安全·游戏·智能手机
AirDroid_cn3 天前
明知手机忘带却不着急回去拿,因为可以远程控制
智能手机·安卓·远程工作·远程控制·远程控制手机
vxtkjzxt8883 天前
手机群控软件如何构建高效稳定的运营环境?
智能手机