Guest User

50 frames to images

a guest
Jun 28th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.85 KB | None | 0 0
  1. #!/bin/bash
  2. TotalFrames=$(ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 $1)
  3.     echo "Total Frames: $TotalFrames"
  4.  
  5. duration=$(ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 $1)
  6.     echo "duration: $duration"
  7.  
  8. fps=$( bc <<< "$TotalFrames/$duration" )
  9.     echo "fps: $fps"
  10.  
  11. selectTotal1=$( bc <<< "$TotalFrames / 100" )
  12.     echo "Select Total 1: $selectTotal1"
  13.  
  14. selectTotal2=$( bc <<< "$selectTotal1*2" )
  15.     echo "Select Total 2: $selectTotal2"
  16.  
  17. seekCount=$( bc <<< "$TotalFrames/($selectTotal2+50)");
  18.     echo "seekCount: $seekCount"
  19.  
  20.  
  21. for i in $( seq 1 $(( $seekCount -1 )) ); do \
  22.     skipFrames=$( bc <<< "$i*($selectTotal2+50)" )
  23.     skipTime=$( bc <<< "$skipFrames/$fps" )
  24.     mkdir $i
  25.     ffmpeg -ss $skipTime -i $1 -vframes 50 "./$i/image%3d.png"
  26. done
Add Comment
Please, Sign In to add comment