Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. import argparse
  3. import cv2
  4. import emojipic
  5. import sys
  6. import time
  7. from PIL import *
  8.  
  9.  
  10. def clearscreen(n):
  11. print('\033[1A\033[K'*n, end='')
  12.  
  13.  
  14. def main(filename, resize):
  15. vc = cv2.VideoCapture(filename)
  16. tpf = 1.0/vc.get(cv2.CAP_PROP_FPS)
  17.  
  18. ei = emojipic.EmojiImage()
  19.  
  20. if vc.isOpened():
  21. rval = True
  22. while rval:
  23. start = time.time()
  24. rval, frame = vc.read()
  25. if rval:
  26. ei.fromarray(frame)
  27. res, height = ei.make(resize)
  28. print(res, end='')
  29. clearscreen(height)
  30. # determine if we need to sleep. Not really that accurate, but i'm
  31. # lazy and this is good enough.
  32. diff = time.time()-start
  33. if diff < tpf:
  34. time.sleep(tpf-diff)
  35.  
  36. vc.release()
  37.  
  38.  
  39. if __name__ == "__main__":
  40. parser = argparse.ArgumentParser(
  41. description='Displays Emoji Animations in your terminal')
  42. parser.add_argument('filename', type=str, help='MP4 to display')
  43. parser.add_argument('--resize', type=int, default=32,
  44. help='How many characters to scale this to')
  45. args = parser.parse_args()
  46. main(args.filename, args.resize)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement