projects
/
fgen.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Set default group name
[fgen.git]
/
fgen.sh
diff --git
a/fgen.sh
b/fgen.sh
index
df952fa
..
6cc7db6
100755
(executable)
--- a/
fgen.sh
+++ b/
fgen.sh
@@
-20,7
+20,11
@@
trames=1
dry_run=0
SED=sed
dry_run=0
SED=sed
-FFMPEG_OPTS="-hide_banner -loglevel error -y"
+
+# When reading a file line by line, if a command inside the loop
+# also reads stdin, it can exhaust the input file.
+# -nostdin: disable ffmpeg interaction on standard input:
+FFMPEG_OPTS="-hide_banner -loglevel error -y -nostdin"
# -limit memory 5000mb -limit disk 5gb
IM_OPS=""
# -limit memory 5000mb -limit disk 5gb
IM_OPS=""
@@
-107,6
+111,23
@@
function get_dup_to()
echo "${token}"
}
echo "${token}"
}
+# Arg1: start frame
+# Arg1: end frame
+function insert_empty_frames()
+{
+ local w
+ local start
+ local end
+
+ start=${1}
+ end=${2}
+
+ for w in $(seq ${start} ${end}); do
+ log_dbg "New frame ID: ${w} (empty)"
+ cp ${dest}/background.png ${dest}/${group}-f${w}.png
+ done
+}
+
function generate_video()
{
if which ffmpeg 1> /dev/null 2>&1; then
function generate_video()
{
if which ffmpeg 1> /dev/null 2>&1; then
@@
-224,7
+245,7
@@
if [ ${trames} -eq 1 ]; then
nf=""
oldnf=""
files=""
nf=""
oldnf=""
files=""
- group=""
+ group="
default
"
while read l; do
scene=$(get_scene_id "${l}")
while read l; do
scene=$(get_scene_id "${l}")
@@
-279,11
+300,10
@@
if [ ${trames} -eq 1 ]; then
expected_nf=$((${oldnf} + 1))
if [ ${expected_nf} -ne ${nf} ]; then
expected_nf=$((${oldnf} + 1))
if [ ${expected_nf} -ne ${nf} ]; then
- echo "
Error: invalid
frame sequence: ${nf}"
+ echo "
Warning: non-sequential
frame sequence: ${nf}"
echo " previous: ${oldnf}"
echo " expected: ${expected_nf}"
echo " previous: ${oldnf}"
echo " expected: ${expected_nf}"
- files=""
- continue
+ insert_empty_frames ${expected_nf} $((${nf} -1))
fi
fi
fi
fi