diff --git a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Headers/IJKMediaPlayback.h b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Headers/IJKMediaPlayback.h index b5e50e0..8f3530d 100644 --- a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Headers/IJKMediaPlayback.h +++ b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Headers/IJKMediaPlayback.h @@ -74,6 +74,9 @@ typedef NS_ENUM(NSInteger, IJKMPMovieTimeOption) { - (BOOL)isPlaying; - (void)shutdown; - (void)setPauseInBackground:(BOOL)pause; +//录像 +- (void)stopRecord; +- (void)startRecordWithFileName:(NSString *)fileName; @property(nonatomic, readonly) UIView *view; @property(nonatomic) NSTimeInterval currentPlaybackTime; diff --git a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/IJKMediaFramework b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/IJKMediaFramework index 8611961..aa3365b 100644 Binary files a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/IJKMediaFramework and b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/IJKMediaFramework differ diff --git a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Info.plist b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Info.plist index 3cb082d..4378b25 100644 Binary files a/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Info.plist and b/Source/IJKPlayer-iOS/IJKMediaFramework.framework/Info.plist differ diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKAVMoviePlayerController.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKAVMoviePlayerController.h deleted file mode 100644 index 39465c9..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKAVMoviePlayerController.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * IJKAVMoviePlayerController.h - * - * Copyright (c) 2014 Bilibili - * Copyright (c) 2014 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - File: AVPlayerDemoPlaybackViewController.h - Abstract: UIViewController managing a playback view, thumbnail view, and associated playback UI. - Version: 1.3 - - Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple - Inc. ("Apple") in consideration of your agreement to the following - terms, and your use, installation, modification or redistribution of - this Apple software constitutes acceptance of these terms. If you do - not agree with these terms, please do not use, install, modify or - redistribute this Apple software. - - In consideration of your agreement to abide by the following terms, and - subject to these terms, Apple grants you a personal, non-exclusive - license, under Apple's copyrights in this original Apple software (the - "Apple Software"), to use, reproduce, modify and redistribute the Apple - Software, with or without modifications, in source and/or binary forms; - provided that if you redistribute the Apple Software in its entirety and - without modifications, you must retain this notice and the following - text and disclaimers in all such redistributions of the Apple Software. - Neither the name, trademarks, service marks or logos of Apple Inc. may - be used to endorse or promote products derived from the Apple Software - without specific prior written permission from Apple. Except as - expressly stated in this notice, no other rights or licenses, express or - implied, are granted by Apple herein, including but not limited to any - patent rights that may be infringed by your derivative works or by other - works in which the Apple Software may be incorporated. - - The Apple Software is provided by Apple on an "AS IS" basis. APPLE - MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION - THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS - FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND - OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. - - IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL - OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, - MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED - AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), - STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - Copyright (C) 2014 Apple Inc. All Rights Reserved. - - */ - -#import "IJKMediaPlayback.h" - -@interface IJKAVMoviePlayerController : NSObject - -- (id)initWithContentURL:(NSURL *)aUrl; -- (id)initWithContentURLString:(NSString *)aUrl; -+ (id)getInstance:(NSString *)aUrl; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMonitor.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMonitor.h deleted file mode 100644 index 0e70d39..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMonitor.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2016 Bilibili - * Copyright (c) 2016 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import - -@interface IJKFFMonitor : NSObject - -- (instancetype)init; - -@property(nonatomic) NSDictionary *mediaMeta; -@property(nonatomic) NSDictionary *videoMeta; -@property(nonatomic) NSDictionary *audioMeta; - -@property(nonatomic, readonly) int64_t duration; // milliseconds -@property(nonatomic, readonly) int64_t bitrate; // bit / sec -@property(nonatomic, readonly) float fps; // frame / sec -@property(nonatomic, readonly) int width; // width -@property(nonatomic, readonly) int height; // height -@property(nonatomic, readonly) NSString *vcodec; // video codec -@property(nonatomic, readonly) NSString *acodec; // audio codec -@property(nonatomic, readonly) int sampleRate; -@property(nonatomic, readonly) int64_t channelLayout; - -@property(nonatomic) NSString *vdecoder; - -@property(nonatomic) int tcpError; -@property(nonatomic) NSString *remoteIp; - -@property(nonatomic) int httpError; -@property(nonatomic) NSString *httpUrl; -@property(nonatomic) NSString *httpHost; -@property(nonatomic) int httpCode; -@property(nonatomic) int64_t httpOpenTick; -@property(nonatomic) int64_t httpSeekTick; -@property(nonatomic) int httpOpenCount; -@property(nonatomic) int httpSeekCount; -@property(nonatomic) int64_t lastHttpOpenDuration; -@property(nonatomic) int64_t lastHttpSeekDuration; -@property(nonatomic) int64_t filesize; - -@property(nonatomic) int64_t prepareStartTick; -@property(nonatomic) int64_t prepareDuration; -@property(nonatomic) int64_t firstVideoFrameLatency; -@property(nonatomic) int64_t lastPrerollStartTick; -@property(nonatomic) int64_t lastPrerollDuration; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMoviePlayerController.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMoviePlayerController.h deleted file mode 100644 index 004c123..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFMoviePlayerController.h +++ /dev/null @@ -1,155 +0,0 @@ -/* - * IJKFFMoviePlayerController.h - * - * Copyright (c) 2013 Bilibili - * Copyright (c) 2013 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import "IJKMediaPlayback.h" -#import "IJKFFMonitor.h" -#import "IJKFFOptions.h" -#import "IJKSDLGLViewProtocol.h" - -// media meta -#define k_IJKM_KEY_FORMAT @"format" -#define k_IJKM_KEY_DURATION_US @"duration_us" -#define k_IJKM_KEY_START_US @"start_us" -#define k_IJKM_KEY_BITRATE @"bitrate" - -// stream meta -#define k_IJKM_KEY_TYPE @"type" -#define k_IJKM_VAL_TYPE__VIDEO @"video" -#define k_IJKM_VAL_TYPE__AUDIO @"audio" -#define k_IJKM_VAL_TYPE__UNKNOWN @"unknown" - -#define k_IJKM_KEY_CODEC_NAME @"codec_name" -#define k_IJKM_KEY_CODEC_PROFILE @"codec_profile" -#define k_IJKM_KEY_CODEC_LONG_NAME @"codec_long_name" - -// stream: video -#define k_IJKM_KEY_WIDTH @"width" -#define k_IJKM_KEY_HEIGHT @"height" -#define k_IJKM_KEY_FPS_NUM @"fps_num" -#define k_IJKM_KEY_FPS_DEN @"fps_den" -#define k_IJKM_KEY_TBR_NUM @"tbr_num" -#define k_IJKM_KEY_TBR_DEN @"tbr_den" -#define k_IJKM_KEY_SAR_NUM @"sar_num" -#define k_IJKM_KEY_SAR_DEN @"sar_den" -// stream: audio -#define k_IJKM_KEY_SAMPLE_RATE @"sample_rate" -#define k_IJKM_KEY_CHANNEL_LAYOUT @"channel_layout" - -#define kk_IJKM_KEY_STREAMS @"streams" - -typedef enum IJKLogLevel { - k_IJK_LOG_UNKNOWN = 0, - k_IJK_LOG_DEFAULT = 1, - - k_IJK_LOG_VERBOSE = 2, - k_IJK_LOG_DEBUG = 3, - k_IJK_LOG_INFO = 4, - k_IJK_LOG_WARN = 5, - k_IJK_LOG_ERROR = 6, - k_IJK_LOG_FATAL = 7, - k_IJK_LOG_SILENT = 8, -} IJKLogLevel; - -@interface IJKFFMoviePlayerController : NSObject - -- (id)initWithContentURL:(NSURL *)aUrl - withOptions:(IJKFFOptions *)options; - -- (id)initWithContentURLString:(NSString *)aUrlString - withOptions:(IJKFFOptions *)options; - -- (id)initWithMoreContent:(NSURL *)aUrl - withOptions:(IJKFFOptions *)options - withGLView:(UIView *)glView; - -- (id)initWithMoreContentString:(NSString *)aUrlString - withOptions:(IJKFFOptions *)options - withGLView:(UIView *)glView; - -- (void)prepareToPlay; -- (void)play; -- (void)pause; -- (void)stop; -- (BOOL)isPlaying; -- (int64_t)trafficStatistic; -- (float)dropFrameRate; - -- (void)setPauseInBackground:(BOOL)pause; -- (BOOL)isVideoToolboxOpen; - -- (void)setHudValue:(NSString *)value forKey:(NSString *)key; - -+ (void)setLogReport:(BOOL)preferLogReport; -+ (void)setLogLevel:(IJKLogLevel)logLevel; -+ (BOOL)checkIfFFmpegVersionMatch:(BOOL)showAlert; -+ (BOOL)checkIfPlayerVersionMatch:(BOOL)showAlert - version:(NSString *)version; - -@property(nonatomic, readonly) CGFloat fpsInMeta; -@property(nonatomic, readonly) CGFloat fpsAtOutput; -@property(nonatomic) BOOL shouldShowHudView; - -- (void)setOptionValue:(NSString *)value - forKey:(NSString *)key - ofCategory:(IJKFFOptionCategory)category; - -- (void)setOptionIntValue:(int64_t)value - forKey:(NSString *)key - ofCategory:(IJKFFOptionCategory)category; - - - -- (void)setFormatOptionValue: (NSString *)value forKey:(NSString *)key; -- (void)setCodecOptionValue: (NSString *)value forKey:(NSString *)key; -- (void)setSwsOptionValue: (NSString *)value forKey:(NSString *)key; -- (void)setPlayerOptionValue: (NSString *)value forKey:(NSString *)key; - -- (void)setFormatOptionIntValue: (int64_t)value forKey:(NSString *)key; -- (void)setCodecOptionIntValue: (int64_t)value forKey:(NSString *)key; -- (void)setSwsOptionIntValue: (int64_t)value forKey:(NSString *)key; -- (void)setPlayerOptionIntValue: (int64_t)value forKey:(NSString *)key; - -@property (nonatomic, retain) id segmentOpenDelegate; -@property (nonatomic, retain) id tcpOpenDelegate; -@property (nonatomic, retain) id httpOpenDelegate; -@property (nonatomic, retain) id liveOpenDelegate; - -@property (nonatomic, retain) id nativeInvokeDelegate; - -- (void)didShutdown; - -#pragma mark KVO properties -@property (nonatomic, readonly) IJKFFMonitor *monitor; - -@end - -#define IJK_FF_IO_TYPE_READ (1) -void IJKFFIOStatDebugCallback(const char *url, int type, int bytes); -void IJKFFIOStatRegister(void (*cb)(const char *url, int type, int bytes)); - -void IJKFFIOStatCompleteDebugCallback(const char *url, - int64_t read_bytes, int64_t total_size, - int64_t elpased_time, int64_t total_duration); -void IJKFFIOStatCompleteRegister(void (*cb)(const char *url, - int64_t read_bytes, int64_t total_size, - int64_t elpased_time, int64_t total_duration)); diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFOptions.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFOptions.h deleted file mode 100644 index cc03847..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKFFOptions.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * IJKFFOptions.h - * - * Copyright (c) 2013-2015 Bilibili - * Copyright (c) 2013-2015 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import - -typedef enum IJKFFOptionCategory { - kIJKFFOptionCategoryFormat = 1, - kIJKFFOptionCategoryCodec = 2, - kIJKFFOptionCategorySws = 3, - kIJKFFOptionCategoryPlayer = 4, - kIJKFFOptionCategorySwr = 5, -} IJKFFOptionCategory; - -// for codec option 'skip_loop_filter' and 'skip_frame' -typedef enum IJKAVDiscard { - /* We leave some space between them for extensions (drop some - * keyframes for intra-only or drop just some bidir frames). */ - IJK_AVDISCARD_NONE =-16, ///< discard nothing - IJK_AVDISCARD_DEFAULT = 0, ///< discard useless packets like 0 size packets in avi - IJK_AVDISCARD_NONREF = 8, ///< discard all non reference - IJK_AVDISCARD_BIDIR = 16, ///< discard all bidirectional frames - IJK_AVDISCARD_NONKEY = 32, ///< discard all frames except keyframes - IJK_AVDISCARD_ALL = 48, ///< discard all -} IJKAVDiscard; - -struct IjkMediaPlayer; - -@interface IJKFFOptions : NSObject - -+(IJKFFOptions *)optionsByDefault; - --(void)applyTo:(struct IjkMediaPlayer *)mediaPlayer; - -- (void)setOptionValue:(NSString *)value - forKey:(NSString *)key - ofCategory:(IJKFFOptionCategory)category; - -- (void)setOptionIntValue:(int64_t)value - forKey:(NSString *)key - ofCategory:(IJKFFOptionCategory)category; - - --(void)setFormatOptionValue: (NSString *)value forKey:(NSString *)key; --(void)setCodecOptionValue: (NSString *)value forKey:(NSString *)key; --(void)setSwsOptionValue: (NSString *)value forKey:(NSString *)key; --(void)setPlayerOptionValue: (NSString *)value forKey:(NSString *)key; - --(void)setFormatOptionIntValue: (int64_t)value forKey:(NSString *)key; --(void)setCodecOptionIntValue: (int64_t)value forKey:(NSString *)key; --(void)setSwsOptionIntValue: (int64_t)value forKey:(NSString *)key; --(void)setPlayerOptionIntValue: (int64_t)value forKey:(NSString *)key; - -@property(nonatomic) BOOL showHudView; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKKVOController.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKKVOController.h deleted file mode 100644 index 3a6bf15..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKKVOController.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * IJKKVOController.h - * - * Copyright (c) 2014 Bilibili - * Copyright (c) 2014 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import - -@interface IJKKVOController : NSObject - -- (id)initWithTarget:(NSObject *)target; - -- (void)safelyAddObserver:(NSObject *)observer - forKeyPath:(NSString *)keyPath - options:(NSKeyValueObservingOptions)options - context:(void *)context; -- (void)safelyRemoveObserver:(NSObject *)observer - forKeyPath:(NSString *)keyPath; - -- (void)safelyRemoveAllObservers; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMPMoviePlayerController.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMPMoviePlayerController.h deleted file mode 100644 index b17f175..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMPMoviePlayerController.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * IJKMPMoviePlayerController.h - * - * Copyright (c) 2013 Bilibili - * Copyright (c) 2013 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import "IJKMediaPlayback.h" -#import - -@interface IJKMPMoviePlayerController : MPMoviePlayerController - -- (id)initWithContentURL:(NSURL *)aUrl; -- (id)initWithContentURLString:(NSString *)aUrl; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaFrameworkWithSSL.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaFrameworkWithSSL.h deleted file mode 100644 index 5680be2..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaFrameworkWithSSL.h +++ /dev/null @@ -1,46 +0,0 @@ -// -// IJKMediaFrameworkWithSSL.h -// IJKMediaFrameworkWithSSL -// -// Created by zhangxinzheng on 27/02/2017. -// Copyright © 2017 bilibili. All rights reserved. -// - -#import - -//! Project version number for IJKMediaFrameworkWithSSL. -FOUNDATION_EXPORT double IJKMediaFrameworkWithSSLVersionNumber; - -//! Project version string for IJKMediaFrameworkWithSSL. -FOUNDATION_EXPORT const unsigned char IJKMediaFrameworkWithSSLVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - -#import -#import -#import -#import -#import -#import -#import -#import -#import - -// backward compatible for old names -#define IJKMediaPlaybackIsPreparedToPlayDidChangeNotification IJKMPMediaPlaybackIsPreparedToPlayDidChangeNotification -#define IJKMoviePlayerLoadStateDidChangeNotification IJKMPMoviePlayerLoadStateDidChangeNotification -#define IJKMoviePlayerPlaybackDidFinishNotification IJKMPMoviePlayerPlaybackDidFinishNotification -#define IJKMoviePlayerPlaybackDidFinishReasonUserInfoKey IJKMPMoviePlayerPlaybackDidFinishReasonUserInfoKey -#define IJKMoviePlayerPlaybackStateDidChangeNotification IJKMPMoviePlayerPlaybackStateDidChangeNotification -#define IJKMoviePlayerIsAirPlayVideoActiveDidChangeNotification IJKMPMoviePlayerIsAirPlayVideoActiveDidChangeNotification -#define IJKMoviePlayerVideoDecoderOpenNotification IJKMPMoviePlayerVideoDecoderOpenNotification -#define IJKMoviePlayerFirstVideoFrameRenderedNotification IJKMPMoviePlayerFirstVideoFrameRenderedNotification -#define IJKMoviePlayerFirstAudioFrameRenderedNotification IJKMPMoviePlayerFirstAudioFrameRenderedNotification -#define IJKMoviePlayerFirstAudioFrameDecodedNotification IJKMPMoviePlayerFirstAudioFrameDecodedNotification -#define IJKMoviePlayerFirstVideoFrameDecodedNotification IJKMPMoviePlayerFirstVideoFrameDecodedNotification -#define IJKMoviePlayerOpenInputNotification IJKMPMoviePlayerOpenInputNotification -#define IJKMoviePlayerFindStreamInfoNotification IJKMPMoviePlayerFindStreamInfoNotification -#define IJKMoviePlayerComponentOpenNotification IJKMPMoviePlayerComponentOpenNotification -#define IJKMPMoviePlayerAccurateSeekCompleteNotification IJKMPMoviePlayerAccurateSeekCompleteNotification -#define IJKMoviePlayerSeekAudioStartNotification IJKMPMoviePlayerSeekAudioStartNotification -#define IJKMoviePlayerSeekVideoStartNotification IJKMPMoviePlayerSeekVideoStartNotification diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaModule.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaModule.h deleted file mode 100644 index c0e23f9..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaModule.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - * IJKMediaModule.h - * - * Copyright (c) 2013 Bilibili - * Copyright (c) 2013 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import - -@interface IJKMediaModule : NSObject - -+ (IJKMediaModule *)sharedModule; - -@property(atomic, getter=isAppIdleTimerDisabled) BOOL appIdleTimerDisabled; -@property(atomic, getter=isMediaModuleIdleTimerDisabled) BOOL mediaModuleIdleTimerDisabled; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayback.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayback.h deleted file mode 100644 index 8f3530d..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayback.h +++ /dev/null @@ -1,230 +0,0 @@ -/* - * IJKMediaPlayback.h - * - * Copyright (c) 2013 Bilibili - * Copyright (c) 2013 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import -#import - -typedef NS_ENUM(NSInteger, IJKMPMovieScalingMode) { - IJKMPMovieScalingModeNone, // No scaling - IJKMPMovieScalingModeAspectFit, // Uniform scale until one dimension fits - IJKMPMovieScalingModeAspectFill, // Uniform scale until the movie fills the visible bounds. One dimension may have clipped contents - IJKMPMovieScalingModeFill // Non-uniform scale. Both render dimensions will exactly match the visible bounds -}; - -typedef NS_ENUM(NSInteger, IJKMPMoviePlaybackState) { - IJKMPMoviePlaybackStateStopped, - IJKMPMoviePlaybackStatePlaying, - IJKMPMoviePlaybackStatePaused, - IJKMPMoviePlaybackStateInterrupted, - IJKMPMoviePlaybackStateSeekingForward, - IJKMPMoviePlaybackStateSeekingBackward -}; - -typedef NS_OPTIONS(NSUInteger, IJKMPMovieLoadState) { - IJKMPMovieLoadStateUnknown = 0, - IJKMPMovieLoadStatePlayable = 1 << 0, - IJKMPMovieLoadStatePlaythroughOK = 1 << 1, // Playback will be automatically started in this state when shouldAutoplay is YES - IJKMPMovieLoadStateStalled = 1 << 2, // Playback will be automatically paused in this state, if started -}; - -typedef NS_ENUM(NSInteger, IJKMPMovieFinishReason) { - IJKMPMovieFinishReasonPlaybackEnded, - IJKMPMovieFinishReasonPlaybackError, - IJKMPMovieFinishReasonUserExited -}; - -// ----------------------------------------------------------------------------- -// Thumbnails - -typedef NS_ENUM(NSInteger, IJKMPMovieTimeOption) { - IJKMPMovieTimeOptionNearestKeyFrame, - IJKMPMovieTimeOptionExact -}; - -@protocol IJKMediaPlayback; - -#pragma mark IJKMediaPlayback - -@protocol IJKMediaPlayback - -- (void)prepareToPlay; -- (void)play; -- (void)pause; -- (void)stop; -- (BOOL)isPlaying; -- (void)shutdown; -- (void)setPauseInBackground:(BOOL)pause; -//录像 -- (void)stopRecord; -- (void)startRecordWithFileName:(NSString *)fileName; - -@property(nonatomic, readonly) UIView *view; -@property(nonatomic) NSTimeInterval currentPlaybackTime; -@property(nonatomic, readonly) NSTimeInterval duration; -@property(nonatomic, readonly) NSTimeInterval playableDuration; -@property(nonatomic, readonly) NSInteger bufferingProgress; - -@property(nonatomic, readonly) BOOL isPreparedToPlay; -@property(nonatomic, readonly) IJKMPMoviePlaybackState playbackState; -@property(nonatomic, readonly) IJKMPMovieLoadState loadState; -@property(nonatomic, readonly) int isSeekBuffering; -@property(nonatomic, readonly) int isAudioSync; -@property(nonatomic, readonly) int isVideoSync; - -@property(nonatomic, readonly) int64_t numberOfBytesTransferred; - -@property(nonatomic, readonly) CGSize naturalSize; -@property(nonatomic) IJKMPMovieScalingMode scalingMode; -@property(nonatomic) BOOL shouldAutoplay; - -@property (nonatomic) BOOL allowsMediaAirPlay; -@property (nonatomic) BOOL isDanmakuMediaAirPlay; -@property (nonatomic, readonly) BOOL airPlayMediaActive; - -@property (nonatomic) float playbackRate; -@property (nonatomic) float playbackVolume; - -- (UIImage *)thumbnailImageAtCurrentTime; - -#pragma mark Notifications - -#ifdef __cplusplus -#define IJK_EXTERN extern "C" __attribute__((visibility ("default"))) -#else -#define IJK_EXTERN extern __attribute__((visibility ("default"))) -#endif - -// ----------------------------------------------------------------------------- -// MPMediaPlayback.h - -// Posted when the prepared state changes of an object conforming to the MPMediaPlayback protocol changes. -// This supersedes MPMoviePlayerContentPreloadDidFinishNotification. -IJK_EXTERN NSString *const IJKMPMediaPlaybackIsPreparedToPlayDidChangeNotification; - -// ----------------------------------------------------------------------------- -// MPMoviePlayerController.h -// Movie Player Notifications - -// Posted when the scaling mode changes. -IJK_EXTERN NSString* const IJKMPMoviePlayerScalingModeDidChangeNotification; - -// Posted when movie playback ends or a user exits playback. -IJK_EXTERN NSString* const IJKMPMoviePlayerPlaybackDidFinishNotification; -IJK_EXTERN NSString* const IJKMPMoviePlayerPlaybackDidFinishReasonUserInfoKey; // NSNumber (IJKMPMovieFinishReason) - -// Posted when the playback state changes, either programatically or by the user. -IJK_EXTERN NSString* const IJKMPMoviePlayerPlaybackStateDidChangeNotification; - -// Posted when the network load state changes. -IJK_EXTERN NSString* const IJKMPMoviePlayerLoadStateDidChangeNotification; - -// Posted when the movie player begins or ends playing video via AirPlay. -IJK_EXTERN NSString* const IJKMPMoviePlayerIsAirPlayVideoActiveDidChangeNotification; - -// ----------------------------------------------------------------------------- -// Movie Property Notifications - -// Calling -prepareToPlay on the movie player will begin determining movie properties asynchronously. -// These notifications are posted when the associated movie property becomes available. -IJK_EXTERN NSString* const IJKMPMovieNaturalSizeAvailableNotification; - -// ----------------------------------------------------------------------------- -// Extend Notifications - -IJK_EXTERN NSString *const IJKMPMoviePlayerVideoDecoderOpenNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerFirstVideoFrameRenderedNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerFirstAudioFrameRenderedNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerFirstAudioFrameDecodedNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerFirstVideoFrameDecodedNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerOpenInputNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerFindStreamInfoNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerComponentOpenNotification; - -IJK_EXTERN NSString *const IJKMPMoviePlayerDidSeekCompleteNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerDidSeekCompleteTargetKey; -IJK_EXTERN NSString *const IJKMPMoviePlayerDidSeekCompleteErrorKey; -IJK_EXTERN NSString *const IJKMPMoviePlayerDidAccurateSeekCompleteCurPos; -IJK_EXTERN NSString *const IJKMPMoviePlayerAccurateSeekCompleteNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerSeekAudioStartNotification; -IJK_EXTERN NSString *const IJKMPMoviePlayerSeekVideoStartNotification; - -@end - -#pragma mark IJKMediaUrlOpenDelegate - -// Must equal to the defination in ijkavformat/ijkavformat.h -typedef NS_ENUM(NSInteger, IJKMediaEvent) { - - // Notify Events - IJKMediaEvent_WillHttpOpen = 1, // attr: url - IJKMediaEvent_DidHttpOpen = 2, // attr: url, error, http_code - IJKMediaEvent_WillHttpSeek = 3, // attr: url, offset - IJKMediaEvent_DidHttpSeek = 4, // attr: url, offset, error, http_code - // Control Message - IJKMediaCtrl_WillTcpOpen = 0x20001, // IJKMediaUrlOpenData: no args - IJKMediaCtrl_DidTcpOpen = 0x20002, // IJKMediaUrlOpenData: error, family, ip, port, fd - IJKMediaCtrl_WillHttpOpen = 0x20003, // IJKMediaUrlOpenData: url, segmentIndex, retryCounter - IJKMediaCtrl_WillLiveOpen = 0x20005, // IJKMediaUrlOpenData: url, retryCounter - IJKMediaCtrl_WillConcatSegmentOpen = 0x20007, // IJKMediaUrlOpenData: url, segmentIndex, retryCounter -}; - -#define IJKMediaEventAttrKey_url @"url" -#define IJKMediaEventAttrKey_host @"host" -#define IJKMediaEventAttrKey_error @"error" -#define IJKMediaEventAttrKey_time_of_event @"time_of_event" -#define IJKMediaEventAttrKey_http_code @"http_code" -#define IJKMediaEventAttrKey_offset @"offset" -#define IJKMediaEventAttrKey_file_size @"file_size" - -// event of IJKMediaUrlOpenEvent_xxx -@interface IJKMediaUrlOpenData: NSObject - -- (id)initWithUrl:(NSString *)url - event:(IJKMediaEvent)event - segmentIndex:(int)segmentIndex - retryCounter:(int)retryCounter; - -@property(nonatomic, readonly) IJKMediaEvent event; -@property(nonatomic, readonly) int segmentIndex; -@property(nonatomic, readonly) int retryCounter; - -@property(nonatomic, retain) NSString *url; -@property(nonatomic, assign) int fd; -@property(nonatomic, strong) NSString *msg; -@property(nonatomic) int error; // set a negative value to indicate an error has occured. -@property(nonatomic, getter=isHandled) BOOL handled; // auto set to YES if url changed -@property(nonatomic, getter=isUrlChanged) BOOL urlChanged; // auto set to YES by url changed - -@end - -@protocol IJKMediaUrlOpenDelegate - -- (void)willOpenUrl:(IJKMediaUrlOpenData*) urlOpenData; - -@end - -@protocol IJKMediaNativeInvokeDelegate - -- (int)invoke:(IJKMediaEvent)event attributes:(NSDictionary *)attributes; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayer.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayer.h deleted file mode 100644 index 28c8bab..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKMediaPlayer.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * IJKMediaPlayer.h - * - * Copyright (c) 2013 Bilibili - * Copyright (c) 2013 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import "IJKMediaPlayback.h" -#import "IJKMPMoviePlayerController.h" - -#import "IJKFFOptions.h" -#import "IJKFFMoviePlayerController.h" - -#import "IJKAVMoviePlayerController.h" - -#import "IJKMediaModule.h" diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKNotificationManager.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKNotificationManager.h deleted file mode 100644 index 6190049..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKNotificationManager.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * IJKNotificationManager.h - * - * Copyright (c) 2016 Bilibili - * Copyright (c) 2016 Zhang Rui - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#import - -@interface IJKNotificationManager : NSObject - -- (nullable instancetype)init; - -- (void)addObserver:(nonnull id)observer - selector:(nonnull SEL)aSelector - name:(nullable NSString *)aName - object:(nullable id)anObject; - -- (void)removeAllObservers:(nonnull id)observer; - -@end diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKSDLGLViewProtocol.h b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKSDLGLViewProtocol.h deleted file mode 100644 index 0f27f26..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Headers/IJKSDLGLViewProtocol.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * IJKSDLGLViewProtocol.h - * - * Copyright (c) 2017 Bilibili - * Copyright (c) 2017 raymond - * - * This file is part of ijkPlayer. - * - * ijkPlayer is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * ijkPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with ijkPlayer; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef IJKSDLGLViewProtocol_h -#define IJKSDLGLViewProtocol_h - -#import - -typedef struct IJKOverlay IJKOverlay; -struct IJKOverlay { - int w; - int h; - UInt32 format; - int planes; - UInt16 *pitches; - UInt8 **pixels; - int sar_num; - int sar_den; - CVPixelBufferRef pixel_buffer; -}; - -@protocol IJKSDLGLViewProtocol -- (UIImage*) snapshot; -@property(nonatomic, readonly) CGFloat fps; -@property(nonatomic) CGFloat scaleFactor; -@property(nonatomic) BOOL isThirdGLView; -- (void) display_pixels: (IJKOverlay *) overlay; -@end - -#endif /* IJKSDLGLViewProtocol_h */ diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/IJKMediaFrameworkWithSSL b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/IJKMediaFrameworkWithSSL deleted file mode 100644 index 9b94d41..0000000 Binary files a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/IJKMediaFrameworkWithSSL and /dev/null differ diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Info.plist b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Info.plist deleted file mode 100644 index e0404d1..0000000 Binary files a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Info.plist and /dev/null differ diff --git a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Modules/module.modulemap b/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Modules/module.modulemap deleted file mode 100644 index 916bdde..0000000 --- a/Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework/Modules/module.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module IJKMediaFrameworkWithSSL { - umbrella header "IJKMediaFrameworkWithSSL.h" - - export * - module * { export * } -} diff --git a/Source/IJKPlayer-iOS/libcrypto.a b/Source/IJKPlayer-iOS/libcrypto.a new file mode 100644 index 0000000..9c698fa Binary files /dev/null and b/Source/IJKPlayer-iOS/libcrypto.a differ diff --git a/Source/IJKPlayer-iOS/libssl.a b/Source/IJKPlayer-iOS/libssl.a new file mode 100644 index 0000000..b24e9f3 Binary files /dev/null and b/Source/IJKPlayer-iOS/libssl.a differ diff --git a/Source/README.md b/Source/README.md index 4849042..97b5244 100644 --- a/Source/README.md +++ b/Source/README.md @@ -29,3 +29,4 @@ ## Faac-iOS * 来源:https://github.com/hardman/AWLive/tree/master/clibs/3th-party +* 用于 pcm 软编码为 aac ,实现音频对讲 \ No newline at end of file diff --git a/TIoTLinkThirdPartyKit.podspec b/TIoTLinkThirdPartyKit.podspec index 2399888..0273739 100644 --- a/TIoTLinkThirdPartyKit.podspec +++ b/TIoTLinkThirdPartyKit.podspec @@ -57,6 +57,7 @@ Pod::Spec.new do |s| end s.subspec 'IJKPlayer-iOS' do |ss| + ss.vendored_libraries = 'Source/IJKPlayer-iOS/libcrypto.a', 'Source/IJKPlayer-iOS/libssl.a' ss.vendored_frameworks = 'Source/IJKPlayer-iOS/IJKMediaFramework.framework' ss.frameworks = "AudioToolbox", "AVFoundation", "CoreGraphics", "CoreMedia", "CoreVideo", "MobileCoreServices", "OpenGLES", "QuartzCore", "VideoToolbox", "Foundation", "UIKit", "MediaPlayer" ss.libraries = "bz2", "z", "stdc++" @@ -64,12 +65,4 @@ Pod::Spec.new do |s| ss.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' } end - s.subspec 'IJKPlayerSSL-iOS' do |ss| - ss.vendored_frameworks = 'Source/IJKPlayer-iOS/IJKMediaFrameworkWithSSL.framework' - ss.frameworks = "AudioToolbox", "AVFoundation", "CoreGraphics", "CoreMedia", "CoreVideo", "MobileCoreServices", "OpenGLES", "QuartzCore", "VideoToolbox", "Foundation", "UIKit", "MediaPlayer" - ss.libraries = "bz2", "z", "stdc++" - ss.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' } - ss.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' } - end - end