9
9
// 用于对视频通话的分辨率、帧率和流畅模式进行调整,并支持记录下这些设置项
10
10
11
11
#import " TRTCSettingWindowController.h"
12
+ #import " GenerateTestUserSig.h"
12
13
#import < objc/message.h>
13
14
#import < CommonCrypto/CommonCrypto.h>
14
15
@@ -521,6 +522,43 @@ - (IBAction)onClickSpeakerTest:(NSButton *)sender {
521
522
}
522
523
}
523
524
525
+ - (IBAction )onPlayBGM : (id )sender {
526
+ NSString *path = [[NSBundle mainBundle ] pathForResource: @" bgm_demo" ofType: @" mp3" ];
527
+
528
+ [self .trtcEngine setBGMVolume: (self .BGMVolumeSlider.floatValue * 100 )];
529
+ [self .trtcEngine setBGMPublishVolume: (self .BGMPublishVolumeSlider.floatValue * 100 )];
530
+ [self .trtcEngine setBGMPlayoutVolume: (self .BGMPlayoutVolumeSlider.floatValue * 100 )];
531
+
532
+ [self .trtcEngine playBGM: path withBeginNotify: ^(NSInteger errCode) {
533
+
534
+ } withProgressNotify: ^(NSInteger progressMS, NSInteger durationMS) {
535
+
536
+ } andCompleteNotify: ^(NSInteger errCode) {
537
+
538
+ }];
539
+ }
540
+
541
+ - (IBAction )onStopBGM : (id )sender {
542
+ [self .trtcEngine stopBGM ];
543
+ }
544
+
545
+ - (IBAction )onSetBGMVolume : (id )sender {
546
+ NSSlider *slider = sender;
547
+ [self .trtcEngine setBGMVolume: (slider.floatValue * 100 )];
548
+ self.BGMPublishVolumeSlider .floatValue = slider.floatValue ;
549
+ self.BGMPlayoutVolumeSlider .floatValue = slider.floatValue ;
550
+ }
551
+
552
+ - (IBAction )onSetBGMPublishVolume : (id )sender {
553
+ NSSlider *slider = sender;
554
+ [self .trtcEngine setBGMPublishVolume: (slider.floatValue * 100 )];
555
+ }
556
+
557
+ - (IBAction )onSetBGMPlayoutVolume : (id )sender {
558
+ NSSlider *slider = sender;
559
+ [self .trtcEngine setBGMPlayoutVolume: (slider.floatValue * 100 )];
560
+ }
561
+
524
562
// 更改流控模式,流畅还是清晰
525
563
- (IBAction )onClickQOSPreference : (NSButton *)sender {
526
564
TRTCVideoQosPreference preference = sender.tag == 0 ? TRTCVideoQosPreferenceSmooth : TRTCVideoQosPreferenceClear;
@@ -544,26 +582,17 @@ - (IBAction)onClickShowCloudMixURL:(NSButton *)sender {
544
582
return ;
545
583
}
546
584
547
- NSString * streamId = [NSString stringWithFormat: @" %@ _%@ _main" , self .roomID, self .userID] ;
548
- const char *cStr = [streamId UTF8String ];
549
- unsigned char result[CC_MD5_DIGEST_LENGTH];
550
- CC_MD5 (cStr, (uint32_t )strlen (cStr), result);
551
- NSString *md5StreamId = [NSString stringWithFormat:
552
- @" %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x " ,
553
- result[0 ], result[1 ], result[2 ], result[3 ], result[4 ], result[5 ], result[6 ], result[7 ],
554
- result[8 ], result[9 ], result[10 ], result[11 ], result[12 ], result[13 ], result[14 ], result[15 ]
555
- ];
556
-
557
-
558
- NSString * playUrl = [NSString stringWithFormat: @" http://3891.liveplay.myqcloud.com/live/3891_%@ .flv" , md5StreamId];
585
+ NSString * streamId = [NSString stringWithFormat: @" %@ _%@ _%@ _main" , @(_SDKAppID), self .roomID, self .userID];
586
+ NSString * playUrl = [NSString stringWithFormat: @" http://3891.liveplay.myqcloud.com/live/%@ .flv" , streamId];
559
587
560
588
NSSharingServicePicker *picker = [[NSSharingServicePicker alloc ] initWithItems: @[playUrl]];
561
589
picker.delegate = self;
562
590
[picker showRelativeToRect: sender.bounds ofView: sender preferredEdge: NSRectEdgeMaxX];
563
- /* NSAlert *alert = [[NSAlert alloc] init];
591
+
592
+ NSAlert *alert = [[NSAlert alloc ] init ];
564
593
alert.messageText = @" 混流地址" ;
565
594
alert.informativeText = playUrl;
566
- [alert runModal];*/
595
+ [alert runModal ];
567
596
}
568
597
#pragma mark - NSSharingServicePickerDelegate
569
598
- (NSArray <NSSharingService *> *)sharingServicePicker : (NSSharingServicePicker *)sharingServicePicker sharingServicesForItems : (NSArray *)items proposedSharingServices : (NSArray <NSSharingService *> *)proposedServices
0 commit comments