Aktive Konfiguration: PROD · Helmut4 PROD · helmut4_backup_l-helmut1.adin.mdr.de_2026-10-18 10_57_41 202 Streams
Öffnen
TEST IO Node-Detail

Execute Javascript Action

helmut4_backup_192.168.178.209_2026-10-18 20_33_12 · ESP Transfer Hires

Node-Informationen

Stream
ESP Transfer Hires
Klasse
nodes.actions.execute.JavascriptExecuteActionImpl
UUID
0408ca7d-f9e9-4772-8cc5-338bd30bed8f
Operator-ID
51
Event
WATCHFOLDER

Properties

{
  "cmd": "function framesToTimecode(frameCount, fps) {\n\n    if (isNaN(frameCount) || isNaN(fps) || fps <= 0) {\n        return \"00:00:00.000\";\n    }\n\n    var totalSeconds = frameCount / fps;\n    var hours = Math.floor(totalSeconds / 3600);\n    var minutes = Math.floor((totalSeconds [<]%[>] 3600) / 60);\n    var seconds = Math.floor(totalSeconds [<]%[>] 60);\n    var milliseconds = Math.round((totalSeconds [<]%[>] 1) * 1000);\n\n    function pad(num, size) {\n        size = size || 2;\n        num = num + \"\";\n        while (num.length < size) num = \"0\" + num;\n        return num;\n    }\n\n    return pad(hours) + \":\" + pad(minutes) + \":\" + pad(seconds) + \".\" + pad(milliseconds, 3);\n}\n\nvar fps = Number('{stream.variable.FramesPerSecond}');\n\nvar startframes = parseInt( '{stream.variable.inPoint}');\nvar duration = parseInt( '{stream.variable.duration}');\n\nduration = duration + 3;\n\nvar szeit = framesToTimecode(startframes, fps);\nvar dur = framesToTimecode(duration, fps);\n\nvar result = {};\n\nresult.starttime = szeit;\nresult.duration = dur;\n\nvar jresult = JSON.stringify(result);\njresult",
  "nodeUUID": "0408ca7d-f9e9-4772-8cc5-338bd30bed8f",
  "successNodeUUID": "9be8785d-ba3a-4013-b884-a76bf1e5c8b4"
}

Skript

Original: 39 Zeilen · 1074 Zeichen Formatiert: 39 Zeilen
Formatierung ergänzt Einrückungen und Zeilenumbrüche. Ursprüngliche Variablennamen und Kommentare lassen sich aus minifiziertem Code nicht wiederherstellen. ExtendScript-Direktiven und E4X werden bei der Formatierung berücksichtigt.
Original
function framesToTimecode(frameCount, fps) {

    if (isNaN(frameCount) || isNaN(fps) || fps <= 0) {
        return "00:00:00.000";
    }

    var totalSeconds = frameCount / fps;
    var hours = Math.floor(totalSeconds / 3600);
    var minutes = Math.floor((totalSeconds [<]%[>] 3600) / 60);
    var seconds = Math.floor(totalSeconds [<]%[>] 60);
    var milliseconds = Math.round((totalSeconds [<]%[>] 1) * 1000);

    function pad(num, size) {
        size = size || 2;
        num = num + "";
        while (num.length < size) num = "0" + num;
        return num;
    }

    return pad(hours) + ":" + pad(minutes) + ":" + pad(seconds) + "." + pad(milliseconds, 3);
}

var fps = Number('{stream.variable.FramesPerSecond}');

var startframes = parseInt( '{stream.variable.inPoint}');
var duration = parseInt( '{stream.variable.duration}');

duration = duration + 3;

var szeit = framesToTimecode(startframes, fps);
var dur = framesToTimecode(duration, fps);

var result = {};

result.starttime = szeit;
result.duration = dur;

var jresult = JSON.stringify(result);
jresult
Formatiert
function framesToTimecode(frameCount, fps) {

  if (isNaN(frameCount) || isNaN(fps) || fps <= 0) {
    return "00:00:00.000";
  }

  var totalSeconds = frameCount / fps;
  var hours = Math.floor(totalSeconds / 3600);
  var minutes = Math.floor((totalSeconds[ < ] % [ > ] 3600) / 60);
  var seconds = Math.floor(totalSeconds[ < ] % [ > ] 60);
  var milliseconds = Math.round((totalSeconds[ < ] % [ > ] 1) * 1000);

  function pad(num, size) {
    size = size || 2;
    num = num + "";
    while (num.length < size) num = "0" + num;
    return num;
  }

  return pad(hours) + ":" + pad(minutes) + ":" + pad(seconds) + "." + pad(milliseconds, 3);
}

var fps = Number('{stream.variable.FramesPerSecond}');

var startframes = parseInt('{stream.variable.inPoint}');
var duration = parseInt('{stream.variable.duration}');

duration = duration + 3;

var szeit = framesToTimecode(startframes, fps);
var dur = framesToTimecode(duration, fps);

var result = {};

result.starttime = szeit;
result.duration = dur;

var jresult = JSON.stringify(result);
jresult

Rohdaten

{
  "class": "nodes.actions.execute.JavascriptExecuteActionImpl",
  "deprecated": false,
  "properties": {
    "cmd": "function framesToTimecode(frameCount, fps) {\n\n    if (isNaN(frameCount) || isNaN(fps) || fps <= 0) {\n        return \"00:00:00.000\";\n    }\n\n    var totalSeconds = frameCount / fps;\n    var hours = Math.floor(totalSeconds / 3600);\n    var minutes = Math.floor((totalSeconds [<]%[>] 3600) / 60);\n    var seconds = Math.floor(totalSeconds [<]%[>] 60);\n    var milliseconds = Math.round((totalSeconds [<]%[>] 1) * 1000);\n\n    function pad(num, size) {\n        size = size || 2;\n        num = num + \"\";\n        while (num.length < size) num = \"0\" + num;\n        return num;\n    }\n\n    return pad(hours) + \":\" + pad(minutes) + \":\" + pad(seconds) + \".\" + pad(milliseconds, 3);\n}\n\nvar fps = Number('{stream.variable.FramesPerSecond}');\n\nvar startframes = parseInt( '{stream.variable.inPoint}');\nvar duration = parseInt( '{stream.variable.duration}');\n\nduration = duration + 3;\n\nvar szeit = framesToTimecode(startframes, fps);\nvar dur = framesToTimecode(duration, fps);\n\nvar result = {};\n\nresult.starttime = szeit;\nresult.duration = dur;\n\nvar jresult = JSON.stringify(result);\njresult",
    "nodeUUID": "0408ca7d-f9e9-4772-8cc5-338bd30bed8f",
    "successNodeUUID": "9be8785d-ba3a-4013-b884-a76bf1e5c8b4"
  }
}

Vorgang läuft

0 s · Bitte warten. Der Vorgang wird verarbeitet.

    0 s · Es wird keine neue Snapshot-Analyse gestartet.

    Willkommen im Helmut Analyzer

    Neu hier? Unter Info & Hilfe findest du einen Quickstart für den Export aus Helmut4, den Import deiner Konfiguration und die Auswertung. Dort sind auch unsere Prüfregeln und Best Practices erklärt.

    Info & Hilfe öffnen