Google WebRTC是否支持Cisco Open H.264?

时间:2019-02-19 12:27:12

标签: android video-streaming webrtc h.264

了解到Cisco将其h.264编解码器作为开源软件这一事实,我想将其添加到Android WebRTC SDK中。我尝试使用webRTC API创建自定义VideoEncoder,但发现编解码器的选择由其名称决定。 SoftwareVideoEncoderFactory类返回一个类,该类基于VideoCodecInfo名称link表示特定的编解码器。就我而言,我是这样做的:

    VideoCodecInfo codecInfo = new VideoCodecInfo("H264", getDefaultH264Params(false));
    SoftwareVideoEncoderFactory softwareVideoEncoderFactory = new SoftwareVideoEncoderFactory();
    softwareVideoEncoderFactory.createEncoder(codecInfo);

然后将其添加到我的PeerConnectionFactory。不幸的是,由于我以为webRTC库不知道打开h264的二进制文件在哪里。

问题是:我是否需要创建自己的支持Open H.264的类,然后重新构建webRTC库?如果不是这种情况,那太好了,API可以选择执行此操作,但我找不到它。

1 个答案:

答案 0 :(得分:1)

WebRTC(https://webrtc.googlesource.com/src)使用openH264支持h264。但需要针对目标平台进行构建。对于Android,已使用chrome或Chrome构建,但未在Android SDK上构建。因此您无法使用Android SDK使用openH264。您需要自己为Android构建WebRTC,然后添加包装器类以调用本地api。您可以在Web应用程序上使用WebRTC JS API。

相关问题