2 // VLCMediaThumbnailer.h
5 // Created by Pierre d'Herbemont on 7/10/10.
6 // Copyright 2010 __MyCompanyName__. All rights reserved.
9 #import <Foundation/Foundation.h>
11 # import <CoreGraphics/CoreGraphics.h>
15 @protocol VLCMediaThumbnailerDelegate;
17 @interface VLCMediaThumbnailer : NSObject {
18 id<VLCMediaThumbnailerDelegate> _delegate;
21 CGImageRef _thumbnail;
23 NSTimer *_parsingTimeoutTimer;
24 NSTimer *_thumbnailingTimeoutTimer;
26 CGFloat _thumbnailHeight,_thumbnailWidth;
27 CGFloat _effectiveThumbnailHeight,_effectiveThumbnailWidth;
28 int _numberOfReceivedFrames;
29 BOOL _shouldRejectFrames;
32 + (VLCMediaThumbnailer *)thumbnailerWithMedia:(VLCMedia *)media andDelegate:(id<VLCMediaThumbnailerDelegate>)delegate;
33 - (void)fetchThumbnail;
35 @property (readwrite, assign) id<VLCMediaThumbnailerDelegate> delegate;
36 @property (readwrite, retain) VLCMedia *media;
37 @property (readwrite, assign) CGImageRef thumbnail;
41 * You shouldn't change this after -fetchThumbnail
43 * @return thumbnail height. Default value 240.
45 @property (readwrite, assign) CGFloat thumbnailHeight;
49 * You shouldn't change this after -fetchThumbnail
51 * @return thumbnail height. Default value 320
53 @property (readwrite, assign) CGFloat thumbnailWidth;
56 @protocol VLCMediaThumbnailerDelegate
58 - (void)mediaThumbnailerDidTimeOut:(VLCMediaThumbnailer *)mediaThumbnailer;
59 - (void)mediaThumbnailer:(VLCMediaThumbnailer *)mediaThumbnailer didFinishThumbnail:(CGImageRef)thumbnail;