angelaambroz / year-second

My first Python project: Automating the creation of a second-a-day video for 2015.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

year-second

11 March 2015. AMAZING Python is AMAZING. A project to learn this wonderful language. Documenting 2015 via a second-a-day video, except I'm automating the actual selection of each second (for, one hopes, delightful results). Computer art?!

  • Idea for next project: use imageio to make a photo quilt?
  • Idea for next project: looping GIF tapestry of day clips - clickable, pulls up details, special days highlighted in yellow border

To Do

  1. Set up git, install moviepy.
  2. Test run to see if MoviePy works.
  3. Check if any day is missing (os file meta-data?).
  4. Loop through, check that every day has a video.
    • Idea 1: Loop through files, pull their date modified. Create array. Check array against full array of days since Jan 1?
    • Idea 2: Pipe date-modified data out to a text or .csv file, merge, compare?
  5. If day is missing, write error message to file and use stand-in black box with "forgotten." text.
  6. If day is present, take 1-second random snip (use video meta-data to make it a def (function) of the video time-length).
  7. Add text for each day: JANUARY 1.
  8. Stitch all clips together. Ta-da! Use MoviePy's concatenation for this: final_clip = concatenate_videoclips([clip1,clip2,clip3]).
  9. Make several versions?
  10. Final editing polish with music, etc.
  11. Can I use HEX/RGB for font color? Yes, I think RGB is kosher.
  12. If multiple files for a day, randomly pick a 1-second clip from one of them. When I copy/rename them all, they overwrite with the latest one. Not random? Am I OK with this?
  13. How to preserve the raw video files?!
  14. Should I rename every video by its current (fragile!) data-modified? This would also standardize the file names, at least...
  15. Redo date arrays using datetime instead of str. Totally inefficient, but it's working now.
  16. Make a list of notable days, and highlight them in some way. (e.g. Color mask?)
  17. How to only pull the last 1-2 seconds from a clip?
  18. Need to progressively concatenate.
  19. Make day-text a function of day-filename.
  20. Sort the files so they run in chrono order.
  21. Problem: it is EXTREMELY SLOW. What can I do? Instead of writing a video file iteratively, put everything in an array and concat. Also, [0,-1] was super slow.
  22. How to deal with fps issue in both phone videos and webcam videos? Wasn't fps, but size of the clip!
  23. Slot in the 'forgot.' video into final year video.
  24. Add a countdown: how many days left to make videos? Why?
  25. Anything after March 15: instead of sorting/organizing/naming by date-modified, need to do it all by filename.
  26. Post-March 15: concatting.
  27. Sorting the filenames, using the new filename convention.
  28. How to deal with December 31, 2014?
  29. Figure out how to skip over copying files (shutil) that I already put in edited.
  30. Figure out how to use the latest edit as the new base clip.
  31. Fix labels using %B instead of %b. Argh.
  32. Make caption prettier/easier to see.

Resources

About

My first Python project: Automating the creation of a second-a-day video for 2015.


Languages

Language:Python 100.0%