用mplayer从视频中按周期提取帧

使用方法: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

 1 @echo off
 2 
 3 :: extract frames
 4 rem echo filename: %1
 5 rem echo time: %2 s
 6 rem echo step: %3 s
 7 rem echo folder: %4 
 8 
 9 if "%4" equ "" (
10   echo Usage: extract file time step folder
11   echo   file: mplayer can play
12   echo   time unit: s
13   echo   step unit: s
14   echo   folder: snap saved folder 
15   goto :end
16 )
17 
18 if not exist %4 mkdir %4
19 
20 set /A length = %2 / %3
21 echo length: %length%
22 
23 setlocal enabledelayedexpansion  
24 
25 set n=0
26 for /L %%i in (0, %3, %2) do (
27   :: progress info
28   set /A n += 1
29   set /A n = !n! %% 10
30   if !n! equ 0 (
31     set /A nth = %%i * 100 / %2 
32     echo !nth! %%
33   )
34 
35   :: key command
36   mplayer -ss %%i -noframedrop -nosound -vo png -frames 1 %1 > nul
37 
38   :: save files because mplayer extracts frame in same name
39   set /A name = %%i / %3
40   move 00000001.png %4\!name!.png  > nul
41 )
42 
43 :end

 

转载于:https://www.cnblogs.com/kangtian0/p/6847650.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值