邮箱——Xoxo_x@126.com

本版本为swift版,在oc中添加桥接文件即可运行,以后会给大家一个封装好的oc版本

在一些视频类软件,直播类软件,娱乐类软件都会有用户录制的视频的封面,有些封面不再是简单的图片而是灵动的Gif图像,那么这种技术是如何实现的,本文将介绍这种即时Gif动画是如何使用的,另附源码Demo http://download.csdn.net/detail/xoxo_x/9587477。

let testBundle = NSBundle(forClass: self.dynamicType)let URL = testBundle.URLForResource("166_Background3", withExtension: "mov")_  = 1    // 循环次数_ = Float(0)//开始时间_  = Float(1)//持续时间_ = 3//每秒多少帧//保存路径let savedURL = NSURL(fileURLWithPath: (NSTemporaryDirectory() as NSString).stringByAppendingPathComponent("test.gif"))let regift = Regift(sourceFileURL: URL!, destinationFileURL: savedURL, frameCount: 16, delayTime: 0.2)let result = regift.createGif()print("\(result)")//在前往文件夹下即可找到该视频,没有做保存到相簿处理

demo可以正常运行,前往文件夹后,可发现

test.gif就是生成的gif,再进行保存到相薄,或者上传到服务器就好了

本demo中主要用到了github上的开源代码,在生成gif的demo中本人翻译了很多英文,用的是汉语标注,大家可以多学习一下,

/**从电影创建一个GIF储存在给定的URL。Create a GIF from a movie stored at the given URL. This converts the whole video to a GIF meeting the requested output parameters.- parameters:
            - sourceFileURL(资源文件): The source file to create the GIF from.
            - destinationFileURL(目标文件): An optional destination file to write the GIF to(一个可选的目标文件编写的GIF). If you don't include this, a default path will be provided.
            - frameCount(帧数): The number of frames to include in the gif(gif包括帧的数量); each frame has the same duration and is spaced evenly over the video(视频中的时间间隔).
            - delayTime(延迟时间): The amount of time each frame exists for in the GIF.
            - loopCount(循环次数): The number of times the GIF will repeat. This defaults to `0`, which means that the GIF will repeat infinitely.
            - completion(完成): A block that will be called when the GIF creation is completed. The `result` parameter provides the path to the file, or will be `nil` if there was an error.
    */
    //从资源当中得到gif

如果有什么翻译的不准确的,请见谅,demo地址http://download.csdn.net/detail/xoxo_x/9587477

视频转gif(源码)相关推荐

  1. Crackme006 - 全新160个CrackMe学习系列(图文|视频|注册机源码)

    知乎:逆向驿站 原文链接 CrackMe006 | 难度适中适合练手 |160个CrackMe深度解析(图文+视频+注册机源码) crackme006,依然是delphi的,而且没壳子,条线比较清晰, ...

  2. python视频网站项目_Python开发教育网站项目实例教学(105集视频课程含源码)

    Python开发教育网站项目实例教学(105集视频课程含源码)课程简介: Python开发教育网站项目实例教学(105集视频课程含源码)通过这105集Python实例视频课程的学习,学员可以掌握到使用 ...

  3. 一对一视频聊天app源码,归并排序模板

    一对一视频聊天app源码,归并排序模板实现的相关代码 #include<iostream> using namespace std; const int N=1e5+10; int a[N ...

  4. 视频直播系统源码,平台在日间和夜间模式之间来回切换

    视频直播系统源码,平台在日间和夜间模式之间来回切换实现的相关代码 import 'package:flutter/material.dart'; import 'package:flutter_wid ...

  5. 视频直播APP源码,通过css控制div内容展开更多/收起效果

    视频直播APP源码,通过css控制div内容展开更多/收起效果 一. 实现思路 需要设置一个变量控制展开 / 收起效果 提前写好最高高度的class样式,超出这个高度多余内容会隐藏 只有在列表数据长度 ...

  6. 视频直播网站源码,uniapp页面跳转的几种方法和区别

    视频直播网站源码,uniapp页面跳转的几种方法和区别 保留当前页面,可跳转到非 tabBar 页面,使用uni.navigateBack可以返回到原页面(可传参) uni.navigateTo({u ...

  7. java毕业生设计弹幕视频网站计算机源码+系统+mysql+调试部署+lw

    java毕业生设计弹幕视频网站计算机源码+系统+mysql+调试部署+lw java毕业生设计弹幕视频网站计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  8. 视频直播APP源码开发iOS音频播放流程

    视频直播APP源码开发iOS音频播放流程 概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的, ...

  9. 最新云豹二开直/播短视频完整系统源码+带开发文档/教程

    正文: 最新云豹二开直/播短视频完整系统源码+带开发文档/教程,好友给我分享的,属于云豹二开,功能非常的强大,且有非常完整的开发文档和教程. 但是说实话这类程序不属于好部署的那一种,比较吃一定的技术, ...

  10. JAVA毕业设计飞机航班信息查询系统演示视频2021计算机源码+lw文档+系统+调试部署+数据库

    JAVA毕业设计飞机航班信息查询系统演示视频2021计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计飞机航班信息查询系统演示视频2021计算机源码+lw文档+系统+调试部署+数据库 本源 ...

最新文章

  1. java上传加密_Java上传下载文件并实现加密解密
  2. wordpress导航页采用分类目录排序
  3. python错误代码40035_Python 创建XML
  4. oracle 新建路径,Linux环境安装Oracle11g(三)——用户、路径创建及配置环境变量
  5. 互联网金融投放获客优化的讨论(新用户引导流程)
  6. Gridview 隐藏列
  7. 《leetcode》best-time-to-buy-and-sell-stock-i-ii-iii
  8. 更改微软更新服务器地址,更新服务 | Microsoft Docs
  9. 论文浅尝 | ExCAR: 一个事件图知识增强的可解释因果推理框架
  10. LeetCode | 3 Sum
  11. php现实的九九乘法,php趣味编程 - php 输出九九乘法
  12. DataTable中的数据导出Excel文件
  13. android弹出键盘高度,Android 解决全面屏 软键盘弹出会有高度约50dp的白条。
  14. Android性能优化之UI实战
  15. WEB标准有什么好处?
  16. pku 1149 PIGS(最大流)
  17. 大学校讯通需求调研报告之精华
  18. Go语言:内存存储模型(对于可执行程序)
  19. python控制风扇_如何使用Python在raspberrypi3上使用GPIO控制风扇?
  20. 谷歌地球看不了街景_PPT放入3D模型之后,居然能模拟谷歌地图!

热门文章

  1. 上海怎样查询最近三年社保明细
  2. html超酷图片墙特效代码,超酷超绚精美图片展示效果代码(一)
  3. xshell支持图形_Xshell打不开图形化界面,或许该这样做!
  4. Kotlin真的值得学习吗?
  5. hermit插值 matlab,埃尔米特(Hermite)插值及其MATLAB程序
  6. git clone时出现的两种错误解决方法
  7. GET和POST两种基本请求方法的区别 1
  8. 速知!二级建造师你满足报考要求吗?
  9. window10 WIFI图标(WLAN)突然没有了,电脑搜索不到网络的一个解决办法: 重新下载安装WiFi驱动,电脑没有网络可以用U盘或者手机传到电脑安装
  10. 【ESXi中的群晖存储空间扩容】