当前位置:首页 > 图形处理 > 视频制作配套资源
《《After Effects 视频制作超级教程》源文件,素材,视频,课件》电子书封面

《After Effects 视频制作超级教程》源文件,素材,视频,课件

  • 发布时间:2021年04月08日 10:45:00
  • 作者:程明才
  • 出版:人民邮电出版社
  • 大小:3.4 GB
  • 类别:视频制作资料
  • 评分:9.6

    《After Effects 视频制作超级教程》源文件,素材,视频,课件

      给大家带来的是《After Effects 视频制作超级教程》源文件,素材,视频,课件,介绍了关于视频制作、视频制作教程方面的内容,本书是由人民邮电出版社出版,配套资源大小为3.4 GB,程明才编写,目前本书在视频制作类综合评分为:9.3分

      Tags:视频制作 视频制作教程 

      内容介绍

      After Effects是一款擅长特效合成的视频软件,是当前视频特效制作的一个标配工具,使用者众多。本书梳理出软件常用的、实用的知识点,从基础入门开始,系统讲解软件技术,帮助初学者打好扎实的基础。 在内容结构上,全书分为20章,对应分类操作、章节综合实例和扩展动手练习300多个,覆盖了After Effects的各项知识点。 在学习方法上,本书利用实践验证理论的方式,使读者可通过大量的操作演示、完整实例、练习测试来学习制作技术,对相关知识点从了解、理解再到掌握和运用。 在学习保障上,本套教程以图书 素材资料 视频演示讲解的方式,保障学习的方便与高效。操作和实例均有对应的素材,并有近300个、约9小时的操作实例讲解视频,易学易懂。本书适用软件版本为After Effects CC 2018-After Effects 2020。

      目录

      • 第 1章 初识AfterEffects ——做好学习的准备
      • 1.1 After Effects 简介
      • 1.2 安装After Effects
      • 1.2.1 安装要求
      • 1.2.2 安装方法
      • 1.2.3 安装其他相关软件
      • 1.2.4 使用在线帮助
      • 1.3 建立学习环境
      • 1.3.1 After Effects 安装的文件和文件夹
      • 1.3.2 After Effects 语言版本的切换
      • 操作1:同时打开多个应用界面
      • 操作2:修改语言版本文件
      • 操作3:设置切换语言版本的文件名
      • 1.3.3 建立个人资料库
      • 1.4.1 面板
      • 操作:改变面板布局
      • 1.4.2 面板控制
      • 操作1:面板拖放
      • 操作2:恢复界面布局
      • 1.4.3 自定义操作界面
      • 操作:自定义一个新工作区
      • 1.5 首选项设置
      • 1.6 基本工作流程
      • 实例:制作欢迎动画
      • 动手练习:制作手势动画
      • 第 2章 素材的使用与管理——海量素材取之有方
      • 2.1 多种方式导入素材
      • 2.2 导入素材的格式
      • 2.3 基于素材建立合成
      • 2.4 素材属性的修改与设置
      • 2.4.1 视频素材的帧速率
      • 操作:修改素材的帧速率
      • 2.4.2 视频与图像素材的像素比
      • 操作:比较和修改素材的像素比
      • 2.4.3 视频与图像素材的Alpha 通道
      • 操作:比较和修改素材的Alpha 通道
      • 2.4.4 视频素材的开始时间码
      • 操作:修改素材的开始时间码
      • 2.4.5 视频素材的循环次数
      • 操作:设置素材的循环次数
      • 2.5 图像序列转变为视频素材
      • 操作:导入图像序列
      • 2.6 分层图像的导入与设置
      • 操作1:将分层图像按图层的种类导入
      • 操作2:将分层图像按不同的图层大小导入
      • 操作3:将分层图像按合成的种类导入
      • 操作4:导入AI 分层图形
      • 2.7 素材的替换和分类管理
      • 操作1:素材的替换
      • 操作2:素材的分类管理
      • 实例:制作剧场合成动画
      • 动手练习:制作镜头板动画
      • 第3章 基本合成操作——进入合成的世界
      • 3.1 新建合成的预设和自定义
      • 3.1.1 合成预设的选择
      • 操作:根据预设建立合成
      • 3.1.2 合成的自定义设置
      • 操作1:自定义合成的预设
      • 操作2:自定义手机竖屏合成的预设
      • 3.2 三大面板联合制作
      • 操作1:为项目设置视频渲染和时间码选项
      • 操作2:项目面板中的一些基本操作
      • 操作3:时间轴面板中的一些基本操作
      • 操作4:合成视图面板中的一些基本操作
      • 3.3 图层变换属性的操作
      • 3.3.1 了解图层变换属性
      • 操作1:不同画幅合成的图层变换属性对比
      • 操作2:使用工具移动锚点
      • 操作3:调整锚点的参数
      • 操作4:修改缩放数值
      • 3.3.2 图层变换属性的快捷显示
      • 操作:显示变换属性的快捷键操作
      • 3.4 图层元素的精确摆放
      • 操作1:对齐到合成
      • 操作2:对齐到选区
      • 操作3:分布图层
      • 实例:制作图标排列动画
      • 动手练习:制作手机图标动画
      • 第4章 关键帧基础——动画控制是细活
      • 4.1 关键帧的基本操作
      • 4.1.1 关键帧的原理
      • 4.1.2 关键帧的开启、添加和关闭
      • 操作1:开启关键帧
      • 操作2:添加或关闭关键帧
      • 4.1.3 关键帧的选择、编辑和查看
      • 操作1:关键帧的选择操作
      • 操作2:查看或编辑关键帧的值
      • 操作3:切换图层模式与图表编辑器模式
      • 操作4:使用关键帧索引
      • 操作5:仅显示出关键帧的属性
      • 4.1.4 复制和粘贴关键帧
      • 操作:复制关键帧
      • 4.1.5 按时间移动关键帧
      • 操作1:将关键帧移到另一时间
      • 操作2:扩展或收缩一组关键帧
      • 4.1.6 一次更改多个关键帧的数值
      • 操作:批量修改关键帧的数值
      • 4.2 路径动画与关键帧
      • 4.2.1 运动路径
      • 操作:调整关键帧路径
      • 4.2.2 运动路径的相关操作
      • 操作:关键帧路径的预设和显示
      • 4.2.3 运动路径自动定向
      • 操作1:弯曲运动路径的自动定向
      • 操作2:设置曲线运动路径的初始方向
      • 4.3 绘制路径并转换为关键帧
      • 4.3.1 绘制路径和调整路径
      • 操作1:绘制简单的运动路径
      • 操作2:绘制复杂的直线路径
      • 4.3.2 转换路径为位置关键帧
      • 操作1:转换路径为位置关键帧
      • 操作2:绘制复杂曲线路径并转换成位置关键帧
      • 实例:制作晨光关键帧动画
      • 动手练习:制作黑夜关键帧动画
      • 第5章 关键帧插值——让动画流畅自然
      • 5.1 关键帧图表编辑器
      • 5.1.1 图表编辑器中的显示操作
      • 操作:显示图表编辑器
      • 5.1.2 图表编辑器中的基本操作
      • 操作1:在图表编辑器中选择和调整数值
      • 操作2:在图表编辑器中使用对齐和变换框
      • 操作3:在图表编辑器中缩放和查看
      • 操作4:图表编辑器中的曲线手柄操作
      • 操作5:在图表编辑器中分开调整和使用
      • 单独尺寸
      • 5.2 关键帧插值
      • 5.2.1 理解空间插值
      • 操作1:弯曲的空间插值
      • 操作2:空间插值运动路径的类型
      • 操作3:将3 个关键帧插值设为圆形路径
      • 5.2.2 理解时间插值
      • 操作1:变速的时间插值
      • 操作2:对比变速小车
      • 5.2.3 时间插值的说明和关键帧形状
      • 操作:时间插值关键帧形状
      • 5.2.4 漂浮关键帧
      • 操作:使用漂浮关键帧创建平滑运动
      • 5.2.5 关键帧速度
      • 操作1:快速设置关键帧缓动
      • 操作2:制作放大星球的动画
      • 操作3:制作弹跳的球动画
      • 5.3 关键帧菜单与辅助
      • 5.3.1 关键帧菜单
      • 5.3.2 关键帧辅助
      • 操作:反向关键帧
      • 实例:制作TV 关键帧动画
      • 动手练习:制作星球村动画
      • 第6章 图层操作——对每一层了如指掌
      • 6.1 父子级图层与嵌套合成
      • 6.1.1 显示父级栏和设置父子关系
      • 操作:制作父子级别唱片机动画
      • 6.1.2 预合成和嵌套
      • 操作:使用嵌套制作唱片机动画
      • 6.1.3 父子级别与嵌套的不同功能
      • 操作1:制作旋转的景点缩放动画
      • 操作2:制作飞鸟成群动画
      • 6.2 在合成中建立功能图层
      • 6.2.1 建立不同类型的图层
      • 操作:建立不同类型图层
      • 6.2.2 纯色层的操作
      • 操作1:制作移动过渡条
      • 操作2:应用移动过渡条
      • 6.3 图层的控制开关
      • 6.3.1 时间轴图层开关
      • 操作:栏列调整
      • 6.3.2 时间轴合成开关
      • 操作:合成对应开关
      • 6.4 图层时间与速度
      • 6.4.1 时间栏列
      • 操作:调整入、出点和持续时间
      • 6.4.2 时间伸缩、反向和冻结
      • 操作1:时间伸缩、反向和冻结设置
      • 操作2:使用反方向制作往返视频动画
      • 6.4.3 时间重映射
      • 操作:使用时间重映射制作动画
      • 实例:制作手机屏幕动画
      • 动手练习:制作手机组合动画
      • 第7章 效果——精彩无限
      • 7.1 效果的基本操作
      • 7.1.1 效果的添加
      • 操作: 添加光晕效果
      • 7.1.2 效果的查看和查找
      • 操作:查看和查找效果
      • 7.1.3 效果的重复添加和重命名
      • 操作:复制效果并重命名
      • 7.2 效果的设置
      • 7.2.1 颜色深度
      • 操作:对比8 位和16 位颜色的宽容度
      • 7.2.2 效果渲染顺序
      • 操作:调整效果的添加顺序
      • 7.2.3 调整图层
      • 操作1:将效果应用于调整图层
      • 操作2:转换和使用多个调整图层
      • 7.2.4 复合效果和控件图层
      • 操作:多图层复合效果设置
      • 7.3 动画效果预设
      • 7.3.1 保存动画效果预设
      • 操作:保存效果预设
      • 7.3.2 查看和使用动画效果预设
      • 操作:应用效果预设
      • 7.4 音频操作和效果
      • 操作1:对音频进行操作和添加效果
      • 操作2:音频图形效果
      • 实例:制作光效标题
      • 动手练习:制作下雪效果
      • 第8章 遮罩、蒙版和形状——设计的好帮手
      • 8.1 轨道遮罩
      • 8.1.1 Alpha 遮罩
      • 操作1:使用Alpha 遮罩
      • 操作2:嵌套层Alpha 遮罩
      • 8.1.2 亮度遮罩
      • 操作1:使用亮度遮罩
      • 操作2:效果动画亮度遮罩
      • 8.2 蒙版与路径
      • 8.2.1 添加规则图形蒙版
      • 操作1:添加矩形蒙版
      • 操作2:添加和设置圆形蒙版
      • 操作3:设置复合蒙版模式
      • 8.2.2 自由绘制蒙版
      • 操作1:绘制蒙版替换背景
      • 操作2:蒙版合成创想一
      • 操作3:蒙版合成创想二
      • 8.2.3 蒙版的常用操作
      • 操作:复制蒙版和设置颜色
      • 8.2.4 自动追踪建立蒙版
      • 操作1:自动Alpha 蒙版
      • 操作2:自动追踪亮度蒙版
      • 8.2.5 建立和设置路径
      • 操作:路径描边和转换位置
      • 8.3 形状图层
      • 8.3.1 用工具建立形状图层
      • 操作:用工具建立五角星
      • 8.3.2 用菜单建立形状图层
      • 操作:用菜单建立形状
      • 8.3.3 形状合并路径
      • 操作:合并路径设置
      • 8.3.4 形状组
      • 操作:对形状进行分组
      • 8.3.5 为形状图层添加效果属性
      • 操作:添加效果属性
      • 实例:制作滴墨画面效果
      • 动手练习:制作图表动画
      • 第9章 文字和动态图形模板——形式多变的创意表达
      • 9.1 文字输入和设置面板
      • 9.1.1 横排和直排文字工具
      • 操作1:创建点文字
      • 操作2:创建段落文字
      • 操作3:创建直排文字
      • 9.1.2 字符面板
      • 操作:字符面板中的操作
      • 9.1.3 段落面板
      • 操作1:创建横排段落
      • 操作2:创建直排段落
      • 9.2 从文本创建形状和蒙版
      • 操作1:从文本创建形状动画
      • 操作2:从文本创建蒙版动画
      • 9.3 文本动画属性
      • 9.3.1 源文本动画
      • 操作:制作数字变化倒计时动画
      • 9.3.2 动画制作工具简单动画
      • 操作1:制作逐字飞入动画
      • 操作2:制作逐字飞入细节动画
      • 操作3:制作多变换属性动画
      • 操作4:使用多个动画制作工具制作动画
      • 操作5:设置文本的颜色
      • 操作6:制作字符变化类动画
      • 操作7:改变文本字符的内容
      • 操作8:使用摆动设置动画效果
      • 9.3.3 文本路径动画
      • 操作:制作文字路径动画
      • 9.4 文本动画预设
      • 操作:浏览和应用文本动画预设
      • 9.5 响应式设计
      • 操作1:响应式设计的时间对比
      • 操作2:字幕条应用响应式设计
      • 9.6 制作动态图形模板
      • 操作1:在After Effects 中设置基本图形
      • 操作2:在Premiere Pro 中使用动态图形
      • 操作3:在After Effects 中修改动态图形
      • 操作4:在Premiere Pro 中更新动态图形
      • 实例:制作短信息对话动画
      • 动手练习:制作多样式出字动画
      • 第 10章 基本三维合成——在立体空间中合成
      • 10.1 二维合成与三维合成的异同点
      • 操作1:在软件中区别二维图层与三维图层
      • 操作2:制作Logo 飞出动画
      • 操作3:制作围绕星球旋转动画
      • 10.2 建立三维物体和场景
      • 操作1:搭建立方盒子方法一
      • 操作2:搭建立方盒子方法二
      • 操作3:制作打开立方盒子动画
      • 10.3 三维合成嵌套折叠变换
      • 操作:嵌套折叠立体图形
      • 10.4 三维视图操作
      • 操作:切换视图和多视图操作
      • 10.5 不同的坐标轴模式
      • 操作:3 种坐标轴视图
      • 实例:制作魔方大屏幕动画
      • 动手练习:制作魔方展示动画
      • 第 11章 摄像机— —空间中的镜头模拟
      • 11.1 摄像机类型与工具
      • 操作1:移动单节点与双节点摄像机
      • 操作2:用摄像机工具调整单节点摄像机
      • 操作3:用摄像机工具调整双节点摄像机
      • 11.2 摄像机移动
      • 操作1:制作摄像机游历动画
      • 操作2:制作摄像机环绕动画
      • 操作3:使摄像机自身移动
      • 操作4:使用父级层移动摄像机
      • 11.3 摄像机变焦与聚焦
      • 操作1:制作景深聚焦动画
      • 操作2:制作变焦动画
      • 实例:制作舞台大屏幕效果
      • 动手练习:制作众多小画面效果
      • 第 12章 灯光— —空间中的光影效果
      • 12.1 灯光类型及投影
      • 操作1:在软件中区别灯光类型
      • 操作2:制作灯光投影
      • 12.2 场景灯光的布局
      • 操作1:聚光加环境光布光
      • 操作2:主光加辅光布光
      • 操作3:多灯光布光
      • 12.3 灯光的颜色与图层的材质
      • 操作1:设置灯光颜色
      • 操作2:设置图层材质
      • 12.4 灯光投影的嵌套设置
      • 操作:制作嵌套合成的灯光投影
      • 实例:制作画册翻页动画
      • 动手练习:制作光影文字效果
      • 第 13章 立体文字和图形——实现三维效果
      • 13.1 逐字3D 化文字动画
      • 操作1:逐字3D 化文本
      • 操作2:逐字3D 化标题动画
      • 操作3:制作空间圆形路径上的3D 文本
      • 操作4:制作空间转折
      • 曲线路径上的3D 文本
      • 操作5:应用三维文字预设
      • 13.2 CINEMA 4D 合成渲染器
      • 操作1:使用经典3D 渲染器
      • 操作2:使用CINEMA 4D 合成渲染器
      • 13.3 立体文字表面颜色的设置
      • 操作1:设置立体文字各面颜色
      • 操作2:制作伸缩立体文字
      • 13.4 立体图形
      • 操作1:建立立体形状并设置颜色
      • 操作2:利用形状和文字制作立体游戏币
      • 实例:制作立体文字砸落动画
      • 动手练习:制作立体标题动画
      • 第 14章 跟踪和内容识别填充——运动视频的完美合成
      • 14.1 变形稳定器
      • 14.1.1 缓动稳定
      • 操作:缓动稳定视频素材
      • 14.1.2 固定位置
      • 操作:固定视频画面的位置
      • 14.2 跟踪摄像机
      • 14.2.1 跟踪与创建摄像机
      • 操作:对视频素材跟踪与创建摄像机
      • 14.2.2 创建跟踪图层
      • 操作:创建跟踪文本层
      • 14.2.3 详细跟踪解决方法
      • 操作1:对视频素材的详细跟踪解决方法
      • 操作2:跟踪替换画面
      • 14.3 稳定运动的流程操作
      • 14.3.1 位置稳定
      • 操作:对视频素材进行位置稳定
      • 14.3.2 综合稳定
      • 操作:对视频素材进行综合稳定
      • 14.4 跟踪运动的流程操作
      • 14.4.1 变换跟踪
      • 操作:对视频素材进行变换跟踪
      • 14.4.2 透视边角定位跟踪
      • 操作:对视频素材进行透视边角定位跟踪
      • 14.5 蒙版跟踪与脸部跟踪
      • 14.5.1 蒙版跟踪
      • 操作:对视频素材进行蒙版跟踪
      • 14.5.2 脸部跟踪
      • 操作:对视频素材进行脸部跟踪
      • 14.6 内容识别填充
      • 14.6.1 蒙版跟踪与识别填充
      • 操作1:对视频素材进行对象填充
      • 操作2:对视频素材进行表面填充
      • 操作3:对视频素材进行边缘混合填充
      • 14.6.2 使用Photoshop 创建参考帧
      • 操作:对视频素材进行参考帧填充
      • 实例:制作捧出Logo 动画
      • 动手练习:制作快速手写动画
      • 第 15章 调色——视觉效果的重要指标
      • 15.1 颜色查看与色阶调色
      • 15.1.1 颜色工作区与示波器
      • 操作:查看颜色工作区与示波器
      • 15.1.2 使用色阶直方图查看调色
      • 操作1:颜色深度与色阶对比
      • 操作2:几种图像色阶直方图的对比
      • 操作3:使用色阶校正对比和偏色
      • 操作4:使用色阶调整色彩通道效果
      • 15.2 分类调色效果
      • 15.2.1 自动调色效果
      • 操作:在软件中查看自动调色效果
      • 15.2.2 基本的明暗对比
      • 操作:对视频素材进行基本的明暗对比
      • 15.2.3 替换颜色
      • 操作:对视频素材进行替换颜色
      • 15.2.4 颜色饱和度
      • 操作:调整视频素材的颜色饱和度
      • 15.2.5 色相调整
      • 操作:对视频素材进行色相调整
      • 15.2.6 为画面重新上色
      • 操作:为视频素材的画面重新上色
      • 15.3 Lumetri 全面调色
      • 15.3.1 基本校正
      • 操作:使用Lumetri 基本校正
      • 15.3.2 创意
      • 操作:使用Lumetri 创意
      • 15.3.3 曲线
      • 操作:使用Lumetri 曲线
      • 15.3.4 色轮
      • 操作:使用Lumetri 色轮
      • 15.3.5 HSL 次要
      • 操作:使用Lumetri HSL 次要
      • 15.3.6 HSL 晕影
      • 操作:使用Lumetri 晕影
      • 实例:制作树林调色效果
      • 动手练习:制作四季调色效果
      • 第 16章 抠像——合成大片的秘诀
      • 16.1 简单颜色抠像
      • 操作:对视频素材进行简单颜色抠像
      • 16.2 常用的抠像操作
      • 16.2.1 改善边缘
      • 操作:对视频素材进行抠像和改善边缘
      • 16.2.2 使用蒙版和校色
      • 操作:使用蒙版抠像和校色
      • 16.3 特殊类型抠像
      • 16.3.1 擦除细线
      • 操作:擦除画面中的细线
      • 16.3.2 高对比提取
      • 操作:对画面进行高对比提取
      • 16.3.3 毛发边缘抠像
      • 操作:对画面进行毛发边缘抠像
      • 16.4 Keylight 抠像
      • 16.4.1 基本抠像操作
      • 操作:Keylight 基本抠像操作
      • 16.4.2 使用蒙版
      • 操作:Keylight 使用蒙版
      • 16.4.3 使用颜色校正
      • 操作:Keylight 使用颜色校正
      • 16.5 Roto 抠像
      • 16.5.1 Roto 笔刷工具抠像
      • 操作:使用Roto 笔刷工具抠像
      • 16.5.2 Roto 笔刷工具调整抠像边缘
      • 操作:使用Roto 笔刷工具调整抠像边缘
      • 实例:制作平板滑屏动画
      • 动手练习:制作手机快速滑屏动画
      • 第 17章 人偶工具——角色动画的制作利器
      • 17.1 人偶位置控点工具
      • 17.1.1 添加操控点并调整姿态
      • 操作:为图像添加操控点并调整姿态
      • 17.1.2 网格属性控制效果
      • 操作:设置网格属性以控制效果
      • 17.1.3 使用操控点制作元素动画
      • 操作:对图像使用操控点制作元素动画
      • 17.2 人偶固化控点工具
      • 操作:对图像使用人偶固化控点工具
      • 17.3 人偶弯曲控点工具
      • 操作:对图像使用人偶弯曲控点工具
      • 17.4 人偶高级控点工具
      • 操作:对图像使用人偶高级控点工具
      • 17.5 人偶重叠控点工具
      • 操作:对图像使用人偶重叠控点工具
      • 17.6 实时录制人偶动画
      • 操作1:录制动画
      • 操作2:进行关键帧数量和时间的调整
      • 操作3:使用嵌套进行时间调整
      • 实例:制作鱼儿游动动画
      • 动手练习:制作奔跑动画
      • 第 18章 表达式——从看得懂到用起来
      • 18.1 表达式基本操作
      • 操作1:建立关联表达式
      • 操作2:输入表达式数值
      • 操作3:注释表达式
      • 操作4:进行表达式数值运算
      • 操作5:输入多行表达式
      • 操作6:进行表达式数组运算
      • 操作7:表达式指向同名图层的修改
      • 操作8:属性链接与表达式的复制
      • 18.2 常用表达式函数
      • 操作1:使用向下取整函数
      • 操作2:设置时间延迟
      • 操作3:取随机数
      • 操作4:使用摆动函数制作光斑效果
      • 操作5:使用插值函数
      • 操作6:添加圆周率表达式
      • 制作车轮移动动画
      • 18.3 表达式控制
      • 操作1:使用表达式控制效果
      • 操作2:使用表达式跨合成控制
      • 18.4 循环和重叠表达式
      • 操作1:设置万能乒乓表达式
      • 操作2:设置万能循环表达式
      • 实例:制作表达式图表动画
      • 动手练习:制作表达式文字动画
      • 第 19章 备份、输出与扩展——保障制作成果
      • 19.1 整理工程和收集打包备份
      • 操作1:整合重复和清除未用
      • 操作2:收集打包
      • 19.2 输出成品文件的各项设置
      • 操作1:输出文件
      • 操作2:预设输出模板
      • 操作3:设置批量输出
      • 操作4:将一个合成同时输出多种格式
      • 19.3 输出透明图像和视频
      • 操作1:输出透明图像
      • 操作2:输出透明视频
      • 操作3:输出附加遮罩的视频
      • 19.4 使用Adobe Media Encoder进行后台输出
      • 操作1:添加合成到Adobe Media Encoder 中
      • 操作2:在Adobe Media Encoder中控制输出文件的大小
      • 操作3:在Adobe Media Encoder中设置预设
      • 19.5 使用脚本
      • 操作1:使用内置脚本
      • 操作2:安装脚本到脚本菜单下
      • 操作3:安装脚本到窗口菜单下
      • 19.6 使用插件
      • 操作1:区分内置插件和外挂插件
      • 操作2:安装插件的两个位置
      • 操作3:管理插件的安装位置和加载
      • 实例:制作Type Monkey脚本解说文字动画
      • 动手练习:制作Layer Monkey脚本图片展示动画
      • 第 20章 AfterEffects 模板——使用有要点
      • 20.1 中英文版本及表达式出错的解决方法
      • 操作1:在中文版中修复表达式
      • 操作2:修改表达式中常见的属性名称
      • 20.2 缺失素材、效果与字体
      • 操作1:解决缺失素材的问题
      • 操作2:解决缺失效果的问题
      • 操作3:解决缺失字体和字体出错的问题
      • 20.3 模板分析
      • 操作:模板分析操作方法
      • 20.4 改善响应速度
      • 操作:改善显示响应速度的操作
      • 20.5 性能、效率与常见问题
      • 20.5.1 通过硬件驱动和软件设置提高性能
      • 20.5.2 通过简化项目提高性能
      • 20.5.3 通过修改屏幕输出提高性能
      • 20.5.4 在使用效果时提高性能
      • 实例:制作打包上传的标题动画模板
      • 动手练习:制作滚动闪现的标题动画模板

      笔记精选

      Python应用03 使用PyQT制作视频播放器实例

      最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。这一篇用PyQT实现一个视频播放器,并借此来说明PyQT的基本用法。

       视频播放器

      先把已经完成的代码放出来。代码基于Python 3.5:

      import time
      import sys
      
      from PyQt4 import QtGui, QtCore
      from PyQt4.phonon import Phonon
      
      
      class PollTimeThread(QtCore.QThread):
        """
        This thread works as a timer.
        """
        update = QtCore.pyqtSignal()
      
        def __init__(self, parent):
          super(PollTimeThread, self).__init__(parent)
      
        def run(self):
          while True:
            time.sleep(1)
            if self.isRunning():
              # emit signal
              self.update.emit()
            else:
              return
      
      class Window(QtGui.QWidget):
        def __init__(self):
          QtGui.QWidget.__init__(self)
      
          # media
          self.media = Phonon.MediaObject(self)
          self.media.stateChanged.connect(self.handleStateChanged)
          self.video = Phonon.VideoWidget(self)
          self.video.setMinimumSize(200, 200)
          self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self)
          Phonon.createPath(self.media, self.audio)
          Phonon.createPath(self.media, self.video)
      
          # control button
          self.button = QtGui.QPushButton('选择文件', self)
          self.button.clicked.connect(self.handleButton)
      
          # for display of time lapse
          self.info = QtGui.QLabel(self)
      
          # layout
          layout = QtGui.QGridLayout(self)
          layout.addWidget(self.video, 1, 1, 3, 3)
          layout.addWidget(self.info, 4, 1, 1, 3)
          layout.addWidget(self.button, 5, 1, 1, 3)
      
          # signal-slot, for time lapse
          self.thread = PollTimeThread(self)
          self.thread.update.connect(self.update)
      
        def update(self):
          # slot
          lapse = self.media.currentTime()/1000.0
          self.info.setText("%4.2f 秒" % lapse)
      
        def startPlay(self):
          if self.path:
            self.media.setCurrentSource(Phonon.MediaSource(self.path))
      
            # use a thread as a timer
            self.thread = PollTimeThread(self)
            self.thread.update.connect(self.update)
            self.thread.start()
            self.media.play()
      
        def handleButton(self):
          if self.media.state() == Phonon.PlayingState:
            self.media.stop()
            self.thread.terminate()
          else:
            self.path = QtGui.QFileDialog.getOpenFileName(self, self.button.text())
            self.startPlay()
      
        def handleStateChanged(self, newstate, oldstate):
          if newstate == Phonon.PlayingState:
            self.button.setText('停止')
          elif (newstate != Phonon.LoadingState and
             newstate != Phonon.BufferingState):
            self.button.setText('选择文件')
            if newstate == Phonon.ErrorState:
              source = self.media.currentSource().fileName()
              print ('错误:不能播放:', source.toLocal8Bit().data())
              print (' %s' % self.media.errorString().toLocal8Bit().data())
      
      
      if __name__ == '__main__':
        app = QtGui.QApplication(sys.argv)
        app.setApplicationName('视频播放')
        window = Window()
        window.show()
        sys.exit(app.exec_())
      
      

      代码实现了一个有GUI窗口的应用,用来播放视频文件。视频播放利用了PyQT中的Phonon模块。此外,还有一个进程每隔一秒发出一个信号。窗口在接收到信号后,更新视频播放的时间。这个应用的效果如下:
      测试运行环境为Mac OSX El Capitan。

       Python应用03 使用PyQT制作视频播放器实例

      视图部分

      写完这个代码之后,我发现这个代码虽然简单,但涉及了几个重要机制,可以用PyQT的练习题。下面对代码进行一些简要的说明,首先是主程序部分:

      app = QtGui.QApplication(sys.argv)
      ...
      window = Window()
      window.show()
      sys.exit(app.exec_())

      在PyQT程序中,QApplication是最上层的对象,指代整个GUI应用。我们在程序的一开始创建了一个应用对象,在程序最后调用exec_()来运行这个应用。sys.exit()用来要求应用的主循环结束后干净地退出程序。PyQT程序的开始和结尾都是类似的固定套路。关键就在于其间定义的QWidget对象。

      我们自定义的Window类继承自QWidget。其实QWidget是所有用户界面对象的基类,并不单单指代一个窗口。表格、输入框、按钮都继承自QWidget。在一个Window对象中,我们还组合有QPushButton和QLabel这样的对象,分别代表一个按钮和一个文本框。它们通过QGridLayout的方式,布局在Window的界面上,即下面一部分代码:

      # layout
      layout = QtGui.QGridLayout(self)
      ...
      layout.addWidget(self.info, 4, 1, 1, 3)
      layout.addWidget(self.button, 5, 1, 1, 3)

      QGridLayout把界面分成网格,并把某个视图对象附着在特定的网格位置。比如说,addWidget()(self.info, 4, 1, 1, 3)表示把一个文本框对象放在第4排、第1列的位置。该文本框纵向将占据1排,横向占据3列。这样,上下层视图的位置关系就通过布局确定了下来。除了网格式的布局,PyQT还支持其他形式的布局,如横向堆砌、纵向堆砌等等,可以进一步了解。

       除了QWidget,PyQT还提供了常用的对话框,如:

      self.path = QtGui.QFileDialog.getOpenFileName(self, self.button.text())

      这里的QFileDialog对话框用于选择文件。对话框将访问所选文件的路径。除了文件选择,对话框还有确认对话框、文件输入对话框、色彩对话框。这些对话框实现了不少常用的GUI输入功能。通过利用这些对话框,可以减少程序员从头开发的工作量。

       多线程

      GUI界面的主线程通常留给应用做主循环。其他的很多工作要通过其他的线程来完成。PyQT多线程编程很简单,只需要重写QThread的run()方法就可以了:

      class PollTimeThread(QtCore.QThread):
        def __init__(self, parent):
          super(PollTimeThread, self).__init__(parent)
      
        def run(self):
          ...
      

      创建线程后,只需要调用start()方法,就可以运行:

      self.thread = PollTimeThread()
      ...
      self.thread.start()    # 启动线程
      ...
      self.thread.terminate()  # 终止线程

      信号与槽

      GUI经常要用到异步处理。比如说点击某个按钮,然后调用相应的回调函数。QT的“信号与槽”(signal-slot)机制就是为了解决异步处理问题。我们在线程中创建了信号,并通过emit()方法来发出信号:

      class PollTimeThread(QtCore.QThread):
        """
        This thread works as a timer.
        """
        update = QtCore.pyqtSignal()
      
        def __init__(self, parent):
          super(PollTimeThread, self).__init__(parent)
      
        def run(self):
          while True:
            time.sleep(1)
            if self.isRunning():
              # emit signal
              self.update.emit()
            else:
              return
      

      有了信号,我们就可以给该信号连接到一个“槽”,其实就是对应于该信号的回调函数:

      self.thread.update.connect(self.update)

      每当信号被发出时,“槽”就会被调用。在这个例子中,就是更新视频播放时间。QT中的“信号与槽”是普遍存在的机制。一些组建如按键,预设了“点击”这样的信号,可以直接对应到“槽”。如代码中的:

      self.button.clicked.connect(self.handleButton)

       此外,Phonon是一个很好用的多媒体模块,使用方法也很简单,可以参考代码本身,这里不再赘述。

      以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

      上一篇:《我是谁》参考文献

      下一篇:《AutoCAD 2020中文版建筑设计实战从入门到精通》素材

      查看更多
      视频制作 相关资源
      PHP7从入门到精通:教学版(含源码视频)
      PHP7从入门到精通:教学版(含源码视频) PDF 完整版

      《PHP 7从入门到精通》以零基础讲解为宗旨,以PHP 7为蓝本,用实例引导读者深入学习PHP编程的各项技术及实战技能,全面讲解PHP与Web、XML、JavaScript、Ajax、MySQL、Zend框架等技术的交互方法,帮助大家快速学习,欢迎下载。

      立即下载
      Visual C++音视频编解码技术及实践
      Visual C++音视频编解码技术及实践 PDF 完整版

      VisualC++音视频编解码技术及实践 书名=VisualC++音视频编解码技术及实践 作者=求是科技编著 出版日期=2006年06月第1版

      立即下载
      Python编程从入门到精通(资料源码视频)
      Python编程从入门到精通(资料源码视频) PDF 原书完整版

      一本好书包括3大区域的內容:基本、案例、综合性实战演练技术性解读-案例应急演练-技术性答疑解惑-课后答案围绕全书,全方位把握Python开发设计用纸版书籍视頻和源代码互联网答疑解惑的

      立即下载
      HTML5从入门到精通(PPT视频)
      HTML5从入门到精通(PPT视频) PDF 第2版 立即下载
      零基础入门学习Python(含视频、源码)
      零基础入门学习Python(含视频、源码) PDF 扫描第2版

      本书是一本Python 3.7编程轻松入门教程,前半部分首先讲解基础的Python 3语法知识,后半部分则围绕着Python 3在爬虫、界面开发和游戏开发上的应用,循序渐进,欢迎下载

      立即下载
      读者心得
      24小时30分钟前回答

      用python制作个视频下载器

      前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ 当我打开文件夹以回顾往事之余,惊现许多看似杂乱的无聊代码。我拍腿正坐,一个想法油然而生:“生活已然很无聊,不如再无聊些叭”。 于是,我决定开一个专题,便称之为kimol君的无聊小发明。 妙…啊~~~ 众所周知,视频是一个学习新姿势知识的良好媒介。那么,如何利用爬虫更加方便快捷地下载视频呢?本文将从数据包分析到代码实现来进行一个相对完整的讲解。 一、爬虫分析 本次选取的目标视频网站为某度旗下的好看视频: https://haokan.baidu.com 1.视频搜索 进入主页后,我们可以看到一个搜索框历历在目: 当我们点击搜索按钮之……

      47小时33分钟前回答

      python gui开发——制作抖音无水印视频下载工具(附源码)

      hello,大家好啊,失踪人口回归了 [捂脸]!本次使用tkinter撰写一篇 抖音无水印视频下载,目的很纯粹,就是为了设置 微信状态视频。本篇博文中,我会写下我的代码撰写思路以及想写设计流程,代码放在了第四节,工具打包好放在了 蓝奏云,慢慢看,后面有链接。 一.准备工作 本次要用到以下依赖库:re json os random tkinter threading requests pillow 其中后两个需要安装后使用 二.预览 0.复制抖音分享短链接 1.启动 2.运行 3.结果 (小姐姐挺漂亮,视频确实无水印) 三.设计流程 设计流程分为总体设计和详细设计,这里我会使用viso画出几个流程图,用以展示我的思路,详细设计部分列举了两个函数实现的具……

      码农之家

      田思洁 提供上传

      资源
      33
      粉丝
      24
      喜欢
      172
      评论
      4

      Copyright 2018-2021 www.xz577.com 码农之家

      版权投诉 / 书籍推广:520161757@qq.com