Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

iOS - Fine tuned video compression in Swift 4

License

NotificationsYou must be signed in to change notification settings

testfairy-blog/VideoCompressionTutorial

Repository files navigation

iOS - Fine tuned video compression in Swift 4. Code materials forthis blog post.

Check out other branches for different versions of Swift.

Features

  • iOS 9+
  • No dependencies
  • Single file, single function
  • Compression in background thread
  • Cancelable
  • Configurable a/v bitrate, video resolution, audio sample rate and many other fine tuning operations
  • Proper orientation correction for back/front camera
  • Low performance compression duringBackground Execution, even when device is locked. (Application.beginBackgroundTask must be called explicitly)

Install

Copythis file to your project.

Usage

// Get source videoletvideoToCompress= //any valid URL pointing device storage// Declare destination path and remove anything exists in itlet destinationPath=URL(fileURLWithPath:NSTemporaryDirectory()).appendingPathComponent("compressed.mp4")try?FileManager.default.removeItem(at: destinationPath)// Compressletcancelable=compressh264VideoInBackground(    videoToCompress: videoToCompress,    destinationPath: destinationPath,    size:nil, // nil preserves original,    //size: (width: 1280, height: 720)     compressionTransform:.keepSame,    compressionConfig:.defaultConfig,    completionHandler:{[weak self] pathin        // use path},    errorHandler:{ einprint("Error:", e)},    cancelHandler:{print("Canceled.")})// To cancel compression, set cancel flag to true and wait for handler invokecancelable.cancel=true

How to initiate a background task (i.e while the phone is locked)

Please refer to the discussion here.

About

iOS - Fine tuned video compression in Swift 4

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp