Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Gelöst] ffmpeg Error: spawn EACCES JS-Adapter

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Gelöst] ffmpeg Error: spawn EACCES JS-Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      McD_HRTS last edited by McD_HRTS

      Hi Zusammen,

      ich möchte eigentlich Screenshots einer mp4 Datei per Javascript erstellen und wollte dafür die Screenshots Funktion von ffmpeg verwenden.
      Problem ist das ich es allerdings nicht zum laufen bringe da ich auf einen Error: spawn EACCES laufe und ich es bisher nicht schaffe diesen zu beheben.

      Ich habe im Javascript Adapter fluemt-ffmpeg, ffprobe und ffmpeg als zusätzlich npm Module in der Zwischenzeit schon angegeben. Am Anfang hatte ich das Problem das er auf den Fehler gelaufen ist das er ffmpeg und ffprobe nicht gefunden hat. Das konnte ich dann beheben indem ich mit setFfmpegPath und setFfprobePath die Pfade zu den Installationen gesetzt habe. Und jetzt laufe ich aber wie gesagt auf den EACCES Fehler.

      Mein Skript sieht momentan so aus:

      const ffmpeg = require('fluent-ffmpeg');
      
      ffmpeg.setFfmpegPath('/opt/iobroker/node_modules/iobroker.javascript/node_modules/ffmpeg');
      ffmpeg.setFfprobePath('/opt/iobroker/node_modules/iobroker.javascript/node_modules/ffprobe');
      
      ffmpeg('/opt/iobroker/temp/cam/stamp.mp4')
      .on('end', function() {
          console.log('Screenshots taken');
      })
      .on('error', function(err) {
          console.error('Läuft auf Fehler: ' + err);
      })
      .screenshots({
          // Will take screenshots at 20%, 40%, 60% and 80% of the video
          count: 4,
          folder: '/opt/iobroker/temp/cam'
      });
      

      und das Log sieht so aus:

      avascript.0	2019-08-17 12:42:03.063	error	at ContextifyScript.Script.runInContext (vm.js:59:29)
      javascript.0	2019-08-17 12:42:03.063	error	at script.js.onlyTests.Test_Screenshot_FFMPEG:21:2
      javascript.0	2019-08-17 12:42:03.063	error	at FfmpegCommand.proto.takeScreenshots.proto.thumbnail.proto.thumbnails.proto.screenshot.proto.screenshots (/opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/recipes.js
      javascript.0	2019-08-17 12:42:03.063	error	at Object.awaitable(waterfall) [as waterfall] (/opt/iobroker/node_modules/iobroker.javascript/node_modules/async/dist/async.js:208:32)
      javascript.0	2019-08-17 12:42:03.063	error	at Object.waterfall (/opt/iobroker/node_modules/iobroker.javascript/node_modules/async/dist/async.js:4589:9)
      javascript.0	2019-08-17 12:42:03.063	error	at nextTask (/opt/iobroker/node_modules/iobroker.javascript/node_modules/async/dist/async.js:4578:27)
      javascript.0	2019-08-17 12:42:03.063	error	at computeTimemarks (/opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/recipes.js:175:11)
      javascript.0	2019-08-17 12:42:03.063	error	at getMetadata (/opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/recipes.js:160:14)
      javascript.0	2019-08-17 12:42:03.063	error	at FfmpegCommand.proto.ffprobe (/opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/ffprobe.js:141:10)
      javascript.0	2019-08-17 12:42:03.063	error	at FfmpegCommand.proto._getFfprobePath (/opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/capabilities.js:144:14)
      javascript.0	2019-08-17 12:42:03.063	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/fluent-ffmpeg/lib/ffprobe.js:155:21
      javascript.0	2019-08-17 12:42:03.063	error	at exports.spawn (child_process.js:508:9)
      javascript.0	2019-08-17 12:42:03.063	error	at ChildProcess.spawn (internal/child_process.js:313:11)
      javascript.0	2019-08-17 12:42:03.063	error	Error: spawn EACCES
      javascript.0	2019-08-17 12:42:03.063	error	^
      javascript.0	2019-08-17 12:42:03.063	error	throw errnoException(err, 'spawn');
      javascript.0	2019-08-17 12:42:03.063	error	script.js.onlyTests.Test_Screenshot_FFMPEG: internal/child_process.js:313
      

      Hat dir mir jemand eine Idee wo ich meinen Fehler habe?

      Danke und Grüße
      McD_HRTS

      1 Reply Last reply Reply Quote 0
      • M
        McD_HRTS last edited by

        Als Info.
        Habe das Problem gelöst indem ich ffmpeg und ffprobe installiert habe über die beiden:
        https://www.npmjs.com/package/@ffmpeg-installer/ffmpeg
        https://www.npmjs.com/package/@ffprobe-installer/ffprobe

        und dann das Skript entsprechend angepasst:

        const ffmpegPath = require('@ffmpeg-installer/ffmpeg').path;
        const ffprobePath = require('@ffprobe-installer/ffprobe').path;
        const ffmpeg = require('fluent-ffmpeg');
        
        ffmpeg.setFfmpegPath(ffmpegPath);
        ffmpeg.setFfprobePath(ffprobePath);
        
        ffmpeg('/opt/iobroker/temp/cam/stamp.mp4')
        .on('end', function() {
            console.log('Screenshots taken');
        })
        .on('error', function(err) {
            console.error('Läuft auf Fehler: ' + err);
        })
        .screenshots({
            count: 12,
            folder: '/opt/iobroker/temp/cam'
        });
        
        1 Reply Last reply Reply Quote 0
        • First post
          Last post

        Support us

        ioBroker
        Community Adapters
        Donate

        618
        Online

        31.7k
        Users

        79.6k
        Topics

        1.3m
        Posts

        javascript
        1
        2
        673
        Loading More Posts
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes
        Reply
        • Reply as topic
        Log in to reply
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
        The ioBroker Community 2014-2023
        logo