3232#include " api/create_peerconnection_factory.h"
3333#include " api/audio_codecs/builtin_audio_decoder_factory.h"
3434#include " api/audio_codecs/builtin_audio_encoder_factory.h"
35+
36+ #ifdef __APPLE__
37+ #include " sdk/objc/components/video_codec/RTCDefaultVideoDecoderFactory.h"
38+ #include " sdk/objc/components/video_codec/RTCDefaultVideoEncoderFactory.h"
39+ #include " sdk/objc/native/api/video_decoder_factory.h"
40+ #include " sdk/objc/native/api/video_encoder_factory.h"
41+ #else
3542#include " api/video_codecs/builtin_video_decoder_factory.h"
3643#include " api/video_codecs/builtin_video_encoder_factory.h"
37-
38- #include " api/video_codecs/video_decoder_factory.h"
39- #include " api/video_codecs/video_decoder_factory_template.h"
4044#include " api/video_codecs/video_decoder_factory_template_dav1d_adapter.h"
4145#include " api/video_codecs/video_decoder_factory_template_libvpx_vp8_adapter.h"
4246#include " api/video_codecs/video_decoder_factory_template_libvpx_vp9_adapter.h"
4347#include " api/video_codecs/video_decoder_factory_template_open_h264_adapter.h"
44- #include " api/video_codecs/video_encoder.h"
45- #include " api/video_codecs/video_encoder_factory.h"
46- #include " api/video_codecs/video_encoder_factory_template.h"
4748#include " api/video_codecs/video_encoder_factory_template_libaom_av1_adapter.h"
4849#include " api/video_codecs/video_encoder_factory_template_libvpx_vp8_adapter.h"
4950#include " api/video_codecs/video_encoder_factory_template_libvpx_vp9_adapter.h"
5051#include " api/video_codecs/video_encoder_factory_template_open_h264_adapter.h"
52+ #endif
53+
54+ #include " api/video_codecs/video_decoder_factory.h"
55+ #include " api/video_codecs/video_decoder_factory_template.h"
56+ #include " api/video_codecs/video_encoder_factory.h"
57+ #include " api/video_codecs/video_encoder_factory_template.h"
5158
5259JNIEXPORT void JNICALL Java_dev_onvoid_webrtc_PeerConnectionFactory_initialize
5360(JNIEnv * env, jobject caller, jobject audioModule, jobject audioProcessing)
@@ -89,6 +96,10 @@ JNIEXPORT void JNICALL Java_dev_onvoid_webrtc_PeerConnectionFactory_initialize
8996 adm,
9097 webrtc::CreateBuiltinAudioEncoderFactory (),
9198 webrtc::CreateBuiltinAudioDecoderFactory (),
99+ #ifdef __APPLE__
100+ webrtc::ObjCToNativeVideoEncoderFactory ([[RTC_OBJC_TYPE (RTCDefaultVideoEncoderFactory) alloc] init]),
101+ webrtc::ObjCToNativeVideoDecoderFactory ([[RTC_OBJC_TYPE (RTCDefaultVideoDecoderFactory) alloc] init]),
102+ #else
92103 std::make_unique<webrtc::VideoEncoderFactoryTemplate<
93104 webrtc::LibvpxVp8EncoderTemplateAdapter,
94105 webrtc::LibvpxVp9EncoderTemplateAdapter,
@@ -99,6 +110,7 @@ JNIEXPORT void JNICALL Java_dev_onvoid_webrtc_PeerConnectionFactory_initialize
99110 webrtc::LibvpxVp9DecoderTemplateAdapter,
100111 webrtc::OpenH264DecoderTemplateAdapter,
101112 webrtc::Dav1dDecoderTemplateAdapter>>(),
113+ #endif
102114 nullptr ,
103115 apm);
104116
0 commit comments