• Stars
    star
    500
  • Rank 88,178 (Top 2 %)
  • Language
    Objective-C
  • License
    MIT License
  • Created over 10 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Audio Image Video Picker Controller

Icon

IQMediaPickerController

GitHub license

IQMediaPickerController allows user to capture Videos, Images and Audio using AVFoundation framework. It also allows user to pick Videos, Images and Audio from the iPhone photo and media library. IQMediaPickerController contains 3 library IQMediaCaptureController, IQAssetsPickerController & IQAudioPickerController. All libraries are separate from the others, so if you want to integrate any one of them, you can copy only required library without copying others.

Key Features

  • Contains 3 library allows to pick video, photo, audio type of data
  • Can capture/record supported data and can pick from photo and audio library as well
  • Can record multiple type of data at one shoot
  • Can pick or capture/record multiple files at once
  • Can limit length of media while recording

IQMediaCaptureController

IQMediaCaptureController is used to capture multiple images, videos and audio.

Video Recorder Photo Capture Audio Recorder

IQAssetsPickerController

IQAssetsPickerController is used to pick multiple images & videos from the iPhone photo gallery.

[Photo Picker Picker]

IQAudioPickerController

IQAudioPickerController is used to pick multiple audio files from the iPhone music library.

[Audio Picker]

Installation

CocoaPods:-

CocoaPods

IQMediaPickerController:- IQMediaPickerController is available through CocoaPods, to install it simply add the following line to your Podfile:

pod 'IQMediaPickerController'

Carthage

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate IQMediaPickerController into your Xcode project using Carthage, specify it in your Cartfile:

github "hackiftekhar/IQMediaPickerController"

Run carthage to build the frameworks and drag IQMediaPickerController.framework into your Xcode project.

Source Code:-

Github tag

Just drag and drop IQMediaPickerController directory to your project. That's it.

Example Usage

#import <IQMediaPickerController/IQMediaPickerController.h>

@interface ViewController ()<IQMediaPickerControllerDelegate>
@end

@implementation ViewController
{
    IQMediaPickerSelection *selectedMedias;
}

-(void)showMediaPicker
{
    IQMediaPickerController *controller = [[IQMediaPickerController alloc] init];
    controller.delegate = self;
    
    //Set additional settings if you would like to
    //[controller setSourceType:IQMediaPickerControllerSourceTypeCameraMicrophone];//or IQMediaPickerControllerSourceTypeLibrary
    //[controller setMediaTypes:@[@(PHAssetMediaTypeAudio),@(PHAssetMediaTypeVideo),@(PHAssetMediaTypeImage)]];
    //controller.captureDevice = AVCaptureDevicePositionBack;//or AVCaptureDevicePositionFront
    //controller.allowsPickingMultipleItems = YES;//or NO
    //controller.allowedVideoQualities = @[@(AVCaptureSessionPreset1920x1080),@(AVCaptureSessionPresetHigh)];

    [self presentViewController:controller animated:YES completion:nil];
}

-(void)mediaPickerController:(IQMediaPickerController *)controller didFinishMedias:(IQMediaPickerSelection *)selection
{
    NSLog(@"Info: %@",selection);   //Here you'll get the information about captured or picked assets

    selectedMedias = selection;

    [self.tableView reloadData];
}

- (void)mediaPickerControllerDidCancel:(IQMediaPickerController *)controller;
{
}

@end

LICENSE

Distributed under the MIT License.

Contributions

Any contribution is more than welcome! You can contribute through pull requests and issues on GitHub.

Author

If you wish to contact me, email at: [email protected]

More Repositories

1

IQKeyboardManager

Codeless drop-in universal library allows to prevent issues of keyboard sliding up and cover UITextField/UITextView. Neither need to write any code nor any setup required and much more.
Swift
16,440
star
2

IQAudioRecorderController

A drop-in universal library allows to record audio within the app with a nice User Interface.
Objective-C
637
star
3

IQDropDownTextField

TextField with DropDown support using UIPickerView
Swift
309
star
4

IQActionSheetPickerView

ActionSheet with UIPickerView
Objective-C
205
star
5

IQScreenRuler

Screen Ruler - Pixel Perfect Screenshot Ruler
Objective-C
171
star
6

IQGeometry

IQGeometry is the extension of CGGeometry
Objective-C
61
star
7

IQListKit

Model driven UITableView/UICollectionView
Swift
61
star
8

IQStickerView

Objective-C
41
star
9

IQIrregularView

IQIrregularView for those who need view touch on a particular part of UIView.
Objective-C
39
star
10

IQPullToRefresh

Easy Pull to refresh and Load more handling on a UIScrollView subclass
Swift
15
star
11

IQGradientMaskView

IQGradientView is a subclass to show Gradient Mask on the top and bottom.
Objective-C
6
star
12

IQAPIClient

Model-driven REST API Client
Swift
4
star
13

IQDeviceLockEvent

Device lock/unlock event notification
Objective-C
3
star
14

IQCircularProgressView

Circular progress view with progress and indeterminant states
Objective-C
2
star
15

IQKeyboardToolbarManager

Used for maintaining IQKeyboardToolbar throughout the app.
Swift
1
star
16

IQUtility

Utility functions
Swift
1
star
17

IQCountryStateHandler

Country and State list easy handling classes
Objective-C
1
star