npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-logo-overlay

v1.0.4

Published

n8n node for placing logos on images and videos

Readme

n8n-nodes-logo-overlay

Eine benutzerdefinierte n8n-Node zum Platzieren von Logos auf Bildern und Videos.

Features

  • Bild-Overlay: Platziert Logos auf Bildern mit Unterstützung für verschiedene Formate
  • Video-Overlay: Fügt Logos über alle Frames eines Videos hinzu
  • Flexible Positionierung: X/Y-Koordinaten in Pixeln
  • Logo-Größenanpassung: Optionale Breiten- und Höhenanpassung
  • Base64-Output: Gibt verarbeitete Dateien als Base64-String zurück
  • Robuste Fehlerbehandlung: Umfassendes Error-Handling und Cleanup

Systemanforderungen

  • FFmpeg: Für Video-Verarbeitung erforderlich
    # macOS
    brew install ffmpeg
      
    # Ubuntu/Debian
    sudo apt update && sudo apt install ffmpeg
      
    # Windows
    # Laden Sie FFmpeg von https://ffmpeg.org/download.html herunter

Installation

Lokale Entwicklung

  1. Abhängigkeiten installieren:

    npm install
  2. Node kompilieren:

    npm run build
  3. In n8n verwenden:

    # Option 1: Als Community Package installieren
    n8n start --packages=./dist
       
    # Option 2: In n8n-Entwicklungsumgebung kopieren
    cp -r dist/* ~/.n8n/nodes/

Als npm-Package (zukünftig)

npm install n8n-nodes-logo-overlay

Verwendung

Parameter

| Parameter | Typ | Beschreibung | Erforderlich | |-----------|-----|--------------|--------------| | filePath | String | Pfad zur Bild- oder Videodatei | ✓ | | fileType | Options | image oder video | ✓ | | logoPath | String | Pfad zum Logo (PNG mit Transparenz empfohlen) | ✓ | | x | Number | X-Koordinate in Pixeln | ✓ | | y | Number | Y-Koordinate in Pixeln | ✓ | | logoWidth | Number | Breite des Logos (0 = Original beibehalten) | ✗ | | logoHeight | Number | Höhe des Logos (0 = Original beibehalten) | ✗ |

Beispiel-Workflow

{
  "nodes": [
    {
      "parameters": {
        "filePath": "/pfad/zu/image.jpg",
        "fileType": "image",
        "logoPath": "/pfad/zu/logo.png",
        "x": 50,
        "y": 50,
        "logoWidth": 100,
        "logoHeight": 50
      },
      "type": "n8n-nodes-logo-overlay.logoOverlay",
      "typeVersion": 1
    }
  ]
}

Output

Die Node gibt ein JSON-Objekt zurück:

{
  "base64": "iVBORw0KGgoAAAANSUhEUgAA...", // Base64-kodierte Datei
  "originalFile": "/pfad/zu/image.jpg",
  "logoFile": "/pfad/zu/logo.png", 
  "position": { "x": 50, "y": 50 },
  "fileType": "image"
}

Unterstützte Formate

Bilder

  • JPEG/JPG
  • PNG
  • WebP
  • TIFF
  • GIF (statisch)

Videos

  • MP4
  • MOV
  • AVI
  • MKV
  • WebM

Logos

  • PNG (empfohlen für Transparenz)
  • JPEG
  • WebP

Technische Details

Bild-Verarbeitung

  • Library: Sharp
  • Performance: Optimiert für hohe Geschwindigkeit
  • Memory: Effiziente Buffer-Verarbeitung

Video-Verarbeitung

  • Library: FFmpeg mit fluent-ffmpeg
  • Codec: H.264 mit optimierten Einstellungen
  • Qualität: CRF 23 (gute Balance zwischen Qualität und Dateigröße)

Temporäre Dateien

  • Automatisches Cleanup nach Verarbeitung
  • Verwendung des System-Temp-Verzeichnisses
  • UUID-basierte Dateinamen zur Vermeidung von Konflikten

Fehlerbehandlung

Die Node behandelt folgende Fehlerszenarien:

  • Datei nicht gefunden: Überprüfung der Existenz von Input- und Logo-Dateien
  • Ungültige Formate: Validierung der Dateitypen
  • FFmpeg-Fehler: Detaillierte Fehlermeldungen bei Video-Verarbeitung
  • Memory-Limits: Effiziente Buffer-Verwaltung
  • Cleanup-Fehler: Graceful Handling bei Temp-File-Problemen

Entwicklung

Build-Prozess

# TypeScript kompilieren
npm run build

# Entwicklungsmodus (Watch)
npm run dev

# Linting
npm run lint

# Code-Formatierung
npm run format

Projektstruktur

├── nodes/
│   └── LogoOverlay/
│       ├── LogoOverlay.node.ts    # Haupt-Node-Implementation
│       └── logoOverlay.svg        # Node-Icon
├── dist/                          # Kompilierte Dateien
├── package.json                   # Dependencies und Konfiguration
├── tsconfig.json                  # TypeScript-Konfiguration
└── gulpfile.js                    # Build-System

Lizenz

MIT

Beitragen

Contributions sind willkommen! Bitte öffnen Sie ein Issue oder Pull Request auf GitHub.

Support

Bei Problemen oder Fragen erstellen Sie bitte ein Issue im GitHub-Repository.