Video View for iOS

Video View for iOS

Released 3 years ago , Last update 5 months ago

A UIView for playing, recording or downloading a video. The video can be played in a window or full-screen. Includes full source code and a working demo.

UIVideoView is UIView subclass for recording, playing or downloading video. Supports switching between embedded and full-screen view both by user and programmer. Can now record and play a video from within view. For iPad, iPhone and iPod Touch.

If a remote video is provided, you can now download the video and save to your camera roll.

If you turn on recording, you can record and use a video in the view. Recorded video is automatically saved to your Photos and used by the view. Clicking the play button plays the recorded video.

The video view displays a thumbnail of your choosing overlaid with a play button. You can also use any of 13 new thumbnail images available. Upon playing the video is shown embedded in your video view or full screen in a supplied view controller.

Automatic AirPlay support for use with Apple TV and other AirPlay-enabled devices.

It's tested and works fine on iOS6 but will work on any other version as well.

2.7
  • 5 0
  • 4 1
  • 3 0
  • 2 2
  • 1 0
3 Reviews Read Reviews

Pricing

$19.99

Single App

  • Perpetual license

  • 1 application

  • Can distribute binary products only

  • Commercial use

  • 6 months support

$59.99

Developer

  • Perpetual license

  • Unlimited projects

  • Can distribute code and binary products

  • Commercial use

  • 12 months support

Supported OS & SDK Versions

  • Supported build target - iOS 6.0 / Mac OS 10.7 (Xcode 4.3.1, Apple LLVM compiler 3.1)
  • Earliest supported deployment target - iOS 6.0 / Mac OS 10.6
  • Earliest compatible deployment target - iOS 6.0 / Mac OS 10.6

NOTE: 'Supported' means that the library has been tested with this version. 'Compatible' means that the library should work on this OS version (i.e. it doesn't rely on any unavailable SDK features) but is no longer being tested for compatibility and may require tweaking or bug fixes to run correctly.

Installation

To use UIVideoView into your app, drag the UIVideoView.h, UIVideoView.m, *.png and *.png images into your project. Make sure that you indicate to copy the files into your project. Also make sure that the Target Membership is checked UIVideoView.m and .png and .jpg images.

closeVideoPlayer.png is the close icon displayed when playing the embedded video player. You can replace with your own close icon.

newVideo.png is the new icon displayed if the video is set to new (setNew:TRUE). You can replace with your own new icon.

playVideo.png is the play icon displayed in the video view for clicking on to play the video. You can replace with your own play icon.

Frameworks: also make sure you have the MobileCoreServices framework included.

Usage

// see Demo Example in Examples/Demo folder for full source code

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];

CGRect rect = [[UIScreen mainScreen] bounds];
screenWidth = rect.size.width;
screenHeight = rect.size.height;

self.view.backgroundColor = [UIColor blueColor];

NSURL * _thumbnailUrl1 = [NSURL URLWithString:@"http://vthumb.ak.fbcdn.net/hvthumb-ak-prn1/574360_10150802315208900_10150802314338900_35608_417_t.jpg"];
NSURL * videoUrl1 = [NSURL URLWithString:@"http://www.youtube.com/embed/lzsBwnv_dAg"];
videoView1 = [[UIVideoView alloc] initWithFrame:CGRectMake(100, 120, screenWidth - 200, 300) parent:self thumbnail:_thumbnailUrl1 video:videoUrl1 fullscreen:FALSE  recording:FALSE autostart:FALSE];
[self.view addSubview:videoView1];    

[videoView1 setNewVideo:TRUE];           // indicate is new video - shows new video icon....

NSURL * _thumbnailUrl2 = [NSURL URLWithString:@"http://vthumb.ak.fbcdn.net/hvthumb-ak-ash4/410431_10150792752283900_10150792746928900_52224_1593_t.jpg"];
NSURL * videoUrl2 = [NSURL URLWithString:@"http://www.youtube.com/embed/RecJ8FZFN58"];
videoView2 = [[UIVideoView alloc] initWithFrame:CGRectMake(100, 500, screenWidth - 200, 300) parent:self thumbnail:_thumbnailUrl2 video:videoUrl2 fullscreen:FALSE  recording:TRUE autostart:FALSE];
[self.view addSubview:videoView2];    

[videoView2 setFullscreen:TRUE];         // switch to fullscreen player
[videoView2 setUseLargePlayButton:TRUE]; // use large play button overlay
[videoView2 setUseRoundCorners:FALSE];   // do not use round corners
[videoView2 setUseRoundCornerRadius:40];  // round corner radius, higher for rounder corners
[videoView2 setThumbnail:UIVideoViewThumbnailVideoProjector];  // set the thumbnail to video projector

// Note: can replace the newVideo.png image file to use your own new video icon
//       can replace the playVideo.png image file to use your own play overlay icon

}

- (void)setThumbnail:(UIVideoViewThumbnail)_thumbnail;

- (UIImage *)getThumbnail:(UIVideoViewThumbnail)_thumbnail;

- (void)setFullscreen:(BOOL)_fullscreen;

- (void)setNewVideo:(BOOL)_newVideo;

- (void)setUseLargePlayButton:(BOOL)_useLargePlayButton;

- (void)setUseRoundCorners:(BOOL)_useRoundCorners;

- (void)setUseRoundCornerRadius:(int)_radius;

- (BOOL)isNewVideo;

- (BOOL)hasCamera;

- (BOOL)recordVideo;

- (BOOL)showVideoPlayer;

- (void)closeVideoPlayer;

- (NSString *)getDeviceType;

- (NSString *)getRealDeviceType;

- (BOOL)isRunningIPad;

Example Project Demo

The UIVideoViewDemo example in the Examples/Demo folder demonstrates using UIVideoView.

3 licenses, starting from From » $19.99 View Licenses

Get A Quote

What do you need?
  • Custom development
  • Integration
  • Customization / Reskinning
  • Consultation
When do you need it?
  • Soon
  • Next week
  • Next month
  • Anytime

Thanks for getting in touch!

Your quote details have been received and we'll get back to you soon.


Or enter your name and Email
  • AR Ahmad Razoogi 1 month ago
    Is it possible to use my own UIView to record the video and audio by this component?
    • Thomas A. Markel Publisher 2 days ago
      Yes you can use your view. Create an instance of UIVideoView but do not add to your view so UIVideoView instance is hidden. Call UIVideoView recordVideo method. When the recording is done, videoUrl will contain the path to the video AND the video will be saved to your Photos. Note: if you want to access the UIVideoView videoUrl property you will have to add the following to UIVideoView.h to expose it or add a getVidelUrl method. @property (nonatomic, strong) NSURL * videoUrl;
  • TM Thomas A. Markel 5 months ago
    New version 3.0 add ability to download the video and save to the camera roll.
  • TM Thomas A. Markel 10 months ago
    New version 2.1 fixes some iOS6 and iOS7 issues and cleans up the documentation.