Show what the picture check found, beside what the audio check found
Every clip has been transcribed and compared with its script since the first film. Nothing looked at the picture, which is where this engine actually fails - two identical photographs on a mantel, half a car, a person nobody asked for. This renders the visual verdict the same way, and lists each fault with the wording change that would have prevented it.
This commit is contained in:
parent
4d0d375dbb
commit
5eb4aac2cc
1 changed files with 40 additions and 1 deletions
41
trailer.html
41
trailer.html
|
|
@ -92,6 +92,12 @@
|
||||||
.chk{font-size:12px;border-radius:999px;padding:1px 8px;border:1px solid var(--line);color:var(--muted)}
|
.chk{font-size:12px;border-radius:999px;padding:1px 8px;border:1px solid var(--line);color:var(--muted)}
|
||||||
.chk.ok{color:var(--accent2);border-color:var(--accent2)}
|
.chk.ok{color:var(--accent2);border-color:var(--accent2)}
|
||||||
.chk.bad{color:#e0685f;border-color:#e0685f}
|
.chk.bad{color:#e0685f;border-color:#e0685f}
|
||||||
|
.eyes{margin:8px 0 0;font-size:12.5px}
|
||||||
|
.eyes .f{margin:4px 0;padding-left:10px;border-left:2px solid var(--line)}
|
||||||
|
.eyes .f.serious{border-left-color:#e0685f}
|
||||||
|
.eyes .f b{color:var(--ink)}
|
||||||
|
.eyes .fix{color:var(--muted);display:block;margin-top:1px}
|
||||||
|
.eyes .sum{color:var(--muted);font-style:italic;margin-bottom:5px}
|
||||||
.ins{border-top:1px dashed var(--line);text-align:center;padding:6px 0}
|
.ins{border-top:1px dashed var(--line);text-align:center;padding:6px 0}
|
||||||
.ins button{font-size:12px;padding:4px 12px;color:var(--muted)}
|
.ins button{font-size:12px;padding:4px 12px;color:var(--muted)}
|
||||||
.rough{width:100%;box-sizing:border-box;margin-top:8px;font:inherit;font-size:13px;
|
.rough{width:100%;box-sizing:border-box;margin-top:8px;font:inherit;font-size:13px;
|
||||||
|
|
@ -754,6 +760,23 @@
|
||||||
+ '">+ Add a scene ' + (after === "start" ? "at the start" : "after " + esc(after)) + '</button></div>';
|
+ '">+ Add a scene ' + (after === "start" ? "at the start" : "after " + esc(after)) + '</button></div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// The faults themselves, with the prompt change that would prevent each -
|
||||||
|
// which is the half that makes the check actionable rather than a verdict.
|
||||||
|
function faultsHtml(s) {
|
||||||
|
var vc = s.vision_check;
|
||||||
|
if (!vc || !(vc.faults || []).length) return "";
|
||||||
|
return '<div class="eyes">'
|
||||||
|
+ (vc.summary ? '<div class="sum">' + esc(vc.summary) + '</div>' : '')
|
||||||
|
+ vc.faults.map(function (f) {
|
||||||
|
return '<div class="f ' + (f.severity === "serious" ? "serious" : "")
|
||||||
|
+ '"><b>' + esc(f.kind || "") + '</b>'
|
||||||
|
+ (f.at != null ? ' at ' + Number(f.at).toFixed(1) + 's' : '')
|
||||||
|
+ ' · ' + esc(f.what || "")
|
||||||
|
+ (f.prompt_fix ? '<span class="fix">fix: ' + esc(f.prompt_fix)
|
||||||
|
+ '</span>' : '') + '</div>';
|
||||||
|
}).join("") + '</div>';
|
||||||
|
}
|
||||||
|
|
||||||
function shotHtml(s, voice) {
|
function shotHtml(s, voice) {
|
||||||
if (s.writing) {
|
if (s.writing) {
|
||||||
return '<div class="shot"><div class="num">' + esc(s.id) + '</div><div class="body">'
|
return '<div class="shot"><div class="num">' + esc(s.id) + '</div><div class="body">'
|
||||||
|
|
@ -799,6 +822,21 @@
|
||||||
+ '</span>';
|
+ '</span>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// What the eyes found, if they have looked. Kinds: render (the picture is
|
||||||
|
// broken), continuity (the frames disagree), script (wrong shot, well made).
|
||||||
|
var vc = s.vision_check || null;
|
||||||
|
var eyeHtml = "";
|
||||||
|
if (vc && vc.verdict) {
|
||||||
|
var bad = vc.verdict === "broken";
|
||||||
|
var faults = vc.faults || [];
|
||||||
|
eyeHtml = '<span class="chk ' + (bad ? "bad" : (faults.length ? "" : "ok"))
|
||||||
|
+ '" title="' + esc(vc.summary || "") + '">picture ' + esc(vc.verdict)
|
||||||
|
+ (faults.length ? ' · ' + faults.length + ' fault'
|
||||||
|
+ (faults.length === 1 ? '' : 's') : '')
|
||||||
|
+ (vc.people_on_screen != null ? ' · ' + vc.people_on_screen
|
||||||
|
+ ' on screen' : '') + '</span>';
|
||||||
|
}
|
||||||
|
|
||||||
var tools;
|
var tools;
|
||||||
if (s.drawing) tools = '<span class="busy">drawing…</span>';
|
if (s.drawing) tools = '<span class="busy">drawing…</span>';
|
||||||
else if (s.filming) tools = '<span class="busy">filming…</span>';
|
else if (s.filming) tools = '<span class="busy">filming…</span>';
|
||||||
|
|
@ -814,7 +852,7 @@
|
||||||
+ (s.opening_url ? 'Redraw' : 'Draw') + ' · $0.14</button>'
|
+ (s.opening_url ? 'Redraw' : 'Draw') + ' · $0.14</button>'
|
||||||
+ (s.opening_url ? '<button type="button" class="btn" data-filmone="' + esc(s.id) + '">'
|
+ (s.opening_url ? '<button type="button" class="btn" data-filmone="' + esc(s.id) + '">'
|
||||||
+ (s.clip_url ? 'Film it again' : 'Film this shot') + ' · $0.75</button>' : '')
|
+ (s.clip_url ? 'Film it again' : 'Film this shot') + ' · $0.75</button>' : '')
|
||||||
+ chkHtml
|
+ chkHtml + eyeHtml
|
||||||
+ '<button type="button" class="btn" data-delete="' + esc(s.id) + '">Remove</button>';
|
+ '<button type="button" class="btn" data-delete="' + esc(s.id) + '">Remove</button>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -830,6 +868,7 @@
|
||||||
+ (s.camera ? '<p class="cam">camera: ' + esc(s.camera) + '</p>' : '')
|
+ (s.camera ? '<p class="cam">camera: ' + esc(s.camera) + '</p>' : '')
|
||||||
+ (s.continuity ? '<p class="cont">continuity: ' + esc(s.continuity) + '</p>' : '')
|
+ (s.continuity ? '<p class="cont">continuity: ' + esc(s.continuity) + '</p>' : '')
|
||||||
+ lines
|
+ lines
|
||||||
|
+ faultsHtml(s)
|
||||||
+ '<div class="tools">' + tools + '</div>'
|
+ '<div class="tools">' + tools + '</div>'
|
||||||
+ '<textarea class="note" rows="2" data-note="' + esc(s.id) + '" '
|
+ '<textarea class="note" rows="2" data-note="' + esc(s.id) + '" '
|
||||||
+ 'placeholder="Your note on this shot, for the next full revision.">'
|
+ 'placeholder="Your note on this shot, for the next full revision.">'
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue