I would do simple encryption after encoding the video and simple decryption after decoding the video? As far as I know, I need to modify react-native-webrtc and build the library by myself, even I also need to build the new libwebrtc.jar, is that correct? But it is difficult for me to find where exactly Jitsi calls encode and decode video? After tracing the program seems it comes from ReactInstanceManagerHolder. java => WebRTCModule.java => then it uses video_encoder_factory in c++.
Also, @saghul already mention that there is already an API for this, but only on the native side of react called setEncryptor on the RtpSender and setDecryptor on the RtpReceiver. But I could not find the relation of how to use this in Jitsi and seems Jitsi also still does not use this part.
Does anyone have clue about this? I know that the Jitsi developer has already started to develop E2EE but I would to know more and get some insight into it. I really appreciate any help. Thank you so much.