双绞线波形图
默认情况下,WebRTC使用Opus作为音频编码器,而不是AAC。如果你想在WebRTC中使用AAC编码,你需要自定义你的WebRTC信令和SDP交换过程。
以下是如何在WebRTC中添加AAC的步骤:
在创建RTCSessionDescription对象时,你需要修改SDP(会话描述协议),以包含AAC相关信息。
在设置本地或远程RTCSessionDescription时,应用AAC相关的SDP修改。
在创建RTCMediaStream时,确保使用AAC编码器。
https://blog.51cto.com/u_15069450/2934879
WebRTC 中h264 不支持svc 编码,Vp8 仅支持Temporal Scalability, VP9 和AV1 支持时间可适性 (Temporal Scalability)、空间可适性 (Spatial Scalability)。
可以通过 VideoEncoderFactory 设置一些通用的编码参数,比如分辨率、比特率、帧率以及编码器的选择(如 H.264、VP8、VP9 等)。这些参数可以帮助你优化视频的质量和传输效率
// 假设你有一个 VideoEncoderFactory 实例 VideoEncoderFactory videoEncoderFactory; // 创建编码器设置对象 VideoEncoderSettings encoderSettings = new VideoEncoderSettings(); encoderSettings.setResolution(new VideoResolution(width, height)); // 设置分辨率 encoderSettings.setBitrate(bitrate); // 设置比特率 encoderSettings.setFramerate(framerate); // 设置帧率 encoderSettings.setCodec(VideoCodecType.H264); // 设置编码器类型 // 使用编码器设置创建编码器实例 VideoEncoder videoEncoder = videoEncoderFactory.createVideoEncoder(encoderSettings);
目前Android的使用WebRTC仅支持硬件上 H.264 解码和编码,并且仅支持部分芯片组。因此,如果设备不支持硬件 H.264 或具有不受支持的芯片组,您将只能使用 VP8、VP9。支持的芯片组仅有OMX.qcom.*和OMX.Exynos.*,不支持的要自行添加。
这里也是在createOffer后sdp中没有H264信息的原因
https://blog.csdn.net/irainsa/article/details/129903507
WebRTC H.264 编码的 Profile 和 Level - Piasy的博客 | Piasy Blog
glsl程序样式:
Arduino生态