Skip to content

Commit 99f4906

Browse files
chensshiAbySwifter
authored andcommitted
publish version 4.3.0
1 parent 4eca02f commit 99f4906

164 files changed

Lines changed: 2499 additions & 8132 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
//
2+
// TCConstant.h
3+
// TCEffectPlayerKit
4+
//
5+
// Created by krabyu on 2024/7/18.
6+
//
7+
8+
#ifndef TCConstant_h
9+
#define TCConstant_h
10+
11+
#define KEY_SERVICE_NAME @"TUIEffectPlayerService"
12+
#define KEY_GET_VIEW @"TCEffectAnimView"
13+
#define KEY_METHOD_SET_LICENSE @"setLicense"
14+
#define KEY_METHOD_START_PLAY @"startPlay"
15+
#define KEY_METHOD_STOP_PLAY @"stopPlay"
16+
#define KEY_PARAM_PLAY_URL @"playUrl"
17+
#define KEY_PARAM_VIEW @"view"
18+
#define KEY_PARAM_LICENSE_URL @"licenseUrl"
19+
#define KEY_PARAM_LICENSE_KEY @"licenseKey"
20+
21+
#endif /* TCConstant_h */
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
//
2+
// TUIEffectPlayerExtension.h
3+
// TCEffectPlayerKit
4+
//
5+
// Created by krabyu on 2024/7/18.
6+
//
7+
8+
#import <Foundation/Foundation.h>
9+
10+
NS_ASSUME_NONNULL_BEGIN
11+
12+
@interface TUIEffectPlayerExtension : NSObject
13+
+ (instancetype) sharedInstance;
14+
@end
15+
16+
NS_ASSUME_NONNULL_END
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
//
2+
// TUIEffectPlayerExtension.m
3+
// TCEffectPlayerKit
4+
//
5+
// Created by krabyu on 2024/7/18.
6+
//
7+
8+
#import "TUIEffectPlayerExtension.h"
9+
#import "TUICore/TUICore.h"
10+
#import "TCConstant.h"
11+
#import <TCEffectPlayer/TCEffectAnimView.h>
12+
13+
@interface TUIEffectPlayerExtension() <TUIExtensionProtocol, TCEPAnimViewDelegate>
14+
15+
@end
16+
17+
@implementation TUIEffectPlayerExtension
18+
19+
+ (void)load {
20+
[TUICore registerExtension: KEY_GET_VIEW object:[TUIEffectPlayerExtension sharedInstance]];
21+
}
22+
23+
+ (instancetype) sharedInstance {
24+
static TUIEffectPlayerExtension* extension;
25+
static dispatch_once_t onceToken;
26+
dispatch_once(&onceToken, ^{
27+
extension = [[TUIEffectPlayerExtension alloc] init];
28+
});
29+
return extension;
30+
}
31+
32+
#pragma mark - TUIExtensionProtocol
33+
- (NSArray<TUIExtensionInfo *> *)onGetExtension:(NSString *)key param:(NSDictionary *)param {
34+
NSMutableArray<TUIExtensionInfo *> *resultExtensionInfoList = [NSMutableArray array];
35+
if (!key || ![param isKindOfClass:[NSDictionary class]]) {
36+
return nil;
37+
}
38+
if ([key isEqualToString: KEY_GET_VIEW]) {
39+
TCEffectAnimView* animationView = [[TCEffectAnimView alloc] init];
40+
[animationView setLoop:FALSE];
41+
NSDictionary *info = @{KEY_GET_VIEW: animationView};
42+
TUIExtensionInfo *resultExtensionInfo = [[TUIExtensionInfo alloc] init];
43+
resultExtensionInfo.data = info;
44+
[resultExtensionInfoList addObject:resultExtensionInfo];
45+
return resultExtensionInfoList;
46+
}
47+
48+
return nil;
49+
}
50+
51+
- (void)onPlayEvent:(ITCEffectPlayer *)player
52+
event:(int)EvtID
53+
withParam:(NSDictionary *)param {
54+
NSLog(@"event:%d param:%@",EvtID, param);
55+
}
56+
57+
@end
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
//
2+
// TUIEffectPlayerService.h
3+
// TCEffectPlayerKit
4+
//
5+
// Created by krabyu on 2024/7/18.
6+
//
7+
8+
#import <Foundation/Foundation.h>
9+
10+
NS_ASSUME_NONNULL_BEGIN
11+
12+
@interface TUIEffectPlayerService : NSObject
13+
14+
@end
15+
16+
NS_ASSUME_NONNULL_END
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
// Copyright (c) 2024 Tencent. All rights reserved.
2+
// Author: krabyu
3+
//
4+
// TUIEffectPlayerService.m
5+
// TCEffectPlayerKit
6+
//
7+
// Created by krabyu on 2024/7/18.
8+
//
9+
10+
#import "TUIEffectPlayerService.h"
11+
#import "TUICore/TUICore.h"
12+
#import "TCConstant.h"
13+
#import <TCEffectPlayer/TCEffectAnimView.h>
14+
#import <TCMediaX/TCMediaX.h>
15+
16+
@interface TUIEffectPlayerService() <TUIServiceProtocol,TCEPAnimViewDelegate>
17+
@property (nonatomic, copy) TUICallServiceResultCallback callback;
18+
@end
19+
20+
@implementation TUIEffectPlayerService
21+
+ (void)load {
22+
[TUICore registerService:KEY_SERVICE_NAME object: [TUIEffectPlayerService sharedInstance]];
23+
}
24+
25+
+ (instancetype) sharedInstance {
26+
static TUIEffectPlayerService* service;
27+
static dispatch_once_t onceToken;
28+
dispatch_once(&onceToken, ^{
29+
service = [[TUIEffectPlayerService alloc] init];
30+
});
31+
return service;
32+
}
33+
34+
- (id)onCall:(NSString *)method param:(nullable NSDictionary *)param resultCallback:(TUICallServiceResultCallback)resultCallback {
35+
if ([method isEqualToString: KEY_METHOD_SET_LICENSE]) {
36+
NSString *licenseUrl = param[KEY_PARAM_LICENSE_URL];
37+
NSString *licenseKey = param[KEY_PARAM_LICENSE_KEY];
38+
if (licenseUrl && licenseKey ) {
39+
[[TCMediaXBase getInstance] setLicenceURL:licenseUrl key:licenseKey];
40+
}
41+
} else if ([method isEqualToString:KEY_METHOD_START_PLAY]) {
42+
NSString * url = param[KEY_PARAM_PLAY_URL];
43+
UIView* view = param[KEY_PARAM_VIEW];
44+
if ([view isKindOfClass: [TCEffectAnimView class]]) {
45+
TCEffectAnimView * animationView = (TCEffectAnimView* )view;
46+
[animationView setRenderMode:TCEPVPViewContentModeAspectFill];
47+
[animationView setEffectPlayerDelegate:self];
48+
[animationView startPlay:url];
49+
self.callback = resultCallback;
50+
}
51+
} else if ([method isEqualToString:KEY_METHOD_STOP_PLAY]) {
52+
UIView* view = param[KEY_PARAM_VIEW];
53+
if ([view isKindOfClass: [TCEffectAnimView class]]) {
54+
TCEffectAnimView * animationView = (TCEffectAnimView* )view;
55+
[animationView setEffectPlayerDelegate:NULL];
56+
[animationView stopPlay];
57+
}
58+
}
59+
return nil;
60+
}
61+
62+
#pragma mark - TCEPAnimViewDelegate
63+
-(void) onPlayEvent:(ITCEffectPlayer *)player event:(int)EvtID withParam:(NSDictionary *)param {
64+
int event_play_stop = 2006;
65+
if (EvtID == event_play_stop && self.callback) {
66+
self.callback(0, @"play finished", @{@"":@""});
67+
}
68+
}
69+
70+
@end

‎TCEffectPlayerKit/LICENSE‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
The MIT License (MIT)
2+
Copyright (c) 2024 Tencent.
3+
4+
Permission is hereby granted, free of charge, to any person obtaining a copy
5+
of this software and associated documentation files (the "Software"), to deal
6+
in the Software without restriction, including without limitation the rights
7+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
copies of the Software, and to permit persons to whom the Software is
9+
furnished to do so, subject to the following conditions:
10+
11+
The above copyright notice and this permission notice shall be included in
12+
all copies or substantial portions of the Software.
13+
14+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20+
THE SOFTWARE.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
#
2+
# Be sure to run `pod lib lint TCEffectPlayerKit.podspec' to ensure this is a
3+
# valid spec before submitting.
4+
#
5+
# Any lines starting with a # are optional, but their use is encouraged
6+
# To learn more about a Podspec see https://guides.cocoapods.org/syntax/podspec.html
7+
#
8+
9+
Pod::Spec.new do |s|
10+
s.name = 'TCEffectPlayerKit'
11+
s.version = '3.0.0'
12+
s.summary = 'A plugin of TCEffectPlayer for TUILiveKit.'
13+
s.homepage = 'https://github.com/Tencent-RTC/TUILiveKit'
14+
s.license = { :type => 'MIT', :file => 'LICENSE' }
15+
s.author = 'trtc.io'
16+
s.source = { :path => './' }
17+
s.ios.deployment_target = '13.0'
18+
s.static_framework = true
19+
20+
s.dependency 'TUICore'
21+
22+
s.default_subspec = 'Default'
23+
24+
s.subspec 'Default' do |default|
25+
default.dependency 'TCMediaX'
26+
default.dependency 'TCEffectPlayer'
27+
default.dependency 'YTCommonXMagic'
28+
default.source_files = 'Classes/**/*.*'
29+
end
30+
31+
s.subspec 'Beauty' do |beauty|
32+
beauty.dependency 'TCMediaX'
33+
beauty.dependency 'TCEffectPlayer'
34+
beauty.source_files = 'Classes/**/*.*'
35+
end
36+
37+
end

‎application/Podfile‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ platform :ios, '14.0'
22
source 'https://cdn.cocoapods.org/'
33

44
# ── Unified TXLiteAVSDK version ──
5-
TXLITEAVSDK_VERSION = '13.2.20652'
5+
TXLITEAVSDK_VERSION = '13.4.21067'
66

77
# ── Shared dependency definition ──
88
def shared_pods
@@ -12,6 +12,7 @@ def shared_pods
1212
pod 'Alamofire', '5.0.0'
1313
pod 'SnapKit', '5.0.1'
1414
pod 'Kingfisher', '6.3.1'
15+
pod 'AtomicXCore', '4.3.0'
1516
pod 'Toast-Swift'
1617

1718
# ── Shell project local pods ──

‎application/Podfile.lock‎

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ PODS:
3636
- TUICore
3737
- TXIMSDK_Plus_iOS_XCFramework (>= 8.8.7357)
3838
- TXLiteAVSDK_Professional
39-
- AtomicXCore (4.2.0):
40-
- RTCRoomEngine/Professional (>= 4.2.0)
41-
- TXLiteAVSDK_Professional (>= 13.0.20278)
39+
- AtomicXCore (4.3.0):
40+
- RTCRoomEngine/Professional (>= 4.3.0)
41+
- TXIMSDK_Plus_iOS_XCFramework (>= 9.0.7661)
42+
- TXLiteAVSDK_Professional (>= 13.4.21067)
4243
- JXPagingView/Paging (2.1.2)
4344
- JXSegmentedView (1.3.0)
4445
- Kingfisher (6.3.1)
@@ -60,7 +61,7 @@ PODS:
6061
- MJRefresh (3.7.5)
6162
- Protobuf (3.22.5)
6263
- RTCCommon (1.3.6)
63-
- RTCRoomEngine/Professional (4.2.0):
64+
- RTCRoomEngine/Professional (4.3.0):
6465
- TXIMSDK_Plus_iOS_XCFramework (>= 8.4.6676)
6566
- TXLiteAVSDK_Professional (>= 12.8.0.19666)
6667
- SDWebImage (5.21.7):
@@ -83,12 +84,12 @@ PODS:
8384
- SnapKit
8485
- TUICore
8586
- TXLiteAVSDK_Professional
86-
- TUICore (9.0.7652):
87+
- TUICore (9.0.7660):
8788
- SDWebImage
88-
- TUICore/ImSDK_Plus (= 9.0.7652)
89-
- TUICore/Base (9.0.7652):
89+
- TUICore/ImSDK_Plus (= 9.0.7660)
90+
- TUICore/Base (9.0.7660):
9091
- SDWebImage
91-
- TUICore/ImSDK_Plus (9.0.7652):
92+
- TUICore/ImSDK_Plus (9.0.7660):
9293
- SDWebImage
9394
- TUICore/Base
9495
- TXIMSDK_Plus_iOS_XCFramework
@@ -117,27 +118,28 @@ PODS:
117118
- Kingfisher
118119
- SnapKit
119120
- TXLiteAVSDK_Professional
120-
- TXIMSDK_Plus_iOS_XCFramework (8.9.7537)
121-
- TXLiteAVSDK_Professional (13.2.20652):
122-
- TXLiteAVSDK_Professional/Professional (= 13.2.20652)
123-
- TXLiteAVSDK_Professional/Professional (13.2.20652)
124-
- TXLiteAVSDK_Professional/ReplayKitExt (13.2.20652)
121+
- TXIMSDK_Plus_iOS_XCFramework (9.0.7662)
122+
- TXLiteAVSDK_Professional (13.4.21067):
123+
- TXLiteAVSDK_Professional/Professional (= 13.4.21067)
124+
- TXLiteAVSDK_Professional/Professional (13.4.21067)
125+
- TXLiteAVSDK_Professional/ReplayKitExt (13.4.21067)
125126

126127
DEPENDENCIES:
127128
- Alamofire (= 5.0.0)
128129
- AppAssembly (from `assembly/AppAssembly.podspec`)
129-
- AtomicX (from `../../../client_uikit/atomic-x/ios/atomic_x/AtomicX.podspec`)
130+
- AtomicX (from `../atomic_x/AtomicX.podspec`)
131+
- AtomicXCore (= 4.3.0)
130132
- Kingfisher (= 6.3.1)
131133
- Login (from `login/Login.podspec`)
132134
- MJRefresh (= 3.7.5)
133135
- SnapKit (= 5.0.1)
134136
- Toast-Swift
135-
- TUICallKit_Swift/Professional (from `../../../client_uikit/atomic-x/ios/call/`)
137+
- TUICallKit_Swift/Professional (from `../call/`)
136138
- TUICore
137-
- TUILiveKit (from `../../../client_uikit/atomic-x/ios/live/TUILiveKit.podspec`)
138-
- TUIRoomKit (from `../../../client_uikit/atomic-x/ios/room/TUIRoomKit.podspec`)
139-
- TXLiteAVSDK_Professional (= 13.2.20652)
140-
- TXLiteAVSDK_Professional/ReplayKitExt (= 13.2.20652)
139+
- TUILiveKit (from `../live/TUILiveKit.podspec`)
140+
- TUIRoomKit (from `../room/TUIRoomKit.podspec`)
141+
- TXLiteAVSDK_Professional (= 13.4.21067)
142+
- TXLiteAVSDK_Professional/ReplayKitExt (= 13.4.21067)
141143

142144
SPEC REPOS:
143145
trunk:
@@ -161,39 +163,39 @@ EXTERNAL SOURCES:
161163
AppAssembly:
162164
:path: assembly/AppAssembly.podspec
163165
AtomicX:
164-
:path: "../../../client_uikit/atomic-x/ios/atomic_x/AtomicX.podspec"
166+
:path: "../atomic_x/AtomicX.podspec"
165167
Login:
166168
:path: login/Login.podspec
167169
TUICallKit_Swift:
168-
:path: "../../../client_uikit/atomic-x/ios/call/"
170+
:path: "../call/"
169171
TUILiveKit:
170-
:path: "../../../client_uikit/atomic-x/ios/live/TUILiveKit.podspec"
172+
:path: "../live/TUILiveKit.podspec"
171173
TUIRoomKit:
172-
:path: "../../../client_uikit/atomic-x/ios/room/TUIRoomKit.podspec"
174+
:path: "../room/TUIRoomKit.podspec"
173175

174176
SPEC CHECKSUMS:
175177
Alamofire: 58ff2bfb8daaacaa233d5c36e37b10a5248f59b1
176-
AppAssembly: 4631f86648e02cbadde640566f247f5cb2566bb6
177-
AtomicX: 20c47ae62de97979f8cf83b1b3b791f7cc42b7f6
178-
AtomicXCore: ca4d07c982db76eb5b72594fef95c7914f436405
178+
AppAssembly: 946f31ca2e4eda9a06952701c8496d716ad146d9
179+
AtomicX: f85743c2e53fe41ebbe807a9a660b1020dbe9477
180+
AtomicXCore: f75de6352191d53e7bfa3e9f7c10bd7c4f5dbe6f
179181
JXPagingView: 90924b364a2ff7e94db534fad1fa50925ff69ee4
180182
JXSegmentedView: fec0d335355b6e019c494fe2e030bde8a36d2df6
181183
Kingfisher: 016c8b653a35add51dd34a3aba36b580041acc74
182-
Login: 121a60032ffa4046b134ddaf4cd1e15f23640e3d
184+
Login: 583ac2a496788621b82fc3f739b27dd36de56f40
183185
MJRefresh: fdf5e979eb406a0341468932d1dfc8b7f9fce961
184186
Protobuf: bcec8c9430002f8d11c8a08f964b3ebcdd060536
185187
RTCCommon: 728b0a48a0f41ebcfc4c5989883abee7f737d54a
186-
RTCRoomEngine: 8686a8db7624caca91b8f39814692c90f5feef72
188+
RTCRoomEngine: 45bc989fd7fd77cbf845e5faf724ac89a99c1300
187189
SDWebImage: e9fc87c1aab89a8ab1bbd74eba378c6f53be8abf
188190
SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb
189191
Toast-Swift: 7a03a532afe3a560d4044bc7c237e2864d295173
190-
TUICallKit_Swift: 0d68ab2468df4d5ee5c338575b5920e6673fd04f
191-
TUICore: ae6accb204327d00cfc0e1581b574d897e92fb8f
192-
TUILiveKit: 7fdf53c7e05a1179f9225c29efde40e361819ead
193-
TUIRoomKit: 6182dd1074aff300f095b0bd163fe583d4bd1e54
194-
TXIMSDK_Plus_iOS_XCFramework: 3e5178c57fe2475fa68cf891982b38af68f071d5
195-
TXLiteAVSDK_Professional: e792e6084a208ecef6196c5f28237ad8078b4d7c
192+
TUICallKit_Swift: 0188f845d3cdeddc4e3f4fc9d27496e986b1c91e
193+
TUICore: f23efd42114613206437cfd1cd6934c30d232d3f
194+
TUILiveKit: 6672b5707a8aad7953768e72b5f1832920d29348
195+
TUIRoomKit: 3482389b6b1057d3f419f55c20f37bf781b81900
196+
TXIMSDK_Plus_iOS_XCFramework: 8945dc509d1271c4a5b3361695f996118aafdeae
197+
TXLiteAVSDK_Professional: 73d77e84c5a8b6c73bc06445662e3871f247e7a5
196198

197-
PODFILE CHECKSUM: 96b573c64747d05f9350d320af6c4d649d8b4d8b
199+
PODFILE CHECKSUM: 8269e9d768dceaba92c5c63e8a79199c3b1d98b9
198200

199201
COCOAPODS: 1.16.2

0 commit comments

Comments
 (0)