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

相关推荐
AirDroid_cn14 小时前
安卓15平板分屏比例能到1:9吗?极限分屏设置教程
android·智能手机
m0_6375569117 小时前
电脑把平板/手机当作扬声器连接软件
智能手机·电脑
Digitally1 天前
5 种简单方法,将联系人从电脑/苹果电脑传输至三星手机
智能手机·电脑
DS随心转插件1 天前
手机怎么把豆包全部对话导出
人工智能·ai·智能手机·deepseek·ai导出鸭
ages_1231 天前
剪流AI智能手机对自媒体创作者的具体帮助有哪些:效率革命与全链路赋能
人工智能·智能手机·媒体
盐焗西兰花3 天前
鸿蒙学习实战之路-Share Kit系列(15/17)-手机与PC/2in1设备间分享
学习·智能手机·harmonyos
sunfdf3 天前
无需密码即可解锁 Android 手机的 5 种方法
android·智能手机
jxkejiiii3 天前
告别通知轰炸,手机自带功能实现一键批量管控
智能手机
PiaoShiSun4 天前
小米手机浏览器缓存视频如何导出
缓存·智能手机·音视频
盐焗西兰花4 天前
鸿蒙学习实战之路-Share Kit系列(14/17)-手机间碰一碰分享实战
学习·智能手机·harmonyos