- IRPlayerUIShell is a powerful UI Shell framework for the video player(IRPlayer) for iOS.
- Support customize UI for IRPlayer.
- Support some media controllers.
- Seek Bar
- Brightness
- Volume
- Full Screen
- Support iOS14.
- Has a Demo
- Support Multi video player in one page(UITableView, UICollectionView, etc).
- More powerful custom UI design.
- Git clone this project.
- Copy this project into your own project.
- Add the .xcodeproj into you project and link it as embed framework.
- You can remove the
demo
andScreenShots
folder.
- Add
pod 'IRPlayerUIShell'
in thePodfile
pod install
-
See
IRPlayerUIShellViewController
for demo. -
Import framework
#import <IRPlayerUIShell/IRPlayerUIShell.h>
- Create a IRPlayer instance.
self.playerImp = [IRPlayerImp player];
self.playerImp.decoder = [IRPlayerDecoder FFmpegDecoder];
[self.playerImp replaceVideoWithURL:VIDEO_URL];
- Create a IRPlayerController instance, set the player and containerView while init, and then set the controlView.
self.player = [IRPlayerController playerWithPlayerManager:self.playerImp containerView:self.containerView];
self.player.controlView = self.controlView;
- Set the video urls, and then the first video will play!
self.player.assetURLs = self.assetURLs;
- If app is in the background, still play continue.
self.player.pauseWhenAppResignActive = NO;
- Listener for orientation change.
@weakify(self)
self.player.orientationWillChange = ^(IRPlayerController * _Nonnull player, BOOL isFullScreen) {
@strongify(self)
[self setNeedsStatusBarAppearanceUpdate];
};
- Listener for player go end.
self.player.playerDidToEnd = ^(id _Nonnull asset) {
@strongify(self)
[self.player.currentPlayerManager pause];
[self.player.currentPlayerManager play];
[self.player playTheNext];
if (!self.player.isLastAssetURL) {
NSString *title = [NSString stringWithFormat:@"title:%zd",self.player.currentPlayIndex];
[self.controlView showTitle:title coverURLString:kVideoCover fullScreenMode:IRFullScreenModeLandscape];
} else {
[self.player stop];
}
};
- More, coming soon...
Play | Seek |
---|---|
Volume | Brightness |
Full Screen | Lock Screen |