Files
FreeJ/xcode/QTExporter.h
xant 3b4b091f6e merging more stuff from 6b738edfc17744259a1289af02d977bc65036d11
Conflicts:

        xcode/CVScreenView.mm
        xcode/English.lproj/MainMenu.nib/designable.nib
        xcode/English.lproj/MainMenu.nib/keyedobjects.nib
        xcode/Exporter.h
2010-03-27 23:54:02 +01:00

55 lines
1.6 KiB
Objective-C

/* FreeJ
* (c) Copyright 2009 Andrea Guzzo <xant@dyne.org>
*
* This source code is free software; you can redistribute it and/or
* modify it under the terms of the GNU Public License as published
* by the Free Software Foundation; either version 3 of the License,
* or (at your option) any later version.
*
* This source code 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.
* Please refer to the GNU Public License for more details.
*
* You should have received a copy of the GNU Public License along with
* this source code; if not, write to:
* Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __QTEXPORTER_H__
#define __QTEXPORTER_H__
#import <Cocoa/Cocoa.h>
#import <QTKit/QTKit.h>
@class CVScreenView;
#define DEFAULT_OUTPUT_FILE "/tmp/freej_export.mov"
#ifdef __x86_64
#define DataHandler ComponentInstance
#endif
@interface QTExporter : NSObject {
NSString *outputFile;
QTMovie *mMovie;
//DataHandler mDataHandlerRef;
NSDictionary *savedMovieAttributes;
NSMutableDictionary *encodingProperties;
NSRecursiveLock *lock;
CVTimeStamp lastTimestamp;
NSImage *lastImage;
IBOutlet CVScreenView *screen;
}
- (id)initWithScreen:(CVScreenView *)cvscreen;
- (void)addImage:(CIImage *)image;
- (BOOL)startExport:(int)fps width:(int)w height:(int)h;
- (void)stopExport;
- (BOOL)isRunning;
- (BOOL)setOutputFile:(NSString *)path;
- (void)setOutputQuality:(int)quality;
- (void)setOutputFormat:(NSNumber *)format Codec:(NSString *)codec;
@end
#endif