Skip to content

Commit

Permalink
Update demo && Update session stop method
Browse files Browse the repository at this point in the history
  • Loading branch information
0dayZh committed Dec 17, 2015
1 parent e5edc91 commit 6bf2dca
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 22 deletions.
9 changes: 4 additions & 5 deletions Example/PLCameraStreamingKit.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -546,13 +546,13 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
CODE_SIGN_IDENTITY = "iPhone Developer";
ENABLE_BITCODE = NO;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "PLCameraStreamingKit/PLCameraStreamingKit-Prefix.pch";
INFOPLIST_FILE = "PLCameraStreamingKit/PLCameraStreamingKit-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
OTHER_LDFLAGS = "$(inherited)";
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_BUNDLE_IDENTIFIER = "com.pili-engineering.PLCameraStreamingKit";
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = 1;
WRAPPER_EXTENSION = app;
Expand All @@ -565,15 +565,14 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
CODE_SIGN_IDENTITY = "iPhone Distribution";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
ENABLE_BITCODE = NO;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "PLCameraStreamingKit/PLCameraStreamingKit-Prefix.pch";
INFOPLIST_FILE = "PLCameraStreamingKit/PLCameraStreamingKit-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
ONLY_ACTIVE_ARCH = NO;
OTHER_LDFLAGS = "$(inherited)";
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_BUNDLE_IDENTIFIER = "com.pili-engineering.PLCameraStreamingKit";
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = 1;
WRAPPER_EXTENSION = app;
Expand Down
51 changes: 34 additions & 17 deletions Example/PLCameraStreamingKit/PLCameraStreamingViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -64,23 +64,7 @@ - (void)viewDidLoad {
// @"hosts": @{
// ...
// }
NSDictionary *streamJSON = @{@"id": @"z1.dayzhtest.plcamerastreamingkit-test",
@"title": @"plcamerastreamingkit-test",
@"hub": @"dayzhtest",
@"publishKey": @"123",
@"publishSecurity": @"static", // or static
@"disabled": @(NO),
@"profiles": @[], // or empty Array []
@"hosts": @{
@"publish": @{
@"rtmp": @"pili-publish.0dayzh.miclle.com"
},
@"play": @{
@"rtmp": @"pili-live-rtmp.0dayzh.miclle.com"
}
}
};

NSDictionary *streamJSON;
PLStream *stream = [PLStream streamWithJSON:streamJSON];

void (^permissionBlock)(void) = ^{
Expand All @@ -100,6 +84,9 @@ - (void)viewDidLoad {
self.session.bufferDelegate = self;
dispatch_async(dispatch_get_main_queue(), ^{
self.session.previewView = self.view;
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap:)];
tap.numberOfTapsRequired = 2;
[self.view addGestureRecognizer:tap];
});
});
};
Expand Down Expand Up @@ -129,6 +116,36 @@ - (void)viewDidLoad {
}
}

- (void)tap:(id)sender {
NSString *quality = self.session.videoConfiguration.videoQuality;

[self.session beginUpdateConfiguration];

if ([quality isEqualToString:kPLVideoStreamingQualityLow1]) {
quality = kPLVideoStreamingQualityLow2;
} else if ([quality isEqualToString:kPLVideoStreamingQualityLow2]) {
quality = kPLVideoStreamingQualityLow3;
} else if ([quality isEqualToString:kPLVideoStreamingQualityLow3]) {
quality = kPLVideoStreamingQualityMedium1;
} else if ([quality isEqualToString:kPLVideoStreamingQualityMedium1]) {
quality = kPLVideoStreamingQualityMedium2;
} else if ([quality isEqualToString:kPLVideoStreamingQualityMedium2]) {
quality = kPLVideoStreamingQualityMedium3;
} else if ([quality isEqualToString:kPLVideoStreamingQualityMedium3]) {
quality = kPLVideoStreamingQualityHigh1;
} else if ([quality isEqualToString:kPLVideoStreamingQualityHigh1]) {
quality = kPLVideoStreamingQualityHigh2;
} else if ([quality isEqualToString:kPLVideoStreamingQualityHigh2]) {
quality = kPLVideoStreamingQualityHigh3;
} else if ([quality isEqualToString:kPLVideoStreamingQualityHigh3]) {
quality = kPLVideoStreamingQualityLow1;
}

self.session.videoConfiguration.videoQuality = quality;
NSLog(@"%@", quality);
[self.session endUpdateConfiguration];
}

- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self name:kReachabilityChangedNotification object:nil];

Expand Down
8 changes: 8 additions & 0 deletions Pod/Classes/PLCameraStreamingSession.m
Original file line number Diff line number Diff line change
Expand Up @@ -119,10 +119,18 @@ - (instancetype)initWithVideoConfiguration:(PLVideoStreamingConfiguration *)vide
}

- (void)stop {
if (self.microphoneSource.isRunning) {
[self.microphoneSource stopRunning];
}

[self.streamingSession stop];
}

- (void)destroy {
if (self.microphoneSource.isRunning) {
[self.microphoneSource stopRunning];
}

[self.streamingSession destroy];

[self.observers enumerateObjectsUsingBlock:^(id observer, NSUInteger idx, BOOL *stop) {
Expand Down

0 comments on commit 6bf2dca

Please sign in to comment.