summaryrefslogtreecommitdiff
path: root/video-metadata.rb
blob: 654ce0cbd79286a4ba3558844fc5405d3acbb544 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/env ruby
require 'json'

Dir[File.join(ARGV[0], "videos", "*", "*.mp4")].each do |video|
  # tmp = File.join("/tmp", File.basename(video))
  tmp = video + "~"
  print `cp #{video} #{tmp}`
  meta = {
    "title" => File.basename(video, ".mp4").gsub("_", " "),
    "date" => video.split("/")[-2].split("_")[0],
    "artist" => "pdp8@pdp8.info",
    "copyright" => "© pdp8@pdp8.info Creative Commons Attribution-ShareAlike 4.0 International License",
  }
  cmd = "ffmpeg -i #{tmp} -c copy "
  meta.each do |k, v|
    cmd += "-metadata #{k}=\"#{v}\" "
  end
  cmd += " #{video}"
  puts cmd
  print `#{cmd}`
end