diff --git a/android/build.gradle b/android/build.gradle index cfa8720cb..40157f005 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -57,9 +57,9 @@ dependencies { if (isDev(project)) { api fileTree(dir: "libs", include: ["*.jar"]) } else { - api 'io.agora.rtc:iris-rtc:4.3.1-dev.6' - api 'io.agora.rtc:agora-full-preview:4.3.1-dev.6' - api 'io.agora.rtc:full-screen-sharing-special:4.3.1-dev.6' + api 'io.agora.rtc:iris-rtc:4.3.1-dev.7' + api 'io.agora.rtc:agora-full-preview:4.3.1-dev.7' + api 'io.agora.rtc:full-screen-sharing-special:4.3.1-dev.7' } } diff --git a/android/src/main/cpp/third_party/include/agora_rtc/AgoraBase.h b/android/src/main/cpp/third_party/include/agora_rtc/AgoraBase.h index 6bbe507a1..6f4e23880 100644 --- a/android/src/main/cpp/third_party/include/agora_rtc/AgoraBase.h +++ b/android/src/main/cpp/third_party/include/agora_rtc/AgoraBase.h @@ -1185,6 +1185,28 @@ enum VIDEO_CODEC_TYPE { VIDEO_CODEC_GENERIC_JPEG = 20, }; +/** + * Camera focal length type. + */ +enum CAMERA_FOCAL_LENGTH_TYPE { + /** + * By default, there are no wide-angle and ultra-wide-angle properties. + */ + CAMERA_FOCAL_LENGTH_DEFAULT = 0, + /** + * Lens with focal length from 24mm to 35mm. + */ + CAMERA_FOCAL_LENGTH_WIDE_ANGLE = 1, + /** + * Lens with focal length of less than 24mm. + */ + CAMERA_FOCAL_LENGTH_URLTRA_WIDE = 2, + /** + * Telephoto lens. + */ + CAMERA_FOCAL_LENGTH_TELEPHOTO = 3, +}; + /** * The CC (Congestion Control) mode options. */ @@ -1776,6 +1798,14 @@ struct CodecCapInfo { CodecCapInfo(): codecType(VIDEO_CODEC_NONE), codecCapMask(0) {} }; +/** FocalLengthInfo contains the IDs of the front and rear cameras, along with the wide-angle types. */ +struct FocalLengthInfo { + /** The camera direction. */ + int cameraDirection; + /** Camera focal segment type. */ + CAMERA_FOCAL_LENGTH_TYPE focalLengthType; +}; + /** * The definition of the VideoEncoderConfiguration struct. */ diff --git a/android/src/main/cpp/third_party/include/agora_rtc/AgoraMediaBase.h b/android/src/main/cpp/third_party/include/agora_rtc/AgoraMediaBase.h index edc6144c4..8c24b5203 100644 --- a/android/src/main/cpp/third_party/include/agora_rtc/AgoraMediaBase.h +++ b/android/src/main/cpp/third_party/include/agora_rtc/AgoraMediaBase.h @@ -519,6 +519,7 @@ enum VIDEO_PIXEL_FORMAT { VIDEO_TEXTURE_ID3D11TEXTURE2D = 17, /** * 18: I010. 10bit I420 data. + * @technical preview */ VIDEO_PIXEL_I010 = 18, }; diff --git a/android/src/main/cpp/third_party/include/agora_rtc/IAgoraRtcEngine.h b/android/src/main/cpp/third_party/include/agora_rtc/IAgoraRtcEngine.h index 39655dc55..18fb7b16e 100644 --- a/android/src/main/cpp/third_party/include/agora_rtc/IAgoraRtcEngine.h +++ b/android/src/main/cpp/third_party/include/agora_rtc/IAgoraRtcEngine.h @@ -798,6 +798,16 @@ struct CameraCapturerConfiguration { * The camera direction. */ CAMERA_DIRECTION cameraDirection; + + /*- CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_DEFAULT: + For iOS, if iPhone/iPad has 3 or 2 back camera, it means combination of triple (wide + ultra wide + telephoto) camera + or dual wide(wide + ultra wide) camera.In this situation, you can apply for ultra wide len by set smaller zoom fator + and bigger zoom fator for telephoto len.Otherwise, it always means wide back/front camera. + + - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_WIDE_ANGLE:wide camera + - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_URLTRA_WIDE:ultra wide camera + - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_TELEPHOTO:telephoto camera*/ + CAMERA_FOCAL_LENGTH_TYPE cameraFocalLengthType; #else /** For windows. The device ID of the playback device. The maximum length is #MAX_DEVICE_ID_LENGTH. */ char deviceId[MAX_DEVICE_ID_LENGTH]; @@ -2135,6 +2145,25 @@ class IRtcEngineEventHandler { (void) vecDistance; (void) numFaces; } + +#if defined(__ANDROID__) + /** + * When the actual configuration is different from the preset configuration, the callback is triggered. + * + * @param direction Camera orientation, front or back. + * @param focalLengthType The focal length of the camera, wide Angle, super wide Angle or ordinary lens. + * @param width Camera acquisition width. + * @param height Camera acquisition width. + * @param frameRate Camera acquisition frameRate. + */ + virtual void onCameraCapturerConfigurationChanged(int direction, int focalLengthType, int width, int height, int frameRate) { + (void)direction; + (void)focalLengthType; + (void)width; + (void)height; + (void)frameRate; + } +#endif // __ANDROID__ #endif /** * Occurs when the video stops playing. @@ -7060,7 +7089,6 @@ class IRtcEngine : public agora::base::IEngineBase { * - < 0: Failure.. */ virtual int getAudioDeviceInfo(DeviceInfo& deviceInfo) = 0; - #endif // __ANDROID__ #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE) @@ -7171,6 +7199,19 @@ class IRtcEngine : public agora::base::IEngineBase { * - < 0: Failure. */ virtual int queryScreenCaptureCapability() = 0; + + /** + * Query all focal attributes supported by the camera. + * + * @param focalLengthInfos The camera supports the collection of focal segments.Ensure the size of array is not less than 8. + * + * @param size The camera supports the size of the focal segment set. Ensure the size is not less than 8. + * + * @return + * - 0: Success. + * - < 0: Failure.. + */ + virtual int queryCameraFocalLengthCapability(agora::rtc::FocalLengthInfo* focalLengthInfos, int& size) = 0; #endif #if defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__) diff --git a/ios/agora_rtc_engine.podspec b/ios/agora_rtc_engine.podspec index 3ab0200f9..945f33bab 100644 --- a/ios/agora_rtc_engine.podspec +++ b/ios/agora_rtc_engine.podspec @@ -23,8 +23,8 @@ Pod::Spec.new do |s| puts '[plugin_dev] Found .plugin_dev file, use vendored_frameworks instead.' s.vendored_frameworks = 'libs/*.xcframework' else - s.dependency 'AgoraIrisRTC_iOS', '4.3.1-dev.6' - s.dependency 'AgoraRtcEngine_iOS_Preview', '4.3.1-dev.6' + s.dependency 'AgoraIrisRTC_iOS', '4.3.1-dev.7' + s.dependency 'AgoraRtcEngine_iOS_Preview', '4.3.1-dev.7' end s.platform = :ios, '9.0' diff --git a/macos/agora_rtc_engine.podspec b/macos/agora_rtc_engine.podspec index 4d1ad5afd..8c4fbca22 100644 --- a/macos/agora_rtc_engine.podspec +++ b/macos/agora_rtc_engine.podspec @@ -21,8 +21,8 @@ A new flutter plugin project. puts '[plugin_dev] Found .plugin_dev file, use vendored_frameworks instead.' s.vendored_frameworks = 'libs/*.framework' else - s.dependency 'AgoraRtcEngine_macOS_Preview', '4.3.1-dev.6' - s.dependency 'AgoraIrisRTC_macOS', '4.3.1-dev.6' + s.dependency 'AgoraRtcEngine_macOS_Preview', '4.3.1-dev.7' + s.dependency 'AgoraIrisRTC_macOS', '4.3.1-dev.7' end s.platform = :osx, '10.11' diff --git a/scripts/artifacts_version.sh b/scripts/artifacts_version.sh index 1c037b2a5..1ecf7e7f7 100644 --- a/scripts/artifacts_version.sh +++ b/scripts/artifacts_version.sh @@ -1,6 +1,6 @@ set -e -export IRIS_CDN_URL_ANDROID="https://download.agora.io/sdk/release/iris_4.3.1-dev.6_DCG_Android_Video_20240319_0700_440.zip" -export IRIS_CDN_URL_IOS="https://download.agora.io/sdk/release/iris_4.3.1-dev.6_DCG_iOS_Video_20240319_0703_348.zip" -export IRIS_CDN_URL_MACOS="https://download.agora.io/sdk/release/iris_4.3.1-dev.6_DCG_Mac_Video_20240319_0700_346.zip" -export IRIS_CDN_URL_WINDOWS="https://download.agora.io/sdk/release/iris_4.3.1-dev.6_DCG_Windows_Video_20240319_0700_384.zip" +export IRIS_CDN_URL_ANDROID="https://download.agora.io/sdk/release/iris_4.3.1-dev.7_DCG_Android_Video_20240321_0614_442.zip" +export IRIS_CDN_URL_IOS="https://download.agora.io/sdk/release/iris_4.3.1-dev.7_DCG_iOS_Video_20240321_0614_350.zip" +export IRIS_CDN_URL_MACOS="https://download.agora.io/sdk/release/iris_4.3.1-dev.7_DCG_Mac_Video_20240321_0614_348.zip" +export IRIS_CDN_URL_WINDOWS="https://download.agora.io/sdk/release/iris_4.3.1-dev.7_DCG_Windows_Video_20240321_0614_386.zip" diff --git a/windows/CMakeLists.txt b/windows/CMakeLists.txt index 1d5769f63..475dd187c 100644 --- a/windows/CMakeLists.txt +++ b/windows/CMakeLists.txt @@ -12,8 +12,8 @@ project(${PROJECT_NAME} LANGUAGES CXX) # not be changed set(PLUGIN_NAME "agora_rtc_engine_plugin") -set(IRIS_SDK_DOWNLOAD_URL "https://download.agora.io/sdk/release/iris_4.3.1-dev.6_DCG_Windows_Video_20240319_0700_384.zip") -set(IRIS_SDK_DOWNLOAD_NAME "iris_4.3.1-dev.6_DCG_Windows") +set(IRIS_SDK_DOWNLOAD_URL "https://download.agora.io/sdk/release/iris_4.3.1-dev.7_DCG_Windows_Video_20240321_0614_386.zip") +set(IRIS_SDK_DOWNLOAD_NAME "iris_4.3.1-dev.7_DCG_Windows") set(RTC_SDK_DOWNLOAD_NAME "Agora_Native_SDK_for_Windows_FULL") set(IRIS_SDK_VERSION "v3_6_2_fix.1")