使用方法:extract file time step folder

time 设置时间长度

step 设置周期

均以秒(s)为单位

贡献:1. 从视频文件中周期性提取图片;2. Windows下批处理程序的一些技术。

依赖:mplayer

todo: 目前周期最小为1s,可以扩展使频率大于1Hz.

更详细的内容可以参考:

http://blog.csdn.net/xuyaqun/article/details/6077917

http://blog.csdn.net/aa846555831/article/details/53400974

http://blog.csdn.net/yjfkpyu/article/details/3694990

 @echo off

 :: extract frames
rem echo filename: %1
rem echo time: %2 s
rem echo step: %3 s
rem echo folder: %4 if "%4" equ "" (
echo Usage: extract file time step folder
echo file: mplayer can play
echo time unit: s
echo step unit: s
echo folder: snap saved folder
goto :end
) if not exist %4 mkdir %4 set /A length = %2 / %3
echo length: %length% setlocal enabledelayedexpansion set n=0
for /L %%i in (0, %3, %2) do (
:: progress info
set /A n += 1
set /A n = !n! %% 10
if !n! equ 0 (
set /A nth = %%i * 100 / %2
echo !nth! %%
) :: key command
mplayer -ss %%i -noframedrop -nosound -vo png -frames 1 %1 > nul :: save files because mplayer extracts frame in same name
set /A name = %%i / %3
move 00000001.png %4\!name!.png > nul
) :end

用mplayer从视频中按周期提取帧的更多相关文章

  1. 利用OpenCV存储一段视频中的每一帧

    // vfc.cpp : 定义控制台应用程序的入口点.#include "stdafx.h"#include <opencv2/highgui/highgui.hpp> ...

  2. 工作记录--使用FFmpeg将一个视频文件中音频合成到另一个视频中

    由于工作需要,临时被老大吩咐去研究一个FFmpeg工具,通过linux命令行去将一个视频中的音频提取出来并合成到另一个视频中,最终的效果是要保证2个视频中的音频都在一个视频中播放. 但是本人对FFmp ...

  3. Dance GAN 迁移不同视频中人物动作的方法

    该研究提出一种迁移不同视频中人物动作的方法.给出两个视频,一个视频中是研究者想要合成动作的目标人物,另一个是被迁移动作的源人物,研究者通过一种基于像素的端到端流程在人物之间进行动作迁移(motion ...

  4. (转)[视频压制/转换技术] I帧 B帧 P帧 IDR帧 等帧用途详细说明

    转:http://www.u2game.net/bbs/thread-46116-1-1.html 在视频压制.转换中,经常会看到:I帧 B帧 P帧 IDR帧 等名词,这里就是通用的解释一下这些帧的用 ...

  5. python 从视频中提取图片,并保存在硬盘上

    使用python的moviepy库来提取视频中的图片,按照视频每帧一个图片的方式来保存. extract images from video, than save them to disk from ...

  6. 利用Effmpeg 提取视频中的音频(mp3)

    在B站看到一个up发的病名为爱的钢琴曲,感觉很好听,然后当然是要加入歌单啊.然而不知道怎么转换成mp3,找来找去找到了EFFmpeg 这篇只是达到了我简单的需求,以后可能会有EFFmpeg更详细的使用 ...

  7. Python opencv提取视频中的图片

    作者:R语言和Python学堂链接:https://www.jianshu.com/p/e3c04d4fb5f3 这个函数就是本文要介绍的video2frames()函数,功能就是从视频中提取图片,名 ...

  8. 基音周期提取2-基于线性相关系数的Matlab实现

    基音周期提取2-基于线性相关系数的Matlab实现 基音周期提取结果 图1 基音提取结果 算法说明 线性相关系数 也称"皮尔逊积矩相关系数"(Pearson product-mom ...

  9. Pazera Free Audio Extractor 中文版 - 轻松将视频背景音乐/对话音频提取出来的免费软件

    这个软件是用来提取视频中的音频的,方便快捷.但是有一个问题,就是如果我提取的视频的名字中有不支持的字符(比如泰文)的时候,那么这个就提取不出来.所以如果名字中有不支持的字符的时候就要先改一个名字,然后 ...

随机推荐

  1. 基于WebGL架构的3D可视化平台—设备管理

    ---恢复内容开始--- 国内高层建筑不断兴建,它的特点是高度高.层数多.体量大.面积可达几万平方米到几十万平方米.这些建筑都是一个个庞然大物,高高的耸立在地面上,这是它的外观,而随之带来的内部的建筑 ...

  2. Redhat系统上开启Telnet服务

    https://blog.csdn.net/wolfofsiberian/article/details/51635952 1.操作系统 Redhat Step1:修改配置文件/etc/xinetd. ...

  3. Selenium+TestNG+Maven(2)

    转载自http://www.cnblogs.com/hustar0102/p/5885115.html selenium介绍和环境搭建 一.简单介绍 1.selenium:Selenium是一个用于W ...

  4. 与python的三天

    #导入海龟图 import turtleturtle.showturtle()turtle.width(20)liebiao = ['red','blue','yellow','green','pur ...

  5. PHP+Mysql 实现数据库增删改查(原生)

    Mysql数据库创建 创建一个新闻列表的数据库: 1. 查询数据库 1.1. 创建文件dbconfig.php,保存常量 <?php define("HOST"," ...

  6. 消息中间件和JMS介绍

    在一个公司创立初期,他可能只有几个应用,系统之间的关联也不是那么大,A系统调用B系统就直接调用B提供的API接口:后来这个公司做大了,他一步步发展有了几十个系统,这时候A系统要调用B系统的接口,但是B ...

  7. 自定义扩展实现相对于addRoutes的removeRoutes方法——vue-router

    使用vue-router的addRoutes方法做登录权限控制,当用户推出登录回到login页后,切换不同权限的账号,如果不reload页面,会导致router权限问题,故在vue-router代码中 ...

  8. strcat的用法

    原型: char *strcat(char *str1,char *str2); strcat的实现: char* MyStrcat(char *dst, const char*src) { if ( ...

  9. linux awk使用详解

    转载:https://www.cnblogs.com/xudong-bupt/p/3721210.html   awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的 ...

  10. swift两种获取相册资源PHAsset的路径的方法(绝对路径)

    方法中使用到的phasset就是我们取到的PHAsset对象 方法一: let options = PHVideoRequestOptions() options.version = PHVideoR ...