#if !defined(MAC_OS_X_VERSION_10_12) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_12
#ifdef OF_VIDEO_PLAYER_QTKIT
#import <Cocoa/Cocoa.h>
#import <Quartz/Quartz.h>
#import <QTKit/QTKit.h>
#import <OpenGL/OpenGL.h>
@interface QTKitMovieRenderer : NSObject
{
QTMovie * _movie;
QTVisualContextRef _visualContext;
CVOpenGLTextureCacheRef _textureCache;
CVOpenGLTextureRef _latestTextureFrame;
CVPixelBufferRef _latestPixelFrame;
NSSize movieSize;
QTTime movieDuration;
NSInteger frameCount;
QTTime lastMovieTime;
BOOL frameUpdated;
BOOL useTexture;
BOOL usePixels;
BOOL useAlpha;
BOOL synchronousSeek;
BOOL justSetFrame;
BOOL frameIsNew;
BOOL hasVideo;
BOOL hasAudio;
BOOL loadedFirstFrame;
NSArray* frameTimeValues;
NSCondition* synchronousSeekLock;
}
@property (nonatomic, readonly) NSSize movieSize;
@property (nonatomic, readonly) BOOL useTexture;
@property (nonatomic, readonly) BOOL usePixels;
@property (nonatomic, readonly) BOOL useAlpha;
@property (nonatomic, readonly) NSTimeInterval duration;
@property (nonatomic, readonly) NSInteger frameCount;
@property (nonatomic, readonly) BOOL isFinished;
@property (readwrite) BOOL justSetFrame;
@property (nonatomic, readwrite) BOOL synchronousSeek;
@property (nonatomic, readwrite) float rate;
@property (nonatomic, readwrite) float volume;
@property (nonatomic, readonly) CGFloat time;
@property (nonatomic, readonly) long long timeValue;
@property (nonatomic, readwrite) CGFloat position;
@property (nonatomic, readwrite) NSInteger frame;
@property (nonatomic, readwrite) BOOL loops;
@property (nonatomic, readwrite) BOOL palindrome;
@property (nonatomic, readonly) BOOL textureAllocated;
@property (nonatomic, readonly) GLuint textureID;
@property (nonatomic, readonly) GLenum textureTarget;
- (NSDictionary *)pixelBufferAttributes;
- (void)draw:(NSRect)drawRect;
- (BOOL)loadMovie:(NSString *)moviePath pathIsURL:(BOOL)isURL allowTexture:(BOOL)useTexture allowPixels:(BOOL)usePixels allowAlpha:(BOOL)useAlpha;
- (BOOL)update;
- (void)bindTexture;
- (void)unbindTexture;
- (void)pixels:(unsigned char *)outbuf;
- (void)setBalance:(float)balance;
- (void)stepForward;
- (void)stepBackward;
- (void)gotoBeginning;
- (void)frameAvailable:(CVImageBufferRef)image;
- (void)frameFailed;
- (void)synchronizeSeek;
@end
#endif
#endif
Comments