BGKSYLinkMicStreamerController.m 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. //
  2. // BGKSYLinkMicStreamerController.m
  3. // FanweApp
  4. //
  5. // Created by xfg on 2017/2/20.
  6. // Copyright © 2017年 xfg. All rights reserved.
  7. //
  8. #import "BGKSYLinkMicStreamerController.h"
  9. @interface BGKSYLinkMicStreamerController ()
  10. @end
  11. @implementation BGKSYLinkMicStreamerController
  12. //- (void)viewDidLoad
  13. //{
  14. // [super viewDidLoad];
  15. //
  16. // // 设置rtc参数
  17. // [self setStreamerKitCfg];
  18. //}
  19. //
  20. //#pragma mark 设置rtc参数
  21. //- (void)setStreamerKitCfg
  22. //{
  23. // //设置鉴权信息
  24. // _gPUStreamerKit.rtcClient.authString = nil;//设置ak/sk鉴权信息,本demo从testAppServer取,客户请从自己的appserver获取。
  25. // //设置音频属性
  26. // _gPUStreamerKit.rtcClient.sampleRate = 44100;//设置音频采样率,暂时不支持调节
  27. // //设置视频属性
  28. // _gPUStreamerKit.rtcClient.videoFPS = 15; //设置视频帧率
  29. // _gPUStreamerKit.rtcClient.videoWidth = 360;//设置视频的宽高,和当前分辨率相关,注意一定要保持16:9
  30. // _gPUStreamerKit.rtcClient.videoHeight = 640;
  31. // _gPUStreamerKit.rtcClient.MaxBps = 256000;//设置rtc传输的最大码率,如果推流卡顿,可以设置该参数
  32. // //设置小窗口属性
  33. // _gPUStreamerKit.winRect = CGRectMake(kLinkMickXRate, kLinkMickYRate, kLinkMickWRate, kLinkMickHRate);//设置小窗口属性
  34. // _gPUStreamerKit.rtcLayer = 4;//设置小窗口图层,因为主版本占用了1~3,建议设置为4
  35. //
  36. // //特性1:悬浮图层,用户可以在小窗口叠加自己的view,注意customViewLayer >rtcLayer,(option)
  37. //// _gPUStreamerKit.customViewRect = CGRectMake(0.6, 0.6, 0.3, 0.3);
  38. //// _gPUStreamerKit.customViewLayer = 5;
  39. //
  40. // //特性2:圆角小窗口
  41. //// _gPUStreamerKit.maskPicture = [[GPUImagePicture alloc] initWithImage:[UIImage imageNamed:@"mask.png"]];
  42. //
  43. // //rtcClient的回调,(option)
  44. // __weak typeof(self) ws = self;
  45. // __weak KSYRTCStreamerKit *weak_kit = _gPUStreamerKit;
  46. //
  47. // // 接收注册结果的回调函数
  48. // _gPUStreamerKit.rtcClient.onRegister= ^(int status){
  49. // NSString * message = [NSString stringWithFormat:@"local sip account:%@",weak_kit.rtcClient.authUid];
  50. // NSLog(@"message:%@",message);
  51. //
  52. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(registerResult:registerUserId:)])
  53. // {
  54. // [ws.linkMicPublishDelegate registerResult:status registerUserId:weak_kit.rtcClient.authUid];
  55. // }
  56. // };
  57. //
  58. // // 接收反注册结果的回调函数
  59. // _gPUStreamerKit.rtcClient.onUnRegister= ^(int status){
  60. // NSLog(@"unregister callback");
  61. //
  62. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(unRegisterResult:registerUserId:)])
  63. // {
  64. // [ws.linkMicPublishDelegate unRegisterResult:status registerUserId:ws.applicantId];
  65. // }
  66. // };
  67. //
  68. // // call coming的回调函数,返回远端的remoteURI
  69. // _gPUStreamerKit.rtcClient.onCallInComing =^(char* remoteURI){
  70. // int ret = [weak_kit.rtcClient answerCall];
  71. // NSLog(ASLocalizedString(@"有呼叫到来,用户ID:%s;呼叫状态码:%d"),remoteURI,ret);
  72. // };
  73. //
  74. // // start call的回调函数
  75. // _gPUStreamerKit.onCallStart =^(int status){
  76. //
  77. // NSLog(@"oncallstart:%d",status);
  78. //
  79. // if(status == 200) // 建立连接
  80. // {
  81. // if([UIApplication sharedApplication].applicationState !=UIApplicationStateBackground)
  82. // {
  83. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(responderLinkMickResult:applicantId:)])
  84. // {
  85. // [ws.linkMicPublishDelegate responderLinkMickResult:YES applicantId:ws.applicantId];
  86. // }
  87. // }
  88. // }
  89. // else if(status == 408) // 对方无应答
  90. // {
  91. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(responderLinkMickResult:applicantId:)])
  92. // {
  93. // [ws.linkMicPublishDelegate responderLinkMickResult:NO applicantId:ws.applicantId];
  94. // }
  95. // }
  96. // else if(status == 404) // 呼叫未注册号码,主动停止
  97. // {
  98. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(responderLinkMickResult:applicantId:)])
  99. // {
  100. // [ws.linkMicPublishDelegate responderLinkMickResult:NO applicantId:ws.applicantId];
  101. // }
  102. // }
  103. // };
  104. //
  105. // // stop call的回调函数
  106. // _gPUStreamerKit.onCallStop = ^(int status){
  107. //
  108. // NSLog(@"oncallstop:%d",status);
  109. //
  110. // if(status == 200)
  111. // {
  112. // if([UIApplication sharedApplication].applicationState != UIApplicationStateBackground)
  113. // {
  114. // NSLog(ASLocalizedString(@"断开连接"));
  115. // }
  116. // }
  117. // else if(status == 408)
  118. // {
  119. // NSLog(ASLocalizedString(@"408超时"));
  120. // }
  121. //
  122. // [weak_kit.rtcClient unRegisterRTC];
  123. //
  124. // if (ws.linkMicPublishDelegate && [ws.linkMicPublishDelegate respondsToSelector:@selector(responderLinkMickResult:applicantId:)])
  125. // {
  126. // [ws.linkMicPublishDelegate responderLinkMickResult:NO applicantId:ws.applicantId];
  127. // }
  128. // };
  129. //
  130. // // sdk日志接口(option)
  131. // _gPUStreamerKit.rtcClient.openRtcLog = NO;//是否打开rtc的日志
  132. // _gPUStreamerKit.rtcClient.sdkLogBlock = ^(NSString * message){
  133. // NSLog(ASLocalizedString(@"=======主播端rtc的日志:%@"),message);
  134. // };
  135. //}
  136. //
  137. //#pragma mark 开始鉴权
  138. ///*
  139. // * 开始鉴权
  140. // * applicantId:申请连麦者ID
  141. // */
  142. //- (void)startRegister:(NSString *)applicantId
  143. //{
  144. // _applicantId = applicantId;
  145. //}
  146. //
  147. //#pragma mark 断开连麦
  148. ///*
  149. // * 断开连麦
  150. // * applicantId:申请连麦者ID
  151. // */
  152. //- (void)breakLinkMick:(NSString *)applicantId
  153. //{
  154. // [_gPUStreamerKit.rtcClient unRegisterRTC];
  155. //}
  156. //
  157. //#pragma mark 停止推流
  158. //- (void)stopRtmp
  159. //{
  160. // if (_gPUStreamerKit)
  161. // {
  162. // [_gPUStreamerKit.rtcClient unRegisterRTC];
  163. // }
  164. // [super stopRtmp];
  165. //}
  166. @end