fms, wowza, evostream, red5, crtmpserver, nginx-rtmp-module, srs, Node-Media-Server 及其他标准RTMP协议服务端
Node-Media-Server 基于Node.JS开发, 跨平台/高性能, 支持RTMP协议推流,RTMP/HTTP-FLV/WebSocket-FLV播放, 内置推流鉴权/播放防盗链/GOP缓存急速秒开.
最新SDK实现了RTMP实时视频加密解密功能, 只对音视频内容进行加密, 不改变传输协议.
不限流媒体服务端, 对现有架构无任何改动, 非常适合用作付费教育直播等场景.
即使被抓包分析到流地址, 仍然无法被ffmpeg等任何工具解密.
用户自定义密码, 可随时更换.
# Uncomment the next line to define a global platform for your project platform :ios, '9.0' target 'QLive' do # Uncomment the next line if you're using Swift or would like to use dynamic frameworks use_modular_headers! # Pods for QLive pod 'NodeMediaClient', '~> 2.9.8' end
pod install
#import <NodeMediaClient/NodeMediaClient.h>
......
@property (strong,nonatomic) NodePlayer *np;
......
// 开始播放直播视频
_np = [[NodePlayer alloc] init];
[_np setPlayerView:self.view];
[_np setInputUrl:@"rtmp://192.168.0.10/live/stream"];
[_np start];
......
// 停止播放
[_np stop];
请确认描述条目’Privacy – Microphone Usage Description’ 和 ‘Privacy – Camera Usage Description’ 已经添加入info.plist
#import <NodeMediaClient/NodeMediaClient.h>
......
@property (strong, nonatomic) NodePublisher *np;
......
// 开始摄像头预览和视频推流
_np = [[NodePublisher alloc] init];
[_np setCameraPreview:self.view cameraId:CAMERA_FRONT frontMirror:YES];
[_np setAudioParamBitrate:32000 profile:AUDIO_PROFILE_HEAAC];
[_np setVideoParamPreset:VIDEO_PPRESET_16X9_360 fps:15 bitrate:500000 profile:VIDEO_PROFILE_MAIN frontMirror:NO];
[_np setOutputUrl:@"rtmp://192.168.0.10/live/stream"];
[_np startPreview];
[_np start];
......
// 停止摄像头预览和推流
[_np stopPreview];
[_np stop];