Bläddra i källkod

implement restarting of process

Tobias Simetsreiter 4 år sedan
förälder
incheckning
289605da7e
3 ändrade filer med 63 tillägg och 0 borttagningar
  1. 2 0
      .gitignore
  2. 19 0
      filtergource.sh
  3. 42 0
      multigource.sh

+ 2 - 0
.gitignore

@@ -0,0 +1,2 @@
+log
+mp4

+ 19 - 0
filtergource.sh

@@ -0,0 +1,19 @@
+#!/usr/bin/bash
+
+OUTPUT="$1"
+shift
+
+GOURCE_OPTS=(
+    "--stop-at-end"
+    "-s" "0.05" "--highlight-users" "--log-format" "custom"
+    "-1920x1080" 
+   #  "--start-date" "2010-01-01" 
+    "--file-idle-time" "0" "--no-vsync"
+    "--key" "--output-ppm-stream" "-"  "--output-framerate" "60" "-"
+    "--hide" "bloom,mouse,progress,filenames"
+    "--auto-skip-seconds" ".01" "--multi-sampling"
+)
+
+cat |awk "$@" |
+    gource "${GOURCE_OPTS[@]}" |
+    ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i - -b:v 10000000 -vcodec libx264 -crf 24 "$OUTPUT"

+ 42 - 0
multigource.sh

@@ -0,0 +1,42 @@
+#!/usr/bin/env bash
+
+
+mkdir -p log
+TOP="$1"
+PREFIX="$2"
+shift 2
+
+containsElement () {
+  local e match="$1"
+  shift
+  for e; do [[ "$e" == "$match" ]] && return 0; done
+  return 1
+}
+
+join_gource(){
+    cat log/gource.txt.gz|gunzip |cat - log/gource.txt |sort|uniq|gzip > log/gource.tmp
+    mv log/gource.tmp log/gource.txt.gz
+    rm -f log/gource.txt
+}
+
+REPOS_DONE=( $(cat log/repos.done) )
+
+
+find "$TOP" -type d -name '*.git' -print0 | 
+(
+i=0
+while IFS= read -r -d '' line; do 
+    REL="$PREFIX$(realpath --relative-to=$TOP $line)"
+    i="$(( $i + 1 ))"
+
+    containsElement "$REL" "${REPOS_DONE[@]}" && echo "$i $REL is already done" 1>&2
+    containsElement "$REL" "${REPOS_DONE[@]}" && continue;
+
+    echo "Gourcing:$i $REL" 1>&2
+    git -C "$line" log --all --pretty=format:user:%aN%n%ct --reverse --raw --encoding=UTF-8 --no-renames |
+        sed "s, \([ACDMRTU]\)\t, \1\t$REL/," | gource  --log-format git --output-custom-log - -
+    echo "$REL" >> log/repos.done
+done
+) >> log/gource.txt
+
+join_gource