三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

3 种方式快速集成 SwiftVideoGenerator:CocoaPods、SPM 与手动安装完整教程

3 种方式快速集成 SwiftVideoGenerator:CocoaPods、SPM 与手动安装完整教程

3 种方式快速集成 SwiftVideoGenerator:CocoaPods、SPM 与手动安装完整教程

【免费下载链接】swift-video-generator项目地址: https://gitcode.com/gh_mirrors/sw/swift-video-generator

想在 iOS 应用里把图片和音频一键合成视频?SwiftVideoGenerator 是一款开源的 iOS 视频生成器库,只需几行代码就能完成图片转视频、多视频合并、视频倒放等操作。本文带来最完整的 SwiftVideoGenerator 集成教程,覆盖 CocoaPods、SPM 与手动安装三种方式,新手也能轻松上手。

SwiftVideoGenerator 是什么?能做什么?

SwiftVideoGenerator 由 Dev Labs 团队开发维护,核心能力是把「图片 + 音频」组合成视频,或者把多段视频合并为一段。它的 API 设计非常友好,全部通过VideoGenerator单例调用,无需了解复杂的 AVFoundation 底层细节。

主要功能一览:

  • 🎬 单张图片 + 单个音频 → 生成视频
  • 🎞️ 多组图片/音频 → 生成多段拼接视频
  • 🖼️ 多张图片 + 单个音频 → 生成配乐幻灯片
  • 🎵 纯图片(无音频)→ 按指定时长生成视频
  • 📽️ 合并多段视频、视频倒放、按时间区间裁剪
  • 🔀 为视频替换自定义音频

输出方面,生成的视频为 m4v 格式;合并视频时支持 mov、mp4 输入。

集成前准备:环境要求一览

开始之前,请确认开发环境满足以下条件,门槛非常低:

  • iOS 12.0 及以上
  • Xcode 10 及以上
  • Swift 4 及以上
  • 已安装 CocoaPods(仅方式一需要)

方式一:CocoaPods 集成 SwiftVideoGenerator(最主流)

这是绝大多数项目采用的 SwiftVideoGenerator 集成方法,一条命令安装、一行配置搞定。

第 1 步:安装 CocoaPods

如果还没装过 CocoaPods,打开终端执行:

gem install cocoapods

第 2 步:在 Podfile 中添加依赖

在项目根目录的 Podfile 中加入以下内容:

platform :ios, '12.0' use_frameworks! target '你的Target名称' do pod 'SwiftVideoGenerator' end

第 3 步:执行 pod install

保存后执行:

pod install

安装完成后,记得用生成的.xcworkspace打开项目,而不是原来的.xcodeproj

方式二:Swift Package Manager 集成(最快配置方法)

如果不想引入 CocoaPods,SPM 是当前最快的配置方法,全程图形化操作:

  1. 在 Xcode 中打开项目,点击菜单 File → Swift Packages → Add Package Dependency
  2. 输入仓库地址https://gitcode.com/gh_mirrors/sw/swift-video-generator,点击 Next
  3. 选择版本规则(建议 Up to Next Major),点击 Finish,等待自动拉取编译即可

SPM 方式下,包内的SwiftVideoGeneratortarget 会作为独立模块编译,集成后的导入方式与 CocoaPods 完全一致。

方式三:手动集成 SwiftVideoGenerator(零依赖,最轻量)

如果不想使用任何依赖管理器,手动集成也只需要 4 个文件,非常适合轻量级项目。

第 1 步:获取源码文件

克隆仓库:

git clone https://gitcode.com/gh_mirrors/sw/swift-video-generator

第 2 步:拷贝核心文件

进入Sources/SwiftVideoGenerator/Classes目录,你只需要以下文件:

  • VideoGenerator.swift(核心生成器)
  • Error/VideoGeneratorError.swift(错误处理)
  • Extensions/AVAssetExtension.swift(AVAsset 扩展)
  • Extensions/ImageExtension.swift(图片扩展)

第 3 步:拖入 Xcode 工程

打开你的 Xcode 项目,把这 4 个文件直接拖入 Project Navigator,并勾选目标 Target 的 membership。至此集成完成,可以开始生成视频了!

集成后 5 分钟快速上手

无论用哪种方式集成,使用前都需要导入模块:

import SwiftVideoGenerator

下面以最常用的「单张图片 + 单个音频」为例,演示核心 API 的调用方式:

import SwiftVideoGenerator // 准备素材:一张图片 + 一段本地音频 let image = UIImage(named: "scene3")! let audioURL = Bundle.main.url(forResource: "audio1", withExtension: "mp3")! // 设置输出文件名并开始生成 VideoGenerator.fileName = "myVideo" VideoGenerator.current.generate( withImages: [image], andAudios: [audioURL], andType: .single, { progress in print("生成进度:\(progress.fractionCompleted)") }, outcome: { result in switch result { case .success(let url): print("视频生成成功:\(url)") case .failure(let error): print("生成失败:\(error.localizedDescription)") } } )

代码说明:

  • VideoGenerator.current是全局单例,直接调用即可
  • generate(withImages:andAudios:andType:)是核心生成方法
  • progress回调实时返回生成进度,outcome回调返回成功地址或失败原因
  • 音频数组留空并设置videoDurationInSeconds,即可生成纯图片视频

常见问题与避坑指南

  • SPM 添加失败?确认 Xcode 版本支持swift-tools-version5.1,必要时升级 Xcode。
  • 手动集成编译报错?检查 4 个文件是否都加入了对应 Target,且工程最低版本为 iOS 12.0。
  • 生成失败?确认音频为本地文件 URL,暂不支持网络音频链接。
  • 合并视频崩溃?当前版本合并仅支持 mov、mp4 输入,生成结果为 m4v。

总结:三种集成方式怎么选?

  • 追求省心、团队协作规范 → 选 CocoaPods
  • 不想装额外工具、想快速尝试 → 选 SPM
  • 追求零依赖、代码完全可控 → 手动集成

三种 SwiftVideoGenerator 集成方式殊途同归,集成后的调用代码完全一致。根据项目情况选择最适合的一种,5 分钟就能让你的 iOS 应用拥有视频生成能力,快去动手试试吧!

【免费下载链接】swift-video-generator项目地址: https://gitcode.com/gh_mirrors/sw/swift-video-generator

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

← 返回列表