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

相关推荐
2501_9481201515 小时前
Android智能手机信息安全管理系统的研究
android·智能手机
blackorbird17 小时前
以色列Cellebrite设备取证手机后遗留的痕迹特征
智能手机
串流游戏小天才18 小时前
伊莫挥爪测试上线!UU远程助力手机开启冒险之旅
游戏·智能手机·电脑
双翌视觉1 天前
高精度机器视觉技术赋能手机边框螺丝锁附
人工智能·智能手机·制造
毕设源码-钟学长2 天前
【开题答辩全过程】以 手机计费系统信息系统的设计与实现为例,包含答辩的问题和答案
智能手机
TheNextByte12 天前
如何将手机中的视频传输到电脑上?
智能手机·gitee·电脑
码农汉子2 天前
零基础入门】Open-AutoGLM 完全指南:Mac 本地部署 AI 手机助理(原理+部署+优化)
人工智能·macos·智能手机
TheNextByte13 天前
如何从 LG 手机打印短信? 4 种方法供您选择
智能手机
Dingdangcat863 天前
手机屏幕检测与识别基于YOLO11-ContextGuidedDown模型实现
智能手机
TheNextByte13 天前
如何在没有 USB 的情况下将照片从手机传输到笔记本电脑
智能手机·电脑