大二python+ffpmeg处理视频实验
很简单没啥好说的
1:
import subprocess
import os
VideoPath = "ffv.mp4"
#获取视频时长
cmd =' ffprobe -i %s -show_entries format=duration -of csv="p=0" -v quiet' % VideoPath
duration = os.popen(cmd,'r')
duration = duration.read()#获取视频的帧率
cmd=' ffprobe -count_frames -i %s -select_streams v:0 -show_entries stream=avg_frame_rate -of csv="p=0" -v quiet'% VideoPath
rate= os.popen(cmd,'r')
rate = rate.read()#获取视频帧数
cmd=' ffprobe -count_frames -i %s -select_streams v:0 -show_entries stream=nb_read_frames -of csv="p=0" -v quiet' % VideoPath
frames = os.popen(cmd,'r')
frames = frames.read()#获取视频帧的长度和宽度
cmd1=' ffprobe -count_frames -i %s -select_streams v:0 -show_entries stream=height -of csv="p=0" -v quiet' % VideoPath
cmd2=' ffprobe -count_frames -i %s -select_streams v:0 -show_entries stream=width -of csv="p=0" -v quiet' % VideoPath
height = os.popen(cmd1,'r')
width = os.popen(cmd2,'r')
height = height.read()
width= width.read()
print ('Number of Frames = ', frames[:-1])
print ('Frame Rate = ', rate[:-1], 'fps')
print ('Duration = ', duration[:-1], 'sec')
print ('Height= ',height[:-1], 'px')
print ('Width = ',width[:-1], 'px')
2:
import subprocess
import os
#每秒提取一帧视频帧
VideoPath = "ffv.mp4"
OutputPath = "KRYFRAMES"
cmd = "ffmpeg -i "+VideoPath+" -r 1 -f image2 "+OutputPath + "/%06d.jpg"
subprocess.call(cmd, shell=True)
#提取 I 帧
OutputPath = "I_FRAMES"
cmd = 'ffmpeg -i '+VideoPath+' -vf "select=eq(pict_type\,I)" -vsync vfr '+OutputPath + '/%06d.jpg'
subprocess.call(cmd, shell=True)
#提取 B 帧
OutputPath = "B_FRAMES"
cmd = 'ffmpeg -i '+VideoPath+' -vf "select=eq(pict_type\,B)" -vsync vfr '+OutputPath +'/%06d.jpg'
subprocess.call(cmd, shell=True)
#提取 P 帧
OutputPath ="P_FRAMES"
cmd = 'ffmpeg -i '+VideoPath+' -vf "select=eq(pict_type\,P)" -vsync vfr '+OutputPath +'/%06d.jpg'
subprocess.call(cmd, shell=True)
3:
import subprocess
import os
VideoPath = "ffv.mp4"
#OutputPath = "F://大二下//数媒基础//191002720//"
#boxblur 滤镜,模糊处理
cmd = "ffmpeg -i "+VideoPath+" -vf boxblur=4:1 v1.mp4"
subprocess.call(cmd, shell=True)
#添加红色偏色的阴影
cmd = "ffmpeg -i "+VideoPath+" -vf colorbalance=rs=0.5 red.mp4"
subprocess.call(cmd, shell=True)
#混合滤镜,给视频添加 logo
cmd = "ffmpeg -i "+VideoPath+" -i mark.jpg -filter_complex overlay v3.mp4"
subprocess.call(cmd, shell=True)
运行结果部分截图:
处理后变模糊的视频v1:
要为视频添加红色的滤镜,视频在处理后不知为何无法打开,但在Pr中的播放是正常的
我要添加的标志:
添加后的视频v3:
大二python+ffpmeg处理视频实验相关推荐
- 大二文本分词过滤分类实验总结
这次作业的内容是给定一个体育分类测试文档和体育分类训练文档,以体育分类训练文档为训练集,体育分类测试文档为测试集,选择一种特征选择算法对训练集样本进行特征选择:选择一种文本分类算法对训练集样本进行文本 ...
- xAd:南京大学大二学生开发的视频内广告动态植入技术
这个不就是水印吗?(好像) 电视广告几乎从电视诞生的那天就存在了,我们对此并不陌生,在线视频网站如优酷.土豆等也采用了片头广告的办法--我们在这些网站上面频繁看到的15秒/30秒广告就是它们获得营收的 ...
- HEU大二数电组合逻辑电路设计实验
Contents 1 实验目的 2 实验仪器 3 子任务 3.1 四人表决器 实验原理 实验步骤 具体实现 问题解决 3.2 多用户呼叫器 实验原理 实验步骤 具体实现 问题解决 3.3 数值比较器 ...
- 利用Python实现短视频完美伪原创,制作独一无二的视频
1. 场景 前段时间有人私信我,说自己辛辛苦苦剪辑的短视频,上传到某平台后,由于播放量太大,收到 降权 的通知,直接导致这个账号废掉了! 其实,各大视频平台都有自己的一套鉴别算法,针对视频的 二次创作 ...
- 《Python语言程序设计》实验二
<Python语言程序设计>实验二 一.实验项目:Python语言序列数据结构2 1.字典运算及应用 2.集合运算及应用 3.可迭代对象应用 4.理解并运用内置函数enumerate(), ...
- 软件工程专业大二操作系统实验报告
目录 实验一 Linux 安装 一.实验目的 二.预习报告 1. Linux背景 1.1 Red Hat 1.2 Fedora Linux 1.3 Ubuntu 2. Linux安装 2.1 安装步骤 ...
- python实习做什么工作-大一/大二学生Python实习的困惑?
题主是一名非名校的CS本科学生,现在遇到了一些困惑,想请教一下热心的segmentfault网友.因为不是985/211名校,现在题主所在的这所学校我感觉学风非常不好,第一是整体水平太低,一学期结束了 ...
- python语言基础实验_实验二Python语言基础函数包练习.doc
实验二Python语言基础函数包练习 实验 Python语言基础函数包练习:1208 学号: 实验目的 1.Python语言包,如math.NumPySciPy和Matplotlib等函数包的使用实验 ...
- java 动态分区 链表_大二作业——操作系统实验——C语言用双向链表,模拟实现动态分区式存储管理...
实验:动态分区式存储管理 实验内容: 编写程序模拟完成动态分区存储管理方式的内存分配和回收.实验具体包括:首先确定内存空闲分配表:然后采用最佳适应算法完成内存空间的分配和回收:最后编写主函数对所做工作 ...
最新文章
- 从理论到工具 - 带你全面了解自动化测试框架
- python简单项目-Python小项目:快速开发出一个简单的学生管理系统
- new一个xssfworkbook时出错_java用poi操作excel的时候,new XSSFWorkbook,总是报错?
- Spring OXM-XStream注解
- 如何根据事物代码查找相应BAPI
- 使用jmeter 设计流程发起测试
- C/C++混淆点-转义字符
- 安卓学习笔记03:安卓应用目录结构
- 对于未来chrome80 samesite问题的兼容解决方案
- Duboo学习-SPI
- 2021 年全国大学生数据统计与分析竞赛
- python怎么导入csv文件数据-机器学习Python实践——数据导入(CSV)
- 微信小程序 java通过 rawData 和 session_key 生成 signature 签名
- camera中文版软件 ip_摄像头监控软件|IP Camera Viewer V 3.0.4.0 官方版-完美软件下载...
- 某城郊 110KV 降压变电站监控系统设计简介
- win10系统计算机如何分盘,win10怎么进行分盘_win10电脑如何合理分盘
- mysql执行存储过程报错1366_花花蘑菇
- 案例分享:Qt工程机械真空激光焊接系统软件产品定制(西门子PLC,mysql数据库,用户权限控制,界面配置,参数定制,播放器,二维图标,rgv小车,期限控制,参数调试等)
- picoctf 2021 Scavenger Hunt
- nextdate函数白盒测试问题 软件测试_nextdate白盒测试用例