Release Notes
Tencent Effect SDK V3.5 Version Released
Tencent Effects SDK V3.0 Version Related API and Material Changes
.aar file in the libs directory of the Xmagic module with the .aar file in libs of your SDK.../src/main/assets of the Xmagic module with those in assets/ of your SDK. If there are files in the MotionRes folder of your SDK package, also copy them to the ../src/main/assets directory..so files in ../src/main/jniLibs of the Xmagic module with the .so files in jniLibs of your SDK package (you need to decompress the ZIP files in the jinLibs folder to get the .so files for arm64-v8a and armeabi-v7a).Xmagic module in the demo into your project.build.gradle in app and do the following:applicationId to the package name bound to the trial license.configurations{all*.exclude group:'com.google.code.gson'}
ThirdBeautyActivity class of the demo.// For authentication precautions and error codes, see https://www.tencentcloud.com/document/product/1143/45385#step-1.-authenticateXMagicImpl.checkAuth((errorCode, msg) -> {if (errorCode == TELicenseCheck.ERROR_OK) {showLoadResourceView();} else {TXCLog.e(TAG, "Authentication failed. Check the authentication URL and key" + errorCode + " " + msg);}});
private void showLoadResourceView() {if (XmagicLoadAssetsView.isCopyedRes) {XmagicResParser.parseRes(getApplicationContext());initXMagic();} else {loadAssetsView = new XmagicLoadAssetsView(this);loadAssetsView.setOnAssetsLoadFinishListener(() -> {XmagicResParser.parseRes(getApplicationContext());initXMagic();});}}
mTRTCCloud.setLocalVideoProcessListener(TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_Texture_2D, TRTCCloudDef.TRTC_VIDEO_BUFFER_TYPE_TEXTURE, new TRTCCloudListener.TRTCVideoFrameListener() {@Overridepublic void onGLContextCreated() {}@Overridepublic int onProcessVideoFrame(TRTCCloudDef.TRTCVideoFrame srcFrame, TRTCCloudDef.TRTCVideoFrame dstFrame) {}@Overridepublic void onGLContextDestory() {}});
textureId to the SDK for rendering:
In the onProcessVideoFrame(TRTCCloudDef.TRTCVideoFrame srcFrame, TRTCCloudDef.TRTCVideoFrame dstFrame) method of the TRTCVideoFrameListener API, add the following code: dstFrame.texture.textureId = mXMagic.process(srcFrame.texture.textureId, srcFrame.width, srcFrame.height);
onPause() is used to pause beauty filter effects, which can be implemented in the Activity/Fragment method. The onDestroy method needs to be called in the GL thread (you can call onDestroy() of the XMagicImpl object in onTextureDestroyed). For more information, see the demo.mXMagic.onPause(); // Pause, which is bound to the `onPause` method of `Activity`mXMagic.onDestroy(); // Terminate, which needs to be called in the GL thread
<RelativeLayoutandroid:layout_above="@+id/ll_edit_info"android:id="@+id/livepusher_bp_beauty_pannel"android:layout_width="match_parent"android:layout_height="wrap_content" />
private void initXMagic() {if (mXMagic == null) {mXMagic = new XMagicImpl(this, mBeautyPanelView);}else {mXMagic.onResume();}}
ThirdBeautyActivity.initXMagic(); method of the demo for details.Was this page helpful?
You can also Contact sales or Submit a Ticket for help.
Help us improve! Rate your documentation experience in 5 mins.
Feedback