【问题标题】:How to set the Hardware Encoder using Android APIs for WebRTC如何使用 Android API 为 WebRTC 设置硬件编码器
【发布时间】:2019-11-09 11:37:52
【问题描述】:

我使用的是 1.0.28513 版本,但不确定如何/在何处将 VP8 指定为我的视频编解码器以进行硬件加速。

【问题讨论】:

    标签: android webrtc webrtc-android


    【解决方案1】:

    喏,

    在 Kotlin 中查看 wonderful example

    private val peerConnectionFactory: PeerConnectionFactory by lazy {
        //Initialize PeerConnectionFactory globals.
        val initializationOptions = PeerConnectionFactory.InitializationOptions.builder(this)
                .setEnableVideoHwAcceleration(true)
                .createInitializationOptions()
        PeerConnectionFactory.initialize(initializationOptions)
    
        //Create a new PeerConnectionFactory instance - using Hardware encoder and decoder.
        val options = PeerConnectionFactory.Options()
        val defaultVideoEncoderFactory = DefaultVideoEncoderFactory(
                rootEglBase.eglBaseContext, /* enableIntelVp8Encoder */true, /* enableH264HighProfile */true)
        val defaultVideoDecoderFactory = DefaultVideoDecoderFactory(rootEglBase.eglBaseContext)
        PeerConnectionFactory(options, defaultVideoEncoderFactory, defaultVideoDecoderFactory)
    }
    

    和对应的Java class:

    /** Create encoder factory using default hardware encoder factory. */
    public DefaultVideoEncoderFactory(
        EglBase.Context eglContext, boolean enableIntelVp8Encoder, boolean enableH264HighProfile) {
      this.hardwareVideoEncoderFactory =
            new HardwareVideoEncoderFactory(eglContext, enableIntelVp8Encoder, enableH264HighProfile);
    }
    
    /** Create encoder factory using explicit hardware encoder factory. */
    DefaultVideoEncoderFactory(VideoEncoderFactory hardwareVideoEncoderFactory) {
        this.hardwareVideoEncoderFactory = hardwareVideoEncoderFactory;
    }
    

    应该可以帮助您确定在哪里采取行动

    希望对你有帮助

    祝你有美好的一天,
    安东尼诺

    【讨论】:

    • 你好,这个页面已经不可用了,你能帮忙吗?
    • @famfamfam 你确定吗?我试过了,两个链接都可以正常工作
    • 嗨哥们,我无法加载页面vivekc.xyz/getting-started-with-webrtc-part-4-de72b58ab31e,你可以加载这个页面吗?
    • @famfamfam 如前所述,我可以加载它。您是否在其他设备上尝试过?
    猜你喜欢
    • 1970-01-01
    • 2016-12-26
    • 1970-01-01
    • 2023-03-14
    • 2014-05-13
    • 2018-09-10
    • 1970-01-01
    • 2021-02-15
    • 1970-01-01
    相关资源
    最近更新 更多