iPhone視頻播放器demo&source code

來源:互聯網
上載者:User

這篇文章是一個用iPhone播放視頻的例子,使用iPhone非官方SDK。

 

代碼的作者是hobbut

原文地址(俄文):http://blog.weho.ru/2008/04/primer-prostogo-videopleera.html

main.m:

 

int main(int argc, char *argv[])

{

    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

    int ret = UIApplicationMain(argc, argv, [SimpleMoviePlayerApp class]);

    [pool release];

    return ret;

}

 

 

SimpleMoviePlayer.h:

 

 

#import <UIKit/UIKit.h>

#import <GraphicsServices/GraphicsServices.h>

#import <MoviePlayerUI/UIEventObservableWindow.h>

#import <MoviePlayerUI/UIMovieView.h>

#import <MoviePlayerUI/UIMoviePlayerController.h>

 

@interface SimpleMoviePlayerApp : UIApplication

{

UIEventObservableWindow *mainWindow;

UIMoviePlayerController *playerController;

}

 

@end

 

SimpleMoviePlayer.m 

#import "SimpleMoviePlayerApp.h"

 

@implementation SimpleMoviePlayerApp

 

- (void)applicationDidFinishLaunching:(GSEventRef)event;

{

 

struct CGRect mainFrame = CGRectMake(0,0,320,480);

 

mainWindow = [[UIEventObservableWindow alloc] initWithContentRect:mainFrame];

 

playerController = [[UIMoviePlayerController alloc] initWithPlayerSize:[UIHardware mainScreenSize] isFullScreen:YES];

[[playerController playerView] setCanShowControlsOverlay:YES];

[playerController setControlsOverlayVisible:YES disableAutohide:NO animate: YES];

[playerController setAutoPlayWhenLikelyToKeepUp:YES];

    [playerController setDelegate:self];

[playerController prepareAndSetupUI];

[[playerController movieView] setMovieWithPath:@"http://192.168.0.2/video.m4v"];

 

[mainWindow setContentView:[playerController playerView]];

    [mainWindow orderFront:self];

}

 

- (void)moviePlayerDidFinishPlayback: (UIMoviePlayerController *)player userExited: (BOOL)userExited

{

NSLog(@"player normal exit");

[self terminateWithSuccess];

}

 

- (void)applicationWillTerminate;

{

NSLog(@"app normal exit");

[playerController release];

    [mainWindow release];

}

 

@end

 

你可以在這裡下載這個原始碼。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.