//
|
// EZMediaSession.h
|
// H264 Encode and Decode
|
//
|
// Created by kanhaiping on 2018/6/21.
|
// Copyright © 2018年 AJB. All rights reserved.
|
//
|
|
#import <Foundation/Foundation.h>
|
#import "EZMediaSessionDefines.h"
|
|
@class UIImage;
|
@class EZMediaSession;
|
@class EZMediaSessionVideoParam;
|
|
@protocol EZMediaSessionDelegate <NSObject>
|
|
- (void)mediaSession:(EZMediaSession *)session didReceivedEncodedData:(NSData *)mediaData pts:(int64_t)ptsInMS type:(EZMediaCaptureSessionType)type;
|
|
- (void)mediaSession:(EZMediaSession *)session didReceivedError:(NSInteger)error;
|
|
@end
|
|
|
@interface EZMediaSession : NSObject
|
@property (nonatomic, weak) id displayLayer;//可选的预览视图,请传入AVSampleBufferDisplayLayer
|
@property (nonatomic, assign, readonly) BOOL isAudioEnabled;
|
|
- (instancetype)initWithVideoParam:(EZMediaSessionVideoParam *)videoParam delegate:(id<EZMediaSessionDelegate>)delegate;
|
- (NSInteger)enableVideoCapture:(BOOL)enable;
|
- (NSInteger)enableAudioCatpure:(BOOL)enable;
|
- (NSInteger)enableThumbnailCatpure:(BOOL)enable;
|
- (NSInteger)enableScreenShareCapture:(BOOL)enable;
|
- (void)selectBackCamera:(BOOL)backCameraSelected;
|
- (NSInteger)startEncoding;
|
- (NSInteger)setMaxBPS:(int)maxBPS;
|
- (void)forceNextKeyFrame;
|
- (NSInteger)stop;
|
- (void)localScreenShotWithBlock:(void (^)(UIImage *image))block;
|
- (BOOL) startLocalRecord:(NSString*)path;
|
- (BOOL) stopLocalRecord;
|
|
@end
|