aboutsummaryrefslogtreecommitdiffstats
path: root/Video Tuneup/ViewController.h
blob: 33a51c538cfcfa40758c61b0aaaafb9faf5e8069 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
//
//  ViewController.h
//  Video Tuneup
//
//  Created by Brian Jordan on 3/27/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
#import <AssetsLibrary/AssetsLibrary.h>
#import "SimpleEditor.h"
#import <MediaPlayer/MediaPlayer.h>

@class PlayerView;

// UIImagePickerControllerDelegate requires that we conform to UINavigationControllerDelegate
@interface ViewController : UIViewController <MPMediaPickerControllerDelegate> {
    AVURLAsset *asset;
    AVURLAsset *songAsset;
    
    // Related to scrubbing
    float mRestoreAfterScrubbingRate;
    BOOL seekToZeroBeforePlay;
    id mTimeObserver;
}

@property (nonatomic, retain) IBOutlet UIView *defaultHelpView;
@property (nonatomic, retain) AVPlayer *player;
@property (nonatomic, retain) SimpleEditor *editor;
@property (retain) AVPlayerItem *playerItem;
@property (nonatomic, retain) IBOutlet PlayerView *playerView;
@property (nonatomic, retain) IBOutlet UIButton *playButton;
@property (nonatomic, retain) IBOutlet UIButton *pauseButton;
@property (nonatomic, retain) IBOutlet UIButton *rewindButton;
@property (nonatomic, retain) IBOutlet UIButton *exportButton;
@property (nonatomic, retain) IBOutlet UIToolbar *videoNavBar;
@property (nonatomic, retain) IBOutlet UILabel *exportStatus;
@property (nonatomic, retain) IBOutlet UIActivityIndicatorView *exportActivityIndicator;
@property (nonatomic, retain) IBOutlet UISlider* mScrubber;

@property (nonatomic, retain) IBOutlet UIButton *mediaLibraryButton;
@property (nonatomic, retain) UIPopoverController *mediaLibraryPopover;

@property (nonatomic, retain) IBOutlet UILabel *internetRequestLabel;


- (void)toggleHelpView;
- (void)hideCameraRollText;
- (IBAction)loadDefaultAssetFromFile:sender;
- (IBAction)loadAssetFromFile:(NSURL *)fileURL;
- (IBAction)loadAudioFromFile:(NSURL *)songFileURL;
- (IBAction)loadDefaultAudioFromFile:sender;
- (IBAction)play:sender;
- (IBAction)pause:sender;
- (IBAction)rewind:sender;
- (IBAction)exportToCameraRoll:sender;
- (void)syncUI;
- (void)syncScrubber;
- (void)beginScrubbing:(id)sender;
- (void)scrub:(id)sender;
- (void)endScrubbing:(id)sender;
- (BOOL)isScrubbing;
- (void)initScrubberTimer;
- (CMTime)playerItemDuration;

- (void)exportDidFinish:(AVAssetExportSession*)session;

- (IBAction)showMediaLibrary:(id)sender;

- (IBAction)sendMixRequest:(id)sender;
@end