日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Android

DingRTC SDK為您提供基礎美顏功能和第三方美顏接入功能的接口和回調(diào)。通過閱讀本文,您可以了解使用基礎美顏以及第三方美顏的相關流程。

基礎美顏

  • 功能簡介

    基礎美顏功能,包含了美白和磨皮兩種功能。您可以在直播、視頻通話、視頻會議等場景中,通過美顏功能提高使用體驗。

  • 實現(xiàn)方法

    DingRTC SDK 通過 enableBeautyFace 方法設置是否啟用基礎美顏。

    public abstract int enableBeautyFace(boolean enable, DingRtcBeautyFaceOptions options);

    參數(shù)

    類型

    描述

    enable

    boolean

    是否啟用基礎美顏,取值:true:開啟美顏,false:關閉美顏。默認false。

    options

    DingRtcBeautyFaceOptions

    基礎美顏參數(shù)。

第三方美顏

  • 功能簡介

    功能簡介DingRTC SDK 在 3.2 及以上版本中提供了支持第三方美顏功能,通常第三方美顏SDK接受以下兩種類型的數(shù)據(jù)回調(diào)處理:

    • I420等不同格式的裸數(shù)據(jù)。

    • openGL 紋理數(shù)據(jù)用于最終做美顏效果的處理。

  • 接入流程

    以下第三方美顏功能以接入opengl紋理為例:

    1. 初始化 RtcEngine對象。

    2. 實現(xiàn)一個美顏處理的類,假設為BeautyFaceObserver, 里面繼承 DingRtcEngine.DingRtcVideoObserver,并根據(jù)具體第三方美顏庫實現(xiàn)相關方法,onLocalVideoSample方法中實現(xiàn)美顏處理的具體代碼。

    3. enableVideoSampleObserver選擇回調(diào)的時機,registerVideoSampleObserver注冊視頻流觀察者回調(diào)。

    4. 在每一幀的視頻處理中,會回調(diào)到onLocalVideoSample進行視頻流的處理,根據(jù)處理的結(jié)果,可以設置返回的textureId的值,如果成功處理,則返回更新的textureId的值,否則保持原來的textureId的值。

    5. 在onDestroy 做第三方算法BeautyFaceObserver的銷毀工作。

第三方美顏接口調(diào)用

  • DingRTC SDK 在接入第三方美顏的時候,需要訂閱采集之后的前處理數(shù)據(jù),所以在 startPreview 之后需要調(diào)用 enableVideoSampleObserver和registerVideoSampleObserver 接口獲取采集前處理數(shù)據(jù)并處理。

    // @param enable 是否允許數(shù)據(jù)回調(diào)。
    // @param position 視頻數(shù)據(jù)類型。
    public abstract int enableVideoSampleObserver(boolean enable, int position);

    // @param observer 視頻數(shù)據(jù)輸出對象。
    public abstract void registerVideoSampleObserver(com.ding.rtc.DingRtcEngine.DingRtcVideoObserver observer);
  • 訂閱成功后,將會回調(diào) DingRtcVideoObserveronLocalVideoSample 參數(shù)。

    // @param sourceType, 視頻流類型
    // @param videoSample, 幀數(shù)據(jù)
    public boolean onLocalVideoSample(DingRtcEngine.DingRtcVideoSourceType sourceType, DingRtcEngine.DingRtcVideoSample videoSample) {
        return false;
    }

    返回說明

    • return true:需要寫回SDK(默認寫回,需要操作DingRtcVideoSample.data時必須要寫回)

    • return false:不需要寫回SDK。(不需要寫回SDK(需要直接操作DingRtcVideoSample.dataFrameY、DingRtcVideoSample.dataFrameU、DingRtcVideoSample.dataFrameV時使用)