{"id":1576,"url":"https://github.com/HHK1/PryntTrimmerView","last_synced_at":"2025-08-06T16:32:32.857Z","repository":{"id":39861452,"uuid":"86475428","full_name":"HHK1/PryntTrimmerView","owner":"HHK1","description":"A set of tools to trim, crop and select frames inside a video","archived":false,"fork":false,"pushed_at":"2024-09-12T09:28:27.000Z","size":18175,"stargazers_count":861,"open_issues_count":25,"forks_count":199,"subscribers_count":25,"default_branch":"master","last_synced_at":"2024-11-29T20:53:41.489Z","etag":null,"topics":["crop","cropping","ios","swift","thumbnail","trim","trimmer","video"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HHK1.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-03-28T15:17:24.000Z","updated_at":"2024-11-29T14:06:25.000Z","dependencies_parsed_at":"2024-01-29T18:06:55.658Z","dependency_job_id":null,"html_url":"https://github.com/HHK1/PryntTrimmerView","commit_stats":{"total_commits":92,"total_committers":13,"mean_commits":7.076923076923077,"dds":0.3152173913043478,"last_synced_commit":"64408520538bafa6541728c8bd72506be36935f1"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HHK1%2FPryntTrimmerView","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HHK1%2FPryntTrimmerView/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HHK1%2FPryntTrimmerView/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HHK1%2FPryntTrimmerView/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HHK1","download_url":"https://codeload.github.com/HHK1/PryntTrimmerView/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227215026,"owners_count":17748951,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crop","cropping","ios","swift","thumbnail","trim","trimmer","video"],"created_at":"2024-01-05T20:15:50.262Z","updated_at":"2024-12-09T16:31:23.933Z","avatar_url":"https://github.com/HHK1.png","language":"Swift","funding_links":[],"categories":["Media","Libs","Swift","HarmonyOS","Media and Graphics","Video [🔝](#readme)","Players \u0026 Clients"],"sub_categories":["Video","Windows Manager","Mobile \u0026 Web Players"],"readme":"# PryntTrimmerView\n\n[![codebeat badge](https://codebeat.co/badges/ac008534-7f30-4b04-8434-0c6d69251e4b)](https://codebeat.co/projects/github-com-prynt-prynttrimmerview-master)\n[![Platform](https://img.shields.io/cocoapods/p/PryntTrimmerView.svg?style=flat)](http://cocoapods.org/pods/PryntTrimmerView)\n[![License](https://img.shields.io/cocoapods/l/PryntTrimmerView.svg?style=flat)](http://cocoapods.org/pods/PryntTrimmerView)\n[![Version](https://img.shields.io/cocoapods/v/PryntTrimmerView.svg?style=flat)](http://cocoapods.org/pods/PryntTrimmerView)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![Swift Package Manager](https://img.shields.io/badge/spm-compatible-brightgreen.svg?style=flat)](https://swift.org/package-manager)\n\n\nA set of tools written in swift to crop and trim videos.\n\n\n## Example\n\nTo run the example project, clone the repo, and run `pod install` from the Example directory first.\n\n### Trimming\n\n![](https://media.giphy.com/media/GwZGkLiKxZcTm/giphy.gif)\n\n### Cropping\n\n![](https://media.giphy.com/media/10FsDfHS7616XC/giphy.gif)\n\n## Requirements\n\nPryntTrimmerView requires iOS9: It uses Layout Anchors to define the constraints.\n\n## Installation\n\n### SPM\n\nAdd the following to your Package.swift file \n\n```swift\ndependencies: [\n    .package(url: \"https://github.com/HHK1/PryntTrimmerView.git\", .upToNextMajor(from: \"4.0.1\"))\n]\n```\n\n#### CocoaPods\n\nPryntTrimmerView is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod \"PryntTrimmerView\"\n```\n\nThen, run `pod install` to download the source and add it to your workspace. \n\n#### Carthage\n\nPryntTrimmmerView is available through Carthage. To install\nit, simply add the following line to your Cartfile:\n\n```\ngithub \"HHK1/PryntTrimmerView\"\n```\n\nRun `carthage update` to build the framework and drag the built PryntTrimmerView.framework into your Xcode project.\n\n#### Swift Version\n\n- Swift 3 compatibility: use version 1.0.1 or below.\n- Swift 4 compatibility: use version 2.x.x.\n- Swift 4.2 compatibility: use version 3.x.x\n\n## Usage\n\n: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._ \n\n### Trimming\n\nCreate a `TrimmerView` instance (in interface builder or through code), and add it to your view hierarchy.\n\n```\ntrimmerView.asset = asset\ntrimmerView.delegate = self\n```\n\nAccess 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.\n\nYou can also customize the trimmer view by changing its colors:\n```\ntrimmerView.handleColor = UIColor.white\ntrimmerView.mainColor = UIColor.orange\ntrimmerView.positionBarColor = UIColor.white\n```\n\n### Cropping\n\nCreate an instance of the `VideoCropView` and add it to your view hierarchy, then load your video into the crop view: `videoCropView.asset = asset`.\n\nYou 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.\n\n## License\n\nPryntTrimmerView is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHHK1%2FPryntTrimmerView","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FHHK1%2FPryntTrimmerView","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHHK1%2FPryntTrimmerView/lists"}