From 3e8437ae559487362fae3525beb79c534c213a51 Mon Sep 17 00:00:00 2001
From: 单军华
Date: Thu, 12 Jul 2018 13:44:34 +0800
Subject: [PATCH] bug修复和功能优化

---
 screendisplay/Pods/ZFPlayer/ZFPlayer/Classes/Core/ZFPlayerMediaPlayback.h |  160 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 160 insertions(+), 0 deletions(-)

diff --git a/screendisplay/Pods/ZFPlayer/ZFPlayer/Classes/Core/ZFPlayerMediaPlayback.h b/screendisplay/Pods/ZFPlayer/ZFPlayer/Classes/Core/ZFPlayerMediaPlayback.h
new file mode 100644
index 0000000..49f25a5
--- /dev/null
+++ b/screendisplay/Pods/ZFPlayer/ZFPlayer/Classes/Core/ZFPlayerMediaPlayback.h
@@ -0,0 +1,160 @@
+//
+//  ZFMediaPlayback.h
+//  ZFPlayer
+//
+// Copyright (c) 2016��� ��������� ( http://github.com/renzifeng )
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+#import <Foundation/Foundation.h>
+#import "ZFPlayerView.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSUInteger, ZFPlayerPlaybackState) {
+    ZFPlayerPlayStateUnknown = 0,
+    ZFPlayerPlayStatePlaying,
+    ZFPlayerPlayStatePaused,
+    ZFPlayerPlayStatePlayFailed,
+    ZFPlayerPlayStatePlayStopped
+};
+
+typedef NS_OPTIONS(NSUInteger, ZFPlayerLoadState) {
+    ZFPlayerLoadStateUnknown        = 0,
+    ZFPlayerLoadStatePrepare        = 1 << 0,
+    ZFPlayerLoadStatePlayable       = 1 << 1,
+    ZFPlayerLoadStatePlaythroughOK  = 1 << 2, // Playback will be automatically started.
+    ZFPlayerLoadStateStalled        = 1 << 3, // Playback will be automatically paused in this state, if started.
+};
+
+typedef NS_ENUM(NSInteger, ZFPlayerScalingMode) {
+    ZFPlayerScalingModeNone,       // No scaling.
+    ZFPlayerScalingModeAspectFit,  // Uniform scale until one dimension fits.
+    ZFPlayerScalingModeAspectFill, // Uniform scale until the movie fills the visible bounds. One dimension may have clipped contents.
+    ZFPlayerScalingModeFill        // Non-uniform scale. Both render dimensions will exactly match the visible bounds.
+};
+
+@protocol ZFPlayerMediaPlayback <NSObject>
+
+@required
+/// The view must inherited `ZFPlayerView`,this view deals with some gesture conflicts.
+@property (nonatomic) ZFPlayerView *view;
+
+@optional
+/// The player volume, 0...1.0
+/// Only affects audio volume for the player instance and not for the device.
+/// You can change device volume or player volume as needed,change the player volume you can folllow the `ZFPlayerMediaPlayback` protocol.
+@property (nonatomic) float volume;
+
+/// The player muted
+/// indicates whether or not audio output of the player is muted. Only affects audio muting for the player instance and not for the device.
+/// You can change device volume or player muted as needed,change the player muted you can folllow the `ZFPlayerMediaPlayback` protocol.
+@property (nonatomic, getter=isMuted) BOOL muted;
+
+/// Playback speed,0.5...2
+@property (nonatomic) float rate;
+
+/// The player current play time.
+@property (nonatomic, readonly) NSTimeInterval currentTime;
+
+/// The player total time.
+@property (nonatomic, readonly) NSTimeInterval totalTime;
+
+/// The player buffer time.
+@property (nonatomic, readonly) NSTimeInterval bufferTime;
+
+/// The player seek time.
+@property (nonatomic) NSTimeInterval seekTime;
+
+/// The player play state,playing or not playing.
+@property (nonatomic, readonly) BOOL isPlaying;
+
+/// Determines how the content scales to fit the view. Defaults to ZFPlayerScalingModeNone.
+@property (nonatomic) ZFPlayerScalingMode scalingMode;
+
+/**
+ @abstract Check whether video preparation is complete.
+ @discussion isPreparedToPlay processing logic
+ 
+ * If isPreparedToPlay is TRUE, you can call [ZFPlayerMediaPlayback play] API start playing;
+ * If isPreparedToPlay to FALSE, direct call [ZFPlayerMediaPlayback play], in the play the internal automatic call [ZFPlayerMediaPlayback prepareToPlay] API.
+ * Returns YES if prepared for playback.
+ */
+@property (nonatomic, readonly) BOOL isPreparedToPlay;
+
+/// The play asset URL.
+@property (nonatomic) NSURL *assetURL;
+
+/// The video size.
+@property (nonatomic, readonly) CGSize presentationSize;
+
+/// The playback state.
+@property (nonatomic, readonly) ZFPlayerPlaybackState playState;
+
+/// The player load state.
+@property (nonatomic, readonly) ZFPlayerLoadState loadState;
+
+/// The block invoked when the player is Ready to play.
+@property (nonatomic, copy, nullable) void(^playerPrepareToPlay)(id<ZFPlayerMediaPlayback> asset, NSURL *assetURL);
+
+/// The block invoked when the player play progress changed.
+@property (nonatomic, copy, nullable) void(^playerPlayTimeChanged)(id<ZFPlayerMediaPlayback> asset, NSTimeInterval currentTime, NSTimeInterval duration);
+
+/// The block invoked when the player play buffer changed.
+@property (nonatomic, copy, nullable) void(^playerBufferTimeChanged)(id<ZFPlayerMediaPlayback> asset, NSTimeInterval bufferTime);
+
+/// The block invoked when the player playback state changed.
+@property (nonatomic, copy, nullable) void(^playerPlayStatChanged)(id<ZFPlayerMediaPlayback> asset, ZFPlayerPlaybackState playState);
+
+/// The block invoked when the player load state changed.
+@property (nonatomic, copy, nullable) void(^playerLoadStatChanged)(id<ZFPlayerMediaPlayback> asset, ZFPlayerLoadState loadState);
+
+/// The block invoked when the player play end.
+@property (nonatomic, copy, nullable) void(^playerDidToEnd)(id<ZFPlayerMediaPlayback> asset);
+
+/// Prepares the current queue for playback, interrupting any active (non-mixible) audio sessions.
+- (void)prepareToPlay;
+
+/// Reload player.
+- (void)reloadPlayer;
+
+/// Play playback.
+- (void)play;
+
+/// Pauses playback.
+- (void)pause;
+
+/// Replay playback.
+- (void)replay;
+
+/// Stop playback.
+- (void)stop;
+
+/// Video UIImage at the current time.
+- (UIImage *)thumbnailImageAtCurrentTime;
+
+/// Replace the current playback URL.
+- (void)replaceCurrentAssetURL:(NSURL *)assetURL;
+
+/// Use this method to seek to a specified time for the current player and to be notified when the seek operation is complete.
+- (void)seekToTime:(NSTimeInterval)time completionHandler:(void (^ __nullable)(BOOL finished))completionHandler;
+
+@end
+
+NS_ASSUME_NONNULL_END

--
Gitblit v1.8.0