Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.8.0 #33

Merged
merged 43 commits into from
Aug 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
e3717b0
chore: optimize
guoxianzhe Jul 11, 2024
b801edd
chore: optimize
guoxianzhe Jul 11, 2024
d90bdd3
chore: optimize
guoxianzhe Jul 11, 2024
a65caf2
chore: optimize
guoxianzhe Jul 11, 2024
1d1605f
chore: optimize
guoxianzhe Jul 11, 2024
32d6de7
chore: optimize
guoxianzhe Jul 12, 2024
b178148
chore: optimize
guoxianzhe Jul 12, 2024
f6231ef
chore: optimize
guoxianzhe Jul 12, 2024
e7f6ff2
chore: optimize
guoxianzhe Jul 12, 2024
24eaae6
chore: optimize
guoxianzhe Jul 12, 2024
202141a
chore: optimize
guoxianzhe Jul 15, 2024
e08c51c
chore: optimize
guoxianzhe Jul 15, 2024
4921a8c
chore: optimize
guoxianzhe Jul 31, 2024
6bf5895
fix: muteRemoteStream api
guoxianzhe Aug 7, 2024
2484802
chore: change version to 0.7.0-pre
guoxianzhe Aug 7, 2024
e74bc92
chore: change version to 0.8.0-pre
guoxianzhe Aug 7, 2024
b3b098c
Merge branch 'dev/0.8.0' of https://github.com/AgoraIO-Extensions/iri…
guoxianzhe Aug 7, 2024
223a22a
chore: release 0.8.0-pre
guoxianzhe Aug 7, 2024
dfb7a3c
feat: adm
guoxianzhe Aug 8, 2024
ccb28a1
Merge branch 'dev/0.8.0' of https://github.com/AgoraIO-Extensions/iri…
guoxianzhe Aug 8, 2024
9a9ba75
chore: optimize
guoxianzhe Aug 8, 2024
51dca6c
chore: optimize
guoxianzhe Aug 8, 2024
05f488b
chore: optimize
guoxianzhe Aug 8, 2024
2b0eee5
chore: optimize
guoxianzhe Aug 8, 2024
c3e7541
chore: optimize
guoxianzhe Aug 8, 2024
de58d8d
chore: optimize
guoxianzhe Aug 9, 2024
57442de
feat: upgrade to 4.4.0
guoxianzhe Aug 14, 2024
11b042b
feat: renderMode and mirrorMode
guoxianzhe Aug 16, 2024
181588d
chore: upgrade websdk to 4.22.0
guoxianzhe Aug 16, 2024
5e55455
feat: some window variables
guoxianzhe Aug 16, 2024
055f0d5
chore: optimize
guoxianzhe Aug 19, 2024
59d451d
chore: optimize
guoxianzhe Aug 19, 2024
d001e25
chore: optimize
guoxianzhe Aug 26, 2024
37a811e
chore: optimize
guoxianzhe Aug 26, 2024
1de5fb6
chore: optimize
guoxianzhe Aug 27, 2024
235c020
chore: optimize
guoxianzhe Aug 27, 2024
87f00f9
chore: optimize
guoxianzhe Aug 27, 2024
7c3535c
chore: optimize
guoxianzhe Aug 28, 2024
136cf4e
chore: optimize
guoxianzhe Aug 28, 2024
51f7ded
chore: optimize
guoxianzhe Aug 28, 2024
942b51b
chore: optimize
guoxianzhe Aug 29, 2024
58daa9d
chore: optimize
guoxianzhe Aug 29, 2024
4f65da2
chore: options
guoxianzhe Aug 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ runs:
using: composite
steps:
- name: Install pnpm 🤏🏻
uses: pnpm/action-setup@v2.2.4
uses: pnpm/action-setup@v4
with:
version: latest

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on:
- iris-web-rtm
cdn:
description: 'upload to cdn'
default: true
default: false
type: boolean

jobs:
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,5 @@ js/
docs/
__temp

# Optional eslint cache
.eslintcache
4 changes: 4 additions & 0 deletions .husky/commit-msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npx commitlint --edit "$1"
12 changes: 12 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npx lint-staged --allow-empty

if command -v gitleaks >/dev/null 2>&1;
then
echo "gitleaks found, proceeding..."
gitleaks protect --staged --source . -v agora-rtc-react.git -c .gitleaks.toml
else
echo "gitleaks not found, skip"
fi
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# IRIS_WEB

## [0.8.0-pre](https://github.com/AgoraIO-Extensions/iris_web/compare/v0.7.0...v0.8.0-pre) (2024-08-07)


### Bug Fixes

* muteRemoteStream api ([6bf5895](https://github.com/AgoraIO-Extensions/iris_web/commit/6bf5895268cfd63a62689e18598fb009fc46f04c))

## [0.7.0](https://github.com/AgoraIO-Extensions/iris_web/compare/v0.5.0...v0.7.0) (2024-05-08)


Expand Down
32 changes: 32 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@
"private": true,
"description": "iris web",
"scripts": {
"prepare": "husky install",
"build": "pnpm -F iris-web-rtc run build && pnpm -F iris-web-rtc-fake run build",
"test": "pnpm -F iris-web-rtc run test",
"lint": "eslint --ext .ts,.tsx . && prettier --check .",
"lint:fix": "eslint --fix --ext .ts,.tsx . && prettier --write .",
"typecheck": "pnpm -F iris-web-rtc run typecheck",
"terra": "cd scripts/terra &&yarn terra",
"start": "sh ./scripts/build_local_dev.sh",
"release": "release-it"
Expand All @@ -27,21 +29,51 @@
}
},
"devDependencies": {
"@commitlint/config-conventional": "^17.6.7",
"@release-it/conventional-changelog": "^7.0.1",
"@types/eslint": "^8.44.2",
"@types/node": "^18.17.9",
"@typescript-eslint/eslint-plugin": "^6.0.0",
"@typescript-eslint/parser": "^6.0.0",
"commitlint": "^17.6.7",
"cross-env": "^7.0.3",
"eslint": "^8.4.1",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-auto-import": "^0.1.1",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-unused-imports": "^3.0.0",
"husky": "^8.0.3",
"prettier": "^2.0.5",
"release-it": "^16.1.3",
"lint-staged": "^14.0.0",
"tsup": "^7.1.0"
},
"husky": {
"hooks": {
"pre-commit": "npm run lint",
"commit-msg": "commitlint -e $HUSKY_GIT_PARAMS"
}
},
"lint-staged": {
"*.{js,jsx,ts,tsx}": [
"cross-env NODE_ENV=development eslint --cache"
],
"*.json,.{eslintrc,prettierrc}": [
"prettier --ignore-path .eslintignore --parser json --write"
],
"*.{css,scss}": [
"prettier --ignore-path .eslintignore --write"
],
"*.{html,md,mdx,yml}": [
"prettier --ignore-path .eslintignore --write"
]
},
"commitlint": {
"extends": [
"@commitlint/config-conventional"
]
},
"release-it": {
"git": {
"commitMessage": "chore: release ${version}",
Expand Down
123 changes: 121 additions & 2 deletions packages/@iris/rtc/generate/AgoraBase.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ export enum ERROR_CODE_TYPE {
ERR_SET_CLIENT_ROLE_NOT_AUTHORIZED = 119,
ERR_DECRYPTION_FAILED = 120,
ERR_INVALID_USER_ID = 121,
ERR_DATASTREAM_DECRYPTION_FAILED = 122,
ERR_CLIENT_IS_BANNED_BY_SERVER = 123,
ERR_ENCRYPTED_STREAM_NOT_ALLOWED_PUBLISH = 130,
ERR_LICENSE_CREDENTIAL_INVALID = 131,
Expand Down Expand Up @@ -253,6 +254,13 @@ export enum VIDEO_CODEC_TYPE {
VIDEO_CODEC_GENERIC_JPEG = 20,
}

export enum CAMERA_FOCAL_LENGTH_TYPE {
CAMERA_FOCAL_LENGTH_DEFAULT = 0,
CAMERA_FOCAL_LENGTH_WIDE_ANGLE = 1,
CAMERA_FOCAL_LENGTH_ULTRA_WIDE = 2,
CAMERA_FOCAL_LENGTH_TELEPHOTO = 3,
}

export enum TCcMode {
CC_ENABLED = 0,
CC_DISABLED = 1,
Expand All @@ -276,6 +284,7 @@ export enum AUDIO_CODEC_TYPE {
AUDIO_CODEC_JC1 = 10,
AUDIO_CODEC_HEAAC2 = 11,
AUDIO_CODEC_LPCNET = 12,
AUDIO_CODEC_OPUSMC = 13,
}

export enum AUDIO_ENCODING_TYPE {
Expand Down Expand Up @@ -337,6 +346,12 @@ export enum H264PacketizeMode {
export enum VIDEO_STREAM_TYPE {
VIDEO_STREAM_HIGH = 0,
VIDEO_STREAM_LOW = 1,
VIDEO_STREAM_LAYER_1 = 4,
VIDEO_STREAM_LAYER_2 = 5,
VIDEO_STREAM_LAYER_3 = 6,
VIDEO_STREAM_LAYER_4 = 7,
VIDEO_STREAM_LAYER_5 = 8,
VIDEO_STREAM_LAYER_6 = 9,
}

export class VideoSubscriptionOptions {
Expand Down Expand Up @@ -371,6 +386,8 @@ export class EncodedVideoFrameInfo {
decodeTimeMs?: number;

streamType?: VIDEO_STREAM_TYPE;

presentationMs?: number;
}

export enum COMPRESSION_PREFERENCE {
Expand All @@ -388,6 +405,8 @@ export class AdvanceOptions {
encodingPreference?: ENCODING_PREFERENCE;

compressionPreference?: COMPRESSION_PREFERENCE;

encodeAlpha?: boolean;
}

export enum VIDEO_MIRROR_MODE_TYPE {
Expand All @@ -396,6 +415,11 @@ export enum VIDEO_MIRROR_MODE_TYPE {
VIDEO_MIRROR_MODE_DISABLED = 2,
}

export enum CAMERA_FORMAT_TYPE {
CAMERA_FORMAT_NV12 = 0,
CAMERA_FORMAT_BGRA = 1,
}

export enum CODEC_CAP_MASK {
CODEC_CAP_MASK_NONE = 0,
CODEC_CAP_MASK_HW_DEC = 1,
Expand All @@ -418,6 +442,12 @@ export class CodecCapInfo {
codecLevels?: CodecCapLevels;
}

export class FocalLengthInfo {
cameraDirection?: number;

focalLengthType?: CAMERA_FOCAL_LENGTH_TYPE;
}

export class VideoEncoderConfiguration {
codecType?: VIDEO_CODEC_TYPE;

Expand Down Expand Up @@ -458,6 +488,29 @@ export class SimulcastStreamConfig {
framerate?: number;
}

export enum StreamLayerIndex {
STREAM_LAYER_1 = 0,
STREAM_LAYER_2 = 1,
STREAM_LAYER_3 = 2,
STREAM_LAYER_4 = 3,
STREAM_LAYER_5 = 4,
STREAM_LAYER_6 = 5,
STREAM_LOW = 6,
STREAM_LAYER_COUNT_MAX = 7,
}

export class StreamLayerConfig {
dimensions?: VideoDimensions;

framerate?: number;

enable?: boolean;
}

export class SimulcastConfig {
configs?: StreamLayerConfig[];
}

export class Rectangle {
x?: number;

Expand Down Expand Up @@ -639,6 +692,7 @@ export enum SCREEN_SCENARIO_TYPE {
export enum VIDEO_APPLICATION_SCENARIO_TYPE {
APPLICATION_SCENARIO_GENERAL = 0,
APPLICATION_SCENARIO_MEETING = 1,
APPLICATION_SCENARIO_1V1 = 2,
}

export enum VIDEO_QOE_PREFERENCE_TYPE {
Expand All @@ -655,6 +709,15 @@ export enum CAPTURE_BRIGHTNESS_LEVEL_TYPE {
CAPTURE_BRIGHTNESS_LEVEL_DARK = 2,
}

export enum CAMERA_STABILIZATION_MODE {
CAMERA_STABILIZATION_MODE_OFF = -1,
CAMERA_STABILIZATION_MODE_AUTO = 0,
CAMERA_STABILIZATION_MODE_LEVEL_1 = 1,
CAMERA_STABILIZATION_MODE_LEVEL_2 = 2,
CAMERA_STABILIZATION_MODE_LEVEL_3 = 3,
CAMERA_STABILIZATION_MODE_MAX_LEVEL = 3,
}

export enum LOCAL_AUDIO_STREAM_STATE {
LOCAL_AUDIO_STREAM_STATE_STOPPED = 0,
LOCAL_AUDIO_STREAM_STATE_RECORDING = 1,
Expand Down Expand Up @@ -695,6 +758,8 @@ export enum LOCAL_VIDEO_STREAM_REASON {
LOCAL_VIDEO_STREAM_REASON_DEVICE_NOT_FOUND = 8,
LOCAL_VIDEO_STREAM_REASON_DEVICE_DISCONNECTED = 9,
LOCAL_VIDEO_STREAM_REASON_DEVICE_INVALID_ID = 10,
LOCAL_VIDEO_STREAM_REASON_DEVICE_INTERRUPT = 14,
LOCAL_VIDEO_STREAM_REASON_DEVICE_FATAL_ERROR = 15,
LOCAL_VIDEO_STREAM_REASON_DEVICE_SYSTEM_PRESSURE = 101,
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_MINIMIZED = 11,
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_CLOSED = 12,
Expand All @@ -708,6 +773,7 @@ export enum LOCAL_VIDEO_STREAM_REASON {
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_WINDOW_RECOVER_FROM_MINIMIZED = 27,
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_PAUSED = 28,
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED = 29,
LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED = 30,
}

export enum REMOTE_AUDIO_STATE {
Expand All @@ -727,6 +793,8 @@ export enum REMOTE_AUDIO_STATE_REASON {
REMOTE_AUDIO_REASON_REMOTE_MUTED = 5,
REMOTE_AUDIO_REASON_REMOTE_UNMUTED = 6,
REMOTE_AUDIO_REASON_REMOTE_OFFLINE = 7,
REMOTE_AUDIO_REASON_NO_PACKET_RECEIVE = 8,
REMOTE_AUDIO_REASON_LOCAL_PLAY_FAILED = 9,
}

export enum REMOTE_VIDEO_STATE {
Expand Down Expand Up @@ -770,8 +838,6 @@ export class VideoTrackInfo {

channelId?: string;

streamType?: VIDEO_STREAM_TYPE;

codecType?: VIDEO_CODEC_TYPE;

encodedFrameOnly?: boolean;
Expand Down Expand Up @@ -1187,6 +1253,39 @@ export class BeautyOptions {
sharpnessLevel?: number;
}

export enum FACE_SHAPE_AREA {
FACE_SHAPE_AREA_NONE = -1,
FACE_SHAPE_AREA_HEADSCALE = 0,
FACE_SHAPE_AREA_FOREHEAD = 1,
FACE_SHAPE_AREA_FACECONTOUR = 2,
FACE_SHAPE_AREA_FACELENGTH = 3,
FACE_SHAPE_AREA_FACEWIDTH = 4,
FACE_SHAPE_AREA_CHEEKBONE = 5,
FACE_SHAPE_AREA_CHEEK = 6,
FACE_SHAPE_AREA_CHIN = 7,
FACE_SHAPE_AREA_EYESCALE = 8,
FACE_SHAPE_AREA_NOSELENGTH = 9,
FACE_SHAPE_AREA_NOSEWIDTH = 10,
FACE_SHAPE_AREA_MOUTHSCALE = 11,
}

export class FaceShapeAreaOptions {
shapeArea?: FACE_SHAPE_AREA;

shapeIntensity?: number;
}

export enum FACE_SHAPE_BEAUTY_STYLE {
FACE_SHAPE_BEAUTY_STYLE_FEMALE = 0,
FACE_SHAPE_BEAUTY_STYLE_MALE = 1,
}

export class FaceShapeBeautyOptions {
shapeStyle?: FACE_SHAPE_BEAUTY_STYLE;

styleIntensity?: number;
}

export enum LOW_LIGHT_ENHANCE_MODE {
LOW_LIGHT_ENHANCE_AUTO = 0,
LOW_LIGHT_ENHANCE_MANUAL = 1,
Expand Down Expand Up @@ -1299,6 +1398,7 @@ export enum AUDIO_EFFECT_PRESET {
ROOM_ACOUSTICS_ETHEREAL = 33621760,
ROOM_ACOUSTICS_3D_VOICE = 33622016,
ROOM_ACOUSTICS_VIRTUAL_SURROUND_SOUND = 33622272,
ROOM_ACOUSTICS_CHORUS = 33623296,
VOICE_CHANGER_EFFECT_UNCLE = 33685760,
VOICE_CHANGER_EFFECT_OLDMAN = 33686016,
VOICE_CHANGER_EFFECT_BOY = 33686272,
Expand Down Expand Up @@ -1336,6 +1436,19 @@ export enum HEADPHONE_EQUALIZER_PRESET {
HEADPHONE_EQUALIZER_INEAR = 67108866,
}

export enum VOICE_AI_TUNER_TYPE {
VOICE_AI_TUNER_MATURE_MALE = 0,
VOICE_AI_TUNER_FRESH_MALE = 1,
VOICE_AI_TUNER_ELEGANT_FEMALE = 2,
VOICE_AI_TUNER_SWEET_FEMALE = 3,
VOICE_AI_TUNER_WARM_MALE_SINGING = 4,
VOICE_AI_TUNER_GENTLE_FEMALE_SINGING = 5,
VOICE_AI_TUNER_HUSKY_MALE_SINGING = 6,
VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING = 7,
VOICE_AI_TUNER_POWERFUL_MALE_SINGING = 8,
VOICE_AI_TUNER_DREAMY_FEMALE_SINGING = 9,
}

export class ScreenCaptureParameters {
dimensions?: VideoDimensions;

Expand Down Expand Up @@ -1434,6 +1547,7 @@ export enum AREA_CODE_EX {
AREA_CODE_KR = 512,
AREA_CODE_HKMC = 1024,
AREA_CODE_US = 2048,
AREA_CODE_RU = 4096,
AREA_CODE_OVS = 4294967294,
}

Expand Down Expand Up @@ -1519,12 +1633,16 @@ export class EncryptionConfig {
encryptionKey?: string;

encryptionKdfSalt?: number[];

datastreamEncryptionEnabled?: boolean;
}

export enum ENCRYPTION_ERROR_TYPE {
ENCRYPTION_ERROR_INTERNAL_FAILURE = 0,
ENCRYPTION_ERROR_DECRYPTION_FAILURE = 1,
ENCRYPTION_ERROR_ENCRYPTION_FAILURE = 2,
ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE = 3,
ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE = 4,
}

export enum UPLOAD_ERROR_REASON {
Expand Down Expand Up @@ -1577,6 +1695,7 @@ export enum EAR_MONITORING_FILTER_TYPE {
EAR_MONITORING_FILTER_NONE = 1,
EAR_MONITORING_FILTER_BUILT_IN_AUDIO_FILTERS = 2,
EAR_MONITORING_FILTER_NOISE_SUPPRESSION = 4,
EAR_MONITORING_FILTER_REUSE_POST_PROCESSING_FILTER = 32768,
}

export enum THREAD_PRIORITY_TYPE {
Expand Down
Loading
Loading