PPROLint
Built-in rules

Tiny clips

Reports clips only a few frames long, usually leftovers of a trim.

PropertyValue
Idno-tiny-clips
CategoryStatic
Default severitywarning
Scopeclip

Options

OptionTypeDefaultDescription
minFramesnumber3Clips shorter than this many whole frames are reported. A clip exactly this long is not.
includeAudiobooleantrueAlso check audio clips.
includeAdjustmentLayersbooleanfalseAlso check adjustment layers; short ones are often deliberate.

Customize it

Turn the rule on or off in the panel's Rules settings. To change its options, severity or wording, open it with its cogwheel in the rule editor and save: your copy replaces the built-in rule until you revert it. You can also copy the file below into your rules folder as no-tiny-clips.rule.json and edit it. See Change a built-in rule.

Rule file

no-tiny-clips.rule.json
{
  "formatVersion": 1,
  "id": "no-tiny-clips",
  "name": {
    "en_US": "Tiny clips",
    "de_DE": "Winzige Clips",
    "es_ES": "Clips diminutos",
    "fr_FR": "Éléments minuscules",
    "it_IT": "Clip minuscole",
    "ja_JP": "極端に短いクリップ",
    "ko_KR": "아주 짧은 클립",
    "pt_BR": "Clipes minúsculos",
    "ru_RU": "Слишком короткие клипы",
    "zh_CN": "极短剪辑"
  },
  "description": {
    "en_US": "Reports clips only a few frames long, usually leftovers of a trim.",
    "de_DE": "Meldet Clips, die nur wenige Frames lang sind, meist Reste eines Trimmvorgangs.",
    "es_ES": "Detecta clips de solo unos pocos fotogramas, normalmente restos de un recorte.",
    "fr_FR": "Signale les éléments de quelques images seulement, souvent des restes de raccord.",
    "it_IT": "Segnala le clip lunghe solo pochi fotogrammi, di solito residui di un taglio.",
    "ja_JP": "数フレームしかない、トリミングの残りと思われるクリップを報告します。",
    "ko_KR": "몇 프레임 길이밖에 되지 않는 클립(대개 트리밍 후 남은 조각)을 보고합니다.",
    "pt_BR": "Relata clipes com apenas alguns quadros de duração, geralmente sobras de um corte.",
    "ru_RU": "Сообщает о клипах длиной всего несколько кадров, обычно оставшихся после обрезки.",
    "zh_CN": "报告仅有几帧长的剪辑,通常是修剪后的残留。"
  },
  "category": "static",
  "scope": "clip",
  "severity": "warning",
  "options": {
    "minFrames": {
      "type": "number",
      "default": 3,
      "description": "Clips shorter than this many whole frames are reported. A clip exactly this long is not."
    },
    "includeAudio": {
      "type": "boolean",
      "default": true,
      "description": "Also check audio clips."
    },
    "includeAdjustmentLayers": {
      "type": "boolean",
      "default": false,
      "description": "Also check adjustment layers; short ones are often deliberate."
    }
  },
  "checks": [
    {
      "condition": {
        "all": [
          {
            "field": "clip.duration",
            "operator": "greaterThan",
            "value": 0
          },
          {
            "field": "clip.durationFrames",
            "operator": "lessThan",
            "value": {
              "field": "options.minFrames"
            }
          },
          {
            "any": [
              {
                "field": "clip.trackType",
                "operator": "equals",
                "value": "video"
              },
              {
                "field": "options.includeAudio",
                "operator": "equals",
                "value": true
              }
            ]
          },
          {
            "any": [
              {
                "field": "clip.adjustmentLayer",
                "operator": "equals",
                "value": false
              },
              {
                "field": "options.includeAdjustmentLayers",
                "operator": "equals",
                "value": true
              }
            ]
          }
        ]
      },
      "message": {
        "en_US": {
          "count": "clip.durationFrames",
          "one": "Clip \"{clip.name}\" on {clip.track} is {clip.durationFrames} frame long (minimum {options.minFrames}).",
          "other": "Clip \"{clip.name}\" on {clip.track} is {clip.durationFrames} frames long (minimum {options.minFrames})."
        },
        "de_DE": {
          "count": "clip.durationFrames",
          "one": "Clip „{clip.name}“ auf {clip.track} ist {clip.durationFrames} Frame lang (mindestens {options.minFrames}).",
          "other": "Clip „{clip.name}“ auf {clip.track} ist {clip.durationFrames} Frames lang (mindestens {options.minFrames})."
        },
        "es_ES": {
          "count": "clip.durationFrames",
          "one": "Clip \"{clip.name}\" en {clip.track} dura {clip.durationFrames} fotograma (mínimo: {options.minFrames}).",
          "other": "Clip \"{clip.name}\" en {clip.track} dura {clip.durationFrames} fotogramas (mínimo: {options.minFrames})."
        },
        "fr_FR": {
          "count": "clip.durationFrames",
          "one": "Élément « {clip.name} » sur {clip.track} dure {clip.durationFrames} image (minimum : {options.minFrames}).",
          "other": "Élément « {clip.name} » sur {clip.track} dure {clip.durationFrames} images (minimum : {options.minFrames})."
        },
        "it_IT": {
          "count": "clip.durationFrames",
          "one": "Clip \"{clip.name}\" su {clip.track} dura {clip.durationFrames} fotogramma (minimo {options.minFrames}).",
          "other": "Clip \"{clip.name}\" su {clip.track} dura {clip.durationFrames} fotogrammi (minimo {options.minFrames})."
        },
        "ja_JP": "クリップ「{clip.name}」({clip.track})の長さは{clip.durationFrames}フレームです(最小{options.minFrames}フレーム)。",
        "ko_KR": "{clip.track}의 클립 \"{clip.name}\"의 길이가 {clip.durationFrames}프레임입니다(최소 {options.minFrames}).",
        "pt_BR": {
          "count": "clip.durationFrames",
          "one": "Clipe \"{clip.name}\" em {clip.track} tem {clip.durationFrames} quadro de duração (mínimo {options.minFrames}).",
          "other": "Clipe \"{clip.name}\" em {clip.track} tem {clip.durationFrames} quadros de duração (mínimo {options.minFrames})."
        },
        "ru_RU": {
          "count": "clip.durationFrames",
          "one": "Клип «{clip.name}» на {clip.track} длится {clip.durationFrames} кадр (минимум {options.minFrames}).",
          "few": "Клип «{clip.name}» на {clip.track} длится {clip.durationFrames} кадра (минимум {options.minFrames}).",
          "many": "Клип «{clip.name}» на {clip.track} длится {clip.durationFrames} кадров (минимум {options.minFrames}).",
          "other": "Клип «{clip.name}» на {clip.track} длится {clip.durationFrames} кадра (минимум {options.minFrames})."
        },
        "zh_CN": "{clip.track} 上的剪辑“{clip.name}” 长度为 {clip.durationFrames} 帧(最少 {options.minFrames} 帧)。"
      }
    }
  ],
  "data": {
    "durationTicks": "clip.duration",
    "durationFrames": "clip.durationFrames",
    "minFrames": "options.minFrames"
  }
}

On this page