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

相关推荐
有什么事1 小时前
把安卓搬上云端:云手机系统改造与内核优化拆解
android·智能手机
拒绝内耗。6 小时前
程序员学架构(一):一张图看懂 Java 后端架构:一个请求怎样从手机到数据库?
java·智能手机·架构
全速向光10 小时前
手机玩我的世界Java版:FCL启动器下载使用指南
java·智能手机·游戏程序
云边有个稻草人11 小时前
手机操作电脑的软件哪个好?5款手机远控电脑横评
智能手机·电脑
一支标1 天前
【手机+电脑】通达信《K策王》策略战法K策王技术副图指标使用说明
大数据·智能手机·电脑
开开心心就好1 天前
免费刷题软件推荐,支持导入题库自动判题
网络·网络协议·tcp/ip·jupyter·智能手机·电脑·idea
全速向光2 天前
JoiPlay 模拟器:在手机上畅玩你所热爱的独立游戏
游戏·智能手机
云雨巫山2 天前
Unity 游戏开发性能优化全景手册
unity·智能手机·性能优化·游戏引擎
Anhty3 天前
2026九月最新变声器测评:iOS安卓双端适配,低延迟运行更稳定
android·人工智能·功能测试·ios·智能手机