PryntTrimmerView
A set of tools to trim, crop and select frames inside a video.
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Trimming
Cropping
Requirements
PryntTrimmerView requires iOS9: It uses Layout Anchors to define the constraints.
Installation
SPM
Add the following to your Package.swift file
dependencies: [
.package(url: "https://github.com/HHK1/PryntTrimmerView.git", .upToNextMajor(from: "4.0.1"))
]
CocoaPods
PryntTrimmerView is available through CocoaPods. To install
it, simply add the following line to your Podfile:
pod "PryntTrimmerView"
Then, run pod install
to download the source and add it to your workspace.
Carthage
PryntTrimmmerView is available through Carthage. To install
it, simply add the following line to your Cartfile:
github "HHK1/PryntTrimmerView"
Run carthage update
to build the framework and drag the built PryntTrimmerView.framework into your Xcode project.
Swift Version
- Swift 3 compatibility: use version 1.0.1 or below.
- Swift 4 compatibility: use version 2.x.x.
- Swift 4.2 compatibility: use version 3.x.x
Usage
:warning: This library does not contain an API to crop or trim your video asset. You can find a possible implementation for this in the example pod, but the library only provides the UI.
Trimming
Create a TrimmerView
instance (in interface builder or through code), and add it to your view hierarchy.
trimmerView.asset = asset
trimmerView.delegate = self
Access the startTime
and endTime
property to know where to trim your asset. You can use the TrimmerViewDelegate
to link the trimmer with an AVPlayer
and provide the end user with a preview. See the VideoTrimmerViewController
inside the project to see an example.
You can also customize the trimmer view by changing its colors:
trimmerView.handleColor = UIColor.white
trimmerView.mainColor = UIColor.orange
trimmerView.positionBarColor = UIColor.white
Cropping
Create an instance of the VideoCropView
and add it to your view hierarchy, then load your video into the crop view: videoCropView.asset = asset
.
You can set the aspect ratio you want using the setAspectRatio
method. Once you are satisfied with the portion of the asset you want to crop, call getImageCropFrame
to retrieve the select frame. See the VideoCropperViewController
in the example app for an actual example of how to crop the video for export.